summaryrefslogtreecommitdiff
path: root/src/opencl_mesh_kit.hpp
diff options
context:
space:
mode:
authorLudovic Pouzenc <ludovic@pouzenc.fr>2013-03-04 22:38:40 +0000
committerLudovic Pouzenc <ludovic@pouzenc.fr>2013-03-04 22:38:40 +0000
commitfc4daa1fe40d0127dbd1e9fdbd4031bade1f7522 (patch)
tree7201ac0bb6e1abd171e92b97b0d2347cffc4f0ce /src/opencl_mesh_kit.hpp
parent35e25937ad05e409340e7cd356c3ce1a45a5a3f9 (diff)
download2013-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.hpp11
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;
};