![]() |
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 __elxReducedDimensionBSplineResampleInterpolator_h 00016 #define __elxReducedDimensionBSplineResampleInterpolator_h 00017 00018 #include "itkReducedDimensionBSplineInterpolateImageFunction.h" 00019 #include "elxIncludes.h" 00020 00021 namespace elastix 00022 { 00023 using namespace itk; 00024 00051 template < class TElastix > 00052 class ReducedDimensionBSplineResampleInterpolator : 00053 public 00054 ReducedDimensionBSplineInterpolateImageFunction< 00055 ITK_TYPENAME ResampleInterpolatorBase<TElastix>::InputImageType, 00056 ITK_TYPENAME ResampleInterpolatorBase<TElastix>::CoordRepType, 00057 double >, //CoefficientType 00058 public ResampleInterpolatorBase<TElastix> 00059 { 00060 public: 00061 00063 typedef ReducedDimensionBSplineResampleInterpolator Self; 00064 typedef BSplineInterpolateImageFunction< 00065 typename ResampleInterpolatorBase<TElastix>::InputImageType, 00066 typename ResampleInterpolatorBase<TElastix>::CoordRepType, 00067 double > Superclass1; 00068 typedef ResampleInterpolatorBase<TElastix> Superclass2; 00069 typedef SmartPointer<Self> Pointer; 00070 typedef SmartPointer<const Self> ConstPointer; 00071 00073 itkNewMacro( Self ); 00074 00076 itkTypeMacro( ReducedDimensionBSplineResampleInterpolator, ReducedDimensionBSplineInterpolateImageFunction ); 00077 00082 elxClassNameMacro( "FinalReducedDimensionBSplineInterpolator" ); 00083 00085 itkStaticConstMacro( ImageDimension, unsigned int,Superclass1::ImageDimension ); 00086 00088 typedef typename Superclass1::OutputType OutputType; 00089 typedef typename Superclass1::InputImageType InputImageType; 00090 typedef typename Superclass1::IndexType IndexType; 00091 typedef typename Superclass1::ContinuousIndexType ContinuousIndexType; 00092 typedef typename Superclass1::PointType PointType; 00093 typedef typename Superclass1::Iterator Iterator; 00094 typedef typename Superclass1::CoefficientDataType CoefficientDataType; 00095 typedef typename Superclass1::CoefficientImageType CoefficientImageType; 00096 typedef typename Superclass1::CoefficientFilter CoefficientFilter; 00097 typedef typename Superclass1::CoefficientFilterPointer CoefficientFilterPointer; 00098 typedef typename Superclass1::CovariantVectorType CovariantVectorType; 00099 00101 typedef typename Superclass2::ElastixType ElastixType; 00102 typedef typename Superclass2::ElastixPointer ElastixPointer; 00103 typedef typename Superclass2::ConfigurationType ConfigurationType; 00104 typedef typename Superclass2::ConfigurationPointer ConfigurationPointer; 00105 typedef typename Superclass2::RegistrationType RegistrationType; 00106 typedef typename Superclass2::RegistrationPointer RegistrationPointer; 00107 typedef typename Superclass2::ITKBaseType ITKBaseType; 00108 00112 virtual void BeforeRegistration( void ); 00113 00115 virtual void ReadFromFile( void ); 00116 00118 virtual void WriteToFile( void ) const; 00119 00120 protected: 00121 00123 ReducedDimensionBSplineResampleInterpolator() {} 00125 virtual ~ReducedDimensionBSplineResampleInterpolator() {} 00126 00127 private: 00128 00130 ReducedDimensionBSplineResampleInterpolator( const Self& ); // purposely not implemented 00132 void operator=( const Self& ); // purposely not implemented 00133 00134 }; // end class ReducedDimensionBSplineResampleInterpolator 00135 00136 00137 } // end namespace elastix 00138 00139 #ifndef ITK_MANUAL_INSTANTIATION 00140 #include "elxReducedDimensionBSplineResampleInterpolator.hxx" 00141 #endif 00142 00143 #endif // end __elxReducedDimensionBSplineResampleInterpolator_h 00144
Generated on 24-10-2011 for elastix by ![]() |
![]() |