Medical Imaging Interaction Toolkit  2022.04.99-194dd5d8
Medical Imaging Interaction Toolkit
mitkTwoStepLinearModel.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 MITKTWOSTEPLINEARMODEL_H
14 #define MITKTWOSTEPLINEARMODEL_H
15 
16 #include "mitkModelBase.h"
17 
19 
20 namespace mitk
21 {
22 
24  {
25 
26  public:
31 
32  typedef Superclass::ParameterNameType ParameterNameType;
33  typedef Superclass::ParametersSizeType ParametersSizeType;
34 
36  itkFactorylessNewMacro(Self);
37  itkCloneMacro(Self);
38 
40  itkTypeMacro(TwoStepLinearModel, ModelBase)
41 
42  static const std::string MODELL_NAME;
43  static const std::string NAME_PARAMETER_y1;
44  static const std::string NAME_PARAMETER_t;
45  static const std::string NAME_PARAMETER_a1;
46  static const std::string NAME_PARAMETER_a2;
47 
48  static const unsigned int POSITION_PARAMETER_y1;
49  static const unsigned int POSITION_PARAMETER_t;
50  static const unsigned int POSITION_PARAMETER_a1;
51  static const unsigned int POSITION_PARAMETER_a2;
52 
53  static const unsigned int NUMBER_OF_PARAMETERS;
54 
55  virtual std::string GetModelDisplayName() const override;
56 
57  virtual std::string GetModelType() const override;
58 
59  virtual FunctionStringType GetFunctionString() const override;
60 
61  virtual std::string GetXName() const override;
62 
63  virtual ParameterNamesType GetParameterNames() const override;
64 
65  virtual ParametersSizeType GetNumberOfParameters() const override;
66 
67  virtual ParameterNamesType GetStaticParameterNames() const override;
68 
69  virtual ParametersSizeType GetNumberOfStaticParameters() const override;
70 
71  virtual ParameterNamesType GetDerivedParameterNames() const override;
72 
73  virtual ParametersSizeType GetNumberOfDerivedParameters() const override;
74 
75 
76  protected:
78  virtual ~TwoStepLinearModel(){};
79 
80 
85  virtual itk::LightObject::Pointer InternalClone() const;
86 
87  virtual ModelResultType ComputeModelfunction(const ParametersType& parameters) const;
88  virtual DerivedParameterMapType ComputeDerivedParameters(const mitk::ModelBase::ParametersType&
89  parameters) const;
90 
91  virtual void SetStaticParameter(const ParameterNameType& name,
92  const StaticParameterValuesType& values);
93  virtual StaticParameterValuesType GetStaticParameterValue(const ParameterNameType& name) const;
94 
95  private:
96 
97  //No copy constructor allowed
98  TwoStepLinearModel(const Self& source);
99  void operator=(const Self&); //purposely not implemented
100 
101  };
102 }
103 
104 
105 #endif // MITKTWOSTEPLINEARMODEL_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
itk::SmartPointer< const Self > ConstPointer
#define MITKPHARMACOKINETICS_EXPORT
STL namespace.
DataCollection - Class to facilitate loading/accessing structured data.
std::vector< StaticParameterValueType > StaticParameterValuesType
Definition: mitkModelBase.h:71
std::map< ParameterNameType, DerivedParameterValueType > DerivedParameterMapType
Definition: mitkModelBase.h:75
ModelTraitsInterface::ModelResultType ModelResultType
Definition: mitkModelBase.h:55
ModelTraitsInterface::ParameterNamesType ParameterNamesType
Definition: mitkModelBase.h:64
Superclass::ParametersSizeType ParametersSizeType
itk::SmartPointer< Self > Pointer
Superclass::ParameterNameType ParameterNameType