Medical Imaging Interaction Toolkit  2018.4.99-f51274ea
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 __MODEL_FACTORY_BASE_H
14 #define __MODEL_FACTORY_BASE_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 // __MODEL_FACTORY_BASE_H
Base class for (dynamic) models. A model can be used to calculate its signal given the discrete time ...
Definition: mitkModelBase.h:47
ModelTraitsInterface::DerivedParamterUnitMapType DerivedParamterUnitMapType
std::map< ParameterNameType, double > DerivedParamterScaleMapType
ParametersType::SizeValueType ParametersSizeType
std::map< ParameterNameType, double > ParamterScaleMapType
ModelTraitsInterface::ParametersSizeType ParametersSizeType
DataCollection - Class to facilitate loading/accessing structured data.
ModelTraitsInterface::DerivedParamterScaleMapType DerivedParamterScaleMapType
ModelTraitsInterface::DerivedParameterNamesType DerivedParameterNamesType
#define MITKMODELFIT_EXPORT
ModelBaseType::Pointer ModelBasePointer
itk::Array< ParameterValueType > ParametersType
std::vector< ParameterNameType > ParameterNamesType
ParameterNamesType DerivedParameterNamesType
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:49
ModelTraitsInterface::FunctionStringType FunctionStringType
ModelTraitsInterface::ModellClassIDType ModellClassIDType
Data class that stores all information about a modelfit that is relevant to the visualization and sto...
ModelTraitsInterface::DerivedParametersSizeType DerivedParametersSizeType
ModelTraitsInterface::ParamterScaleMapType ParamterScaleMapType
ModelTraitsInterface::ParameterNamesType ParameterNamesType
ModelTraitsInterface::ParameterNameType ParameterNameType
ParametersSizeType DerivedParametersSizeType
ModelTraitsInterface::ParamterUnitMapType ParamterUnitMapType
std::map< ParameterNameType, std::string > ParamterUnitMapType
std::map< ParameterNameType, std::string > DerivedParamterUnitMapType