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