go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkTransformPenaltyTerm.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 __itkTransformPenaltyTerm_h
16 #define __itkTransformPenaltyTerm_h
17 
19 
20 // Needed for checking for B-spline for faster implementation
23 
24 
25 namespace itk
26 {
42 template< class TFixedImage, class TScalarType = double >
44  : public AdvancedImageToImageMetric< TFixedImage, TFixedImage >
45 {
46 public:
47 
51  TFixedImage, TFixedImage > Superclass;
52  typedef SmartPointer<Self> Pointer;
53  typedef SmartPointer<const Self> ConstPointer;
54 
57 
68  // these not: use advanced transform below
69  //typedef typename Superclass::TransformType TransformType;
70  //typedef typename Superclass::TransformPointer TransformPointer;
77  typedef typename Superclass::RealType RealType;
94 
96  typedef TScalarType ScalarType; // \todo: not really meaningful name.
97 
99  typedef typename Superclass
101  typedef typename TransformType
103  typedef typename TransformType
105  typedef typename TransformType
107  typedef typename TransformType
109  typedef typename TransformType
111 
113  itkStaticConstMacro( FixedImageDimension, unsigned int, FixedImageType::ImageDimension );
114 
115 protected:
116 
125 
128 
130  virtual ~TransformPenaltyTerm() {};
131 
133  //void PrintSelf( std::ostream& os, Indent indent ) const;
134 
137  ScalarType, FixedImageDimension, 3 > BSplineTransformType;
140  ScalarType, FixedImageDimension > CombinationTransformType;
141 
143  virtual bool CheckForBSplineTransform( BSplineTransformPointer & bspline ) const;
144 
145 private:
146 
148  TransformPenaltyTerm( const Self& ); // purposely not implemented
150  void operator=( const Self& ); // purposely not implemented
151 
152 }; // end class TransformPenaltyTerm
153 
154 
155 } // end namespace itk
156 
157 #ifndef ITK_MANUAL_INSTANTIATION
158 #include "itkTransformPenaltyTerm.txx"
159 #endif
160 
161 #endif // #ifndef __itkTransformPenaltyTerm_h
162 


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