Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef MITKTRANSFORMFACTORY_H
00019 #define MITKTRANSFORMFACTORY_H
00020
00021 #include "itkTransform.h"
00022 #include "MitkRigidRegistrationExports.h"
00023 #include "itkImage.h"
00024 #include "mitkTransformParameters.h"
00025
00026 namespace mitk {
00027
00046 template < class TPixelType, unsigned int VImageDimension >
00047 class MITK_RIGIDREGISTRATION_EXPORT TransformFactory : public itk::Object
00048 {
00049 public:
00050 mitkClassMacro(TransformFactory, itk::Object);
00051
00053 itkNewMacro(Self);
00054
00055 typedef typename itk::Image< TPixelType, VImageDimension > FixedImageType;
00056 typedef typename itk::Image< TPixelType, VImageDimension > MovingImageType;
00057 typedef typename itk::Image< TPixelType, 2 > FixedImage2DType;
00058 typedef typename itk::Image< TPixelType, 2 > MovingImage2DType;
00059 typedef typename itk::Image< TPixelType, 3 > FixedImage3DType;
00060 typedef typename itk::Image< TPixelType, 3 > MovingImage3DType;
00061
00062 typedef typename itk::Transform< double, VImageDimension, VImageDimension > TransformType;
00063
00064 typedef typename TransformType::Pointer TransformPointer;
00065
00070 TransformPointer GetTransform( );
00071
00075 void SetFixedImage(FixedImageType* fixed);
00076
00080 void SetMovingImage(MovingImageType* moving);
00081
00085 void SetTransformParameters(TransformParameters::Pointer transformParameters)
00086 {
00087 m_TransformParameters = transformParameters;
00088 }
00089
00093 TransformParameters::Pointer GetTransformParameters()
00094 {
00095 return m_TransformParameters;
00096 }
00097
00098 protected:
00099 TransformFactory();
00100 ~TransformFactory() {};
00101
00102 TransformParameters::Pointer m_TransformParameters;
00103 typename FixedImageType::Pointer m_FixedImage;
00104 typename MovingImageType::Pointer m_MovingImage;
00105 typename FixedImage2DType::Pointer m_FixedImage2D;
00106 typename MovingImage2DType::Pointer m_MovingImage2D;
00107 typename FixedImage3DType::Pointer m_FixedImage3D;
00108 typename MovingImage3DType::Pointer m_MovingImage3D;
00109 };
00110
00111 }
00112
00113 #include "mitkTransformFactory.txx"
00114
00115 #endif // MITKTRANSFORMFACTORY_H