diff options
author | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2013-03-04 22:38:40 +0000 |
---|---|---|
committer | Ludovic Pouzenc <ludovic@pouzenc.fr> | 2013-03-04 22:38:40 +0000 |
commit | fc4daa1fe40d0127dbd1e9fdbd4031bade1f7522 (patch) | |
tree | 7201ac0bb6e1abd171e92b97b0d2347cffc4f0ce /src/opencl_mesh_kit.hpp | |
parent | 35e25937ad05e409340e7cd356c3ce1a45a5a3f9 (diff) | |
download | 2013-gpudataviz-fc4daa1fe40d0127dbd1e9fdbd4031bade1f7522.tar.gz 2013-gpudataviz-fc4daa1fe40d0127dbd1e9fdbd4031bade1f7522.tar.bz2 2013-gpudataviz-fc4daa1fe40d0127dbd1e9fdbd4031bade1f7522.zip |
Ok, première version qui affiche le mesh correctement initializé avec OpenCL et qui affiche même un sinus radial sur un clic de souris mouse1.
Reste a capturer les evenements mouse wheel et/ou clavier.
git-svn-id: file:///var/svn/2013-gpudataviz/trunk@19 371a6b4a-a258-45f8-9dcc-bdd82ce0ac9d
Diffstat (limited to 'src/opencl_mesh_kit.hpp')
-rw-r--r-- | src/opencl_mesh_kit.hpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/opencl_mesh_kit.hpp b/src/opencl_mesh_kit.hpp index aa3a013..f99c6c2 100644 --- a/src/opencl_mesh_kit.hpp +++ b/src/opencl_mesh_kit.hpp @@ -14,8 +14,14 @@ class OpenCLMeshKit //RAII is violated but it is really triky to do differently cl_int initCL(intptr_t gl_display, intptr_t gl_context, intptr_t gl_vbo, size_t meshWidth, size_t meshHeight, size_t groupSize); cl_int compileKernels(std::list<std::string> names, const char source[], size_t sourceLen); - cl_int execKernel(std::string kernelName); + cl_int execKernel(std::string kernelName, float time); void releaseKernels(); + + size_t getMeshWidth(); + size_t getMeshHeight(); + size_t getMeshItemCount(); + size_t getGroupSize(); + intptr_t getGLVBO(); void setGroupSize(size_t groupSize); // Quick and dirty function to initialize a test mesh @@ -23,6 +29,7 @@ class OpenCLMeshKit virtual ~OpenCLMeshKit(); + protected: size_t meshWidth; size_t meshHeight; @@ -33,6 +40,8 @@ class OpenCLMeshKit cl_command_queue cl_cq; cl_mem cl_vbo; + intptr_t gl_vbo; // Save this pointer for convinence (for data display code) + std::map<std::string, cl_kernel> kernels; }; |