Medical Imaging Interaction Toolkit  2024.06.99-31d3c0df
Medical Imaging Interaction Toolkit
mitkDescriptivePharmacokineticBrixModel.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkDescriptivePharmacokineticBrixModel_h
14 #define mitkDescriptivePharmacokineticBrixModel_h
15 
16 #include <iostream>
17 
18 #include "mitkModelBase.h"
20 
21 namespace mitk
22 {
23 
25  {
26 
27  public:
32 
34  itkFactorylessNewMacro(Self);
35  itkCloneMacro(Self);
36 
39 
40  static const std::string MODEL_DISPLAY_NAME;
41 
42  static const std::string NAME_PARAMETER_A;
43  static const std::string NAME_PARAMETER_kep;
44  static const std::string NAME_PARAMETER_kel;
45  static const std::string NAME_PARAMETER_BAT;
46 
47  static const std::string NAME_STATIC_PARAMETER_tau;
48  static const std::string NAME_STATIC_PARAMETER_s0;
49 
50  static const std::string UNIT_PARAMETER_A;
51  static const std::string UNIT_PARAMETER_kep;
52  static const std::string UNIT_PARAMETER_kel;
53  static const std::string UNIT_PARAMETER_BAT;
54 
55  static const std::string UNIT_STATIC_PARAMETER_tau;
56  static const std::string UNIT_STATIC_PARAMETER_s0;
57 
58  static const unsigned int POSITION_PARAMETER_A;
59  static const unsigned int POSITION_PARAMETER_kep;
60  static const unsigned int POSITION_PARAMETER_kel;
61  static const unsigned int POSITION_PARAMETER_BAT;
62 
63  static const unsigned int NUMBER_OF_PARAMETERS;
64 
65  static const unsigned int NUMBER_OF_STATIC_PARAMETERS;
66 
67  static const std::string MODEL_TYPE;
68 
69  static const std::string X_AXIS_NAME;
70 
71  static const std::string X_AXIS_UNIT;
72 
73  static const std::string Y_AXIS_NAME;
74 
75  static const std::string Y_AXIS_UNIT;
76 
77  itkSetMacro(Tau, double);
78  itkGetConstReferenceMacro(Tau, double);
79 
80  itkSetMacro(S0, double);
81  itkGetConstReferenceMacro(S0, double);
82 
83  std::string GetModelDisplayName() const override;
84 
85  std::string GetModelType() const override;
86 
87  std::string GetXAxisName() const override;
88 
89  std::string GetXAxisUnit() const override;
90 
91  std::string GetYAxisName() const override;
92 
93  std::string GetYAxisUnit() const override;
94 
95  ParameterNamesType GetParameterNames() const override;
96 
97  ParametersSizeType GetNumberOfParameters() const override;
98 
99  ParamterUnitMapType GetParameterUnits() const override;
100 
101 
102  ParameterNamesType GetStaticParameterNames() const override;
103  ParametersSizeType GetNumberOfStaticParameters() const override;
104  ParamterUnitMapType GetStaticParameterUnits() const override;
105 
106  protected:
109 
114  itk::LightObject::Pointer InternalClone() const override;
115 
116  ModelResultType ComputeModelfunction(const ParametersType& parameters) const override;
117 
118  void SetStaticParameter(const ParameterNameType& name,
119  const StaticParameterValuesType& values) override;
120 
121  StaticParameterValuesType GetStaticParameterValue(const ParameterNameType& name) const
122  override;
123 
124  void PrintSelf(std::ostream& os, ::itk::Indent indent) const override;
125 
126  private:
128  double m_Tau;
129 
132  double m_S0;
133 
134  //No copy constructor allowed
136  void operator=(const Self&); //purposely not implemented
137 
138 
139  };
140 }
141 
142 
143 #endif
mitk::ModelTraitsInterface::ParamterUnitMapType
std::map< ParameterNameType, std::string > ParamterUnitMapType
Definition: mitkModelTraitsInterface.h:40
MITKPHARMACOKINETICS_EXPORT
#define MITKPHARMACOKINETICS_EXPORT
Definition: MitkPharmacokineticsExports.h:15
mitk::ModelBase::ParameterNamesType
ModelTraitsInterface::ParameterNamesType ParameterNamesType
Definition: mitkModelBase.h:64
mitk::ModelBase::ModelResultType
ModelTraitsInterface::ModelResultType ModelResultType
Definition: mitkModelBase.h:55
mitk::DescriptivePharmacokineticBrixModel::Pointer
itk::SmartPointer< Self > Pointer
Definition: mitkDescriptivePharmacokineticBrixModel.h:30
mitk::DescriptivePharmacokineticBrixModel::Superclass
ModelBase Superclass
Definition: mitkDescriptivePharmacokineticBrixModel.h:29
mitk::DescriptivePharmacokineticBrixModel::NAME_PARAMETER_kel
static const std::string NAME_PARAMETER_kel
Definition: mitkDescriptivePharmacokineticBrixModel.h:44
mitk::DescriptivePharmacokineticBrixModel::X_AXIS_NAME
static const std::string X_AXIS_NAME
Definition: mitkDescriptivePharmacokineticBrixModel.h:69
mitk::DescriptivePharmacokineticBrixModel::NAME_STATIC_PARAMETER_tau
static const std::string NAME_STATIC_PARAMETER_tau
Definition: mitkDescriptivePharmacokineticBrixModel.h:47
mitk::ModelBase::StaticParameterValuesType
std::vector< StaticParameterValueType > StaticParameterValuesType
Definition: mitkModelBase.h:71
mitk::ModelBase::ParameterNameType
ModelTraitsInterface::ParameterNameType ParameterNameType
Definition: mitkModelBase.h:63
mitk::ModelBase::ParametersType
ModelTraitsInterface::ParametersType ParametersType
Definition: mitkModelBase.h:59
mitk::DescriptivePharmacokineticBrixModel::ConstPointer
itk::SmartPointer< const Self > ConstPointer
Definition: mitkDescriptivePharmacokineticBrixModel.h:31
itk::SmartPointer< Self >
mitk::DescriptivePharmacokineticBrixModel::MODEL_TYPE
static const std::string MODEL_TYPE
Definition: mitkDescriptivePharmacokineticBrixModel.h:67
MitkPharmacokineticsExports.h
mitk::DescriptivePharmacokineticBrixModel::POSITION_PARAMETER_kel
static const unsigned int POSITION_PARAMETER_kel
Definition: mitkDescriptivePharmacokineticBrixModel.h:60
mitk::DescriptivePharmacokineticBrixModel::UNIT_STATIC_PARAMETER_s0
static const std::string UNIT_STATIC_PARAMETER_s0
Definition: mitkDescriptivePharmacokineticBrixModel.h:56
mitk::DescriptivePharmacokineticBrixModel::NAME_PARAMETER_kep
static const std::string NAME_PARAMETER_kep
Definition: mitkDescriptivePharmacokineticBrixModel.h:43
mitkModelBase.h
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::DescriptivePharmacokineticBrixModel::UNIT_PARAMETER_kel
static const std::string UNIT_PARAMETER_kel
Definition: mitkDescriptivePharmacokineticBrixModel.h:52
mitk::DescriptivePharmacokineticBrixModel::UNIT_PARAMETER_kep
static const std::string UNIT_PARAMETER_kep
Definition: mitkDescriptivePharmacokineticBrixModel.h:51
mitk::DescriptivePharmacokineticBrixModel::Self
DescriptivePharmacokineticBrixModel Self
Definition: mitkDescriptivePharmacokineticBrixModel.h:28
mitk::DescriptivePharmacokineticBrixModel::NUMBER_OF_STATIC_PARAMETERS
static const unsigned int NUMBER_OF_STATIC_PARAMETERS
Definition: mitkDescriptivePharmacokineticBrixModel.h:65
mitk::DescriptivePharmacokineticBrixModel::MODEL_DISPLAY_NAME
static const std::string MODEL_DISPLAY_NAME
Definition: mitkDescriptivePharmacokineticBrixModel.h:38
mitk::DescriptivePharmacokineticBrixModel::UNIT_PARAMETER_A
static const std::string UNIT_PARAMETER_A
Definition: mitkDescriptivePharmacokineticBrixModel.h:50
mitk::DescriptivePharmacokineticBrixModel::NUMBER_OF_PARAMETERS
static const unsigned int NUMBER_OF_PARAMETERS
Definition: mitkDescriptivePharmacokineticBrixModel.h:63
mitk::DescriptivePharmacokineticBrixModel::UNIT_STATIC_PARAMETER_tau
static const std::string UNIT_STATIC_PARAMETER_tau
Definition: mitkDescriptivePharmacokineticBrixModel.h:55
mitk::DescriptivePharmacokineticBrixModel::NAME_PARAMETER_A
static const std::string NAME_PARAMETER_A
Definition: mitkDescriptivePharmacokineticBrixModel.h:42
mitk::DescriptivePharmacokineticBrixModel::POSITION_PARAMETER_A
static const unsigned int POSITION_PARAMETER_A
Definition: mitkDescriptivePharmacokineticBrixModel.h:58
mitk::DescriptivePharmacokineticBrixModel::NAME_PARAMETER_BAT
static const std::string NAME_PARAMETER_BAT
Definition: mitkDescriptivePharmacokineticBrixModel.h:45
mitk::DescriptivePharmacokineticBrixModel::UNIT_PARAMETER_BAT
static const std::string UNIT_PARAMETER_BAT
Definition: mitkDescriptivePharmacokineticBrixModel.h:53
mitk::DescriptivePharmacokineticBrixModel::NAME_STATIC_PARAMETER_s0
static const std::string NAME_STATIC_PARAMETER_s0
Definition: mitkDescriptivePharmacokineticBrixModel.h:48
mitk::DescriptivePharmacokineticBrixModel::POSITION_PARAMETER_kep
static const unsigned int POSITION_PARAMETER_kep
Definition: mitkDescriptivePharmacokineticBrixModel.h:59
mitk::DescriptivePharmacokineticBrixModel::Y_AXIS_UNIT
static const std::string Y_AXIS_UNIT
Definition: mitkDescriptivePharmacokineticBrixModel.h:75
mitk::DescriptivePharmacokineticBrixModel
Definition: mitkDescriptivePharmacokineticBrixModel.h:24
mitk::ModelBase::ParametersSizeType
ModelTraitsInterface::ParametersSizeType ParametersSizeType
Definition: mitkModelBase.h:65
mitk::DescriptivePharmacokineticBrixModel::POSITION_PARAMETER_BAT
static const unsigned int POSITION_PARAMETER_BAT
Definition: mitkDescriptivePharmacokineticBrixModel.h:61
mitk::DescriptivePharmacokineticBrixModel::Y_AXIS_NAME
static const std::string Y_AXIS_NAME
Definition: mitkDescriptivePharmacokineticBrixModel.h:73
mitk::DescriptivePharmacokineticBrixModel::X_AXIS_UNIT
static const std::string X_AXIS_UNIT
Definition: mitkDescriptivePharmacokineticBrixModel.h:71
mitk::ModelBase
Base class for (dynamic) models. A model can be used to calculate its signal given the discrete time ...
Definition: mitkModelBase.h:47