00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkBackwardDifferenceOperator_h
00018 #define __itkBackwardDifferenceOperator_h
00019
00020 #include "itkNeighborhoodOperator.h"
00021 #include "itkExceptionObject.h"
00022
00023 namespace itk {
00024
00039 template<class TPixel, unsigned int VDimension=2,
00040 class TAllocator = NeighborhoodAllocator<TPixel> >
00041 class ITK_EXPORT BackwardDifferenceOperator
00042 : public NeighborhoodOperator<TPixel, VDimension, TAllocator>
00043 {
00044 public:
00046 typedef BackwardDifferenceOperator Self;
00047 typedef NeighborhoodOperator<TPixel, VDimension, TAllocator> Superclass;
00048
00050 typedef typename Superclass::PixelType PixelType;
00051
00053 BackwardDifferenceOperator() {}
00054
00055 protected:
00057 typedef typename Superclass::CoefficientVector CoefficientVector;
00058
00060 CoefficientVector GenerateCoefficients();
00061
00063 void Fill(const CoefficientVector &coeff)
00064 { this->FillCenteredDirectional(coeff); }
00065
00066 private:
00067 BackwardDifferenceOperator(const Self& other);
00068 Self &operator=(const Self& other);
00069
00070 };
00071
00072 }
00073
00074 #ifndef ITK_MANUAL_INSTANTIATION
00075 #include "itkBackwardDifferenceOperator.txx"
00076 #endif
00077
00078 #endif
00079
00080