diff options
Diffstat (limited to 'make/config/cl-impl-20.cfg')
-rw-r--r-- | make/config/cl-impl-20.cfg | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/make/config/cl-impl-20.cfg b/make/config/cl-impl-20.cfg new file mode 100644 index 00000000..5b0a9125 --- /dev/null +++ b/make/config/cl-impl-20.cfg @@ -0,0 +1,105 @@ +Include cl-common.cfg +NativeOutputDir gensrc/native/jocl20 + +Style ImplOnly + +#imports for all generated java files +Import com.jogamp.opencl.llb.gl.CLGL +Import java.security.AccessController +Import java.security.PrivilegedAction + +ClassJavadoc CLAbstractImpl20 /** +ClassJavadoc CLAbstractImpl20 * Java bindings to OpenCL, the Open Computing Language (generated). +ClassJavadoc CLAbstractImpl20 * @author Michael Bien, GlueGen, et al. +ClassJavadoc CLAbstractImpl20 */ + +ImplJavaClass CLAbstractImpl20 +AccessControl CLAbstractImpl20 PUBLIC_ABSTRACT +Implements CLAbstractImpl20 CLGL + +LocalProcAddressCallingConvention __ALL__ CL_API_CALL + +EmitProcAddressTable true +ProcAddressTableClassName CLProcAddressTable20 +GetProcAddressTableExpr addressTable +ProcAddressNameExpr $UpperCase(arg) +ForceProcAddressGen __ALL__ + +#dynamic binding for OpenGL specific functions... +#ForceProcAddressGen clGetGLContextInfoKHR +#ForceProcAddressGen clCreateFromGLBuffer +#ForceProcAddressGen clCreateFromGLRenderbuffer +#ForceProcAddressGen clCreateFromGLTexture2D +#ForceProcAddressGen clCreateFromGLTexture3D +#ForceProcAddressGen clEnqueueAcquireGLObjects +#ForceProcAddressGen clEnqueueReleaseGLObjects +#ForceProcAddressGen clGetGLObjectInfo +#ForceProcAddressGen clGetGLTextureInfo +#ForceProcAddressGen clCreateEventFromGLsyncKHR +#ForceProcAddressGen clIcdGetPlatformIDsKHR +#ForceProcAddressGen clCreateSubBuffer +#ForceProcAddressGen clCreateSubDevicesEXT +#ForceProcAddressGen clCreateUserEvent +#ForceProcAddressGen clEnqueueCopyBufferRect +#ForceProcAddressGen clEnqueueReadBufferRect +#ForceProcAddressGen clEnqueueWriteBufferRect +#ForceProcAddressGen clReleaseDeviceEXT +#ForceProcAddressGen clRetainDeviceEXT +#ForceProcAddressGen clSetUserEventStatus + +#...or force all +ForceProcAddressGen __ALL__ + +# +# extern CL_API_ENTRY void * CL_API_CALL clGetExtensionFunctionAddress(const char * /* func_name */) CL_API_SUFFIX__VERSION_1_0; +# +Ignore clGetExtensionFunctionAddress +ForceProcAddressGen clGetExtensionFunctionAddress + +#append to generated c files +CustomCCode #include <CL/cl.h> +CustomCCode #include <CL/cl_ext.h> +CustomCCode #include <CL/cl_gl.h> +CustomCCode #include <GL/glcorearb.h> +CustomCCode #include <inttypes.h> + +# implement manually via custom code +Ignore clCreateContext +ForceProcAddressGen clCreateContext + +Ignore clCreateContextFromType +ForceProcAddressGen clCreateContextFromType + +Ignore clBuildProgram +ForceProcAddressGen clBuildProgram + +Ignore clCompileProgram +ForceProcAddressGen clCompileProgram + +Ignore clLinkProgram +ForceProcAddressGen clLinkProgram + +Ignore clEnqueueNativeKernel +ForceProcAddressGen clEnqueueNativeKernel + +Ignore clReleaseContext +ForceProcAddressGen clReleaseContext + +Ignore clSetEventCallback +ForceProcAddressGen clSetEventCallback + +Ignore clSetMemObjectDestructorCallback +ForceProcAddressGen clSetMemObjectDestructorCallback + +#take buffer capacity from input param 5 +ReturnValueCapacity clEnqueueMapBuffer {5} + +#this one is more complicated, we have to calculate the capacity with custom code +ManuallyImplement clEnqueueMapImage +ForceProcAddressGen clEnqueueMapImage + +#include custom code +IncludeAs CustomJavaCode CLAbstractImpl20 clImplCustomCode20.java +ManualStaticInitCall CLAbstractImpl20 +IncludeAs CustomCCode clImplCustomCode20.c + |