X-Git-Url: http://git.euphorik.ch/?p=GPU.git;a=blobdiff_plain;f=WCudaMSE%2FStudent_Cuda_Image%2Fsrc%2Fcpp%2Fcore%2FViewer.h;fp=WCudaMSE%2FStudent_Cuda_Image%2Fsrc%2Fcpp%2Fcore%2FViewer.h;h=d77be2acfdddd578e7922a1cc3684f8c061e05c9;hp=0000000000000000000000000000000000000000;hb=4182eb3a07b7143afb8ebebfe77e8ef8e8abc266;hpb=fd0031be0a39a5d902750affaff6322fcd5229b1 diff --git a/WCudaMSE/Student_Cuda_Image/src/cpp/core/Viewer.h b/WCudaMSE/Student_Cuda_Image/src/cpp/core/Viewer.h new file mode 100644 index 0000000..d77be2a --- /dev/null +++ b/WCudaMSE/Student_Cuda_Image/src/cpp/core/Viewer.h @@ -0,0 +1,49 @@ +#ifndef VIEWER_H +#define VIEWER_H + +/** + * Crée une instance automatiquement de 'TOutput' en appelant 'TProvider::createGL()'. + */ +template +class AutoViewer + { + private: + TOutput* ptrOutput; + GLUTImageViewers viewer; + + public: + AutoViewer(bool isAnimation, bool isSelection, int pxFrame, int pyFrame): + ptrOutput(TProvider::createGL()), + viewer(ptrOutput, isAnimation, isSelection, pxFrame, pyFrame) + { + } + + ~AutoViewer() + { + delete this->ptrOutput; + } + }; + + +template +class Viewer + { + private: + TOutput* ptrOutput; + GLUTImageViewers viewer; + + public: + Viewer(TOutput* output, bool isAnimation, bool isSelection, int pxFrame, int pyFrame): + ptrOutput(output), + viewer(ptrOutput, isAnimation, isSelection, pxFrame, pyFrame) + { + } + + ~Viewer() + { + delete this->ptrOutput; + } + }; + +#endif +