go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkMultiResolutionImageRegistrationMethodWithFeatures.h
Go to the documentation of this file.
00001 /*======================================================================
00002 
00003   This file is part of the elastix software.
00004 
00005   Copyright (c) University Medical Center Utrecht. All rights reserved.
00006   See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
00007   details.
00008 
00009      This software is distributed WITHOUT ANY WARRANTY; without even
00010      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00011      PURPOSE. See the above copyright notices for more information.
00012 
00013 ======================================================================*/
00014 
00015 #ifndef __itkMultiResolutionImageRegistrationMethodWithFeatures_h
00016 #define __itkMultiResolutionImageRegistrationMethodWithFeatures_h
00017 
00018 #include "itkMultiInputMultiResolutionImageRegistrationMethodBase.h"
00019 
00020 
00021 namespace itk
00022 {
00023 
00052 template <typename TFixedImage, typename TMovingImage>
00053 class ITK_EXPORT MultiResolutionImageRegistrationMethodWithFeatures :
00054   public MultiInputMultiResolutionImageRegistrationMethodBase<TFixedImage, TMovingImage>
00055 {
00056 public:
00058   typedef MultiResolutionImageRegistrationMethodWithFeatures Self;
00059   typedef MultiInputMultiResolutionImageRegistrationMethodBase<
00060     TFixedImage, TMovingImage>                               Superclass;
00061   typedef SmartPointer<Self>                                 Pointer;
00062   typedef SmartPointer<const Self>                           ConstPointer;
00063 
00065   itkNewMacro( Self );
00066 
00068   itkTypeMacro( MultiResolutionImageRegistrationMethodWithFeatures,
00069     MultiInputMultiResolutionImageRegistrationMethodBase );
00070 
00072   typedef typename Superclass::FixedImageType           FixedImageType;
00073   typedef typename Superclass::FixedImageConstPointer   FixedImageConstPointer;
00074   typedef typename Superclass::FixedImageRegionType     FixedImageRegionType;
00075   typedef typename Superclass::FixedImageRegionPyramidType  FixedImageRegionPyramidType;
00076   typedef typename Superclass::MovingImageType          MovingImageType;
00077   typedef typename Superclass::MovingImageConstPointer  MovingImageConstPointer;
00078 
00079   typedef typename Superclass::MetricType               MetricType;
00080   typedef typename Superclass::MetricPointer            MetricPointer;
00081   typedef typename Superclass::TransformType            TransformType;
00082   typedef typename Superclass::TransformPointer         TransformPointer;
00083   typedef typename Superclass::InterpolatorType         InterpolatorType;
00084   typedef typename Superclass::InterpolatorPointer      InterpolatorPointer;
00085   typedef typename Superclass::OptimizerType            OptimizerType;
00086   typedef typename OptimizerType::Pointer               OptimizerPointer;
00087   typedef typename Superclass::FixedImagePyramidType    FixedImagePyramidType;
00088   typedef typename Superclass::FixedImagePyramidPointer FixedImagePyramidPointer;
00089   typedef typename Superclass::MovingImagePyramidType   MovingImagePyramidType;
00090   typedef typename
00091     Superclass::MovingImagePyramidPointer               MovingImagePyramidPointer;
00092 
00093   typedef typename Superclass::TransformOutputType      TransformOutputType;
00094   typedef typename Superclass::TransformOutputPointer   TransformOutputPointer;
00095   typedef typename
00096     Superclass::TransformOutputConstPointer             TransformOutputConstPointer;
00097 
00098   typedef typename Superclass::ParametersType           ParametersType;
00099   typedef typename Superclass::DataObjectPointer        DataObjectPointer;
00100 
00101 protected:
00102 
00104   MultiResolutionImageRegistrationMethodWithFeatures(){};
00105 
00107   virtual ~MultiResolutionImageRegistrationMethodWithFeatures() {};
00108 
00112   virtual void CheckPyramids( void ) throw (ExceptionObject);
00113 
00114 private:
00115   MultiResolutionImageRegistrationMethodWithFeatures(const Self&); // purposely not implemented
00116   void operator=(const Self&); // purposely not implemented
00117 
00118 }; // end class MultiResolutionImageRegistrationMethodWithFeatures
00119 
00120 
00121 } // end namespace itk
00122 
00123 #ifndef ITK_MANUAL_INSTANTIATION
00124 #include "itkMultiResolutionImageRegistrationMethodWithFeatures.txx"
00125 #endif
00126 
00127 #endif // end #ifndef __itkMultiResolutionImageRegistrationMethodWithFeatures_h


Generated on 24-10-2011 for elastix by doxygen 1.7.4 elastix logo