Ajout de l'ensemble du workspace.
[GPU.git] / WCudaMSE / Tuto_Image / src / cpp / core / 02_Damier_Zoomable / b_moo / DamierMOO.h
1 #ifndef DAMIER_MOO_H_
2 #define DAMIER_MOO_H_
3
4 #include "cudaType.h"
5
6 #include "VariateurF.h"
7 #include "DomaineMath.h"
8 #include "DamierMath.h"
9
10
11 /*----------------------------------------------------------------------*\
12 |* Declaration *|
13 \*---------------------------------------------------------------------*/
14
15 /*--------------------------------------*\
16 |* Public *|
17 \*-------------------------------------*/
18
19 class DamierMOO
20 {
21 /*--------------------------------------*\
22 |* Constructeur *|
23 \*-------------------------------------*/
24
25 public:
26
27 DamierMOO(unsigned int w, unsigned int h, float dt, int n);
28 virtual ~DamierMOO(void);
29
30 /*--------------------------------------*\
31 |* Methode *|
32 \*-------------------------------------*/
33
34 public:
35
36 void process(uchar4* ptrTabPixels, int w, int h, const DomaineMath& domaineMath);
37
38 int getN();
39 float getT();
40
41 void animationStep();
42
43 private:
44
45 void forAutoOMP(uchar4* ptrTabPixels, int w, int h, const DomaineMath& domaineMath);
46 void entrelacementOMP(uchar4* ptrTabPixels, int w, int h, const DomaineMath& domaineMath);
47
48 void workPixel(uchar4* ptrColorIJ,int i, int j,int s, const DomaineMath& domaineMath,DamierMath* ptrDamierMath);
49
50 /*--------------------------------------*\
51 |* Attribut *|
52 \*-------------------------------------*/
53
54 protected:
55
56 // Inputs
57 int n;
58 unsigned int w;
59 unsigned int h;
60
61 // Tools
62 VariateurF variateurT; // fait varier para animation t
63 bool isEntrelacement;
64 };
65
66 #endif
67
68 /*----------------------------------------------------------------------*\
69 |* End *|
70 \*---------------------------------------------------------------------*/