![]() |
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 __itkCyclicGridScheduleComputer_H__ 00016 #define __itkCyclicGridScheduleComputer_H__ 00017 00018 #include "itkImageBase.h" 00019 #include "itkTransform.h" 00020 #include "itkGridScheduleComputer.h" 00021 00022 namespace itk 00023 { 00024 00037 template < typename TTransformScalarType, unsigned int VImageDimension > 00038 class ITK_EXPORT CyclicGridScheduleComputer 00039 : public GridScheduleComputer< TTransformScalarType, VImageDimension > 00040 { 00041 public: 00042 00044 typedef CyclicGridScheduleComputer Self; 00045 typedef GridScheduleComputer< 00046 TTransformScalarType, VImageDimension> Superclass; 00047 typedef SmartPointer< Self > Pointer; 00048 typedef SmartPointer< const Self > ConstPointer; 00049 00051 itkNewMacro( Self ); 00052 00054 itkTypeMacro( CyclicGridScheduleComputer, GridScheduleComputer ); 00055 00057 itkStaticConstMacro( Dimension, unsigned int, VImageDimension ); 00058 00060 typedef TTransformScalarType TransformScalarType; 00061 typedef ImageBase< 00062 itkGetStaticConstMacro( Dimension ) > ImageBaseType; 00063 typedef typename ImageBaseType::PointType PointType; 00064 typedef typename ImageBaseType::PointType OriginType; 00065 typedef typename ImageBaseType::SpacingType SpacingType; 00066 typedef typename ImageBaseType::DirectionType DirectionType; 00067 typedef typename ImageBaseType::SizeType SizeType; 00068 typedef typename ImageBaseType::SizeValueType SizeValueType; 00069 typedef typename ImageBaseType::RegionType RegionType; 00070 typedef SpacingType GridSpacingFactorType; 00071 typedef std::vector< OriginType > VectorOriginType; 00072 typedef std::vector< SpacingType > VectorSpacingType; 00073 typedef std::vector< RegionType > VectorRegionType; 00074 typedef std::vector< GridSpacingFactorType > VectorGridSpacingFactorType; 00075 00077 typedef Transform< 00078 TransformScalarType, 00079 itkGetStaticConstMacro( Dimension ), 00080 itkGetStaticConstMacro( Dimension ) > TransformType; 00081 typedef typename TransformType::Pointer TransformPointer; 00082 typedef typename TransformType::ConstPointer TransformConstPointer; 00083 00085 virtual void ComputeBSplineGrid( void ); 00086 00087 protected: 00088 00090 CyclicGridScheduleComputer(); 00091 00093 virtual ~CyclicGridScheduleComputer() {}; 00094 00095 private: 00096 00097 CyclicGridScheduleComputer( const Self& ); // purposely not implemented 00098 void operator=( const Self& ); // purposely not implemented 00099 00100 }; // end class CyclicGridScheduleComputer 00101 00102 } // end namespace itk 00103 00104 #ifndef ITK_MANUAL_INSTANTIATION 00105 #include "itkCyclicGridScheduleComputer.txx" 00106 #endif 00107 00108 #endif // end #ifndef __itkCyclicGridScheduleComputer_H__ 00109
Generated on 11-05-2012 for elastix by ![]() |
![]() |