X-Git-Url: http://git.euphorik.ch/?p=GPU.git;a=blobdiff_plain;f=WCudaMSE%2FStudent_Cuda_Image%2Fsrc%2Fcpp%2Fcore%2F06_Convolution%2Fmoo%2Fhost%2FConvolution.h;fp=WCudaMSE%2FStudent_Cuda_Image%2Fsrc%2Fcpp%2Fcore%2F06_Convolution%2Fmoo%2Fhost%2FConvolution.h;h=e67adc207e048bacefa1d0b2ed678e892e321a90;hp=0000000000000000000000000000000000000000;hb=4182eb3a07b7143afb8ebebfe77e8ef8e8abc266;hpb=fd0031be0a39a5d902750affaff6322fcd5229b1 diff --git a/WCudaMSE/Student_Cuda_Image/src/cpp/core/06_Convolution/moo/host/Convolution.h b/WCudaMSE/Student_Cuda_Image/src/cpp/core/06_Convolution/moo/host/Convolution.h new file mode 100644 index 0000000..e67adc2 --- /dev/null +++ b/WCudaMSE/Student_Cuda_Image/src/cpp/core/06_Convolution/moo/host/Convolution.h @@ -0,0 +1,39 @@ +#ifndef CONVOLUTION_H +#define CONVOLUTION_H + +#include "cudaTools.h" +#include "Animable_I.h" +#include "MathTools.h" +#include "AleaTools.h" + +class Convolution : public Animable_I + { + public: + Convolution(int w, int h); + ~Convolution(); + + void runGPU(uchar4* ptrDevPixels) /*override*/; + void animationStep() /*override*/; + + int getW() /*override*/; + int getH() /*override*/; + + float getT() /*override*/; + + std::string getTitle(void) /*override*/; + + private: + float t; + + const int w; + const int h; + + const dim3 dg; + const dim3 db; + + const std::string title; + + static const float kernel[9][9]; + }; + +#endif