00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
#ifndef __itkDifferenceOfGaussiansGradientImageFilter_h
00018
#define __itkDifferenceOfGaussiansGradientImageFilter_h
00019
00020
#include "itkImageToImageFilter.h"
00021
#include "itkImage.h"
00022
#include "itkCovariantVector.h"
00023
00024
namespace itk
00025 {
00026
00034
template<
typename TInputImage,
typename TDataType>
00035 class ITK_EXPORT DifferenceOfGaussiansGradientImageFilter :
00036
public ImageToImageFilter<TInputImage,
00037 Image< CovariantVector<TDataType, ::itk::GetImageDimension<TInputImage>::ImageDimension>,
00038 ::itk::GetImageDimension<TInputImage>::ImageDimension> >
00039 {
00040
public:
00042
itkStaticConstMacro(NDimensions,
unsigned int, TInputImage::ImageDimension);
00043
00045 typedef DifferenceOfGaussiansGradientImageFilter
Self;
00046
00049
typedef Image<CovariantVector<TDataType, itkGetStaticConstMacro(NDimensions)>,
itkGetStaticConstMacro(NDimensions)>
00050 TOutputImage;
00051
00053 typedef ImageToImageFilter<TInputImage, TOutputImage> Superclass;
00054 typedef SmartPointer<Self> Pointer;
00055 typedef SmartPointer<const Self> ConstPointer;
00056
00058
itkNewMacro(
Self);
00059
00061
itkTypeMacro( DifferenceOfGaussiansGradientImageFilter,
ImageToImageFilter );
00062
00064 typedef Size<itkGetStaticConstMacro(NDimensions)> SizeType;
00065
00067 typedef typename TInputImage::IndexType
IndexType;
00068
00070 typedef typename TInputImage::PixelType
PixelType;
00071
00073 typedef typename TInputImage::RegionType
OutputImageRegionType;
00074
00076
itkGetMacro(Width,
unsigned int);
00077
itkSetMacro(Width,
unsigned int);
00078
00079
protected:
00080 DifferenceOfGaussiansGradientImageFilter();
00081
virtual ~DifferenceOfGaussiansGradientImageFilter() {};
00082 void PrintSelf(std::ostream& os,
Indent indent)
const;
00083
00085
void GenerateData();
00086
00087
private:
00088 DifferenceOfGaussiansGradientImageFilter(
const Self&);
00089
void operator=(
const Self&);
00090
00091
unsigned int m_Width;
00092
00093 };
00094
00095 }
00096
00097
#ifndef ITK_MANUAL_INSTANTIATION
00098
#include "itkDifferenceOfGaussiansGradientImageFilter.txx"
00099
#endif
00100
00101
#endif