go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxInterpolatorBase.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 
15 #ifndef __elxInterpolatorBase_h
16 #define __elxInterpolatorBase_h
17 
19 #include "elxMacro.h"
20 
21 #include "elxBaseComponentSE.h"
22 
23 #include "itkInterpolateImageFunction.h"
24 
25 
26 namespace elastix
27 {
28 using namespace itk;
29 
40  template <class TElastix>
41  class InterpolatorBase : public BaseComponentSE<TElastix>
42  {
43  public:
44 
48 
51 
53  typedef typename Superclass::ElastixType ElastixType;
59 
61  typedef typename ElastixType::MovingImageType InputImageType;
62  typedef typename ElastixType::CoordRepType CoordRepType;
63 
65  typedef InterpolateImageFunction<
67 
69  virtual ITKBaseType * GetAsITKBaseType(void)
70  {
71  return dynamic_cast<ITKBaseType *>(this);
72  }
73 
75  virtual const ITKBaseType * GetAsITKBaseType(void) const
76  {
77  return dynamic_cast<const ITKBaseType *>(this);
78  }
79 
80  protected:
81 
85  virtual ~InterpolatorBase() {}
86 
87  private:
88 
90  InterpolatorBase( const Self& ); // purposely not implemented
92  void operator=( const Self& ); // purposely not implemented
93 
94  }; // end class InterpolatorBase
95 
96 
97 } // end namespace elastix
98 
99 
100 
101 #ifndef ITK_MANUAL_INSTANTIATION
102 #include "elxInterpolatorBase.hxx"
103 #endif
104 
105 #endif // end #ifndef __elxInterpolatorBase_h
106 


Generated on 27-06-2013 for elastix by doxygen 1.8.3.1 elastix logo