Ajout de l'ensemble du workspace.
[GPU.git] / WCudaMSE / Tuto_Image_Cuda / src / cpp / core / mainGL.cpp
1 #include <iostream>
2 #include <stdlib.h>
3 #include <string.h>
4
5 #include "GLUTImageViewers_GPU.h"
6
7
8 #include "Device.h"
9 #include "cudaTools.h"
10
11 #include "Vague0Provider.h"
12 #include "VagueProvider.h"
13 #include "DamierProvider.h"
14 #include "EventProvider.h"
15 #include "MyDisplayableProvider.h"
16 #include "MyGLUTWindow.h"
17
18 using std::cout;
19 using std::endl;
20 using std::string;
21
22 /*----------------------------------------------------------------------*\
23 |* Declaration *|
24 \*---------------------------------------------------------------------*/
25
26 /*--------------------------------------*\
27 |* Imported *|
28 \*-------------------------------------*/
29
30 /*--------------------------------------*\
31 |* Public *|
32 \*-------------------------------------*/
33
34 int mainGL(void);
35
36 /*--------------------------------------*\
37 |* Private *|
38 \*-------------------------------------*/
39
40 /*----------------------------------------------------------------------*\
41 |* Implementation *|
42 \*---------------------------------------------------------------------*/
43
44 /*--------------------------------------*\
45 |* Public *|
46 \*-------------------------------------*/
47
48 int mainGL(void)
49 {
50 Vague0Image* ptrVague0=Vague0Provider::createGL(); //bad technique
51
52 Image* ptrVague=VagueProvider::createGL();
53 ImageFonctionel* ptrDamier=DamierProvider::createGL();
54 ImageFonctionel* ptrEvent=EventProvider::createGL();
55 Displayable_A* ptrMyDisplayable=MyDisplayableProvider::createGL();
56
57 bool isAnimation = true;
58 bool isSelection = true;
59
60 // ImageViewer
61 GLUTImageViewers vague0Viewer(ptrVague0, isAnimation, false, 0, 0);
62 GLUTImageViewers vagueViewer(ptrVague, isAnimation, false, 25,25);
63 GLUTImageViewers damierlViewer(ptrDamier, isAnimation, isSelection, 50, 50);
64 GLUTImageViewers eventViewer(ptrEvent, isAnimation, isSelection, 75, 75);
65 // Insert here other ImageViewer ...
66
67 // OpenGLViewer
68 MyGLUTWindow myGlutWindow(ptrMyDisplayable,"Triangle OpenGL, Custom Displayable",600,600,100,100);// scene OpenGL // (w,h,px,py)
69
70 GLUTImageViewers::runALL(); // Bloquant, Tant qu'une fenetre est ouverte
71
72 // destruction
73 {
74 delete ptrVague0;
75 delete ptrVague;
76 delete ptrDamier;
77 delete ptrEvent;
78 delete ptrMyDisplayable;
79
80 ptrVague0 = NULL;
81 ptrVague=NULL;
82 ptrDamier = NULL;
83 ptrEvent = NULL;
84 ptrMyDisplayable = NULL;
85 }
86
87 return EXIT_SUCCESS;
88 }
89
90 /*--------------------------------------*\
91 |* Private *|
92 \*-------------------------------------*/
93
94
95
96
97 /*----------------------------------------------------------------------*\
98 |* End *|
99 \*---------------------------------------------------------------------*/
100