Medical Imaging Interaction Toolkit  2023.12.99-101158b3
Medical Imaging Interaction Toolkit
mitkModelFactoryBase.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 mitkModelFactoryBase_h
14 #define mitkModelFactoryBase_h
15 
16 #include <itkObject.h>
17 
18 #include "mitkModelBase.h"
21 #include "mitkModelFitInfo.h"
23 
24 #include "MitkModelFitExports.h"
25 
26 namespace mitk
27 {
32  class MITKMODELFIT_EXPORT ModelFactoryBase : public itk::Object, public ModelTraitsInterface
33  {
34  public:
35  /*typedef ModelFactoryBase Self;
36  typedef itk::Object Superclass;
37  typedef itk::SmartPointer< Self > Pointer;
38  typedef itk::SmartPointer< const Self > ConstPointer;
39 */
41 
44 
48 
53 
58 
59  virtual ModelBasePointer CreateModel() const = 0;
60 
63  ModelParameterizerBase::Pointer CreateParameterizer(const modelFit::ModelFitInfo* fit) const;
64 
69  virtual ConstraintCheckerBase::Pointer CreateDefaultConstraints() const = 0;
70 
73  virtual ParametersType GetDefaultInitialParameterization() const = 0;
74 
75  protected:
76  virtual ModelParameterizerBase::Pointer DoCreateParameterizer(const modelFit::ModelFitInfo* fit)
77  const = 0;
78 
80  ~ModelFactoryBase() override;
81 
82  private:
83 
84  //No copy constructor allowed
85  ModelFactoryBase(const Self& source);
86  void operator=(const Self&); //purposely not implemented
87  };
88 }
89 
90 #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
mitkModelTraitsInterface.h
mitk::ModelTraitsInterface::ParametersSizeType
ParametersType::SizeValueType ParametersSizeType
Definition: mitkModelTraitsInterface.h:35
MitkModelFitExports.h
mitk::ModelFactoryBase::ParameterNameType
ModelTraitsInterface::ParameterNameType ParameterNameType
Definition: mitkModelFactoryBase.h:45
mitk::modelFit::ModelFitInfo
Data class that stores all information about a modelfit that is relevant to the visualization and sto...
Definition: mitkModelFitInfo.h:36
mitkConstraintCheckerBase.h
mitk::ModelFactoryBase::ModelBaseType
ModelBase ModelBaseType
Definition: mitkModelFactoryBase.h:42
mitk::ModelFactoryBase::DerivedParamterUnitMapType
ModelTraitsInterface::DerivedParamterUnitMapType DerivedParamterUnitMapType
Definition: mitkModelFactoryBase.h:57
itk::SmartPointer< Self >
mitk::ModelTraitsInterface::DerivedParameterNamesType
ParameterNamesType DerivedParameterNamesType
Definition: mitkModelTraitsInterface.h:36
mitkClassMacroItkParent
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:45
mitk::ModelFactoryBase::ParameterNamesType
ModelTraitsInterface::ParameterNamesType ParameterNamesType
Definition: mitkModelFactoryBase.h:46
MITKMODELFIT_EXPORT
#define MITKMODELFIT_EXPORT
Definition: MitkModelFitExports.h:15
mitkModelBase.h
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::ModelFactoryBase::DerivedParametersSizeType
ModelTraitsInterface::DerivedParametersSizeType DerivedParametersSizeType
Definition: mitkModelFactoryBase.h:55
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::ModelFactoryBase
Definition: mitkModelFactoryBase.h:32
mitk::ModelTraitsInterface
Definition: mitkModelTraitsInterface.h:24
mitk::ModelFactoryBase::FunctionStringType
ModelTraitsInterface::FunctionStringType FunctionStringType
Definition: mitkModelFactoryBase.h:51
mitkModelFitInfo.h
mitk::ModelFactoryBase::ParamterUnitMapType
ModelTraitsInterface::ParamterUnitMapType ParamterUnitMapType
Definition: mitkModelFactoryBase.h:50
mitk::ModelFactoryBase::ParamterScaleMapType
ModelTraitsInterface::ParamterScaleMapType ParamterScaleMapType
Definition: mitkModelFactoryBase.h:49
mitk::ModelTraitsInterface::FunctionStringType
std::string FunctionStringType
Definition: mitkModelTraitsInterface.h:44
mitk::ModelFactoryBase::ParametersSizeType
ModelTraitsInterface::ParametersSizeType ParametersSizeType
Definition: mitkModelFactoryBase.h:47
mitk::ModelTraitsInterface::DerivedParamterUnitMapType
std::map< ParameterNameType, std::string > DerivedParamterUnitMapType
Definition: mitkModelTraitsInterface.h:42
mitk::ModelTraitsInterface::ParametersType
itk::Array< ParameterValueType > ParametersType
Definition: mitkModelTraitsInterface.h:31
mitkModelParameterizerBase.h
mitk::ModelTraitsInterface::ParameterNameType
std::string ParameterNameType
Definition: mitkModelTraitsInterface.h:33
mitk::ModelBase
Base class for (dynamic) models. A model can be used to calculate its signal given the discrete time ...
Definition: mitkModelBase.h:47
mitk::ModelFactoryBase::ModelBasePointer
ModelBaseType::Pointer ModelBasePointer
Definition: mitkModelFactoryBase.h:43
mitk::ModelFactoryBase::DerivedParamterScaleMapType
ModelTraitsInterface::DerivedParamterScaleMapType DerivedParamterScaleMapType
Definition: mitkModelFactoryBase.h:56
mitk::ModelFactoryBase::DerivedParameterNamesType
ModelTraitsInterface::DerivedParameterNamesType DerivedParameterNamesType
Definition: mitkModelFactoryBase.h:54
mitk::ModelFactoryBase::ModellClassIDType
ModelTraitsInterface::ModellClassIDType ModellClassIDType
Definition: mitkModelFactoryBase.h:52
mitk::ModelTraitsInterface::DerivedParametersSizeType
ParametersSizeType DerivedParametersSizeType
Definition: mitkModelTraitsInterface.h:37