Medical Imaging Interaction Toolkit  2023.04.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_tlag;
46  static const std::string NAME_STATIC_PARAMETER_Tau;
47  static const std::string NAME_STATIC_PARAMETER_S0;
48 
49  static const std::string UNIT_PARAMETER_A;
50  static const std::string UNIT_PARAMETER_kep;
51  static const std::string UNIT_PARAMETER_kel;
52  static const std::string UNIT_PARAMETER_tlag;
53  static const std::string UNIT_STATIC_PARAMETER_Tau;
54  static const std::string UNIT_STATIC_PARAMETER_S0;
55 
56  static const unsigned int POSITION_PARAMETER_A;
57  static const unsigned int POSITION_PARAMETER_kep;
58  static const unsigned int POSITION_PARAMETER_kel;
59 
60  //tlag in minutes
61  static const unsigned int POSITION_PARAMETER_tlag;
62 
63  static const unsigned int NUMBER_OF_PARAMETERS;
64 
65  itkSetMacro(Tau, double);
66  itkGetConstReferenceMacro(Tau, double);
67 
68  itkSetMacro(S0, double);
69  itkGetConstReferenceMacro(S0, double);
70 
71  std::string GetModelDisplayName() const override;
72 
73  std::string GetModelType() const override;
74 
75  std::string GetXAxisName() const override;
76 
77  std::string GetXAxisUnit() const override;
78 
79  std::string GetYAxisName() const override;
80 
81  std::string GetYAxisUnit() const override;
82 
83  ParameterNamesType GetParameterNames() const override;
84 
85  ParametersSizeType GetNumberOfParameters() const override;
86 
87  ParamterUnitMapType GetParameterUnits() const override;
88 
89 
90  ParameterNamesType GetStaticParameterNames() const override;
91  ParametersSizeType GetNumberOfStaticParameters() const override;
92  ParamterUnitMapType GetStaticParameterUnits() const override;
93 
94  protected:
97 
102  itk::LightObject::Pointer InternalClone() const override;
103 
104  ModelResultType ComputeModelfunction(const ParametersType& parameters) const override;
105 
106  void SetStaticParameter(const ParameterNameType& name,
107  const StaticParameterValuesType& values) override;
108  StaticParameterValuesType GetStaticParameterValue(const ParameterNameType& name) const
109  override;
110 
111 
112  void PrintSelf(std::ostream& os, ::itk::Indent indent) const override;
113 
114  private:
116  double m_Tau;
117 
120  double m_S0;
121 
122  //No copy constructor allowed
124  void operator=(const Self&); //purposely not implemented
125 
126 
127  };
128 }
129 
130 
131 #endif
mitk::ModelTraitsInterface::ParamterUnitMapType
std::map< ParameterNameType, std::string > ParamterUnitMapType
Definition: mitkModelTraitsInterface.h:40
MITKPHARMACOKINETICS_EXPORT
#define MITKPHARMACOKINETICS_EXPORT
Definition: MitkPharmacokineticsExports.h:15
mitk::DescriptivePharmacokineticBrixModel::NAME_PARAMETER_tlag
static const std::string NAME_PARAMETER_tlag
Definition: mitkDescriptivePharmacokineticBrixModel.h:45
mitk::DescriptivePharmacokineticBrixModel::UNIT_STATIC_PARAMETER_S0
static const std::string UNIT_STATIC_PARAMETER_S0
Definition: mitkDescriptivePharmacokineticBrixModel.h:54
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::ModelBase::StaticParameterValuesType
std::vector< StaticParameterValueType > StaticParameterValuesType
Definition: mitkModelBase.h:71
mitk::DescriptivePharmacokineticBrixModel::POSITION_PARAMETER_tlag
static const unsigned int POSITION_PARAMETER_tlag
Definition: mitkDescriptivePharmacokineticBrixModel.h:61
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 >
MitkPharmacokineticsExports.h
mitk::DescriptivePharmacokineticBrixModel::POSITION_PARAMETER_kel
static const unsigned int POSITION_PARAMETER_kel
Definition: mitkDescriptivePharmacokineticBrixModel.h:58
mitk::DescriptivePharmacokineticBrixModel::NAME_PARAMETER_kep
static const std::string NAME_PARAMETER_kep
Definition: mitkDescriptivePharmacokineticBrixModel.h:43
mitkModelBase.h
mitk
DataCollection - Class to facilitate loading/accessing structured data.
Definition: RenderingTests.dox:1
mitk::DescriptivePharmacokineticBrixModel::UNIT_PARAMETER_kel
static const std::string UNIT_PARAMETER_kel
Definition: mitkDescriptivePharmacokineticBrixModel.h:51
mitk::DescriptivePharmacokineticBrixModel::UNIT_PARAMETER_kep
static const std::string UNIT_PARAMETER_kep
Definition: mitkDescriptivePharmacokineticBrixModel.h:50
mitk::DescriptivePharmacokineticBrixModel::NAME_STATIC_PARAMETER_Tau
static const std::string NAME_STATIC_PARAMETER_Tau
Definition: mitkDescriptivePharmacokineticBrixModel.h:46
mitk::DescriptivePharmacokineticBrixModel::Self
DescriptivePharmacokineticBrixModel Self
Definition: mitkDescriptivePharmacokineticBrixModel.h:28
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:49
mitk::DescriptivePharmacokineticBrixModel::NUMBER_OF_PARAMETERS
static const unsigned int NUMBER_OF_PARAMETERS
Definition: mitkDescriptivePharmacokineticBrixModel.h:63
mitk::DescriptivePharmacokineticBrixModel::NAME_STATIC_PARAMETER_S0
static const std::string NAME_STATIC_PARAMETER_S0
Definition: mitkDescriptivePharmacokineticBrixModel.h:47
mitk::DescriptivePharmacokineticBrixModel::UNIT_PARAMETER_tlag
static const std::string UNIT_PARAMETER_tlag
Definition: mitkDescriptivePharmacokineticBrixModel.h:52
mitk::DescriptivePharmacokineticBrixModel::UNIT_STATIC_PARAMETER_Tau
static const std::string UNIT_STATIC_PARAMETER_Tau
Definition: mitkDescriptivePharmacokineticBrixModel.h:53
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:56
mitk::DescriptivePharmacokineticBrixModel::POSITION_PARAMETER_kep
static const unsigned int POSITION_PARAMETER_kep
Definition: mitkDescriptivePharmacokineticBrixModel.h:57
mitk::DescriptivePharmacokineticBrixModel
Definition: mitkDescriptivePharmacokineticBrixModel.h:24
mitk::ModelBase::ParametersSizeType
ModelTraitsInterface::ParametersSizeType ParametersSizeType
Definition: mitkModelBase.h:65
mitk::ModelBase
Base class for (dynamic) models. A model can be used to calculate its signal given the discrete time ...
Definition: mitkModelBase.h:47