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