go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxResampleInterpolatorBase.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 __elxResampleInterpolatorBase_h
16 #define __elxResampleInterpolatorBase_h
17 
19 #include "elxMacro.h"
20 
21 #include "elxBaseComponentSE.h"
22 #include "itkInterpolateImageFunction.h"
23 
24 
25 namespace elastix
26 {
27 
38  template <class TElastix>
39  class ResampleInterpolatorBase : public BaseComponentSE<TElastix>
40  {
41  public:
42 
46 
49 
51  typedef typename Superclass::ElastixType ElastixType;
57 
59  typedef typename ElastixType::MovingImageType InputImageType;
60  typedef typename ElastixType::CoordRepType CoordRepType;
61 
63  typedef itk::InterpolateImageFunction<
65 
67  virtual ITKBaseType * GetAsITKBaseType(void)
68  {
69  return dynamic_cast<ITKBaseType *>(this);
70  }
71 
73  virtual const ITKBaseType * GetAsITKBaseType(void) const
74  {
75  return dynamic_cast<const ITKBaseType *>(this);
76  }
77 
81  virtual int BeforeAllTransformix( void ){ return 0;};
82 
84  virtual void ReadFromFile( void );
85 
87  virtual void WriteToFile( void ) const;
88 
89  protected:
90 
95 
96  private:
97 
99  ResampleInterpolatorBase( const Self& ); // purposely not implemented
101  void operator=( const Self& ); // purposely not implemented
102 
103  }; // end class ResampleInterpolatorBase
104 
105 
106 } //end namespace elastix
107 
108 #ifndef ITK_MANUAL_INSTANTIATION
109 #include "elxResampleInterpolatorBase.hxx"
110 #endif
111 
112 #endif // end #ifndef __elxResampleInterpolatorBase_h
The BaseComponentSE class is a base class for elastix components that provides some basic functionali...
Superclass::RegistrationType RegistrationType
ElastixType::RegistrationBaseType RegistrationType
ElastixType::ConfigurationPointer ConfigurationPointer
ElastixType::MovingImageType InputImageType
ElastixType::Pointer ElastixPointer
ElastixType::ConfigurationType ConfigurationType
virtual ITKBaseType * GetAsITKBaseType(void)
RegistrationType * RegistrationPointer
Superclass::ConfigurationPointer ConfigurationPointer
This class is the elastix base class for all ResampleInterpolators.
Superclass::RegistrationPointer RegistrationPointer
virtual const ITKBaseType * GetAsITKBaseType(void) const
itk::InterpolateImageFunction< InputImageType, CoordRepType > ITKBaseType
virtual void WriteToFile(void) const
Superclass::ConfigurationType ConfigurationType


Generated on 05-01-2014 for elastix by doxygen 1.8.5 elastix logo