00001 #ifndef __IColorShapiroOp__ 00002 #define __IColorShapiroOp__ 00003 00004 00026 #include <stdio.h> 00027 00028 #include "IMultiImageOp.hpp" 00029 00030 #include "Real3CImage.hpp" 00031 00032 00033 class IColorShapiroOp : public IMultiImageOp 00034 { 00035 protected: 00036 00037 // mono channel 00038 00039 virtual AnImage* greyFilter(AnImage* src, AnImage* dest=0); 00040 virtual AnImage* greySelectedFilter(AnImage* mask, AnImage* src, AnImage* dest=0); 00041 00042 // separate color channels 00043 00044 virtual Real3CImage* scolorFilter(Real3CImage* src, Real3CImage* dest=0); 00045 virtual Real3CImage* scolorSelectedFilter(AnImage* mask, Real3CImage* src, Real3CImage* dest=0); 00046 00047 00048 // full color channels 00049 00050 virtual Real3CImage* fcolorFilter(Real3CImage* src, Real3CImage* dest=0); 00051 virtual Real3CImage* fcolorSelectedFilter(AnImage* mask, Real3CImage* src, Real3CImage* dest=0); 00052 00053 public: 00054 IColorShapiroOp(int iter=50, bool colorFlag= false):IMultiImageOp(iter, colorFlag){} 00055 virtual ~IColorShapiroOp(){} 00056 00057 virtual void report(FILE* file){} 00058 }; 00059 00060 00061 #endif