00001 #ifndef __ISimpleOpeningOp__ 00002 #define __ISimpleOpeningOp__ 00003 00004 00005 00026 #include <stdio.h> 00027 00028 #include "ISimpleMorphologicalOp.hpp" 00029 00030 #include "ISimpleErosionOp.hpp" 00031 #include "ISimpleDilatationOp.hpp" 00032 00033 class ISimpleOpeningOp : public ISimpleMorphologicalOp 00034 { 00035 protected: 00036 00037 ISimpleErosionOp erosion; 00038 ISimpleDilatationOp dilatation; 00039 00040 public: 00041 00042 ISimpleOpeningOp(int n, int greyFg):erosion(n,greyFg),dilatation(n,greyFg){} 00043 ISimpleOpeningOp(int n, int red, int green, int blue) 00044 :erosion(n, red, green, blue),dilatation(n, red, green, blue){} 00045 virtual ~ISimpleOpeningOp(){} 00046 00047 virtual void setIterations(int iter){dilatation.setIterations(iter); erosion.setIterations(iter);} 00048 00049 virtual AnImage* filter(AnImage* src, AnImage* dest=0); 00050 00051 virtual void report(FILE* file){} 00052 }; 00053 00054 00055 #endif