Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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