Slicer  4.8
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
itkAffineImageToImageRegistrationMethod.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: $RCSfile: AffineRegistrator.h,v $
5  Language: C++
6  Date: $Date: 2006/11/06 14:39:34 $
7  Version: $Revision: 1.15 $
8 
9  Copyright (c) Insight Software Consortium. All rights reserved.
10  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 
18 #ifndef itkAffineImageToImageRegistrationMethod_h
19 #define itkAffineImageToImageRegistrationMethod_h
20 
21 #include "itkImage.h"
22 #include "itkAffineTransform.h"
23 
25 
26 namespace itk
27 {
28 
29 template <class TImage>
32 {
33 
34 public:
35 
38  typedef SmartPointer<Self> Pointer;
39  typedef SmartPointer<const Self> ConstPointer;
40 
43 
44  itkNewMacro( Self );
45 
46  itkStaticConstMacro( ImageDimension, unsigned int,
47  TImage::ImageDimension );
48 
49  //
50  // Typedefs from Superclass
51  //
52 
53  // Overrides the superclass' TransformType typedef
54  typedef AffineTransform<double, itkGetStaticConstMacro( ImageDimension )>
56  typedef typename AffineTransformType::Pointer AffineTransformPointer;
58 
59  //
60  // Superclass Methods
61  //
62 
63  void GenerateData( void ) ITK_OVERRIDE;
64 
65  //
66  // Custom Methods
67  //
68 
75  TransformType * GetTypedTransform( void );
76 
77  const TransformType * GetTypedTransform( void ) const;
78 
88  AffineTransformPointer GetAffineTransform( void ) const;
89 
97 
98 protected:
99 
102 
103  void PrintSelf( std::ostream & os, Indent indent ) const ITK_OVERRIDE;
104 
105 private:
106 
107  AffineImageToImageRegistrationMethod( const Self & ); // Purposely not implemented
108  void operator =( const Self & ); // Purposely not implemented
109 
110 };
111 
112 } // end namespace itk
113 
114 #ifndef ITK_MANUAL_INSTANTIATION
115 #include "itkAffineImageToImageRegistrationMethod.txx"
116 #endif
117 
118 #endif // __ImageToImageRegistrationMethod_h
void PrintSelf(std::ostream &os, Indent indent) const ITK_OVERRIDE
AffineTransformPointer GetAffineTransform(void) const
OptimizedImageToImageRegistrationMethod< TImage > Superclass
AffineTransform< double, itkGetStaticConstMacro(ImageDimension)> AffineTransformType
Simplified inverse ITK transforms.
void SetInitialTransformParametersFromAffineTransform(const AffineTransformType *affine)
itkStaticConstMacro(ImageDimension, unsigned int, TImage::ImageDimension)
itkTypeMacro(AffineImageToImageRegistrationMethod, OptimizedImageToImageRegistrationMethod)