Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
mitkModelTraitsInterface.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 mitkModelTraitsInterface_h
14 #define mitkModelTraitsInterface_h
15 
16 #include "MitkModelFitExports.h"
17 
18 #include <itkArray.h>
19 #include <itkArray2D.h>
20 #include <itkObject.h>
21 
22 namespace mitk
23 {
25  {
26  public:
27 
28 
29  typedef itk::Array<double> ModelResultType;
30  using ParameterValueType = double;
31  typedef itk::Array<ParameterValueType> ParametersType;
32 
33  typedef std::string ParameterNameType;
34  typedef std::vector<ParameterNameType> ParameterNamesType;
35  typedef ParametersType::SizeValueType ParametersSizeType;
38 
39  typedef std::map<ParameterNameType, double> ParamterScaleMapType;
40  typedef std::map<ParameterNameType, std::string> ParamterUnitMapType;
41  typedef std::map<ParameterNameType, double> DerivedParamterScaleMapType;
42  typedef std::map<ParameterNameType, std::string> DerivedParamterUnitMapType;
43 
44  typedef std::string FunctionStringType;
45  typedef std::string ModellClassIDType;
46 
49  virtual ParameterNamesType GetParameterNames() const = 0;
52  virtual ParametersSizeType GetNumberOfParameters() const = 0;
53 
54  virtual ParamterScaleMapType GetParameterScales() const = 0;
55  virtual ParamterUnitMapType GetParameterUnits() const = 0;
56 
59  virtual DerivedParameterNamesType GetDerivedParameterNames() const = 0;
62  virtual DerivedParametersSizeType GetNumberOfDerivedParameters() const = 0;
63 
64  virtual DerivedParamterScaleMapType GetDerivedParameterScales() const = 0;
65  virtual DerivedParamterUnitMapType GetDerivedParameterUnits() const = 0;
66 
67  virtual std::string GetModelDisplayName() const = 0;
68 
69  virtual std::string GetModelType() const = 0;
70 
71  virtual FunctionStringType GetFunctionString() const = 0;
72 
73  virtual ModellClassIDType GetClassID() const = 0;
74 
75  virtual std::string GetXName() const = 0;
76 
77  virtual std::string GetXAxisName() const = 0;
78  virtual std::string GetXAxisUnit() const = 0;
79 
80  virtual std::string GetYAxisName() const = 0;
81  virtual std::string GetYAxisUnit() const = 0;
82 
83  protected:
85  virtual ~ModelTraitsInterface() {};
86 
87  private:
88 
89  //No copy constructor allowed
91  void operator=(const ModelTraitsInterface&); //purposely not implemented
92  };
93 }
94 
95 #endif
mitk::ModelTraitsInterface::ParamterUnitMapType
std::map< ParameterNameType, std::string > ParamterUnitMapType
Definition: mitkModelTraitsInterface.h:40
mitk::ModelTraitsInterface::ParamterScaleMapType
std::map< ParameterNameType, double > ParamterScaleMapType
Definition: mitkModelTraitsInterface.h:39
mitk::ModelTraitsInterface::ParametersSizeType
ParametersType::SizeValueType ParametersSizeType
Definition: mitkModelTraitsInterface.h:35
MitkModelFitExports.h
mitk::ModelTraitsInterface::ModelTraitsInterface
ModelTraitsInterface()
Definition: mitkModelTraitsInterface.h:84
mitk::ModelTraitsInterface::DerivedParameterNamesType
ParameterNamesType DerivedParameterNamesType
Definition: mitkModelTraitsInterface.h:36
MITKMODELFIT_EXPORT
#define MITKMODELFIT_EXPORT
Definition: MitkModelFitExports.h:15
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::ModelTraitsInterface::DerivedParamterScaleMapType
std::map< ParameterNameType, double > DerivedParamterScaleMapType
Definition: mitkModelTraitsInterface.h:41
mitk::ModelTraitsInterface::ParameterNamesType
std::vector< ParameterNameType > ParameterNamesType
Definition: mitkModelTraitsInterface.h:34
mitk::ModelTraitsInterface::ModellClassIDType
std::string ModellClassIDType
Definition: mitkModelTraitsInterface.h:45
mitk::ModelTraitsInterface
Definition: mitkModelTraitsInterface.h:24
mitk::ModelTraitsInterface::ParameterValueType
double ParameterValueType
Definition: mitkModelTraitsInterface.h:30
mitk::ModelTraitsInterface::FunctionStringType
std::string FunctionStringType
Definition: mitkModelTraitsInterface.h:44
mitk::ModelTraitsInterface::DerivedParamterUnitMapType
std::map< ParameterNameType, std::string > DerivedParamterUnitMapType
Definition: mitkModelTraitsInterface.h:42
mitk::ModelTraitsInterface::ParametersType
itk::Array< ParameterValueType > ParametersType
Definition: mitkModelTraitsInterface.h:31
mitk::ModelTraitsInterface::ParameterNameType
std::string ParameterNameType
Definition: mitkModelTraitsInterface.h:33
mitk::ModelTraitsInterface::ModelResultType
itk::Array< double > ModelResultType
Definition: mitkModelTraitsInterface.h:29
mitk::ModelTraitsInterface::DerivedParametersSizeType
ParametersSizeType DerivedParametersSizeType
Definition: mitkModelTraitsInterface.h:37
mitk::ModelTraitsInterface::~ModelTraitsInterface
virtual ~ModelTraitsInterface()
Definition: mitkModelTraitsInterface.h:85