xref: /aosp_15_r20/external/OpenCL-CTS/test_common/gles/gl_headers.h (revision 6467f958c7de8070b317fc65bcb0f6472e388d82)
1 //
2 // Copyright (c) 2017 The Khronos Group Inc.
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //    http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16 #ifndef _gl_headers_h
17 #define _gl_headers_h
18 
19 #define GL_GLEXT_PROTOTYPES 1
20 
21 #include <EGL/egl.h>
22 
23 #ifdef GLES3
24 #include <GLES3/gl3.h>
25 #else
26 #include <GLES2/gl2.h>
27 #define glTexImage3DOES glTexImage3D
28 #define glUnmapBufferOES glUnmapBuffer
29 #define glMapBufferRangeEXT glMapBufferRange
30 #endif
31 
32 #include <GLES2/gl2ext.h>
33 
34 // Some macros to minimize the changes in the tests from GL to GLES2
35 #define glGenRenderbuffersEXT        glGenRenderbuffers
36 #define glDeleteRenderbuffersEXT     glDeleteRenderbuffers
37 #define glBindRenderbufferEXT        glBindRenderbuffer
38 #define glRenderbufferStorageEXT     glRenderbufferStorage
39 #define glGetRenderbufferParameterivEXT glGetRenderbufferParameteriv
40 #define glCheckFramebufferStatusEXT  glCheckFramebufferStatus
41 #define glGenFramebuffersEXT         glGenFramebuffers
42 #define glDeleteFramebuffersEXT      glDeleteFramebuffers
43 #define glBindFramebufferEXT         glBindFramebuffer
44 #define glFramebufferRenderbufferEXT glFramebufferRenderbuffer
45 
46 #ifndef GL_ES_VERSION_3_0
47 #define GL_RGBA32F GL_RGBA32F_EXT
48 #define GL_READ_ONLY GL_BUFFER_ACCESS_OES
49 #define GL_HALF_FLOAT_ARB GL_HALF_FLOAT_OES
50 #define GL_BGRA GL_BGRA_EXT
51 #else
52 #define GL_HALF_FLOAT_ARB GL_HALF_FLOAT
53 #endif
54 
55 #define glutGetProcAddress           eglGetProcAddress
56 
57 #define GL_FRAMEBUFFER_EXT           GL_FRAMEBUFFER
58 #define GL_FRAMEBUFFER_COMPLETE_EXT  GL_FRAMEBUFFER_COMPLETE
59 #define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT GL_RENDERBUFFER_INTERNAL_FORMAT
60 #define GL_RENDERBUFFER_EXT          GL_RENDERBUFFER
61 #define GL_DEPTH_ATTACHMENT_EXT      GL_DEPTH_ATTACHMENT
62 
63 #define GL_RGBA32F_ARB               GL_RGBA
64 #define GL_BGRA GL_BGRA_EXT
65 
66 typedef unsigned short GLhalf;
67 
68 GLboolean gluCheckExtension(const GLubyte *extName, const GLubyte *extString);
69 
70 #endif    // __gl_headers_h
71 
72