NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
itkBasicFiniteDifferenceBaseClassImageFilter.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef itkBasicFiniteDifferenceBaseClassImageFilter_h
16 #define itkBasicFiniteDifferenceBaseClassImageFilter_h
17 #include <itkImageToImageFilter.h>
18 
19 namespace itk
20 {
21 
32 template <class TInputImage, class TOutputImage>
34  : public ImageToImageFilter<TInputImage, TOutputImage>
35 {
36 public:
39  typedef ImageToImageFilter<TInputImage, TOutputImage> Superclass;
40  typedef SmartPointer<Self> Pointer;
41  typedef SmartPointer<const Self> ConstPointer;
43  typedef typename TInputImage::SizeType SizeType;
45 
47  itkTypeMacro(BasicFiniteDifferenceBaseClassImageFilter, ImageToImageFilter);
48 
50  void PrintSelf(std::ostream& os, Indent indent) const;
51 
53  itkStaticConstMacro(Dimension, unsigned int, TInputImage::ImageDimension);
54 
55 protected:
56 
59 
61  virtual void BeforeThreadedGenerateData();
62 
64  double d(int dimension, IndexType& location, TInputImage* image);
65 
67  double dd(int dimension, IndexType& location, TInputImage* image);
68 
70  double dd(int dimension1, int dimension2, IndexType& location, TInputImage* image);
71 
73  ImageRegionType CheckAndAdjustRegion(const ImageRegionType& region, TInputImage* image);
74 
75 private:
76 
77  BasicFiniteDifferenceBaseClassImageFilter(const Self&); // purposely not implemented
78  void operator=(const Self&); // purposely not implemented
79 
80 };
81 
82 } // end namespace itk
83 
84 #ifndef ITK_MANUAL_INSTANTIATION
85 #include "itkBasicFiniteDifferenceBaseClassImageFilter.txx"
86 #endif
87 
88 #endif
SmartPointer< const Self > ConstPointer
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:41
SmartPointer< Self > Pointer
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:40
ImageType::SizeType SizeType
Definition: niftkMakeLapUSProbeBasicModel.cxx:31
TInputImage::RegionType ImageRegionType
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:44
GLint location
Definition: glew.h:1819
GLenum GLsizei GLenum GLenum const GLvoid * image
Definition: glew.h:4052
Definition: niftkITKAffineResampleImage.cxx:74
ImageType::IndexType IndexType
Definition: niftkMakeLapUSProbeBasicModel.cxx:32
BasicFiniteDifferenceBaseClassImageFilter Self
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:38
TInputImage::SizeType SizeType
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:43
TInputImage::IndexType IndexType
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:42
ImageType::RegionType RegionType
Definition: niftkMakeLapUSProbeBasicModel.cxx:30
ImageToImageFilter< TInputImage, TOutputImage > Superclass
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:39
Abstract base class to provide first, second, mixed derivatives, which can be subclassed for things l...
Definition: itkBasicFiniteDifferenceBaseClassImageFilter.h:33
const unsigned int Dimension
Definition: niftkBreastDCEandADC.cxx:89