Ajout de l'ensemble du workspace.
[GPU.git] / WCudaMSE / Tuto_Image_Cuda / src / cpp / core / 01_Vague_smart / moo / host / Vague.h
diff --git a/WCudaMSE/Tuto_Image_Cuda/src/cpp/core/01_Vague_smart/moo/host/Vague.h b/WCudaMSE/Tuto_Image_Cuda/src/cpp/core/01_Vague_smart/moo/host/Vague.h
new file mode 100755 (executable)
index 0000000..b2f2acd
--- /dev/null
@@ -0,0 +1,75 @@
+#ifndef VAGUE_H_\r
+#define VAGUE_H_\r
+\r
+#include "cudaTools.h"\r
+#include "Animable_I.h"\r
+#include "MathTools.h"\r
+\r
+/*----------------------------------------------------------------------*\\r
+ |*                    Declaration                                     *|\r
+ \*---------------------------------------------------------------------*/\r
+\r
+/*--------------------------------------*\\r
+ |*            Public                  *|\r
+ \*-------------------------------------*/\r
+\r
+class Vague: public Animable_I\r
+    {\r
+       /*--------------------------------------*\\r
+       |*              Constructor             *|\r
+        \*-------------------------------------*/\r
+\r
+    public:\r
+\r
+       Vague(int w, int h, float dt = 2 * PI / 1000);\r
+       virtual ~Vague(void);\r
+\r
+       /*--------------------------------------*\\r
+        |*             Methodes                *|\r
+        \*-------------------------------------*/\r
+\r
+    public:\r
+\r
+       /*----------------*\\r
+       |*  Override      *|\r
+       \*---------------*/\r
+\r
+       /**\r
+        * Override\r
+        * Call periodicly by the API\r
+        */\r
+       virtual void animationStep(void);\r
+\r
+       virtual void runGPU(uchar4* ptrDevPixels); // Override\r
+\r
+       virtual float getT(void); // Override\r
+       virtual int getW(void); // Override\r
+       virtual int getH(void); // Override\r
+\r
+       virtual string getTitle(void); // Override\r
+\r
+       /*--------------------------------------*\\r
+        |*             Attributs               *|\r
+        \*-------------------------------------*/\r
+\r
+    private:\r
+\r
+       // Inputs\r
+       int w;\r
+       int h;\r
+       float dt;\r
+\r
+       // Tools\r
+       dim3 dg;\r
+       dim3 db;\r
+       float t;\r
+\r
+       //Outputs\r
+       string title;\r
+    };\r
+\r
+#endif\r
+\r
+/*----------------------------------------------------------------------*\\r
+ |*                    End                                             *|\r
+ \*---------------------------------------------------------------------*/\r