diff options
author | Michael Bien <[email protected]> | 2009-09-19 04:34:39 +0200 |
---|---|---|
committer | Michael Bien <[email protected]> | 2009-09-19 04:34:39 +0200 |
commit | 8a876cce10aa358ff041a95e5a7a173dc6be3e52 (patch) | |
tree | 15a62dfc201d56c2e322f66ab9d886d16515dc9c | |
parent | d31496fc6c4d1e246cfd53beb438312d16f8d582 (diff) |
introduced CLGLI interface for OpenCL-OpenGL Interoperability
-rw-r--r-- | build.xml | 10 | ||||
-rw-r--r-- | resources/OpenCL.cfg | 24 | ||||
-rw-r--r-- | resources/OpenCLGL.cfg | 15 | ||||
-rw-r--r-- | resources/cl-common.cfg | 17 | ||||
-rw-r--r-- | resources/clgl-if.cfg | 18 |
5 files changed, 51 insertions, 33 deletions
@@ -34,6 +34,16 @@ </dirset> <echo message=" - - - generate JOCL java files - - - "/> + + <echo message="generate CLGL interface..."/> + <gluegen src="resources/opencl.h" + config="resources/clgl-if.cfg" + includeRefid="jocl.include.path" + emitter="com.sun.gluegen.JavaEmitter"> + <classpath refid="gluegen.classpath" /> + </gluegen> + + <echo message="generate GLImpl..."/> <gluegen src="resources/opencl.h" config="resources/OpenCL.cfg" includeRefid="jocl.include.path" diff --git a/resources/OpenCL.cfg b/resources/OpenCL.cfg index 9ac199c1..5cf23c88 100644 --- a/resources/OpenCL.cfg +++ b/resources/OpenCL.cfg @@ -1,10 +1,12 @@ +Include cl-common.cfg + Package com.mbien.opencl Style InterfaceAndImpl #imports for all generated java files Import com.mbien.opencl.* -Import java.nio.* +#Import java.nio.* ClassJavadoc CL /** ClassJavadoc CL * Java bindings to OpenCL, the Open Computing Language. @@ -12,24 +14,10 @@ ClassJavadoc CL * @autor Michael Bien ClassJavadoc CL */ JavaClass CL -JavaOutputDir gensrc/java -NativeOutputDir gensrc/native - -#map pointers to long as internal representation -Opaque long cl_context -Opaque long cl_device_type -Opaque long cl_command_queue -Opaque long cl_mem -Opaque long cl_program -Opaque long cl_kernel -Opaque long cl_event -Opaque long cl_sampler - -# TODO doublecheck if not int -Opaque long cl_platform_id -Opaque long cl_device_id +ImplJavaClass CLImpl +Implements CLImpl CLGLI #append to generated c files CustomCCode #include <cl.h> CustomCCode #include <gl3.h> -CustomCCode #include <inttypes.h> +CustomCCode #include <inttypes.h>
\ No newline at end of file diff --git a/resources/OpenCLGL.cfg b/resources/OpenCLGL.cfg deleted file mode 100644 index 451df609..00000000 --- a/resources/OpenCLGL.cfg +++ /dev/null @@ -1,15 +0,0 @@ -Include OpenCL.cfg - -Package com.mbien.opencl.gl - -#imports for all generated java files -Import com.mbien.opencl.* -Import com.mbien.opencl.gl* -Import java.nio.* - -ClassJavadoc CL /** -ClassJavadoc CL * OpenGL - OpenCL interoperability. -ClassJavadoc CL * @autor Michael Bien -ClassJavadoc CL */ -JavaClass CLGL - diff --git a/resources/cl-common.cfg b/resources/cl-common.cfg new file mode 100644 index 00000000..bcdf7ee9 --- /dev/null +++ b/resources/cl-common.cfg @@ -0,0 +1,17 @@ +JavaOutputDir gensrc/java +NativeOutputDir gensrc/native + +#map pointers to long as internal representation +Opaque long cl_context +Opaque long cl_device_type +Opaque long cl_command_queue +Opaque long cl_mem +Opaque long cl_program +Opaque long cl_kernel +Opaque long cl_event +Opaque long cl_sampler + +# TODO doublecheck if not int +Opaque long cl_platform_id +Opaque long cl_device_id + diff --git a/resources/clgl-if.cfg b/resources/clgl-if.cfg new file mode 100644 index 00000000..771e39f6 --- /dev/null +++ b/resources/clgl-if.cfg @@ -0,0 +1,18 @@ +Include cl-common.cfg + +Package com.mbien.opencl + +Style InterfaceOnly + +ClassJavadoc CLGLI /** +ClassJavadoc CLGLI * Java bindings to OpenCL, the Open Computing Language. +ClassJavadoc CLGLI * OpenGL - OpenCL interoperability. +ClassJavadoc CLGLI * @autor Michael Bien +ClassJavadoc CLGLI */ +JavaClass CLGLI + +#only include token starting with CL_GL_ and methods containing GL +IgnoreNot CL_GL_.*|cl.*GL.* + +#append to generated c files +#CustomCCode #include <inttypes.h> |