go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxSplineKernelTransform.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 __elxSplineKernelTransform_H_
16 #define __elxSplineKernelTransform_H_
17 
18 #include "itkKernelTransform2.h"
24 #include "elxIncludes.h"
25 
26 namespace elastix
27 {
28  using namespace itk;
29 
112 template < class TElastix >
114  ITK_TYPENAME elx::TransformBase<TElastix>::CoordRepType,
115  elx::TransformBase<TElastix>::FixedImageDimension > ,
116  public elx::TransformBase<TElastix>
117 {
118 public:
119 
126 
130  typedef KernelTransform2<
133  typedef SmartPointer<Self> Pointer;
134  typedef SmartPointer<const Self> ConstPointer;
135 
137  itkNewMacro( Self );
138 
141 
146  elxClassNameMacro( "SplineKernelTransform" );
147 
149  itkStaticConstMacro( SpaceDimension, unsigned int, Superclass2::FixedImageDimension );
150 
163 
176 
180  typedef typename PointSetType::Pointer PointSetPointer;
181 
186  virtual int BeforeAll( void );
187 
194  virtual void BeforeRegistration( void );
195 
197  virtual void ReadFromFile( void );
198 
200  virtual void WriteToFile( const ParametersType & param ) const;
201 
202 protected:
203 
208 
210  CoordRepType, itkGetStaticConstMacro(SpaceDimension) > TPKernelTransformType;
212  CoordRepType, itkGetStaticConstMacro(SpaceDimension) > TPRKernelTransformType;
214  CoordRepType, itkGetStaticConstMacro(SpaceDimension) > VKernelTransformType;
216  CoordRepType, itkGetStaticConstMacro(SpaceDimension) > EBKernelTransformType;
218  CoordRepType, itkGetStaticConstMacro(SpaceDimension) > EBRKernelTransformType;
219 
223  virtual bool SetKernelType( const std::string & kernelType );
224 
228  virtual void DetermineSourceLandmarks( void );
229 
234  virtual bool DetermineTargetLandmarks( void );
235 
237  virtual void ReadLandmarkFile(
238  const std::string & filename,
239  PointSetPointer & landmarkPointSet,
240  const bool & landmarksInFixedImage );
241 
244 
245 private:
246 
248  SplineKernelTransform( const Self& ); // purposely not implemented
250  void operator=( const Self& ); // purposely not implemented
251 
252  std::string m_SplineKernelType;
253 
254 }; // end class SplineKernelTransform
255 
256 
257 } // end namespace elastix
258 
259 #ifndef ITK_MANUAL_INSTANTIATION
260 #include "elxSplineKernelTransform.hxx"
261 #endif
262 
263 #endif // end #ifndef __elxSplineKernelTransform_H_


Generated on 21-03-2014 for elastix by doxygen 1.8.1.2 elastix logo