15 #ifndef __itkMultiInputMultiResolutionImageRegistrationMethodBase_h
16 #define __itkMultiInputMultiResolutionImageRegistrationMethodBase_h
25 #define itkSimpleSetMacro(_name,_type) \
26 virtual void Set##_name( _type _arg ) \
28 this->Set##_name ( _arg, 0 ); \
32 #define itkSetNumberOfMacro(_name) \
33 virtual void SetNumberOf##_name##s(unsigned int _arg) \
35 if ( this->m_##_name##s.size() != _arg ) \
37 this->m_##_name##s.resize( _arg ); \
43 #define itkGetNumberOfMacro(_name) \
44 virtual unsigned int GetNumberOf##_name##s(void) const \
46 return this->m_##_name##s.size(); \
73 template <
typename TFixedImage,
typename TMovingImage>
151 virtual void SetFixedImage(
const FixedImageType * _arg,
unsigned int pos );
152 virtual const FixedImageType * GetFixedImage(
unsigned int pos )
const;
154 {
return this->GetFixedImage( 0 ); }
160 virtual void SetFixedImageRegion( FixedImageRegionType _arg,
unsigned int pos );
161 virtual const FixedImageRegionType & GetFixedImageRegion(
unsigned int pos )
const;
163 {
return this->GetFixedImageRegion( 0 ); }
169 virtual void SetFixedImagePyramid( FixedImagePyramidType * _arg,
unsigned int pos );
170 virtual FixedImagePyramidType * GetFixedImagePyramid(
unsigned int pos )
const;
172 {
return this->GetFixedImagePyramid( 0 ); }
178 virtual void SetMovingImage(
const MovingImageType * _arg,
unsigned int pos );
179 virtual const MovingImageType * GetMovingImage(
unsigned int pos )
const;
181 {
return this->GetMovingImage( 0 ); }
187 virtual void SetMovingImagePyramid( MovingImagePyramidType * _arg,
unsigned int pos );
188 virtual MovingImagePyramidType * GetMovingImagePyramid(
unsigned int pos )
const;
190 {
return this->GetMovingImagePyramid( 0 ); }
196 virtual void SetInterpolator( InterpolatorType * _arg,
unsigned int pos );
197 virtual InterpolatorType * GetInterpolator(
unsigned int pos )
const;
199 {
return this->GetInterpolator( 0 ); }
205 virtual void SetFixedImageInterpolator( FixedImageInterpolatorType * _arg,
unsigned int pos );
206 virtual FixedImageInterpolatorType * GetFixedImageInterpolator(
unsigned int pos )
const;
208 {
return this->GetFixedImageInterpolator( 0 ); }
214 virtual void SetMetric( MetricType * _arg );
217 itkGetObjectMacro( MultiInputMetric, MultiInputMetricType );
222 unsigned long GetMTime(
void )
const;
233 void PrintSelf( std::ostream& os, Indent indent )
const;
238 virtual void GenerateData();
244 virtual void Initialize() throw (ExceptionObject);
247 virtual
void PreparePyramids(
void );
252 virtual
void CheckPyramids(
void ) throw (ExceptionObject);
255 virtual
void CheckOnInitialize(
void ) throw (ExceptionObject);
274 void operator=(const Self&);
283 #undef itkSetNumberOfMacro
284 #undef itkGetNumberOfMacro
285 #undef itkSimpleSetMacro
287 #ifndef ITK_MANUAL_INSTANTIATION
288 #include "itkMultiInputMultiResolutionImageRegistrationMethodBase.txx"
291 #endif // end #ifndef __itkMultiInputMultiResolutionImageRegistrationMethodBase_h
Base class for multi-resolution image registration methods.
MetricType::InterpolatorType InterpolatorType
RegistrationBase< TElastix >::MovingImageType MovingImageType
FixedImageType::RegionType FixedImageRegionType
MultiResolutionPyramidImageFilter< FixedImageType, FixedImageType > FixedImagePyramidType
MultiResolutionPyramidImageFilter< MovingImageType, MovingImageType > MovingImagePyramidType
RegistrationBase< TElastix >::FixedImageType FixedImageType