![]() |
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 __elxTranslationTransform_H_ 00016 #define __elxTranslationTransform_H_ 00017 00018 #include "itkAdvancedTranslationTransform.h" 00019 #include "itkTranslationTransformInitializer.h" 00020 #include "elxIncludes.h" 00021 00022 namespace elastix 00023 { 00024 using namespace itk; 00025 00047 template < class TElastix > 00048 class TranslationTransformElastix: 00049 public AdvancedCombinationTransform< 00050 ITK_TYPENAME elx::TransformBase<TElastix>::CoordRepType, 00051 elx::TransformBase<TElastix>::FixedImageDimension > , 00052 public elx::TransformBase<TElastix> 00053 { 00054 public: 00055 00057 typedef TranslationTransformElastix Self; 00058 00059 typedef AdvancedCombinationTransform< 00060 typename elx::TransformBase<TElastix>::CoordRepType, 00061 elx::TransformBase<TElastix>::FixedImageDimension > Superclass1; 00062 00063 typedef elx::TransformBase<TElastix> Superclass2; 00064 00067 typedef AdvancedTranslationTransform< 00068 typename elx::TransformBase<TElastix>::CoordRepType, 00069 elx::TransformBase<TElastix>::FixedImageDimension > TranslationTransformType; 00070 00071 typedef SmartPointer<Self> Pointer; 00072 typedef SmartPointer<const Self> ConstPointer; 00073 00075 itkNewMacro( Self ); 00076 00078 itkTypeMacro( TranslationTransformElastix, AdvancedCombinationTransform ); 00079 00084 elxClassNameMacro( "TranslationTransform" ); 00085 00087 itkStaticConstMacro( SpaceDimension, unsigned int, Superclass2::FixedImageDimension ); 00088 00090 typedef typename Superclass1::ScalarType ScalarType; 00091 typedef typename Superclass1::ParametersType ParametersType; 00092 typedef typename Superclass1::JacobianType JacobianType; 00093 typedef typename Superclass1::InputVectorType InputVectorType; 00094 typedef typename Superclass1::OutputVectorType OutputVectorType; 00095 typedef typename Superclass1::InputCovariantVectorType InputCovariantVectorType; 00096 typedef typename Superclass1::OutputCovariantVectorType OutputCovariantVectorType; 00097 typedef typename Superclass1::InputVnlVectorType InputVnlVectorType; 00098 typedef typename Superclass1::OutputVnlVectorType OutputVnlVectorType; 00099 typedef typename Superclass1::InputPointType InputPointType; 00100 typedef typename Superclass1::OutputPointType OutputPointType; 00101 00103 typedef typename Superclass2::ElastixType ElastixType; 00104 typedef typename Superclass2::ElastixPointer ElastixPointer; 00105 typedef typename Superclass2::ConfigurationType ConfigurationType; 00106 typedef typename Superclass2::ConfigurationPointer ConfigurationPointer; 00107 typedef typename Superclass2::RegistrationType RegistrationType; 00108 typedef typename Superclass2::RegistrationPointer RegistrationPointer; 00109 typedef typename Superclass2::CoordRepType CoordRepType; 00110 typedef typename Superclass2::FixedImageType FixedImageType; 00111 typedef typename Superclass2::MovingImageType MovingImageType; 00112 typedef typename Superclass2::ITKBaseType ITKBaseType; 00113 typedef typename Superclass2::CombinationTransformType CombinationTransformType; 00114 00116 typedef TranslationTransformInitializer< 00117 TranslationTransformType, 00118 FixedImageType, 00119 MovingImageType> TransformInitializerType; 00120 typedef typename TransformInitializerType::Pointer TransformInitializerPointer; 00121 typedef typename TranslationTransformType::Pointer TranslationTransformPointer; 00122 00126 virtual void BeforeRegistration(void); 00127 00134 virtual void InitializeTransform(void); 00135 00136 protected: 00137 00139 TranslationTransformElastix(); 00141 virtual ~TranslationTransformElastix() {}; 00142 00143 TranslationTransformPointer m_TranslationTransform; 00144 00145 private: 00146 00148 TranslationTransformElastix( const Self& ); // purposely not implemented 00150 void operator=( const Self& ); // purposely not implemented 00151 00152 }; // end class TranslationTransformElastix 00153 00154 00155 } // end namespace elastix 00156 00157 #ifndef ITK_MANUAL_INSTANTIATION 00158 #include "elxTranslationTransform.hxx" 00159 #endif 00160 00161 #endif // end #ifndef __elxTranslationTransform_H_
Generated on 24-10-2011 for elastix by ![]() |
![]() |