1 #ifndef IMAGE_CUDA_MOOS_A_H
2 #define IMAGE_CUDA_MOOS_A_H
4 #include "builtin_types.h" //for cuda uchar4
6 #include "envGLImageCudas.h"
7 #include "ImageMOOs_I.h"
9 /*----------------------------------------------------------------------*\
11 \*---------------------------------------------------------------------*/
13 /*--------------------------------------*\
15 \*-------------------------------------*/
19 class CBI_GLIMAGE_CUDA ImageMOOs_A
: public ImageMOOs_I
23 /*--------------------------------------*\
25 \*-------------------------------------*/
27 ImageMOOs_A(unsigned int w
, unsigned int h
);
29 /*--------------------------------------*\
31 \*-------------------------------------*/
33 virtual ~ImageMOOs_A();
35 /*--------------------------------------*\
37 \*-------------------------------------*/
41 virtual void fillImageGL(uchar4
* ptrDevImageGL
, int w
, int h
)=0; //ptrDevImageGL zone memoire commune OpenGL et Cuda
45 * A redefinir par l'utilisateur
47 virtual void animationStep(bool& isNeedUpdateView
);
51 * A redefinir par l'utilisateur
53 virtual void paintPrimitives(Graphic2Ds
& ptrGraphic2D
);
55 /*--------------------------------------*\
57 \*-------------------------------------*/
62 * Recuperation des pixels de l'image coter CPU
67 * unsigned char* ptrTabPixel=new unsigned char[w*h]
69 * Pour liberer la memoire :
71 * delete[] ptrTabPixel;
73 unsigned char* getPtrTabPixels();
79 /*----------------------------------------------------------------------*\
81 \*---------------------------------------------------------------------*/