~afrantzis/glproxy/fix-dummy-surface

« back to all changes in this revision

Viewing changes to include/GL/glext_proxy.h

  • Committer: Jammy Zhou
  • Date: 2010-12-07 14:27:23 UTC
  • Revision ID: jammy.zhou@linaro.org-20101207142723-bcjigkyi803je3he
add gles2 extension support

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright 2010 Linaro
 
3
 *
 
4
 * This program is free software; you can redistribute it and/or modify
 
5
 * it under the terms of the GNU General Public License as published
 
6
 * by the Free Software Foundation.
 
7
 *
 
8
 * Authored by: Jammy Zhou <jammy.zhou@linaro.org>
 
9
 *
 
10
 */
 
11
 
 
12
#ifndef __GLEXT_PROXY_H
 
13
#define __GLEXT_PROXY_H
 
14
 
 
15
#ifdef __cplusplus
 
16
extern "C" {
 
17
#endif
 
18
 
 
19
/* ------------------------------------------------------------------------
 
20
 * OpenGL ES2.0 extensions support
 
21
 * -----------------------------------------------------------------------*/
 
22
 
 
23
/* ------------------------------------------------------------------------
 
24
 * tokens defined in <GLES2/gl2ext.h>
 
25
 * -----------------------------------------------------------------------*/
 
26
 
 
27
/* GL_OES_compressed_ETC1_RGB8_texture */
 
28
#define GL_ETC1_RGB8_OES                                        0x8D64
 
29
 
 
30
/* GL_OES_compressed_paletted_texture */
 
31
#define GL_PALETTE4_RGB8_OES                                    0x8B90
 
32
#define GL_PALETTE4_RGBA8_OES                                   0x8B91
 
33
#define GL_PALETTE4_R5_G6_B5_OES                                0x8B92
 
34
#define GL_PALETTE4_RGBA4_OES                                   0x8B93
 
35
#define GL_PALETTE4_RGB5_A1_OES                                 0x8B94
 
36
#define GL_PALETTE8_RGB8_OES                                    0x8B95
 
37
#define GL_PALETTE8_RGBA8_OES                                   0x8B96
 
38
#define GL_PALETTE8_R5_G6_B5_OES                                0x8B97
 
39
#define GL_PALETTE8_RGBA4_OES                                   0x8B98
 
40
#define GL_PALETTE8_RGB5_A1_OES                                 0x8B99
 
41
 
 
42
/* GL_OES_depth24 */
 
43
#define GL_DEPTH_COMPONENT24_OES                                0x81A6
 
44
 
 
45
/* GL_OES_depth32 */
 
46
#define GL_DEPTH_COMPONENT32_OES                                0x81A7
 
47
 
 
48
/* GL_OES_EGL_image */
 
49
typedef void* GLeglImageOES;
 
50
 
 
51
/* GL_OES_element_index_uint */
 
52
#define GL_UNSIGNED_INT                                         0x1405
 
53
 
 
54
/* GL_OES_get_program_binary */
 
55
#define GL_PROGRAM_BINARY_LENGTH_OES                            0x8741
 
56
#define GL_NUM_PROGRAM_BINARY_FORMATS_OES                       0x87FE
 
57
#define GL_PROGRAM_BINARY_FORMATS_OES                           0x87FF
 
58
 
 
59
/* GL_OES_mapbuffer */
 
60
#define GL_WRITE_ONLY_OES                                       0x88B9
 
61
#define GL_BUFFER_ACCESS_OES                                    0x88BB
 
62
#define GL_BUFFER_MAPPED_OES                                    0x88BC
 
63
#define GL_BUFFER_MAP_POINTER_OES                               0x88BD
 
64
 
 
65
/* GL_OES_packed_depth_stencil */
 
66
#define GL_DEPTH_STENCIL_OES                                    0x84F9
 
67
#define GL_UNSIGNED_INT_24_8_OES                                0x84FA
 
68
#define GL_DEPTH24_STENCIL8_OES                                 0x88F0
 
69
 
 
70
/* GL_OES_rgb8_rgba8 */
 
71
#define GL_RGB8_OES                                             0x8051
 
72
#define GL_RGBA8_OES                                            0x8058
 
73
 
 
74
/* GL_OES_standard_derivatives */
 
75
#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES                  0x8B8B
 
76
 
 
77
/* GL_OES_stencil1 */
 
78
#define GL_STENCIL_INDEX1_OES                                   0x8D46
 
79
 
 
80
/* GL_OES_stencil4 */
 
81
#define GL_STENCIL_INDEX4_OES                                   0x8D47
 
82
 
 
83
/* GL_OES_texture_3D */
 
84
#define GL_TEXTURE_WRAP_R_OES                                   0x8072
 
85
#define GL_TEXTURE_3D_OES                                       0x806F
 
86
#define GL_TEXTURE_BINDING_3D_OES                               0x806A
 
87
#define GL_MAX_3D_TEXTURE_SIZE_OES                              0x8073
 
88
#define GL_SAMPLER_3D_OES                                       0x8B5F
 
89
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES        0x8CD4
 
90
 
 
91
/* GL_OES_texture_half_float */
 
92
#define GL_HALF_FLOAT_OES                                       0x8D61
 
93
 
 
94
/* GL_OES_vertex_array_object */
 
95
#define GL_VERTEX_ARRAY_BINDING_OES                             0x85B5
 
96
 
 
97
/* GL_OES_vertex_type_10_10_10_2 */
 
98
#define GL_UNSIGNED_INT_10_10_10_2_OES                          0x8DF6
 
99
#define GL_INT_10_10_10_2_OES                                   0x8DF7
 
100
 
 
101
/* GL_AMD_compressed_3DC_texture */
 
102
#define GL_3DC_X_AMD                                            0x87F9
 
103
#define GL_3DC_XY_AMD                                           0x87FA
 
104
 
 
105
/* GL_AMD_compressed_ATC_texture */
 
106
#define GL_ATC_RGB_AMD                                          0x8C92
 
107
#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD                          0x8C93
 
108
#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD                      0x87EE
 
109
 
 
110
/* GL_AMD_performance_monitor */
 
111
#define GL_COUNTER_TYPE_AMD                                     0x8BC0
 
112
#define GL_COUNTER_RANGE_AMD                                    0x8BC1
 
113
#define GL_UNSIGNED_INT64_AMD                                   0x8BC2
 
114
#define GL_PERCENTAGE_AMD                                       0x8BC3
 
115
#define GL_PERFMON_RESULT_AVAILABLE_AMD                         0x8BC4
 
116
#define GL_PERFMON_RESULT_SIZE_AMD                              0x8BC5
 
117
#define GL_PERFMON_RESULT_AMD                                   0x8BC6
 
118
 
 
119
/* GL_AMD_program_binary_Z400 */
 
120
#define GL_Z400_BINARY_AMD                                      0x8740
 
121
 
 
122
/* GL_EXT_blend_minmax */
 
123
#define GL_MIN_EXT                                              0x8007
 
124
#define GL_MAX_EXT                                              0x8008
 
125
 
 
126
/* GL_EXT_discard_framebuffer */
 
127
#define GL_COLOR_EXT                                            0x1800
 
128
#define GL_DEPTH_EXT                                            0x1801
 
129
#define GL_STENCIL_EXT                                          0x1802
 
130
 
 
131
/* GL_EXT_read_format_bgra */
 
132
#define GL_BGRA_EXT                                             0x80E1
 
133
#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT                       0x8365
 
134
#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT                       0x8366
 
135
 
 
136
/* GL_EXT_texture_filter_anisotropic */
 
137
#define GL_TEXTURE_MAX_ANISOTROPY_EXT                           0x84FE
 
138
#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                       0x84FF
 
139
 
 
140
/* GL_EXT_texture_format_BGRA8888 */
 
141
#define GL_BGRA_EXT                                             0x80E1
 
142
 
 
143
/* GL_EXT_texture_type_2_10_10_10_REV */
 
144
#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT                      0x8368
 
145
 
 
146
/* GL_EXT_texture_compression_dxt1 */
 
147
#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT                         0x83F0
 
148
#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT                        0x83F1
 
149
 
 
150
/* GL_IMG_program_binary */
 
151
#define GL_SGX_PROGRAM_BINARY_IMG                               0x9130
 
152
 
 
153
/* GL_IMG_read_format */
 
154
#define GL_BGRA_IMG                                             0x80E1
 
155
#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG                       0x8365
 
156
 
 
157
/* GL_IMG_shader_binary */
 
158
#define GL_SGX_BINARY_IMG                                       0x8C0A
 
159
 
 
160
/* GL_IMG_texture_compression_pvrtc */
 
161
#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                      0x8C00
 
162
#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                      0x8C01
 
163
#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG                     0x8C02
 
164
#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                     0x8C03
 
165
 
 
166
/* GL_IMG_multisampled_render_to_texture */
 
167
#define GL_RENDERBUFFER_SAMPLES_IMG                             0x9133
 
168
#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG               0x9134
 
169
#define GL_MAX_SAMPLES_IMG                                      0x9135
 
170
#define GL_TEXTURE_SAMPLES_IMG                                  0x9136
 
171
 
 
172
/* GL_NV_fence */
 
173
#define GL_ALL_COMPLETED_NV                                     0x84F2
 
174
#define GL_FENCE_STATUS_NV                                      0x84F3
 
175
#define GL_FENCE_CONDITION_NV                                   0x84F4
 
176
 
 
177
/* GL_NV_coverage_sample */
 
178
#define GL_COVERAGE_COMPONENT_NV                                0x8ED0
 
179
#define GL_COVERAGE_COMPONENT4_NV                               0x8ED1
 
180
#define GL_COVERAGE_ATTACHMENT_NV                               0x8ED2
 
181
#define GL_COVERAGE_BUFFERS_NV                                  0x8ED3
 
182
#define GL_COVERAGE_SAMPLES_NV                                  0x8ED4
 
183
#define GL_COVERAGE_ALL_FRAGMENTS_NV                            0x8ED5
 
184
#define GL_COVERAGE_EDGE_FRAGMENTS_NV                           0x8ED6
 
185
#define GL_COVERAGE_AUTOMATIC_NV                                0x8ED7
 
186
#define GL_COVERAGE_BUFFER_BIT_NV                               0x8000
 
187
 
 
188
/* GL_NV_depth_nonlinear */
 
189
#define GL_DEPTH_COMPONENT16_NONLINEAR_NV                       0x8E2C
 
190
 
 
191
/* GL_QCOM_extended_get */
 
192
#define GL_TEXTURE_WIDTH_QCOM                                   0x8BD2
 
193
#define GL_TEXTURE_HEIGHT_QCOM                                  0x8BD3
 
194
#define GL_TEXTURE_DEPTH_QCOM                                   0x8BD4
 
195
#define GL_TEXTURE_INTERNAL_FORMAT_QCOM                         0x8BD5
 
196
#define GL_TEXTURE_FORMAT_QCOM                                  0x8BD6
 
197
#define GL_TEXTURE_TYPE_QCOM                                    0x8BD7
 
198
#define GL_TEXTURE_IMAGE_VALID_QCOM                             0x8BD8
 
199
#define GL_TEXTURE_NUM_LEVELS_QCOM                              0x8BD9
 
200
#define GL_TEXTURE_TARGET_QCOM                                  0x8BDA
 
201
#define GL_TEXTURE_OBJECT_VALID_QCOM                            0x8BDB
 
202
#define GL_STATE_RESTORE                                        0x8BDC
 
203
 
 
204
/* GL_QCOM_perfmon_global_mode */
 
205
#define GL_PERFMON_GLOBAL_MODE_QCOM                             0x8FA0
 
206
 
 
207
/* GL_QCOM_writeonly_rendering */
 
208
#define GL_WRITEONLY_RENDERING_QCOM                             0x8823
 
209
 
 
210
/* GL_QCOM_tiled_rendering */
 
211
#define GL_COLOR_BUFFER_BIT0_QCOM                               0x00000001
 
212
#define GL_COLOR_BUFFER_BIT1_QCOM                               0x00000002
 
213
#define GL_COLOR_BUFFER_BIT2_QCOM                               0x00000004
 
214
#define GL_COLOR_BUFFER_BIT3_QCOM                               0x00000008
 
215
#define GL_COLOR_BUFFER_BIT4_QCOM                               0x00000010
 
216
#define GL_COLOR_BUFFER_BIT5_QCOM                               0x00000020
 
217
#define GL_COLOR_BUFFER_BIT6_QCOM                               0x00000040
 
218
#define GL_COLOR_BUFFER_BIT7_QCOM                               0x00000080
 
219
#define GL_DEPTH_BUFFER_BIT0_QCOM                               0x00000100
 
220
#define GL_DEPTH_BUFFER_BIT1_QCOM                               0x00000200
 
221
#define GL_DEPTH_BUFFER_BIT2_QCOM                               0x00000400
 
222
#define GL_DEPTH_BUFFER_BIT3_QCOM                               0x00000800
 
223
#define GL_DEPTH_BUFFER_BIT4_QCOM                               0x00001000
 
224
#define GL_DEPTH_BUFFER_BIT5_QCOM                               0x00002000
 
225
#define GL_DEPTH_BUFFER_BIT6_QCOM                               0x00004000
 
226
#define GL_DEPTH_BUFFER_BIT7_QCOM                               0x00008000
 
227
#define GL_STENCIL_BUFFER_BIT0_QCOM                             0x00010000
 
228
#define GL_STENCIL_BUFFER_BIT1_QCOM                             0x00020000
 
229
#define GL_STENCIL_BUFFER_BIT2_QCOM                             0x00040000
 
230
#define GL_STENCIL_BUFFER_BIT3_QCOM                             0x00080000
 
231
#define GL_STENCIL_BUFFER_BIT4_QCOM                             0x00100000
 
232
#define GL_STENCIL_BUFFER_BIT5_QCOM                             0x00200000
 
233
#define GL_STENCIL_BUFFER_BIT6_QCOM                             0x00400000
 
234
#define GL_STENCIL_BUFFER_BIT7_QCOM                             0x00800000
 
235
#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM                         0x01000000
 
236
#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM                         0x02000000
 
237
#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM                         0x04000000
 
238
#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM                         0x08000000
 
239
#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM                         0x10000000
 
240
#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM                         0x20000000
 
241
#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM                         0x40000000
 
242
#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM                         0x80000000
 
243
 
 
244
/* ------------------------------------------------------------------------
 
245
 * proxy function types for OES extension APIs
 
246
 * ----------------------------------------------------------------------*/
 
247
 
 
248
typedef void      GL_APIENTRY   (*PFNPROXYEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
 
249
typedef void      GL_APIENTRY   (*PFNPROXYEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
 
250
typedef void      GL_APIENTRY   (*PFNPROXYGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
 
251
typedef void      GL_APIENTRY   (*PFNPROXYPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
 
252
typedef void*     GL_APIENTRY   (*PFNPROXYMAPBUFFEROESPROC) (GLenum target, GLenum access);
 
253
typedef GLboolean GL_APIENTRY   (*PFNPROXYUNMAPBUFFEROESPROC) (GLenum target);
 
254
typedef void      GL_APIENTRY   (*PFNPROXYGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params);
 
255
typedef void      GL_APIENTRY   (*PFNPROXYTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
 
256
typedef void      GL_APIENTRY   (*PFNPROXYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
 
257
typedef void      GL_APIENTRY   (*PFNPROXYCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 
258
typedef void      GL_APIENTRY   (*PFNPROXYCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
 
259
typedef void      GL_APIENTRY   (*PFNPROXYCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
 
260
typedef void      GL_APIENTRY   (*PFNPROXYFRAMEBUFFERTEXTURE3DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
 
261
typedef void      GL_APIENTRY   (*PFNPROXYBINDVERTEXARRAYOESPROC) (GLuint array);
 
262
typedef void      GL_APIENTRY   (*PFNPROXYDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
 
263
typedef void      GL_APIENTRY   (*PFNPROXYGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
 
264
typedef GLboolean GL_APIENTRY   (*PFNPROXYISVERTEXARRAYOESPROC) (GLuint array);
 
265
typedef void      GL_APIENTRY   (*PFNPROXYGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
 
266
typedef void      GL_APIENTRY   (*PFNPROXYGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
 
267
typedef void      GL_APIENTRY   (*PFNPROXYGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
 
268
typedef void      GL_APIENTRY   (*PFNPROXYGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
 
269
typedef void      GL_APIENTRY   (*PFNPROXYGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
 
270
typedef void      GL_APIENTRY   (*PFNPROXYGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
 
271
typedef void      GL_APIENTRY   (*PFNPROXYDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
 
272
typedef void      GL_APIENTRY   (*PFNPROXYSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
 
273
typedef void      GL_APIENTRY   (*PFNPROXYBEGINPERFMONITORAMDPROC) (GLuint monitor);
 
274
typedef void      GL_APIENTRY   (*PFNPROXYENDPERFMONITORAMDPROC) (GLuint monitor);
 
275
typedef void      GL_APIENTRY   (*PFNPROXYGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
 
276
typedef void      GL_APIENTRY   (*PFNPROXYDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
 
277
typedef void      GL_APIENTRY   (*PFNPROXYMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
 
278
typedef void      GL_APIENTRY   (*PFNPROXYMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
 
279
typedef void      GL_APIENTRY   (*PFNPROXYRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
 
280
typedef void      GL_APIENTRY   (*PFNPROXYFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
 
281
typedef void      GL_APIENTRY   (*PFNPROXYDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
 
282
typedef void      GL_APIENTRY   (*PFNPROXYGENFENCESNVPROC) (GLsizei n, GLuint *fences);
 
283
typedef GLboolean GL_APIENTRY   (*PFNPROXYISFENCENVPROC) (GLuint fence);
 
284
typedef GLboolean GL_APIENTRY   (*PFNPROXYTESTFENCENVPROC) (GLuint fence);
 
285
typedef void      GL_APIENTRY   (*PFNPROXYGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
 
286
typedef void      GL_APIENTRY   (*PFNPROXYFINISHFENCENVPROC) (GLuint fence);
 
287
typedef void      GL_APIENTRY   (*PFNPROXYSETFENCENVPROC) (GLuint fence, GLenum condition);
 
288
typedef void      GL_APIENTRY   (*PFNPROXYCOVERAGEMASKNVPROC) (GLboolean mask);
 
289
typedef void      GL_APIENTRY   (*PFNPROXYCOVERAGEOPERATIONNVPROC) (GLenum operation);
 
290
typedef void      GL_APIENTRY   (*PFNPROXYGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
 
291
typedef void      GL_APIENTRY   (*PFNPROXYGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
 
292
typedef void      GL_APIENTRY   (*PFNPROXYENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
 
293
typedef void      GL_APIENTRY   (*PFNPROXYDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
 
294
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
 
295
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
 
296
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
 
297
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
 
298
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
 
299
typedef void      GL_APIENTRY   (*PFNPROXYEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
 
300
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
 
301
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
 
302
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
 
303
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
 
304
typedef GLboolean GL_APIENTRY   (*PFNPROXYEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
 
305
typedef void      GL_APIENTRY   (*PFNPROXYEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
 
306
typedef void      GL_APIENTRY   (*PFNPROXYSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
 
307
typedef void      GL_APIENTRY   (*PFNPROXYENDTILINGQCOMPROC) (GLbitfield preserveMask);
 
308
 
 
309
/* ---------------------------------------------------------------------------
 
310
 * function rename
 
311
 * -------------------------------------------------------------------------*/
 
312
#define glEGLImageTargetTexture2DOES            pfnProxyEGLImageTargetTexture2DOES
 
313
#define glEGLImageTargetRenderbufferStorageOES  pfnProxyEGLImageTargetRenderbufferStorageOES
 
314
#define glGetProgramBinaryOES                   pfnProxyGetProgramBinaryOES
 
315
#define glProgramBinaryOES                      pfnProxyProgramBinaryOES
 
316
#define glMapBufferOES                          pfnProxyMapBufferOES
 
317
#define glUnmapBufferOES                        pfnProxyUnmapBufferOES
 
318
#define glGetBufferPointervOES                  pfnProxyGetBufferPointervOES
 
319
#define glTexImage3DOES                         pfnProxyTexImage3DOES
 
320
#define glTexSubImage3DOES                      pfnProxyTexSubImage3DOES
 
321
#define glCopyTexSubImage3DOES                  pfnProxyCopyTexSubImage3DOES
 
322
#define glCompressedTexImage3DOES               pfnProxyCompressedTexImage3DOES
 
323
#define glCompressedTexSubImage3DOES            pfnProxyCompressedTexSubImage3DOES
 
324
#define glFramebufferTexture3DOES               pfnProxyFramebufferTexture3DOES
 
325
#define glBindVertexArrayOES                    pfnProxyBindVertexArrayOES
 
326
#define glDeleteVertexArraysOES                 pfnProxyDeleteVertexArraysOES
 
327
#define glGenVertexArraysOES                    pfnProxyGenVertexArraysOES
 
328
#define glIsVertexArrayOES                      pfnProxyIsVertexArrayOES
 
329
#define glGetPerfMonitorGroupsAMD               pfnProxyGetPerfMonitorGroupsAMD
 
330
#define glGetPerfMonitorCountersAMD             pfnProxyGetPerfMonitorCountersAMD
 
331
#define glGetPerfMonitorGroupStringAMD          pfnProxyGetPerfMonitorGroupStringAMD
 
332
#define glGetPerfMonitorCounterStringAMD        pfnProxyGetPerfMonitorCounterStringAMD
 
333
#define glGetPerfMonitorCounterInfoAMD          pfnProxyGetPerfMonitorCounterInfoAMD
 
334
#define glGenPerfMonitorsAMD                    pfnProxyGenPerfMonitorsAMD
 
335
#define glDeletePerfMonitorsAMD                 pfnProxyDeletePerfMonitorsAMD
 
336
#define glSelectPerfMonitorCountersAMD          pfnProxySelectPerfMonitorCountersAMD
 
337
#define glBeginPerfMonitorAMD                   pfnProxyBeginPerfMonitorAMD
 
338
#define glEndPerfMonitorAMD                     pfnProxyEndPerfMonitorAMD
 
339
#define glGetPerfMonitorCounterDataAMD          pfnProxyGetPerfMonitorCounterDataAMD
 
340
#define glDiscardFramebufferEXT                 pfnProxyDiscardFramebufferEXT
 
341
#define glMultiDrawArraysEXT                    pfnProxyMultiDrawArraysEXT
 
342
#define glMultiDrawElementsEXT                  pfnProxyMultiDrawElementsEXT
 
343
#define glRenderbufferStorageMultisampleIMG     pfnProxyRenderbufferStorageMultisampleIMG
 
344
#define glFramebufferTexture2DMultisampleIMG    pfnProxyFramebufferTexture2DMultisampleIMG
 
345
#define glDeleteFencesNV                        pfnProxyDeleteFencesNV
 
346
#define glGenFencesNV                           pfnProxyGenFencesNV
 
347
#define glIsFenceNV                             pfnProxyIsFenceNV
 
348
#define glTestFenceNV                           pfnProxyTestFenceNV
 
349
#define glGetFenceNV                            pfnProxyGetFenceNV
 
350
#define glFinishFenceNV                         pfnProxyFinishFenceNV
 
351
#define glSetFenceNV                            pfnProxySetFenceNV
 
352
#define glCoverageMaskNV                        pfnProxyCoverageMaskNV
 
353
#define glCoverageOperationNV                   pfnProxyCoverageOperationNV
 
354
#define glGetDriverControlsQCOM                 pfnProxyGetDriverControlsQCOM
 
355
#define glGetDriverControlStringQCOM            pfnProxyGetDriverControlStringQCOM
 
356
#define glEnableDriverControlQCOM               pfnProxyEnableDriverControlQCOM
 
357
#define glDisableDriverControlQCOM              pfnProxyDisableDriverControlQCOM
 
358
#define glExtGetTexturesQCOM                    pfnProxyExtGetTexturesQCOM
 
359
#define glExtGetBuffersQCOM                     pfnProxyExtGetBuffersQCOM
 
360
#define glExtGetRenderbuffersQCOM               pfnProxyExtGetRenderbuffersQCOM
 
361
#define glExtGetFramebuffersQCOM                pfnProxyExtGetFramebuffersQCOM
 
362
#define glExtGetTexLevelParameterivQCOM         pfnProxyExtGetTexLevelParameterivQCOM
 
363
#define glExtTexObjectStateOverrideQCOM         pfnProxyExtTexObjectStateOverrideQCOM
 
364
#define glExtGetTexSubImageQCOM                 pfnProxyExtGetTexSubImageQCOM
 
365
#define glExtGetBufferPointervQCOM              pfnProxyExtGetBufferPointervQCOM
 
366
#define glExtGetShadersQCOM                     pfnProxyExtGetShadersQCOM
 
367
#define glExtGetProgramsQCOM                    pfnProxyExtGetProgramsQCOM
 
368
#define glExtIsProgramBinaryQCOM                pfnProxyExtIsProgramBinaryQCOM
 
369
#define glExtGetProgramBinarySourceQCOM         pfnProxyExtGetProgramBinarySourceQCOM
 
370
#define glStartTilingQCOM                       pfnProxyStartTilingQCOM
 
371
#define glEndTilingQCOM                         pfnProxyEndTilingQCOM
 
372
 
 
373
/* ---------------------------------------------------------------------------
 
374
 * export proxy functions
 
375
 * -------------------------------------------------------------------------*/
 
376
extern PFNPROXYEGLIMAGETARGETTEXTURE2DOESPROC pfnProxyEGLImageTargetTexture2DOES;
 
377
extern PFNPROXYEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC pfnProxyEGLImageTargetRenderbufferStorageOES;
 
378
extern PFNPROXYGETPROGRAMBINARYOESPROC pfnProxyGetProgramBinaryOES;
 
379
extern PFNPROXYPROGRAMBINARYOESPROC pfnProxyProgramBinaryOES;
 
380
extern PFNPROXYMAPBUFFEROESPROC pfnProxyMapBufferOES;
 
381
extern PFNPROXYUNMAPBUFFEROESPROC pfnProxyUnmapBufferOES;
 
382
extern PFNPROXYGETBUFFERPOINTERVOESPROC pfnProxyGetBufferPointervOES;
 
383
extern PFNPROXYTEXIMAGE3DOESPROC pfnProxyTexImage3DOES;
 
384
extern PFNPROXYTEXSUBIMAGE3DOESPROC pfnProxyTexSubImage3DOES;
 
385
extern PFNPROXYCOPYTEXSUBIMAGE3DOESPROC pfnProxyCopyTexSubImage3DOES;
 
386
extern PFNPROXYCOMPRESSEDTEXIMAGE3DOESPROC pfnProxyCompressedTexImage3DOES;
 
387
extern PFNPROXYCOMPRESSEDTEXSUBIMAGE3DOESPROC pfnProxyCompressedTexSubImage3DOES;
 
388
extern PFNPROXYFRAMEBUFFERTEXTURE3DOESPROC pfnProxyFramebufferTexture3DOES;
 
389
extern PFNPROXYBINDVERTEXARRAYOESPROC pfnProxyBindVertexArrayOES;
 
390
extern PFNPROXYDELETEVERTEXARRAYSOESPROC pfnProxyDeleteVertexArraysOES;
 
391
extern PFNPROXYGENVERTEXARRAYSOESPROC pfnProxyGenVertexArraysOES;
 
392
extern PFNPROXYISVERTEXARRAYOESPROC pfnProxyIsVertexArrayOES;
 
393
extern PFNPROXYGETPERFMONITORGROUPSAMDPROC pfnProxyGetPerfMonitorGroupsAMD;
 
394
extern PFNPROXYGETPERFMONITORCOUNTERSAMDPROC pfnProxyGetPerfMonitorCountersAMD;
 
395
extern PFNPROXYGETPERFMONITORGROUPSTRINGAMDPROC pfnProxyGetPerfMonitorGroupStringAMD;
 
396
extern PFNPROXYGETPERFMONITORCOUNTERSTRINGAMDPROC pfnProxyGetPerfMonitorCounterStringAMD;
 
397
extern PFNPROXYGETPERFMONITORCOUNTERINFOAMDPROC pfnProxyGetPerfMonitorCounterInfoAMD;
 
398
extern PFNPROXYGENPERFMONITORSAMDPROC pfnProxyGenPerfMonitorsAMD;
 
399
extern PFNPROXYDELETEPERFMONITORSAMDPROC pfnProxyDeletePerfMonitorsAMD;
 
400
extern PFNPROXYSELECTPERFMONITORCOUNTERSAMDPROC pfnProxySelectPerfMonitorCountersAMD;
 
401
extern PFNPROXYBEGINPERFMONITORAMDPROC pfnProxyBeginPerfMonitorAMD;
 
402
extern PFNPROXYENDPERFMONITORAMDPROC pfnProxyEndPerfMonitorAMD;
 
403
extern PFNPROXYGETPERFMONITORCOUNTERDATAAMDPROC pfnProxyGetPerfMonitorCounterDataAMD;
 
404
extern PFNPROXYDISCARDFRAMEBUFFEREXTPROC pfnProxyDiscardFramebufferEXT;
 
405
extern PFNPROXYMULTIDRAWARRAYSEXTPROC pfnProxyMultiDrawArraysEXT;
 
406
extern PFNPROXYMULTIDRAWELEMENTSEXTPROC pfnProxyMultiDrawElementsEXT;
 
407
extern PFNPROXYRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC pfnProxyRenderbufferStorageMultisampleIMG;
 
408
extern PFNPROXYFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC pfnProxyFramebufferTexture2DMultisampleIMG;
 
409
extern PFNPROXYDELETEFENCESNVPROC pfnProxyDeleteFencesNV;
 
410
extern PFNPROXYGENFENCESNVPROC pfnProxyGenFencesNV;
 
411
extern PFNPROXYISFENCENVPROC pfnProxyIsFenceNV;
 
412
extern PFNPROXYTESTFENCENVPROC pfnProxyTestFenceNV;
 
413
extern PFNPROXYGETFENCEIVNVPROC pfnProxyGetFenceivNV;
 
414
extern PFNPROXYFINISHFENCENVPROC pfnProxyFinishFenceNV;
 
415
extern PFNPROXYSETFENCENVPROC pfnProxySetFenceNV;
 
416
extern PFNPROXYCOVERAGEMASKNVPROC pfnProxyCoverageMaskNV;
 
417
extern PFNPROXYCOVERAGEOPERATIONNVPROC pfnProxyCoverageOperationNV;
 
418
extern PFNPROXYGETDRIVERCONTROLSQCOMPROC pfnProxyGetDriverControlsQCOM;
 
419
extern PFNPROXYGETDRIVERCONTROLSTRINGQCOMPROC pfnProxyGetDriverControlStringQCOM;
 
420
extern PFNPROXYENABLEDRIVERCONTROLQCOMPROC pfnProxyEnableDriverControlQCOM;
 
421
extern PFNPROXYDISABLEDRIVERCONTROLQCOMPROC pfnProxyDisableDriverControlQCOM;
 
422
extern PFNPROXYEXTGETTEXTURESQCOMPROC pfnProxyExtGetTexturesQCOM;
 
423
extern PFNPROXYEXTGETBUFFERSQCOMPROC pfnProxyExtGetBuffersQCOM;
 
424
extern PFNPROXYEXTGETRENDERBUFFERSQCOMPROC pfnProxyExtGetRenderbuffersQCOM;
 
425
extern PFNPROXYEXTGETFRAMEBUFFERSQCOMPROC pfnProxyExtGetFramebuffersQCOM;
 
426
extern PFNPROXYEXTGETTEXLEVELPARAMETERIVQCOMPROC pfnProxyExtGetTexLevelParameterivQCOM;
 
427
extern PFNPROXYEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC pfnProxyExtTexObjectStateOverrideiQCOM;
 
428
extern PFNPROXYEXTGETTEXSUBIMAGEQCOMPROC pfnProxyExtGetTexSubImageQCOM;
 
429
extern PFNPROXYEXTGETBUFFERPOINTERVQCOMPROC pfnProxyExtGetBufferPointervQCOM;
 
430
extern PFNPROXYEXTGETSHADERSQCOMPROC pfnProxyExtGetShadersQCOM;
 
431
extern PFNPROXYEXTGETPROGRAMSQCOMPROC pfnProxyExtGetProgramsQCOM;
 
432
extern PFNPROXYEXTISPROGRAMBINARYQCOMPROC pfnProxyExtIsProgramBinaryQCOM;
 
433
extern PFNPROXYEXTGETPROGRAMBINARYSOURCEQCOMPROC pfnProxyExtGetProgramBinarySourceQCOM;
 
434
extern PFNPROXYSTARTTILINGQCOMPROC pfnProxyStartTilingQCOM;
 
435
extern PFNPROXYENDTILINGQCOMPROC pfnProxyEndTilingQCOM;
 
436
 
 
437
#ifdef __cplusplus
 
438
}
 
439
#endif
 
440
 
 
441
#endif