1 // -------------------------------------------------------------------------
2 // @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co)
3 // -------------------------------------------------------------------------
5 #ifndef __cpExtensions__Algorithms__DiscontinuityMapImageFilter__h__
6 #define __cpExtensions__Algorithms__DiscontinuityMapImageFilter__h__
9 #include <itkBoxImageFilter.h>
11 namespace cpExtensions
17 template< class _TInputImage >
18 class DiscontinuityMapImageFilter
19 : public itk::BoxImageFilter< _TInputImage, itk::Image< double, _TInputImage::ImageDimension > >
22 typedef _TInputImage TInputImage;
23 typedef itk::Image< double, _TInputImage::ImageDimension > TOutputImage;
24 typedef DiscontinuityMapImageFilter Self;
25 typedef itk::BoxImageFilter< TInputImage, TOutputImage > Superclass;
26 typedef itk::SmartPointer< Self > Pointer;
27 typedef itk::SmartPointer< const Self > ConstPointer;
29 typedef typename TInputImage::PixelType TInputPixel;
30 typedef typename TInputImage::RegionType TRegion;
31 typedef typename TOutputImage::PixelType TOutputPixel;
35 itkTypeMacro( DiscontinuityMapImageFilter, itkBoxImageFilter );
37 itkBooleanMacro( UseSquareRoot );
38 itkGetConstMacro( UseSquareRoot, bool );
39 itkSetMacro( UseSquareRoot, bool );
42 DiscontinuityMapImageFilter( );
43 virtual ~DiscontinuityMapImageFilter( );
45 virtual void ThreadedGenerateData( const TRegion& region, itk::ThreadIdType threadId ) override;
48 // Purposely not implemented.
49 DiscontinuityMapImageFilter( const Self& );
50 void operator=( const Self& );
60 #ifndef ITK_MANUAL_INSTANTIATION
61 # include <cpExtensions/Algorithms/DiscontinuityMapImageFilter.hxx>
62 #endif // ITK_MANUAL_INSTANTIATION
64 #endif // __cpExtensions__Algorithms__DiscontinuityMapImageFilter__h__