18 #ifndef __itkMultiResolutionPDEDeformableRegistration_h
19 #define __itkMultiResolutionPDEDeformableRegistration_h
80 template<
class TFixedImage,
class TMovingImage,
class TDisplacementField,
class TRealType =
float >
113 #ifdef ITKV3_COMPATIBILITY
114 typedef TDisplacementField DeformationFieldType;
115 typedef typename DeformationFieldType::Pointer DeformationFieldPointer;
119 itkStaticConstMacro(ImageDimension,
unsigned int, FixedImageType::ImageDimension);
161 this->m_InitialDisplacementField = ptr;
174 {
return this->GetOutput(); }
176 #ifdef ITKV3_COMPATIBILITY
177 virtual void SetInitialDeformationField(DisplacementFieldType *ptr)
179 this->SetInitialDisplacementField(ptr);
182 virtual void SetArbitraryInitialDeformationField(DisplacementFieldType *ptr)
184 this->SetArbitraryInitialDisplacementField(ptr);
188 const DeformationFieldType * GetDeformationField(
void)
190 return itkDynamicCastInDebugMode<DeformationFieldType *> (this->GetDisplacementField());
200 virtual std::vector< SmartPointer< DataObject > >::size_type GetNumberOfValidRequiredInputs()
const;
203 itkSetObjectMacro(RegistrationFilter, RegistrationType);
204 itkGetModifiableObjectMacro(RegistrationFilter, RegistrationType);
208 itkSetObjectMacro(FixedImagePyramid, FixedImagePyramidType);
209 itkGetModifiableObjectMacro(FixedImagePyramid, FixedImagePyramidType);
213 itkSetObjectMacro(MovingImagePyramid, MovingImagePyramidType);
214 itkGetModifiableObjectMacro(MovingImagePyramid, MovingImagePyramidType);
218 virtual void SetNumberOfLevels(
unsigned int num);
221 itkGetConstReferenceMacro(NumberOfLevels,
unsigned int);
224 itkGetConstReferenceMacro(CurrentLevel,
unsigned int);
227 itkSetObjectMacro(FieldExpander, FieldExpanderType);
228 itkGetModifiableObjectMacro(FieldExpander, FieldExpanderType);
232 itkSetMacro(NumberOfIterations, NumberOfIterationsType);
233 itkSetVectorMacro(NumberOfIterations,
unsigned int, m_NumberOfLevels);
237 itkGetConstReferenceMacro(NumberOfIterations, NumberOfIterationsType);
240 virtual void StopRegistration();
243 MultiResolutionPDEDeformableRegistration();
246 void PrintSelf(std::ostream & os, Indent indent)
const;
250 virtual void GenerateData();
255 virtual void GenerateInputRequestedRegion();
263 virtual void GenerateOutputInformation();
268 virtual void EnlargeOutputRequestedRegion(DataObject *ptr);
284 void operator=(
const Self &);
303 #ifndef ITK_MANUAL_INSTANTIATION
304 #include "itkMultiResolutionPDEDeformableRegistration.hxx"