Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkTwoCompartmentExchangeModel.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 mitkTwoCompartmentExchangeModel_h
14 #define mitkTwoCompartmentExchangeModel_h
15 
16 #include <mitkAIFBasedModelBase.h>
18 
19 
20 namespace mitk
21 {
40  {
41 
42  public:
47 
49  itkFactorylessNewMacro(Self);
50  itkCloneMacro(Self);
51 
54 
57  static const std::string NAME_PARAMETER_F;
58  static const std::string NAME_PARAMETER_PS;
59  static const std::string NAME_PARAMETER_ve;
60  static const std::string NAME_PARAMETER_vp;
61 
62  static const unsigned int POSITION_PARAMETER_F;
63  static const unsigned int POSITION_PARAMETER_PS;
64  static const unsigned int POSITION_PARAMETER_ve;
65  static const unsigned int POSITION_PARAMETER_vp;
66 
67  static const std::string UNIT_PARAMETER_F;
68  static const std::string UNIT_PARAMETER_PS;
69  static const std::string UNIT_PARAMETER_ve;
70  static const std::string UNIT_PARAMETER_vp;
71 
72  static const unsigned int NUMBER_OF_PARAMETERS;
73 
74  static const std::string MODEL_DISPLAY_NAME;
75 
76  static const std::string MODEL_TYPE;
77 
78  std::string GetModelDisplayName() const override;
79 
80  std::string GetModelType() const override;
81 
84 
86 
87 
88  protected:
91 
93 
95 
96  ModelResultType ComputeModelfunction(const ParametersType& parameters) const override;
97 
98  void PrintSelf(std::ostream& os, ::itk::Indent indent) const override;
99 
100  private:
101 
102  void operator=(const Self&); //purposely not implemented
103 
104 
105 
106 
107  };
108 }
109 
110 #endif
#define MITKPHARMACOKINETICS_EXPORT
Base class for all pharmacokinetic perfusion models that use an Arterial Input Function (AIF).
Base class for (dynamic) models.
Definition: mitkModelBase.h:56
ModelTraitsInterface::ParametersSizeType ParametersSizeType
Definition: mitkModelBase.h:73
ModelTraitsInterface::ParameterNamesType ParameterNamesType
Definition: mitkModelBase.h:72
ModelTraitsInterface::ModelResultType ModelResultType
Definition: mitkModelBase.h:63
ModelTraitsInterface::ParametersType ParametersType
Definition: mitkModelBase.h:67
std::map< ParameterNameType, std::string > ParamterUnitMapType
Map type associating parameter names to their unit strings.
Implementation of the two-compartment exchange model (2CXM) for MR perfusion pharmacokinetics.
void PrintSelf(std::ostream &os, ::itk::Indent indent) const override
std::string GetModelDisplayName() const override
Default implementation returns GetClassID as display name.
std::string GetModelType() const override
Default implementation returns "Unknown" as model type.
TwoCompartmentExchangeModel(const TwoCompartmentExchangeModel &source)
ParametersSizeType GetNumberOfParameters() const override
Returns the number of parameters that must be defined when using the model to compute the signal (Get...
mitkCloneMacro(TwoCompartmentExchangeModel)
itk::SmartPointer< const Self > ConstPointer
ParameterNamesType GetParameterNames() const override
Returns the names of parameters that must be defined when using the model to compute the signal (GetS...
ParamterUnitMapType GetParameterUnits() const override
Default implementation returns no unit string ("") for every defined parameter.
ModelResultType ComputeModelfunction(const ParametersType &parameters) const override
Computes the model function for the given parameters.
Find image slices visible on a given plane.