![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
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 __elxMovingShrinkingPyramid_h 00016 #define __elxMovingShrinkingPyramid_h 00017 00018 #include "itkMultiResolutionShrinkPyramidImageFilter.h" 00019 #include "elxIncludes.h" 00020 00021 00022 namespace elastix 00023 { 00024 using namespace itk; 00025 00037 template <class TElastix> 00038 class MovingShrinkingPyramid : 00039 public 00040 MultiResolutionShrinkPyramidImageFilter< 00041 ITK_TYPENAME MovingImagePyramidBase<TElastix>::InputImageType, 00042 ITK_TYPENAME MovingImagePyramidBase<TElastix>::OutputImageType >, 00043 public 00044 MovingImagePyramidBase<TElastix> 00045 { 00046 public: 00047 00049 typedef MovingShrinkingPyramid Self; 00050 typedef MultiResolutionShrinkPyramidImageFilter< 00051 typename MovingImagePyramidBase<TElastix>::InputImageType, 00052 typename MovingImagePyramidBase<TElastix>::OutputImageType > Superclass1; 00053 typedef MovingImagePyramidBase<TElastix> Superclass2; 00054 typedef SmartPointer<Self> Pointer; 00055 typedef SmartPointer<const Self> ConstPointer; 00056 00058 itkNewMacro( Self ); 00059 00061 itkTypeMacro( MovingShrinkingPyramid, MultiResolutionShrinkPyramidImageFilter ); 00062 00067 elxClassNameMacro( "MovingShrinkingImagePyramid" ); 00068 00070 itkStaticConstMacro( ImageDimension, unsigned int, Superclass1::ImageDimension ); 00071 00073 typedef typename Superclass1::InputImageType InputImageType; 00074 typedef typename Superclass1::OutputImageType OutputImageType; 00075 typedef typename Superclass1::InputImagePointer InputImagePointer; 00076 typedef typename Superclass1::OutputImagePointer OutputImagePointer; 00077 typedef typename Superclass1::InputImageConstPointer InputImageConstPointer; 00078 typedef typename Superclass1::ScheduleType ScheduleType; 00079 00081 typedef typename Superclass2::ElastixType ElastixType; 00082 typedef typename Superclass2::ElastixPointer ElastixPointer; 00083 typedef typename Superclass2::ConfigurationType ConfigurationType; 00084 typedef typename Superclass2::ConfigurationPointer ConfigurationPointer; 00085 typedef typename Superclass2::RegistrationType RegistrationType; 00086 typedef typename Superclass2::RegistrationPointer RegistrationPointer; 00087 typedef typename Superclass2::ITKBaseType ITKBaseType; 00088 00089 protected: 00090 00092 MovingShrinkingPyramid() {} 00094 virtual ~MovingShrinkingPyramid() {} 00095 00096 private: 00097 00099 MovingShrinkingPyramid( const Self& ); // purposely not implemented 00101 void operator=( const Self& ); // purposely not implemented 00102 00103 }; // end class MovingShrinkingPyramid 00104 00105 00106 } // end namespace elastix 00107 00108 #ifndef ITK_MANUAL_INSTANTIATION 00109 #include "elxMovingShrinkingPyramid.hxx" 00110 #endif 00111 00112 #endif // end #ifndef __elxMovingShrinkingPyramid_h 00113
Generated on 24-05-2012 for elastix by ![]() |
![]() |