go home Home | Main Page | Topics | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxElastixMain.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright UMC Utrecht and contributors
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef elxElastixMain_h
19#define elxElastixMain_h
20
21#include "elxMainBase.h"
22
23
24namespace elastix
25{
26
67
68class ElastixMain : public MainBase
69{
70public:
72
76 using Pointer = itk::SmartPointer<Self>;
77 using ConstPointer = itk::SmartPointer<const Self>;
78
80 itkNewMacro(Self);
81
84
89 itkSetObjectMacro(FixedImageContainer, DataObjectContainerType);
91
96 itkSetObjectMacro(FixedMaskContainer, DataObjectContainerType);
97 itkSetObjectMacro(MovingMaskContainer, DataObjectContainerType);
100
101 itkSetConstObjectMacro(FixedPoints, itk::Object);
102 itkSetConstObjectMacro(MovingPoints, itk::Object);
103
109 itkGetModifiableObjectMacro(FinalTransform, itk::Object);
110
115 itkSetObjectMacro(InitialTransform, itk::Object);
116 itkGetModifiableObjectMacro(InitialTransform, itk::Object);
117
120 virtual void
122
123 virtual const FlatDirectionCosinesType &
125
127 void
128 SetElastixLevel(unsigned int level);
129
130 unsigned int
132
134 void
135 SetTotalNumberOfElastixLevels(unsigned int levels);
136
137 unsigned int
139
140 using Superclass::Run;
141
147 int
148 Run() override;
149
150 int
152 const ParameterMapType & inputMap,
153 const std::vector<ParameterMapType> & initialTransformParameterMaps);
154
156 virtual ParameterMapType
158
159protected:
161 ~ElastixMain() override;
162
167 int
168 InitDBIndex() override;
169
171 void
172 GetImageInformationFromFile(const std::string & filename, ImageDimensionType & imageDimension) const;
173
174private:
180
181 itk::SmartPointer<const itk::Object> m_FixedPoints{ nullptr };
182 itk::SmartPointer<const itk::Object> m_MovingPoints{ nullptr };
183
184
187
190
195
197};
198
199} // end namespace elastix
200
201#endif // end #ifndef elxElastixMain_h
void SetElastixLevel(unsigned int level)
itk::SmartPointer< const Self > ConstPointer
itkGetModifiableObjectMacro(InitialTransform, itk::Object)
DataObjectContainerPointer m_MovingMaskContainer
itk::SmartPointer< Self > Pointer
itk::SmartPointer< const itk::Object > m_MovingPoints
itk::SmartPointer< const itk::Object > m_FixedPoints
~ElastixMain() override
FlatDirectionCosinesType m_OriginalFixedImageDirectionFlat
ParameterMapType m_TransformParameterMap
int RunWithInitialTransformParameterMaps(const ArgumentMapType &argmap, const ParameterMapType &inputMap, const std::vector< ParameterMapType > &initialTransformParameterMaps)
unsigned int GetTotalNumberOfElastixLevels() const
DataObjectContainerPointer m_FixedImageContainer
DataObjectContainerPointer m_FixedMaskContainer
itkGetModifiableObjectMacro(MovingMaskContainer, DataObjectContainerType)
virtual void SetOriginalFixedImageDirectionFlat(const FlatDirectionCosinesType &arg)
ITK_DISALLOW_COPY_AND_MOVE(ElastixMain)
virtual ParameterMapType GetTransformParameterMap() const
int InitDBIndex() override
itkGetModifiableObjectMacro(FixedImageContainer, DataObjectContainerType)
itkGetModifiableObjectMacro(FinalTransform, itk::Object)
int Run() override
void GetImageInformationFromFile(const std::string &filename, ImageDimensionType &imageDimension) const
DataObjectContainerPointer m_ResultImageContainer
itkOverrideGetNameOfClassMacro(ElastixMain)
unsigned int GetElastixLevel() const
virtual const FlatDirectionCosinesType & GetOriginalFixedImageDirectionFlat() const
itkGetModifiableObjectMacro(FixedMaskContainer, DataObjectContainerType)
ObjectPointer m_FinalTransform
ObjectPointer m_InitialTransform
void SetTotalNumberOfElastixLevels(unsigned int levels)
virtual int Run()=0
ElastixBase::FlatDirectionCosinesType FlatDirectionCosinesType
Definition elxMainBase.h:70
itk::ParameterMapInterface::ParameterMapType ParameterMapType
Definition elxMainBase.h:83
ComponentDatabase::ImageDimensionType ImageDimensionType
Definition elxMainBase.h:79
ElastixBase::DataObjectContainerType DataObjectContainerType
Definition elxMainBase.h:67
ElastixBase::DataObjectContainerPointer DataObjectContainerPointer
Definition elxMainBase.h:69
itk::Object::Pointer ObjectPointer
Definition elxMainBase.h:61
Configuration::CommandLineArgumentMapType ArgumentMapType
Definition elxMainBase.h:65


Generated on 26-02-2026 for elastix by doxygen 1.16.1 (669aeeefca743c148e2d935b3d3c69535c7491e6) elastix logo