Ajout de l'ensemble du workspace.
[GPU.git] / WCudaMSE / Tuto_Image_Cuda / src / cpp / core / 02_Damier_Zoomable / moo / host / Damier.h
1 #ifndef DAMIER_H_
2 #define HELLO_FONCTIONEL_H_
3
4 #include "cudaTools.h"
5 #include "AnimableFonctionel_I.h"
6 #include "MathTools.h"
7 #include "VariateurF.h"
8
9 /*----------------------------------------------------------------------*\
10 |* Declaration *|
11 \*---------------------------------------------------------------------*/
12
13 /*--------------------------------------*\
14 |* Public *|
15 \*-------------------------------------*/
16
17 class Damier: public AnimableFonctionel_I
18 {
19 /*--------------------------------------*\
20 |* Constructor *|
21 \*-------------------------------------*/
22
23 public:
24
25 Damier(int w, int h, float dt, int n);
26 virtual ~Damier(void);
27
28 /*--------------------------------------*\
29 |* Methodes *|
30 \*-------------------------------------*/
31
32 public:
33
34 /*----------------*\
35 |* Override *|
36 \*---------------*/
37
38
39 /**
40 * Override
41 * Call periodicly by the API
42 */
43 virtual void animationStep(void);
44
45 void runGPU(uchar4* ptrDevPixels, const DomaineMath& domaineMath); // Override
46
47 /**
48 * Para animation
49 */
50 float getT(void); // Override
51 int getW(void); // Override
52 int getH(void); // Override
53 DomaineMath* getDomaineMathInit(void); // Override
54 string getTitle(void); // Override
55
56
57
58 /*--------------------------------------*\
59 |* Attributs *|
60 \*-------------------------------------*/
61
62 private:
63
64 // Inputs
65 int w;
66 int h;
67 int n;
68
69 // Tools
70 dim3 dg;
71 dim3 db;
72 float t; // para animation
73 VariateurF variateurAnimation; // varier t
74 DomaineMath* ptrDomaineMathInit;
75
76 //Outputs
77 string title;
78 };
79
80 #endif
81
82 /*----------------------------------------------------------------------*\
83 |* End *|
84 \*---------------------------------------------------------------------*/