1 // -------------------------------------------------------------------------
2 // @author Jose Luis Guzman (cycopepe@gmail.com)
3 // -------------------------------------------------------------------------
6 #ifndef __CPEXTENSIONS__ALGORITHMS__MACHETEIMAGEFILTER__H__
7 #define __CPEXTENSIONS__ALGORITHMS__MACHETEIMAGEFILTER__H__
9 #include <cpExtensions/cpExtensions_Export.h>
11 #include <itkImageToImageFilter.h>
13 namespace cpExtensions
17 template< class I, class O>
18 class MacheteImageFilter :public itk::ImageToImageFilter < I, O >
21 /** Standard class typedefs. */
22 typedef MacheteImageFilter Self;
24 typedef itk::ImageToImageFilter< I, O > Superclass;
25 typedef itk::SmartPointer< Self > Pointer;
27 /** Method for creation through the object factory. */
30 /** Run-time type information (and related methods). */
31 itkTypeMacro(MacheteImageFilter, ImageToImageFilter);
33 typedef typename I::PixelType RadiusType;
34 //typedef typename I::SizeValueType RadiusValueType;
36 itkGetConstReferenceMacro(Radius, RadiusType);
39 void SetRadius(const RadiusType & rad);
40 //void SetRadius(const RadiusValueType & rad);
42 void SetPoint(itk::Point<double, 3> & point);
43 void SetPoint(const double & x, const double & y, const double & z);
46 MacheteImageFilter(){}
47 ~MacheteImageFilter(){}
49 /** Does the real work. */
50 virtual void GenerateData();
53 itk::Point<double, 3> point;
56 MacheteImageFilter(const Self &); //purposely not implemented
57 void operator=(const Self &); //purposely not implemented
67 #ifndef ITK_MANUAL_INSTANTIATION
68 #include <cpExtensions/Algorithms/MacheteImageFilter.hxx>
72 #endif // __CPEXTENSIONS__ALGORITHMS__MACHETEIMAGEFILTER__H__