14 #ifndef __elxElastixTemplate_h
15 #define __elxElastixTemplate_h
18 #include "itkObject.h"
20 #include "itkObjectFactory.h"
21 #include "itkCommand.h"
23 #include "itkImageFileReader.h"
24 #include "itkImageToImageMetric.h"
56 #define elxGetBaseMacro( _name, _elxbasetype ) \
57 virtual _elxbasetype * GetElx##_name##Base( void ) const \
59 return this->GetElx##_name##Base( 0 ); \
61 _elxbasetype * GetElx##_name##Base( unsigned int idx ) const \
63 if( idx < this->GetNumberOf##_name##s() ) \
65 return dynamic_cast< _elxbasetype * >( \
66 this->Get##_name##Container()->ElementAt( idx ).GetPointer() ); \
108 template<
class TFixedImage,
class TMovingImage >
277 virtual int Run(
void );
297 itkGetConstMacro( IterationCounter,
unsigned int );
300 itkGetStringMacro( CurrentTransformParameterFileName );
303 virtual void SetConfigurations( std::vector< ConfigurationPointer > & configurations );
310 return Superclass2::GetConfiguration();
403 #undef elxGetBaseMacro
405 #ifndef ITK_MANUAL_INSTANTIATION
406 #include "elxElastixTemplate.hxx"
409 #endif // end #ifndef __elxElastixTemplate_h
elx::ImageSamplerBase< Self > ImageSamplerBaseType
Superclass2::MultipleImageLoader< FixedMaskType > FixedMaskLoaderType
virtual ResultImageType * GetResultImage(void) const
virtual bool GetOriginalFixedImageDirection(FixedImageDirectionType &direction) const
std::string m_CurrentTransformParameterFileName
DataObjectContainerType::Pointer DataObjectContainerPointer
unsigned char MaskPixelType
virtual void BeforeEachResolution(void)
Superclass2::MultipleImageLoader< MovingImageType > MovingImageLoaderType
itk::VectorContainer< unsigned int, std::string > FileNameContainerType
ResamplerBase< Self > ResamplerBaseType
virtual ConfigurationPointer GetConfiguration()
Superclass2::DataObjectContainerType DataObjectContainerType
AfterEachIterationCommandType::Pointer AfterEachIterationCommandPointer
The main elastix class, which connects components and invokes the BeforeRegistration(), BeforeEachResolution(), etc. methods.
AfterEachResolutionCommandType::Pointer AfterEachResolutionCommandPointer
MovingImageType InputImageType
virtual void SetOriginalFixedImageDirection(const FixedImageDirectionType &arg)
std::vector< ConfigurationPointer > m_Configurations
void CallInEachComponent(PtrToMemberFunction func)
AfterEachIterationCommandPointer m_AfterEachIterationCommand
virtual void BeforeRegistration(void)
This class is the elastix base class for all Optimizers.
OptimizerBase< Self > OptimizerBaseType
itk::DataObject DataObjectType
TimerPointer m_IterationTimer
RegistrationBase< Self > RegistrationBaseType
MovingImagePyramidBase< Self > MovingImagePyramidBaseType
virtual ParameterMapType GetTransformParametersMap(void) const
ResampleInterpolatorBase< Self > ResampleInterpolatorBaseType
This class is the elastix base class for all Registration schemes.
itk::SimpleMemberCommand< Self > AfterEachResolutionCommandType
FixedImageType::Pointer FixedImagePointer
The BaseComponent class is a class that all elastix components should inherit from.
itk::Image< MaskPixelType, MovingDimension > MovingMaskType
virtual void AfterEachResolution(void)
void operator=(const Self &)
elx::TransformBase< Self > TransformBaseType
TimerType::Pointer TimerPointer
itk::SmartPointer< Self > Pointer
itk::SmartPointer< const Self > ConstPointer
A class to time the different parts of the registration.
MovingMaskType::Pointer MovingMaskPointer
itk::VectorContainer< unsigned int, ObjectPointer > ObjectContainerType
ParameterFileParser::ParameterMapType ParameterMapType
MetricBase< Self > MetricBaseType
itk::SmartPointer< Self > Pointer
virtual void OpenIterationInfoFile(void)
Superclass2::DataObjectPointer DataObjectPointer
virtual void CreateTransformParameterFile(const std::string FileName, const bool ToLog)
This class is a base class for any image sampler.
itk::CostFunction::ParametersValueType CoordRepType
int(BaseComponentType::* PtrToMemberFunction2)(void)
Superclass2::MultipleImageLoader< MovingMaskType > MovingMaskLoaderType
MovingImageType OutputImageType
AfterEachResolutionCommandPointer m_AfterEachResolutionCommand
itk::Image< MaskPixelType, FixedDimension > FixedMaskType
virtual void AfterEachIteration(void)
virtual MovingImageType * GetMovingImage(void) const
This class is the elastix base class for all FixedImagePyramids.
FileNameContainerType::Pointer FileNameContainerPointer
Superclass2::ObjectContainerPointer ObjectContainerPointer
MovingImageType::Pointer MovingImagePointer
virtual FixedImageType * GetFixedImage(void) const
Superclass2::ConfigurationType ConfigurationType
virtual int ApplyTransform(void)
unsigned int m_IterationCounter
Superclass2::ObjectContainerType ObjectContainerType
FixedMaskType::Pointer FixedMaskPointer
itk::ParameterMapInterface::ParameterMapType ParameterMapType
virtual int SetResultImage(DataObjectPointer result_image)
itk::DataObject ResultImageType
virtual ~ElastixTemplate()
virtual void ConfigureComponents(Self *This)
virtual void SetConfigurations(std::vector< ConfigurationPointer > &configurations)
virtual void AfterRegistration(void)
virtual FixedMaskType * GetFixedMask(void) const
itk::SimpleMemberCommand< Self > AfterEachIterationCommandType
Superclass2::ObjectPointer ObjectPointer
Superclass2::FileNameContainerType FileNameContainerType
This class is the elastix base class for all ResampleInterpolators.
ObjectContainerType::Pointer ObjectContainerPointer
This class is the elastix base class for all MovingImagePyramids.
TFixedImage FixedImageType
This class is the elastix base class for all Interpolators.
FixedImagePyramidBase< Self > FixedImagePyramidBaseType
TimerPointer m_ResolutionTimer
Superclass2::MultipleImageLoader< FixedImageType > FixedImageLoaderType
BeforeEachResolutionCommandPointer m_BeforeEachResolutionCommand
A class that deals with user given parameters and command line arguments.
void(BaseComponentType::* PtrToMemberFunction)(void)
InterpolatorBase< Self > InterpolatorBaseType
itk::SimpleMemberCommand< Self > BeforeEachResolutionCommandType
BaseComponent BaseComponentType
BeforeEachResolutionCommandType::Pointer BeforeEachResolutionCommandPointer
virtual int BeforeAllTransformix(void)
std::ofstream m_IterationInfoFile
DataObjectType::Pointer DataObjectPointer
virtual int BeforeAll(void)
ConfigurationType::Pointer ConfigurationPointer
Superclass2::DataObjectType DataObjectType
Superclass2::FileNameContainerPointer FileNameContainerPointer
itk::ParameterMapInterface::ParameterMapType ParameterMapType
itk::VectorContainer< unsigned int, DataObjectPointer > DataObjectContainerType
Superclass2::ObjectType ObjectType
itkStaticConstMacro(Dimension, unsigned int, FixedImageType::ImageDimension)
Superclass2::ConfigurationPointer ConfigurationPointer
FixedImageType::DirectionType FixedImageDirectionType
ObjectType::Pointer ObjectPointer
virtual void CreateTransformParametersMap(void)
ParameterMapType m_TransformParametersMap
This class creates an interface for elastix.
TMovingImage MovingImageType
int CallInEachComponentInt(PtrToMemberFunction2 func)
virtual MovingMaskType * GetMovingMask(void) const
elxGetBaseMacro(FixedImagePyramid, FixedImagePyramidBaseType)
This class is the elastix base class for all Metrics.
Superclass2::DataObjectContainerPointer DataObjectContainerPointer