1 // -------------------------------------------------------------------------
2 // @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co)
3 // -------------------------------------------------------------------------
5 #ifndef __CPPLUGINS__EXTENSIONS__ALGORITHMS__LIGHTCOMPENSATIONFILTER__H__
6 #define __CPPLUGINS__EXTENSIONS__ALGORITHMS__LIGHTCOMPENSATIONFILTER__H__
8 #include <itkInPlaceImageFilter.h>
9 #include <cpPlugins/Extensions/Algorithms/ParallelImageMean.h>
20 class LightCompensationFilter
21 : public itk::InPlaceImageFilter< I, I >
24 typedef LightCompensationFilter Self;
25 typedef itk::InPlaceImageFilter< I, I > Superclass;
26 typedef itk::SmartPointer< Self > Pointer;
27 typedef itk::SmartPointer< const Self > ConstPointer;
30 typedef typename I::RegionType TRegion;
32 typedef cpPlugins::Extensions::Algorithms::ParallelImageMean< I > TMeanCalculator;
33 typedef typename TMeanCalculator::TMean TMean;
37 itkTypeMacro( LightCompensationFilter, itkInPlaceImageFilter );
39 itkGetConstMacro( Mean, TMean );
42 LightCompensationFilter( );
43 virtual ~LightCompensationFilter( );
46 virtual void BeforeThreadedGenerateData( );
47 virtual void ThreadedGenerateData(
48 const TRegion& region, itk::ThreadIdType id
50 virtual void AfterThreadedGenerateData( );
63 #include <cpPlugins/Extensions/Algorithms/LightCompensationFilter.hxx>
65 #endif // __CPPLUGINS__EXTENSIONS__ALGORITHMS__LIGHTCOMPENSATIONFILTER__H__