Début du TP convolution. Pour l'instant uniquement lecture d'une vidéo.
[GPU.git] / WCudaMSE / Student_Cuda_Image / src / cpp / core / Viewer.h
1 #ifndef VIEWER_H
2 #define VIEWER_H
3
4 /**
5 * Crée une instance automatiquement de 'TOutput' en appelant 'TProvider::createGL()'.
6 */
7 template <class TOutput, class TProvider>
8 class AutoViewer
9 {
10 private:
11 TOutput* ptrOutput;
12 GLUTImageViewers viewer;
13
14 public:
15 AutoViewer(bool isAnimation, bool isSelection, int pxFrame, int pyFrame):
16 ptrOutput(TProvider::createGL()),
17 viewer(ptrOutput, isAnimation, isSelection, pxFrame, pyFrame)
18 {
19 }
20
21 ~AutoViewer()
22 {
23 delete this->ptrOutput;
24 }
25 };
26
27
28 template <class TOutput>
29 class Viewer
30 {
31 private:
32 TOutput* ptrOutput;
33 GLUTImageViewers viewer;
34
35 public:
36 Viewer(TOutput* output, bool isAnimation, bool isSelection, int pxFrame, int pyFrame):
37 ptrOutput(output),
38 viewer(ptrOutput, isAnimation, isSelection, pxFrame, pyFrame)
39 {
40 }
41
42 ~Viewer()
43 {
44 delete this->ptrOutput;
45 }
46 };
47
48 #endif
49