go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxFixedImagePyramidBase.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 __elxFixedImagePyramidBase_h
16 #define __elxFixedImagePyramidBase_h
17 
19 #include "elxMacro.h"
20 
21 #include "elxBaseComponentSE.h"
22 #include "itkObject.h"
23 #include "itkMultiResolutionPyramidImageFilter.h"
24 
25 
26 namespace elastix
27 {
28 using namespace itk;
29 
56 template <class TElastix>
57 class FixedImagePyramidBase : public BaseComponentSE<TElastix>
58 {
59 public:
60 
64 
67 
69  typedef typename Superclass::ElastixType ElastixType;
75 
77  typedef typename ElastixType::FixedImageType InputImageType;
78  typedef typename ElastixType::FixedImageType OutputImageType;
79 
81  typedef MultiResolutionPyramidImageFilter<
83 
85  typedef typename ITKBaseType::ScheduleType ScheduleType;
86 
88  virtual ITKBaseType * GetAsITKBaseType( void )
89  {
90  return dynamic_cast<ITKBaseType *>(this);
91  }
92 
94  virtual const ITKBaseType * GetAsITKBaseType( void ) const
95  {
96  return dynamic_cast<const ITKBaseType *>(this);
97  }
98 
102  virtual void BeforeRegistrationBase( void );
103 
107  virtual void BeforeEachResolutionBase( void );
108 
110  virtual void SetFixedSchedule( void );
111 
113  virtual void WritePyramidImage( const std::string & filename,
114  const unsigned int & level );// const;
115 
116 protected:
117 
122 
123 private:
124 
126  FixedImagePyramidBase( const Self& ); // purposely not implemented
128  void operator=( const Self& ); // purposely not implemented
129 
130 }; // end class FixedImagePyramidBase
131 
132 
133 } // end namespace elastix
134 
135 
136 #ifndef ITK_MANUAL_INSTANTIATION
137 #include "elxFixedImagePyramidBase.hxx"
138 #endif
139 
140 
141 #endif // end #ifndef __elxFixedImagePyramidBase_h
The BaseComponentSE class is a base class for elastix components that provides some basic functionali...
ElastixType::RegistrationBaseType RegistrationType
ElastixType::ConfigurationPointer ConfigurationPointer
ElastixType::Pointer ElastixPointer
ElastixType::ConfigurationType ConfigurationType
ITKBaseType::ScheduleType ScheduleType
Superclass::ConfigurationType ConfigurationType
RegistrationType * RegistrationPointer
This class is the elastix base class for all FixedImagePyramids.
Superclass::ElastixPointer ElastixPointer
virtual const ITKBaseType * GetAsITKBaseType(void) const
Superclass::ConfigurationPointer ConfigurationPointer
ElastixType::FixedImageType OutputImageType
ElastixType::FixedImageType InputImageType
virtual ITKBaseType * GetAsITKBaseType(void)
BaseComponentSE< TElastix > Superclass
Superclass::RegistrationPointer RegistrationPointer
Superclass::RegistrationType RegistrationType
MultiResolutionPyramidImageFilter< InputImageType, OutputImageType > ITKBaseType


Generated on 05-12-2013 for elastix by doxygen 1.8.5 elastix logo