Medical Imaging Interaction Toolkit  2018.4.99-87d68d9f
Medical Imaging Interaction Toolkit
mitkNumericTwoTissueCompartmentModel.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 MITKNUMERICTWOTISSUECOMPARTMENTMODEL_H
14 #define MITKNUMERICTWOTISSUECOMPARTMENTMODEL_H
15 
16 #include "mitkAIFBasedModelBase.h"
18 
19 
20 namespace mitk
21 {
23  {
24 
25  public:
30 
32  itkFactorylessNewMacro(Self);
33  itkCloneMacro(Self);
34 
37 
38  typedef std::vector<double> state_type;
39 
40 
42  static const std::string MODEL_DISPLAY_NAME;
43 
44  static const std::string NAME_PARAMETER_K1;
45  static const std::string NAME_PARAMETER_k2;
46  static const std::string NAME_PARAMETER_k3;
47  static const std::string NAME_PARAMETER_k4;
48  static const std::string NAME_PARAMETER_VB;
49 
50  static const std::string UNIT_PARAMETER_K1;
51  static const std::string UNIT_PARAMETER_k2;
52  static const std::string UNIT_PARAMETER_k3;
53  static const std::string UNIT_PARAMETER_k4;
54  static const std::string UNIT_PARAMETER_VB;
55 
56  static const unsigned int POSITION_PARAMETER_K1;
57  static const unsigned int POSITION_PARAMETER_k2;
58  static const unsigned int POSITION_PARAMETER_k3;
59  static const unsigned int POSITION_PARAMETER_k4;
60  static const unsigned int POSITION_PARAMETER_VB;
61 
62  static const unsigned int NUMBER_OF_PARAMETERS;
63 
64  std::string GetModelDisplayName() const override;
65 
66  std::string GetModelType() const override;
67 
68  ParameterNamesType GetParameterNames() const override;
69  ParametersSizeType GetNumberOfParameters() const override;
70 
71  ParamterUnitMapType GetParameterUnits() const override;
72 
73  protected:
76 
81  itk::LightObject::Pointer InternalClone() const override;
82 
83  ModelResultType ComputeModelfunction(const ParametersType& parameters) const override;
84 
85  void PrintSelf(std::ostream& os, ::itk::Indent indent) const override;
86 
87  private:
88 
89 
90  //No copy constructor allowed
91  NumericTwoTissueCompartmentModel(const Self& source);
92  void operator=(const Self&); //purposely not implemented
93 
94  };
95 }
96 
97 #endif // MITKNUMERICTWOTISSUECOMPARTMENTMODEL_H
Base class for (dynamic) models. A model can be used to calculate its signal given the discrete time ...
Definition: mitkModelBase.h:47
ModelTraitsInterface::ParametersType ParametersType
Definition: mitkModelBase.h:59
#define MITKPHARMACOKINETICS_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
ModelTraitsInterface::ParametersSizeType ParametersSizeType
Definition: mitkModelBase.h:65
ModelTraitsInterface::ModelResultType ModelResultType
Definition: mitkModelBase.h:55
ModelTraitsInterface::ParameterNamesType ParameterNamesType
Definition: mitkModelBase.h:64
Base Class for all physiological perfusion models using an Aterial Input Function All AIF based model...
std::map< ParameterNameType, std::string > ParamterUnitMapType