--- /dev/null
+#ifndef IMAGE_CUDA_MOOS_A_H\r
+#define IMAGE_CUDA_MOOS_A_H\r
+\r
+#include "builtin_types.h" //for cuda uchar4\r
+\r
+#include "envGLImageCudas.h"\r
+#include "ImageMOOs_I.h"\r
+\r
+/*----------------------------------------------------------------------*\\r
+ |* Declaration *|\r
+ \*---------------------------------------------------------------------*/\r
+\r
+/*--------------------------------------*\\r
+ |* Public *|\r
+ \*-------------------------------------*/\r
+\r
+namespace gpu\r
+ {\r
+ class CBI_GLIMAGE_CUDA ImageMOOs_A: public ImageMOOs_I\r
+ {\r
+ public:\r
+\r
+ /*--------------------------------------*\\r
+ |* Constructor *|\r
+ \*-------------------------------------*/\r
+\r
+ ImageMOOs_A(unsigned int w, unsigned int h);\r
+\r
+ /*--------------------------------------*\\r
+ |* Destructor *|\r
+ \*-------------------------------------*/\r
+\r
+ virtual ~ImageMOOs_A();\r
+\r
+ /*--------------------------------------*\\r
+ |* Methodes *|\r
+ \*-------------------------------------*/\r
+\r
+ public:\r
+\r
+ virtual void fillImageGL(uchar4* ptrDevImageGL, int w, int h)=0; //ptrDevImageGL zone memoire commune OpenGL et Cuda\r
+\r
+ /**\r
+ * Override\r
+ * A redefinir par l'utilisateur\r
+ */\r
+ virtual void animationStep(bool& isNeedUpdateView);\r
+\r
+ /**\r
+ * Override\r
+ * A redefinir par l'utilisateur\r
+ */\r
+ virtual void paintPrimitives(Graphic2Ds& ptrGraphic2D);\r
+\r
+ /*--------------------------------------*\\r
+ |* Get *|\r
+ \*-------------------------------------*/\r
+\r
+ public:\r
+\r
+ /**\r
+ * Recuperation des pixels de l'image coter CPU\r
+ * call fillImageGL\r
+ *\r
+ * Instanciation :\r
+ *\r
+ * unsigned char* ptrTabPixel=new unsigned char[w*h]\r
+ *\r
+ * Pour liberer la memoire :\r
+ *\r
+ * delete[] ptrTabPixel;\r
+ */\r
+ unsigned char* getPtrTabPixels();\r
+ };\r
+ }\r
+\r
+#endif\r
+\r
+/*----------------------------------------------------------------------*\\r
+ |* End *|\r
+ \*---------------------------------------------------------------------*/\r