Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkModelParameterizerBase.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 mitkModelParameterizerBase_h
14 #define mitkModelParameterizerBase_h
15 
16 #include <itkObject.h>
17 #include <itkIndex.h>
18 
19 #include <mitkModelBase.h>
21 
22 #include <MitkModelFitExports.h>
23 
24 namespace mitk
25 {
37  {
38  public:
40  typedef itk::Object Superclass;
43 
44  itkTypeMacro(ModelParameterizerBase, itk::Object);
45 
48 
54 
55  typedef ::itk::Index<3> IndexType;
56 
62 
68  virtual StaticParameterMapType GetLocalStaticParameters(const IndexType& currentPosition) const = 0;
69 
79 
85  ParametersType GetInitialParameterization(const IndexType& currentPosition) const;
86 
92 
98 
108  virtual ModelBasePointer GenerateParameterizedModel(const IndexType& currentPosition) const = 0;
109 
118 
119  itkSetMacro(DefaultTimeGrid, TimeGridType);
120  itkGetConstReferenceMacro(DefaultTimeGrid, TimeGridType);
121 
122  protected:
123 
124 
126 
128 
130 
133  private:
134 
135  //No copy constructor allowed
136  ModelParameterizerBase(const Self& source);
137  void operator=(const Self&); //purposely not implemented
138  };
139 }
140 
141 #endif
#define MITKMODELFIT_EXPORT
Base class for (dynamic) models.
Definition: mitkModelBase.h:56
std::map< ParameterNameType, StaticParameterValuesType > StaticParameterMapType
Definition: mitkModelBase.h:80
std::vector< StaticParameterValueType > StaticParameterValuesType
Definition: mitkModelBase.h:79
double StaticParameterValueType
Definition: mitkModelBase.h:78
itk::Array< double > TimeGridType
Type defining the time grid used by models.
Definition: mitkModelBase.h:70
ModelTraitsInterface::ParametersType ParametersType
Definition: mitkModelBase.h:67
void SetInitialParameterizationDelegate(const InitialParameterizationDelegateBase *delegate)
Sets a custom strategy for defining the initial parameterization.
ParametersType GetInitialParameterization(const IndexType &currentPosition) const
Returns the initial parameterization for a specific image position.
ModelBaseType::TimeGridType TimeGridType
virtual ParametersType GetDefaultInitialParameterization() const =0
Returns the default initial parameterization defined by the model developer.
itk::SmartPointer< const Self > ConstPointer
InitialParameterizationDelegateBase::ConstPointer m_InitialDelegate
virtual StaticParameterMapType GetGlobalStaticParameters() const =0
Returns the global static parameters that are the same for all positions.
ParametersType GetInitialParameterization() const
Returns the initial parameterization for fitting.
virtual StaticParameterMapType GetLocalStaticParameters(const IndexType &currentPosition) const =0
Returns the local static parameters specific to the given image position.
ModelBaseType::StaticParameterValueType StaticParameterValueType
ModelBaseType::ParametersType ParametersType
ModelBaseType::StaticParameterValuesType StaticParameterValuesType
virtual ModelBasePointer GenerateParameterizedModel(const IndexType &currentPosition) const =0
Generates a fully parameterized model instance for the given position.
ModelBaseType::StaticParameterMapType StaticParameterMapType
virtual ModelBasePointer GenerateParameterizedModel() const =0
Generates a model instance with only global static parameterization.
Pure virtual interface that defines the traits (metadata) of a model used for fitting.
Find image slices visible on a given plane.