Orfeo Toolbox  3.16
itkVectorLinearInterpolateImageFunction.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Insight Segmentation & Registration Toolkit
4  Module: $RCSfile: itkVectorLinearInterpolateImageFunction.h,v $
5  Language: C++
6  Date: $Date: 2009-10-29 11:18:45 $
7  Version: $Revision: 1.17 $
8 
9  Copyright (c) Insight Software Consortium. All rights reserved.
10  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notices for more information.
15 
16 =========================================================================*/
17 #ifndef __itkVectorLinearInterpolateImageFunction_h
18 #define __itkVectorLinearInterpolateImageFunction_h
19 
21 
22 namespace itk
23 {
24 
41 template <class TInputImage, class TCoordRep = double>
43  public VectorInterpolateImageFunction<TInputImage,TCoordRep>
44 {
45 public:
51 
53  itkNewMacro(Self);
54 
58 
60  typedef typename Superclass::InputImageType InputImageType;
61  typedef typename Superclass::PixelType PixelType;
62  typedef typename Superclass::ValueType ValueType;
63  typedef typename Superclass::RealType RealType;
64 
66  itkStaticConstMacro(Dimension, unsigned int,
67  Superclass::Dimension);
68 
70  itkStaticConstMacro(ImageDimension, unsigned int,Superclass::ImageDimension);
71 
73  typedef typename Superclass::IndexType IndexType;
74  typedef typename Superclass::IndexValueType IndexValueType;
75 
77  typedef typename Superclass::ContinuousIndexType ContinuousIndexType;
78 
81 
90  virtual OutputType EvaluateAtContinuousIndex(
91  const ContinuousIndexType & index ) const;
92 
93 protected:
96  void PrintSelf(std::ostream& os, Indent indent) const;
97 
98 private:
99  VectorLinearInterpolateImageFunction(const Self&); //purposely not implemented
100  void operator=(const Self&); //purposely not implemented
101 
103  static const unsigned long m_Neighbors;
104 
105 };
106 
107 } // end namespace itk
108 
109 // Define instantiation macro for this template.
110 #define ITK_TEMPLATE_VectorLinearInterpolateImageFunction(_, EXPORT, x, y) namespace itk { \
111  _(2(class EXPORT VectorLinearInterpolateImageFunction< ITK_TEMPLATE_2 x >)) \
112  namespace Templates { typedef VectorLinearInterpolateImageFunction< ITK_TEMPLATE_2 x > \
113  VectorLinearInterpolateImageFunction##y; } \
114  }
115 
116 #if ITK_TEMPLATE_EXPLICIT
117 # include "Templates/itkVectorLinearInterpolateImageFunction+-.h"
118 #endif
119 
120 #if ITK_TEMPLATE_TXX
122 #endif
123 
124 #endif

Generated at Sun Feb 3 2013 00:12:22 for Orfeo Toolbox with doxygen 1.8.1.1