1*3cc25752SFrank Piva /******************************************************************************* 2*3cc25752SFrank Piva * Copyright (c) 2008-2023 The Khronos Group Inc. 3*3cc25752SFrank Piva * 4*3cc25752SFrank Piva * Licensed under the Apache License, Version 2.0 (the "License"); 5*3cc25752SFrank Piva * you may not use this file except in compliance with the License. 6*3cc25752SFrank Piva * You may obtain a copy of the License at 7*3cc25752SFrank Piva * 8*3cc25752SFrank Piva * http://www.apache.org/licenses/LICENSE-2.0 9*3cc25752SFrank Piva * 10*3cc25752SFrank Piva * Unless required by applicable law or agreed to in writing, software 11*3cc25752SFrank Piva * distributed under the License is distributed on an "AS IS" BASIS, 12*3cc25752SFrank Piva * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*3cc25752SFrank Piva * See the License for the specific language governing permissions and 14*3cc25752SFrank Piva * limitations under the License. 15*3cc25752SFrank Piva ******************************************************************************/ 16*3cc25752SFrank Piva 17*3cc25752SFrank Piva #ifndef OPENCL_CL_GL_H_ 18*3cc25752SFrank Piva #define OPENCL_CL_GL_H_ 19*3cc25752SFrank Piva 20*3cc25752SFrank Piva /* 21*3cc25752SFrank Piva ** This header is generated from the Khronos OpenCL XML API Registry. 22*3cc25752SFrank Piva */ 23*3cc25752SFrank Piva 24*3cc25752SFrank Piva #include <CL/cl.h> 25*3cc25752SFrank Piva 26*3cc25752SFrank Piva /* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */ 27*3cc25752SFrank Piva #if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES) 28*3cc25752SFrank Piva #define CL_NO_EXTENSION_PROTOTYPES 29*3cc25752SFrank Piva #endif 30*3cc25752SFrank Piva 31*3cc25752SFrank Piva /* CL_NO_EXTENSION_PROTOTYPES implies 32*3cc25752SFrank Piva CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and 33*3cc25752SFrank Piva CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */ 34*3cc25752SFrank Piva #if defined(CL_NO_EXTENSION_PROTOTYPES) && \ 35*3cc25752SFrank Piva !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) 36*3cc25752SFrank Piva #define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES 37*3cc25752SFrank Piva #endif 38*3cc25752SFrank Piva #if defined(CL_NO_EXTENSION_PROTOTYPES) && \ 39*3cc25752SFrank Piva !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) 40*3cc25752SFrank Piva #define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES 41*3cc25752SFrank Piva #endif 42*3cc25752SFrank Piva 43*3cc25752SFrank Piva #ifdef __cplusplus 44*3cc25752SFrank Piva extern "C" { 45*3cc25752SFrank Piva #endif 46*3cc25752SFrank Piva 47*3cc25752SFrank Piva /*************************************************************** 48*3cc25752SFrank Piva * cl_khr_gl_sharing 49*3cc25752SFrank Piva ***************************************************************/ 50*3cc25752SFrank Piva #define cl_khr_gl_sharing 1 51*3cc25752SFrank Piva #define CL_KHR_GL_SHARING_EXTENSION_NAME \ 52*3cc25752SFrank Piva "cl_khr_gl_sharing" 53*3cc25752SFrank Piva 54*3cc25752SFrank Piva typedef cl_uint cl_gl_context_info; 55*3cc25752SFrank Piva 56*3cc25752SFrank Piva /* Error codes */ 57*3cc25752SFrank Piva #define CL_INVALID_GL_SHAREGROUP_REFERENCE_KHR -1000 58*3cc25752SFrank Piva 59*3cc25752SFrank Piva /* cl_gl_context_info */ 60*3cc25752SFrank Piva #define CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR 0x2006 61*3cc25752SFrank Piva #define CL_DEVICES_FOR_GL_CONTEXT_KHR 0x2007 62*3cc25752SFrank Piva 63*3cc25752SFrank Piva /* Additional cl_context_properties */ 64*3cc25752SFrank Piva #define CL_GL_CONTEXT_KHR 0x2008 65*3cc25752SFrank Piva #define CL_EGL_DISPLAY_KHR 0x2009 66*3cc25752SFrank Piva #define CL_GLX_DISPLAY_KHR 0x200A 67*3cc25752SFrank Piva #define CL_WGL_HDC_KHR 0x200B 68*3cc25752SFrank Piva #define CL_CGL_SHAREGROUP_KHR 0x200C 69*3cc25752SFrank Piva 70*3cc25752SFrank Piva typedef cl_uint cl_gl_object_type; 71*3cc25752SFrank Piva typedef cl_uint cl_gl_texture_info; 72*3cc25752SFrank Piva typedef cl_uint cl_gl_platform_info; 73*3cc25752SFrank Piva 74*3cc25752SFrank Piva /* cl_gl_object_type */ 75*3cc25752SFrank Piva #define CL_GL_OBJECT_BUFFER 0x2000 76*3cc25752SFrank Piva #define CL_GL_OBJECT_TEXTURE2D 0x2001 77*3cc25752SFrank Piva #define CL_GL_OBJECT_TEXTURE3D 0x2002 78*3cc25752SFrank Piva #define CL_GL_OBJECT_RENDERBUFFER 0x2003 79*3cc25752SFrank Piva 80*3cc25752SFrank Piva #if defined(CL_VERSION_1_2) 81*3cc25752SFrank Piva /* cl_gl_object_type */ 82*3cc25752SFrank Piva #define CL_GL_OBJECT_TEXTURE2D_ARRAY 0x200E 83*3cc25752SFrank Piva #define CL_GL_OBJECT_TEXTURE1D 0x200F 84*3cc25752SFrank Piva #define CL_GL_OBJECT_TEXTURE1D_ARRAY 0x2010 85*3cc25752SFrank Piva #define CL_GL_OBJECT_TEXTURE_BUFFER 0x2011 86*3cc25752SFrank Piva 87*3cc25752SFrank Piva #endif /* defined(CL_VERSION_1_2) */ 88*3cc25752SFrank Piva 89*3cc25752SFrank Piva /* cl_gl_texture_info */ 90*3cc25752SFrank Piva #define CL_GL_TEXTURE_TARGET 0x2004 91*3cc25752SFrank Piva #define CL_GL_MIPMAP_LEVEL 0x2005 92*3cc25752SFrank Piva 93*3cc25752SFrank Piva 94*3cc25752SFrank Piva typedef cl_int CL_API_CALL 95*3cc25752SFrank Piva clGetGLContextInfoKHR_t( 96*3cc25752SFrank Piva const cl_context_properties* properties, 97*3cc25752SFrank Piva cl_gl_context_info param_name, 98*3cc25752SFrank Piva size_t param_value_size, 99*3cc25752SFrank Piva void* param_value, 100*3cc25752SFrank Piva size_t* param_value_size_ret); 101*3cc25752SFrank Piva 102*3cc25752SFrank Piva typedef clGetGLContextInfoKHR_t * 103*3cc25752SFrank Piva clGetGLContextInfoKHR_fn CL_API_SUFFIX__VERSION_1_0; 104*3cc25752SFrank Piva 105*3cc25752SFrank Piva typedef cl_mem CL_API_CALL 106*3cc25752SFrank Piva clCreateFromGLBuffer_t( 107*3cc25752SFrank Piva cl_context context, 108*3cc25752SFrank Piva cl_mem_flags flags, 109*3cc25752SFrank Piva cl_GLuint bufobj, 110*3cc25752SFrank Piva cl_int* errcode_ret); 111*3cc25752SFrank Piva 112*3cc25752SFrank Piva typedef clCreateFromGLBuffer_t * 113*3cc25752SFrank Piva clCreateFromGLBuffer_fn CL_API_SUFFIX__VERSION_1_0; 114*3cc25752SFrank Piva 115*3cc25752SFrank Piva #if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) 116*3cc25752SFrank Piva 117*3cc25752SFrank Piva extern CL_API_ENTRY cl_int CL_API_CALL 118*3cc25752SFrank Piva clGetGLContextInfoKHR( 119*3cc25752SFrank Piva const cl_context_properties* properties, 120*3cc25752SFrank Piva cl_gl_context_info param_name, 121*3cc25752SFrank Piva size_t param_value_size, 122*3cc25752SFrank Piva void* param_value, 123*3cc25752SFrank Piva size_t* param_value_size_ret) CL_API_SUFFIX__VERSION_1_0; 124*3cc25752SFrank Piva 125*3cc25752SFrank Piva extern CL_API_ENTRY cl_mem CL_API_CALL 126*3cc25752SFrank Piva clCreateFromGLBuffer( 127*3cc25752SFrank Piva cl_context context, 128*3cc25752SFrank Piva cl_mem_flags flags, 129*3cc25752SFrank Piva cl_GLuint bufobj, 130*3cc25752SFrank Piva cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0; 131*3cc25752SFrank Piva 132*3cc25752SFrank Piva #endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */ 133*3cc25752SFrank Piva 134*3cc25752SFrank Piva #if defined(CL_VERSION_1_2) 135*3cc25752SFrank Piva 136*3cc25752SFrank Piva typedef cl_mem CL_API_CALL 137*3cc25752SFrank Piva clCreateFromGLTexture_t( 138*3cc25752SFrank Piva cl_context context, 139*3cc25752SFrank Piva cl_mem_flags flags, 140*3cc25752SFrank Piva cl_GLenum target, 141*3cc25752SFrank Piva cl_GLint miplevel, 142*3cc25752SFrank Piva cl_GLuint texture, 143*3cc25752SFrank Piva cl_int* errcode_ret); 144*3cc25752SFrank Piva 145*3cc25752SFrank Piva typedef clCreateFromGLTexture_t * 146*3cc25752SFrank Piva clCreateFromGLTexture_fn CL_API_SUFFIX__VERSION_1_2; 147*3cc25752SFrank Piva 148*3cc25752SFrank Piva #if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) 149*3cc25752SFrank Piva 150*3cc25752SFrank Piva extern CL_API_ENTRY cl_mem CL_API_CALL 151*3cc25752SFrank Piva clCreateFromGLTexture( 152*3cc25752SFrank Piva cl_context context, 153*3cc25752SFrank Piva cl_mem_flags flags, 154*3cc25752SFrank Piva cl_GLenum target, 155*3cc25752SFrank Piva cl_GLint miplevel, 156*3cc25752SFrank Piva cl_GLuint texture, 157*3cc25752SFrank Piva cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2; 158*3cc25752SFrank Piva 159*3cc25752SFrank Piva #endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */ 160*3cc25752SFrank Piva 161*3cc25752SFrank Piva #endif /* defined(CL_VERSION_1_2) */ 162*3cc25752SFrank Piva 163*3cc25752SFrank Piva 164*3cc25752SFrank Piva typedef cl_mem CL_API_CALL 165*3cc25752SFrank Piva clCreateFromGLRenderbuffer_t( 166*3cc25752SFrank Piva cl_context context, 167*3cc25752SFrank Piva cl_mem_flags flags, 168*3cc25752SFrank Piva cl_GLuint renderbuffer, 169*3cc25752SFrank Piva cl_int* errcode_ret); 170*3cc25752SFrank Piva 171*3cc25752SFrank Piva typedef clCreateFromGLRenderbuffer_t * 172*3cc25752SFrank Piva clCreateFromGLRenderbuffer_fn CL_API_SUFFIX__VERSION_1_0; 173*3cc25752SFrank Piva 174*3cc25752SFrank Piva typedef cl_int CL_API_CALL 175*3cc25752SFrank Piva clGetGLObjectInfo_t( 176*3cc25752SFrank Piva cl_mem memobj, 177*3cc25752SFrank Piva cl_gl_object_type* gl_object_type, 178*3cc25752SFrank Piva cl_GLuint* gl_object_name); 179*3cc25752SFrank Piva 180*3cc25752SFrank Piva typedef clGetGLObjectInfo_t * 181*3cc25752SFrank Piva clGetGLObjectInfo_fn CL_API_SUFFIX__VERSION_1_0; 182*3cc25752SFrank Piva 183*3cc25752SFrank Piva typedef cl_int CL_API_CALL 184*3cc25752SFrank Piva clGetGLTextureInfo_t( 185*3cc25752SFrank Piva cl_mem memobj, 186*3cc25752SFrank Piva cl_gl_texture_info param_name, 187*3cc25752SFrank Piva size_t param_value_size, 188*3cc25752SFrank Piva void* param_value, 189*3cc25752SFrank Piva size_t* param_value_size_ret); 190*3cc25752SFrank Piva 191*3cc25752SFrank Piva typedef clGetGLTextureInfo_t * 192*3cc25752SFrank Piva clGetGLTextureInfo_fn CL_API_SUFFIX__VERSION_1_0; 193*3cc25752SFrank Piva 194*3cc25752SFrank Piva typedef cl_int CL_API_CALL 195*3cc25752SFrank Piva clEnqueueAcquireGLObjects_t( 196*3cc25752SFrank Piva cl_command_queue command_queue, 197*3cc25752SFrank Piva cl_uint num_objects, 198*3cc25752SFrank Piva const cl_mem* mem_objects, 199*3cc25752SFrank Piva cl_uint num_events_in_wait_list, 200*3cc25752SFrank Piva const cl_event* event_wait_list, 201*3cc25752SFrank Piva cl_event* event); 202*3cc25752SFrank Piva 203*3cc25752SFrank Piva typedef clEnqueueAcquireGLObjects_t * 204*3cc25752SFrank Piva clEnqueueAcquireGLObjects_fn CL_API_SUFFIX__VERSION_1_0; 205*3cc25752SFrank Piva 206*3cc25752SFrank Piva typedef cl_int CL_API_CALL 207*3cc25752SFrank Piva clEnqueueReleaseGLObjects_t( 208*3cc25752SFrank Piva cl_command_queue command_queue, 209*3cc25752SFrank Piva cl_uint num_objects, 210*3cc25752SFrank Piva const cl_mem* mem_objects, 211*3cc25752SFrank Piva cl_uint num_events_in_wait_list, 212*3cc25752SFrank Piva const cl_event* event_wait_list, 213*3cc25752SFrank Piva cl_event* event); 214*3cc25752SFrank Piva 215*3cc25752SFrank Piva typedef clEnqueueReleaseGLObjects_t * 216*3cc25752SFrank Piva clEnqueueReleaseGLObjects_fn CL_API_SUFFIX__VERSION_1_0; 217*3cc25752SFrank Piva 218*3cc25752SFrank Piva #if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) 219*3cc25752SFrank Piva 220*3cc25752SFrank Piva extern CL_API_ENTRY cl_mem CL_API_CALL 221*3cc25752SFrank Piva clCreateFromGLRenderbuffer( 222*3cc25752SFrank Piva cl_context context, 223*3cc25752SFrank Piva cl_mem_flags flags, 224*3cc25752SFrank Piva cl_GLuint renderbuffer, 225*3cc25752SFrank Piva cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0; 226*3cc25752SFrank Piva 227*3cc25752SFrank Piva extern CL_API_ENTRY cl_int CL_API_CALL 228*3cc25752SFrank Piva clGetGLObjectInfo( 229*3cc25752SFrank Piva cl_mem memobj, 230*3cc25752SFrank Piva cl_gl_object_type* gl_object_type, 231*3cc25752SFrank Piva cl_GLuint* gl_object_name) CL_API_SUFFIX__VERSION_1_0; 232*3cc25752SFrank Piva 233*3cc25752SFrank Piva extern CL_API_ENTRY cl_int CL_API_CALL 234*3cc25752SFrank Piva clGetGLTextureInfo( 235*3cc25752SFrank Piva cl_mem memobj, 236*3cc25752SFrank Piva cl_gl_texture_info param_name, 237*3cc25752SFrank Piva size_t param_value_size, 238*3cc25752SFrank Piva void* param_value, 239*3cc25752SFrank Piva size_t* param_value_size_ret) CL_API_SUFFIX__VERSION_1_0; 240*3cc25752SFrank Piva 241*3cc25752SFrank Piva extern CL_API_ENTRY cl_int CL_API_CALL 242*3cc25752SFrank Piva clEnqueueAcquireGLObjects( 243*3cc25752SFrank Piva cl_command_queue command_queue, 244*3cc25752SFrank Piva cl_uint num_objects, 245*3cc25752SFrank Piva const cl_mem* mem_objects, 246*3cc25752SFrank Piva cl_uint num_events_in_wait_list, 247*3cc25752SFrank Piva const cl_event* event_wait_list, 248*3cc25752SFrank Piva cl_event* event) CL_API_SUFFIX__VERSION_1_0; 249*3cc25752SFrank Piva 250*3cc25752SFrank Piva extern CL_API_ENTRY cl_int CL_API_CALL 251*3cc25752SFrank Piva clEnqueueReleaseGLObjects( 252*3cc25752SFrank Piva cl_command_queue command_queue, 253*3cc25752SFrank Piva cl_uint num_objects, 254*3cc25752SFrank Piva const cl_mem* mem_objects, 255*3cc25752SFrank Piva cl_uint num_events_in_wait_list, 256*3cc25752SFrank Piva const cl_event* event_wait_list, 257*3cc25752SFrank Piva cl_event* event) CL_API_SUFFIX__VERSION_1_0; 258*3cc25752SFrank Piva 259*3cc25752SFrank Piva #endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */ 260*3cc25752SFrank Piva 261*3cc25752SFrank Piva /* OpenCL 1.0 APIs that were deprecated in OpenCL 1.2 */ 262*3cc25752SFrank Piva 263*3cc25752SFrank Piva typedef cl_mem CL_API_CALL 264*3cc25752SFrank Piva clCreateFromGLTexture2D_t( 265*3cc25752SFrank Piva cl_context context, 266*3cc25752SFrank Piva cl_mem_flags flags, 267*3cc25752SFrank Piva cl_GLenum target, 268*3cc25752SFrank Piva cl_GLint miplevel, 269*3cc25752SFrank Piva cl_GLuint texture, 270*3cc25752SFrank Piva cl_int* errcode_ret); 271*3cc25752SFrank Piva 272*3cc25752SFrank Piva typedef clCreateFromGLTexture2D_t * 273*3cc25752SFrank Piva clCreateFromGLTexture2D_fn CL_API_SUFFIX__VERSION_1_1_DEPRECATED; 274*3cc25752SFrank Piva 275*3cc25752SFrank Piva typedef cl_mem CL_API_CALL 276*3cc25752SFrank Piva clCreateFromGLTexture3D_t( 277*3cc25752SFrank Piva cl_context context, 278*3cc25752SFrank Piva cl_mem_flags flags, 279*3cc25752SFrank Piva cl_GLenum target, 280*3cc25752SFrank Piva cl_GLint miplevel, 281*3cc25752SFrank Piva cl_GLuint texture, 282*3cc25752SFrank Piva cl_int* errcode_ret); 283*3cc25752SFrank Piva 284*3cc25752SFrank Piva typedef clCreateFromGLTexture3D_t * 285*3cc25752SFrank Piva clCreateFromGLTexture3D_fn CL_API_SUFFIX__VERSION_1_1_DEPRECATED; 286*3cc25752SFrank Piva 287*3cc25752SFrank Piva #if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) 288*3cc25752SFrank Piva 289*3cc25752SFrank Piva extern CL_API_ENTRY cl_mem CL_API_CALL 290*3cc25752SFrank Piva clCreateFromGLTexture2D( 291*3cc25752SFrank Piva cl_context context, 292*3cc25752SFrank Piva cl_mem_flags flags, 293*3cc25752SFrank Piva cl_GLenum target, 294*3cc25752SFrank Piva cl_GLint miplevel, 295*3cc25752SFrank Piva cl_GLuint texture, 296*3cc25752SFrank Piva cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED; 297*3cc25752SFrank Piva 298*3cc25752SFrank Piva extern CL_API_ENTRY cl_mem CL_API_CALL 299*3cc25752SFrank Piva clCreateFromGLTexture3D( 300*3cc25752SFrank Piva cl_context context, 301*3cc25752SFrank Piva cl_mem_flags flags, 302*3cc25752SFrank Piva cl_GLenum target, 303*3cc25752SFrank Piva cl_GLint miplevel, 304*3cc25752SFrank Piva cl_GLuint texture, 305*3cc25752SFrank Piva cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED; 306*3cc25752SFrank Piva 307*3cc25752SFrank Piva #endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */ 308*3cc25752SFrank Piva 309*3cc25752SFrank Piva /*************************************************************** 310*3cc25752SFrank Piva * cl_khr_gl_event 311*3cc25752SFrank Piva ***************************************************************/ 312*3cc25752SFrank Piva #define cl_khr_gl_event 1 313*3cc25752SFrank Piva #define CL_KHR_GL_EVENT_EXTENSION_NAME \ 314*3cc25752SFrank Piva "cl_khr_gl_event" 315*3cc25752SFrank Piva 316*3cc25752SFrank Piva typedef struct __GLsync * cl_GLsync; 317*3cc25752SFrank Piva 318*3cc25752SFrank Piva /* cl_command_type */ 319*3cc25752SFrank Piva #define CL_COMMAND_GL_FENCE_SYNC_OBJECT_KHR 0x200D 320*3cc25752SFrank Piva 321*3cc25752SFrank Piva 322*3cc25752SFrank Piva typedef cl_event CL_API_CALL 323*3cc25752SFrank Piva clCreateEventFromGLsyncKHR_t( 324*3cc25752SFrank Piva cl_context context, 325*3cc25752SFrank Piva cl_GLsync sync, 326*3cc25752SFrank Piva cl_int* errcode_ret); 327*3cc25752SFrank Piva 328*3cc25752SFrank Piva typedef clCreateEventFromGLsyncKHR_t * 329*3cc25752SFrank Piva clCreateEventFromGLsyncKHR_fn CL_API_SUFFIX__VERSION_1_1; 330*3cc25752SFrank Piva 331*3cc25752SFrank Piva #if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) 332*3cc25752SFrank Piva 333*3cc25752SFrank Piva extern CL_API_ENTRY cl_event CL_API_CALL 334*3cc25752SFrank Piva clCreateEventFromGLsyncKHR( 335*3cc25752SFrank Piva cl_context context, 336*3cc25752SFrank Piva cl_GLsync sync, 337*3cc25752SFrank Piva cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1; 338*3cc25752SFrank Piva 339*3cc25752SFrank Piva #endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */ 340*3cc25752SFrank Piva 341*3cc25752SFrank Piva /*************************************************************** 342*3cc25752SFrank Piva * cl_khr_gl_depth_images 343*3cc25752SFrank Piva ***************************************************************/ 344*3cc25752SFrank Piva #define cl_khr_gl_depth_images 1 345*3cc25752SFrank Piva #define CL_KHR_GL_DEPTH_IMAGES_EXTENSION_NAME \ 346*3cc25752SFrank Piva "cl_khr_gl_depth_images" 347*3cc25752SFrank Piva 348*3cc25752SFrank Piva /* cl_channel_order */ 349*3cc25752SFrank Piva #define CL_DEPTH_STENCIL 0x10BE 350*3cc25752SFrank Piva 351*3cc25752SFrank Piva /* cl_channel_type */ 352*3cc25752SFrank Piva #define CL_UNORM_INT24 0x10DF 353*3cc25752SFrank Piva 354*3cc25752SFrank Piva /*************************************************************** 355*3cc25752SFrank Piva * cl_khr_gl_msaa_sharing 356*3cc25752SFrank Piva ***************************************************************/ 357*3cc25752SFrank Piva #define cl_khr_gl_msaa_sharing 1 358*3cc25752SFrank Piva #define CL_KHR_GL_MSAA_SHARING_EXTENSION_NAME \ 359*3cc25752SFrank Piva "cl_khr_gl_msaa_sharing" 360*3cc25752SFrank Piva 361*3cc25752SFrank Piva /* cl_gl_texture_info */ 362*3cc25752SFrank Piva #define CL_GL_NUM_SAMPLES 0x2012 363*3cc25752SFrank Piva 364*3cc25752SFrank Piva /*************************************************************** 365*3cc25752SFrank Piva * cl_intel_sharing_format_query_gl 366*3cc25752SFrank Piva ***************************************************************/ 367*3cc25752SFrank Piva #define cl_intel_sharing_format_query_gl 1 368*3cc25752SFrank Piva #define CL_INTEL_SHARING_FORMAT_QUERY_GL_EXTENSION_NAME \ 369*3cc25752SFrank Piva "cl_intel_sharing_format_query_gl" 370*3cc25752SFrank Piva 371*3cc25752SFrank Piva /* when cl_khr_gl_sharing is supported */ 372*3cc25752SFrank Piva 373*3cc25752SFrank Piva typedef cl_int CL_API_CALL 374*3cc25752SFrank Piva clGetSupportedGLTextureFormatsINTEL_t( 375*3cc25752SFrank Piva cl_context context, 376*3cc25752SFrank Piva cl_mem_flags flags, 377*3cc25752SFrank Piva cl_mem_object_type image_type, 378*3cc25752SFrank Piva cl_uint num_entries, 379*3cc25752SFrank Piva cl_GLenum* gl_formats, 380*3cc25752SFrank Piva cl_uint* num_texture_formats); 381*3cc25752SFrank Piva 382*3cc25752SFrank Piva typedef clGetSupportedGLTextureFormatsINTEL_t * 383*3cc25752SFrank Piva clGetSupportedGLTextureFormatsINTEL_fn ; 384*3cc25752SFrank Piva 385*3cc25752SFrank Piva #if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) 386*3cc25752SFrank Piva 387*3cc25752SFrank Piva extern CL_API_ENTRY cl_int CL_API_CALL 388*3cc25752SFrank Piva clGetSupportedGLTextureFormatsINTEL( 389*3cc25752SFrank Piva cl_context context, 390*3cc25752SFrank Piva cl_mem_flags flags, 391*3cc25752SFrank Piva cl_mem_object_type image_type, 392*3cc25752SFrank Piva cl_uint num_entries, 393*3cc25752SFrank Piva cl_GLenum* gl_formats, 394*3cc25752SFrank Piva cl_uint* num_texture_formats) ; 395*3cc25752SFrank Piva 396*3cc25752SFrank Piva #endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */ 397*3cc25752SFrank Piva 398*3cc25752SFrank Piva #ifdef __cplusplus 399*3cc25752SFrank Piva } 400*3cc25752SFrank Piva #endif 401*3cc25752SFrank Piva 402*3cc25752SFrank Piva #endif /* OPENCL_CL_GL_H_ */ 403