00001 #ifndef __RThomasHeatOp__
00002 #define __RThomasHeatOp__
00003
00004
00032 #include <stdio.h>
00033
00034 #include "AbsRImageFilter.hpp"
00035
00036 #include "ThomasLS.hpp"
00037
00038 class RThomasHeatOp : public AbsRImageFilter
00039 {
00040 protected:
00041
00042
00043
00044 int w, h;
00045
00046 int iterMax;
00047 double tau;
00048
00049 ThomasLS* hThomasLS;
00050
00051 ThomasLS* vThomasLS;
00052
00053 public:
00054
00056 RThomasHeatOp(int iterations=1, double t=0.5);
00057 virtual ~RThomasHeatOp(){}
00058
00059
00060 virtual RImage* filter(RImage* src, RImage* dest=0);
00061 virtual RImage* selectedFilter(AnImage* mask, RImage* src, RImage* dest=0);
00062
00063 virtual void report(FILE* file){ fprintf(file,"Real Recursive 2d Blur Operator\n"); }
00064 };
00065
00066
00067 #endif