sapp_linux/
gl.rs

1/* automatically generated by rust-bindgen */
2
3pub const GL_VERSION_1_1: u32 = 1;
4pub const GL_VERSION_1_2: u32 = 1;
5pub const GL_VERSION_1_3: u32 = 1;
6pub const GL_ARB_imaging: u32 = 1;
7pub const GL_FALSE: u32 = 0;
8pub const GL_TRUE: u32 = 1;
9pub const GL_BYTE: u32 = 5120;
10pub const GL_UNSIGNED_BYTE: u32 = 5121;
11pub const GL_SHORT: u32 = 5122;
12pub const GL_UNSIGNED_SHORT: u32 = 5123;
13pub const GL_INT: u32 = 5124;
14pub const GL_UNSIGNED_INT: u32 = 5125;
15pub const GL_FLOAT: u32 = 5126;
16pub const GL_2_BYTES: u32 = 5127;
17pub const GL_3_BYTES: u32 = 5128;
18pub const GL_4_BYTES: u32 = 5129;
19pub const GL_DOUBLE: u32 = 5130;
20pub const GL_POINTS: u32 = 0;
21pub const GL_LINES: u32 = 1;
22pub const GL_LINE_LOOP: u32 = 2;
23pub const GL_LINE_STRIP: u32 = 3;
24pub const GL_TRIANGLES: u32 = 4;
25pub const GL_TRIANGLE_STRIP: u32 = 5;
26pub const GL_TRIANGLE_FAN: u32 = 6;
27pub const GL_QUADS: u32 = 7;
28pub const GL_QUAD_STRIP: u32 = 8;
29pub const GL_POLYGON: u32 = 9;
30pub const GL_VERTEX_ARRAY: u32 = 32884;
31pub const GL_NORMAL_ARRAY: u32 = 32885;
32pub const GL_COLOR_ARRAY: u32 = 32886;
33pub const GL_INDEX_ARRAY: u32 = 32887;
34pub const GL_TEXTURE_COORD_ARRAY: u32 = 32888;
35pub const GL_EDGE_FLAG_ARRAY: u32 = 32889;
36pub const GL_VERTEX_ARRAY_SIZE: u32 = 32890;
37pub const GL_VERTEX_ARRAY_TYPE: u32 = 32891;
38pub const GL_VERTEX_ARRAY_STRIDE: u32 = 32892;
39pub const GL_NORMAL_ARRAY_TYPE: u32 = 32894;
40pub const GL_NORMAL_ARRAY_STRIDE: u32 = 32895;
41pub const GL_COLOR_ARRAY_SIZE: u32 = 32897;
42pub const GL_COLOR_ARRAY_TYPE: u32 = 32898;
43pub const GL_COLOR_ARRAY_STRIDE: u32 = 32899;
44pub const GL_INDEX_ARRAY_TYPE: u32 = 32901;
45pub const GL_INDEX_ARRAY_STRIDE: u32 = 32902;
46pub const GL_TEXTURE_COORD_ARRAY_SIZE: u32 = 32904;
47pub const GL_TEXTURE_COORD_ARRAY_TYPE: u32 = 32905;
48pub const GL_TEXTURE_COORD_ARRAY_STRIDE: u32 = 32906;
49pub const GL_EDGE_FLAG_ARRAY_STRIDE: u32 = 32908;
50pub const GL_VERTEX_ARRAY_POINTER: u32 = 32910;
51pub const GL_NORMAL_ARRAY_POINTER: u32 = 32911;
52pub const GL_COLOR_ARRAY_POINTER: u32 = 32912;
53pub const GL_INDEX_ARRAY_POINTER: u32 = 32913;
54pub const GL_TEXTURE_COORD_ARRAY_POINTER: u32 = 32914;
55pub const GL_EDGE_FLAG_ARRAY_POINTER: u32 = 32915;
56pub const GL_V2F: u32 = 10784;
57pub const GL_V3F: u32 = 10785;
58pub const GL_C4UB_V2F: u32 = 10786;
59pub const GL_C4UB_V3F: u32 = 10787;
60pub const GL_C3F_V3F: u32 = 10788;
61pub const GL_N3F_V3F: u32 = 10789;
62pub const GL_C4F_N3F_V3F: u32 = 10790;
63pub const GL_T2F_V3F: u32 = 10791;
64pub const GL_T4F_V4F: u32 = 10792;
65pub const GL_T2F_C4UB_V3F: u32 = 10793;
66pub const GL_T2F_C3F_V3F: u32 = 10794;
67pub const GL_T2F_N3F_V3F: u32 = 10795;
68pub const GL_T2F_C4F_N3F_V3F: u32 = 10796;
69pub const GL_T4F_C4F_N3F_V4F: u32 = 10797;
70pub const GL_MATRIX_MODE: u32 = 2976;
71pub const GL_MODELVIEW: u32 = 5888;
72pub const GL_PROJECTION: u32 = 5889;
73pub const GL_TEXTURE: u32 = 5890;
74pub const GL_POINT_SMOOTH: u32 = 2832;
75pub const GL_POINT_SIZE: u32 = 2833;
76pub const GL_POINT_SIZE_GRANULARITY: u32 = 2835;
77pub const GL_POINT_SIZE_RANGE: u32 = 2834;
78pub const GL_LINE_SMOOTH: u32 = 2848;
79pub const GL_LINE_STIPPLE: u32 = 2852;
80pub const GL_LINE_STIPPLE_PATTERN: u32 = 2853;
81pub const GL_LINE_STIPPLE_REPEAT: u32 = 2854;
82pub const GL_LINE_WIDTH: u32 = 2849;
83pub const GL_LINE_WIDTH_GRANULARITY: u32 = 2851;
84pub const GL_LINE_WIDTH_RANGE: u32 = 2850;
85pub const GL_POINT: u32 = 6912;
86pub const GL_LINE: u32 = 6913;
87pub const GL_FILL: u32 = 6914;
88pub const GL_CW: u32 = 2304;
89pub const GL_CCW: u32 = 2305;
90pub const GL_FRONT: u32 = 1028;
91pub const GL_BACK: u32 = 1029;
92pub const GL_POLYGON_MODE: u32 = 2880;
93pub const GL_POLYGON_SMOOTH: u32 = 2881;
94pub const GL_POLYGON_STIPPLE: u32 = 2882;
95pub const GL_EDGE_FLAG: u32 = 2883;
96pub const GL_CULL_FACE: u32 = 2884;
97pub const GL_CULL_FACE_MODE: u32 = 2885;
98pub const GL_FRONT_FACE: u32 = 2886;
99pub const GL_POLYGON_OFFSET_FACTOR: u32 = 32824;
100pub const GL_POLYGON_OFFSET_UNITS: u32 = 10752;
101pub const GL_POLYGON_OFFSET_POINT: u32 = 10753;
102pub const GL_POLYGON_OFFSET_LINE: u32 = 10754;
103pub const GL_POLYGON_OFFSET_FILL: u32 = 32823;
104pub const GL_COMPILE: u32 = 4864;
105pub const GL_COMPILE_AND_EXECUTE: u32 = 4865;
106pub const GL_LIST_BASE: u32 = 2866;
107pub const GL_LIST_INDEX: u32 = 2867;
108pub const GL_LIST_MODE: u32 = 2864;
109pub const GL_NEVER: u32 = 512;
110pub const GL_LESS: u32 = 513;
111pub const GL_EQUAL: u32 = 514;
112pub const GL_LEQUAL: u32 = 515;
113pub const GL_GREATER: u32 = 516;
114pub const GL_NOTEQUAL: u32 = 517;
115pub const GL_GEQUAL: u32 = 518;
116pub const GL_ALWAYS: u32 = 519;
117pub const GL_DEPTH_TEST: u32 = 2929;
118pub const GL_DEPTH_BITS: u32 = 3414;
119pub const GL_DEPTH_CLEAR_VALUE: u32 = 2931;
120pub const GL_DEPTH_FUNC: u32 = 2932;
121pub const GL_DEPTH_RANGE: u32 = 2928;
122pub const GL_DEPTH_WRITEMASK: u32 = 2930;
123pub const GL_DEPTH_COMPONENT: u32 = 6402;
124pub const GL_LIGHTING: u32 = 2896;
125pub const GL_LIGHT0: u32 = 16384;
126pub const GL_LIGHT1: u32 = 16385;
127pub const GL_LIGHT2: u32 = 16386;
128pub const GL_LIGHT3: u32 = 16387;
129pub const GL_LIGHT4: u32 = 16388;
130pub const GL_LIGHT5: u32 = 16389;
131pub const GL_LIGHT6: u32 = 16390;
132pub const GL_LIGHT7: u32 = 16391;
133pub const GL_SPOT_EXPONENT: u32 = 4613;
134pub const GL_SPOT_CUTOFF: u32 = 4614;
135pub const GL_CONSTANT_ATTENUATION: u32 = 4615;
136pub const GL_LINEAR_ATTENUATION: u32 = 4616;
137pub const GL_QUADRATIC_ATTENUATION: u32 = 4617;
138pub const GL_AMBIENT: u32 = 4608;
139pub const GL_DIFFUSE: u32 = 4609;
140pub const GL_SPECULAR: u32 = 4610;
141pub const GL_SHININESS: u32 = 5633;
142pub const GL_EMISSION: u32 = 5632;
143pub const GL_POSITION: u32 = 4611;
144pub const GL_SPOT_DIRECTION: u32 = 4612;
145pub const GL_AMBIENT_AND_DIFFUSE: u32 = 5634;
146pub const GL_COLOR_INDEXES: u32 = 5635;
147pub const GL_LIGHT_MODEL_TWO_SIDE: u32 = 2898;
148pub const GL_LIGHT_MODEL_LOCAL_VIEWER: u32 = 2897;
149pub const GL_LIGHT_MODEL_AMBIENT: u32 = 2899;
150pub const GL_FRONT_AND_BACK: u32 = 1032;
151pub const GL_SHADE_MODEL: u32 = 2900;
152pub const GL_FLAT: u32 = 7424;
153pub const GL_SMOOTH: u32 = 7425;
154pub const GL_COLOR_MATERIAL: u32 = 2903;
155pub const GL_COLOR_MATERIAL_FACE: u32 = 2901;
156pub const GL_COLOR_MATERIAL_PARAMETER: u32 = 2902;
157pub const GL_NORMALIZE: u32 = 2977;
158pub const GL_CLIP_PLANE0: u32 = 12288;
159pub const GL_CLIP_PLANE1: u32 = 12289;
160pub const GL_CLIP_PLANE2: u32 = 12290;
161pub const GL_CLIP_PLANE3: u32 = 12291;
162pub const GL_CLIP_PLANE4: u32 = 12292;
163pub const GL_CLIP_PLANE5: u32 = 12293;
164pub const GL_ACCUM_RED_BITS: u32 = 3416;
165pub const GL_ACCUM_GREEN_BITS: u32 = 3417;
166pub const GL_ACCUM_BLUE_BITS: u32 = 3418;
167pub const GL_ACCUM_ALPHA_BITS: u32 = 3419;
168pub const GL_ACCUM_CLEAR_VALUE: u32 = 2944;
169pub const GL_ACCUM: u32 = 256;
170pub const GL_ADD: u32 = 260;
171pub const GL_LOAD: u32 = 257;
172pub const GL_MULT: u32 = 259;
173pub const GL_RETURN: u32 = 258;
174pub const GL_ALPHA_TEST: u32 = 3008;
175pub const GL_ALPHA_TEST_REF: u32 = 3010;
176pub const GL_ALPHA_TEST_FUNC: u32 = 3009;
177pub const GL_BLEND: u32 = 3042;
178pub const GL_BLEND_SRC: u32 = 3041;
179pub const GL_BLEND_DST: u32 = 3040;
180pub const GL_ZERO: u32 = 0;
181pub const GL_ONE: u32 = 1;
182pub const GL_SRC_COLOR: u32 = 768;
183pub const GL_ONE_MINUS_SRC_COLOR: u32 = 769;
184pub const GL_SRC_ALPHA: u32 = 770;
185pub const GL_ONE_MINUS_SRC_ALPHA: u32 = 771;
186pub const GL_DST_ALPHA: u32 = 772;
187pub const GL_ONE_MINUS_DST_ALPHA: u32 = 773;
188pub const GL_DST_COLOR: u32 = 774;
189pub const GL_ONE_MINUS_DST_COLOR: u32 = 775;
190pub const GL_SRC_ALPHA_SATURATE: u32 = 776;
191pub const GL_FEEDBACK: u32 = 7169;
192pub const GL_RENDER: u32 = 7168;
193pub const GL_SELECT: u32 = 7170;
194pub const GL_2D: u32 = 1536;
195pub const GL_3D: u32 = 1537;
196pub const GL_3D_COLOR: u32 = 1538;
197pub const GL_3D_COLOR_TEXTURE: u32 = 1539;
198pub const GL_4D_COLOR_TEXTURE: u32 = 1540;
199pub const GL_POINT_TOKEN: u32 = 1793;
200pub const GL_LINE_TOKEN: u32 = 1794;
201pub const GL_LINE_RESET_TOKEN: u32 = 1799;
202pub const GL_POLYGON_TOKEN: u32 = 1795;
203pub const GL_BITMAP_TOKEN: u32 = 1796;
204pub const GL_DRAW_PIXEL_TOKEN: u32 = 1797;
205pub const GL_COPY_PIXEL_TOKEN: u32 = 1798;
206pub const GL_PASS_THROUGH_TOKEN: u32 = 1792;
207pub const GL_FEEDBACK_BUFFER_POINTER: u32 = 3568;
208pub const GL_FEEDBACK_BUFFER_SIZE: u32 = 3569;
209pub const GL_FEEDBACK_BUFFER_TYPE: u32 = 3570;
210pub const GL_SELECTION_BUFFER_POINTER: u32 = 3571;
211pub const GL_SELECTION_BUFFER_SIZE: u32 = 3572;
212pub const GL_FOG: u32 = 2912;
213pub const GL_FOG_MODE: u32 = 2917;
214pub const GL_FOG_DENSITY: u32 = 2914;
215pub const GL_FOG_COLOR: u32 = 2918;
216pub const GL_FOG_INDEX: u32 = 2913;
217pub const GL_FOG_START: u32 = 2915;
218pub const GL_FOG_END: u32 = 2916;
219pub const GL_LINEAR: u32 = 9729;
220pub const GL_EXP: u32 = 2048;
221pub const GL_EXP2: u32 = 2049;
222pub const GL_LOGIC_OP: u32 = 3057;
223pub const GL_INDEX_LOGIC_OP: u32 = 3057;
224pub const GL_COLOR_LOGIC_OP: u32 = 3058;
225pub const GL_LOGIC_OP_MODE: u32 = 3056;
226pub const GL_CLEAR: u32 = 5376;
227pub const GL_SET: u32 = 5391;
228pub const GL_COPY: u32 = 5379;
229pub const GL_COPY_INVERTED: u32 = 5388;
230pub const GL_NOOP: u32 = 5381;
231pub const GL_INVERT: u32 = 5386;
232pub const GL_AND: u32 = 5377;
233pub const GL_NAND: u32 = 5390;
234pub const GL_OR: u32 = 5383;
235pub const GL_NOR: u32 = 5384;
236pub const GL_XOR: u32 = 5382;
237pub const GL_EQUIV: u32 = 5385;
238pub const GL_AND_REVERSE: u32 = 5378;
239pub const GL_AND_INVERTED: u32 = 5380;
240pub const GL_OR_REVERSE: u32 = 5387;
241pub const GL_OR_INVERTED: u32 = 5389;
242pub const GL_STENCIL_BITS: u32 = 3415;
243pub const GL_STENCIL_TEST: u32 = 2960;
244pub const GL_STENCIL_CLEAR_VALUE: u32 = 2961;
245pub const GL_STENCIL_FUNC: u32 = 2962;
246pub const GL_STENCIL_VALUE_MASK: u32 = 2963;
247pub const GL_STENCIL_FAIL: u32 = 2964;
248pub const GL_STENCIL_PASS_DEPTH_FAIL: u32 = 2965;
249pub const GL_STENCIL_PASS_DEPTH_PASS: u32 = 2966;
250pub const GL_STENCIL_REF: u32 = 2967;
251pub const GL_STENCIL_WRITEMASK: u32 = 2968;
252pub const GL_STENCIL_INDEX: u32 = 6401;
253pub const GL_KEEP: u32 = 7680;
254pub const GL_REPLACE: u32 = 7681;
255pub const GL_INCR: u32 = 7682;
256pub const GL_DECR: u32 = 7683;
257pub const GL_NONE: u32 = 0;
258pub const GL_LEFT: u32 = 1030;
259pub const GL_RIGHT: u32 = 1031;
260pub const GL_FRONT_LEFT: u32 = 1024;
261pub const GL_FRONT_RIGHT: u32 = 1025;
262pub const GL_BACK_LEFT: u32 = 1026;
263pub const GL_BACK_RIGHT: u32 = 1027;
264pub const GL_AUX0: u32 = 1033;
265pub const GL_AUX1: u32 = 1034;
266pub const GL_AUX2: u32 = 1035;
267pub const GL_AUX3: u32 = 1036;
268pub const GL_COLOR_INDEX: u32 = 6400;
269pub const GL_RED: u32 = 6403;
270pub const GL_GREEN: u32 = 6404;
271pub const GL_BLUE: u32 = 6405;
272pub const GL_ALPHA: u32 = 6406;
273pub const GL_LUMINANCE: u32 = 6409;
274pub const GL_LUMINANCE_ALPHA: u32 = 6410;
275pub const GL_ALPHA_BITS: u32 = 3413;
276pub const GL_RED_BITS: u32 = 3410;
277pub const GL_GREEN_BITS: u32 = 3411;
278pub const GL_BLUE_BITS: u32 = 3412;
279pub const GL_INDEX_BITS: u32 = 3409;
280pub const GL_SUBPIXEL_BITS: u32 = 3408;
281pub const GL_AUX_BUFFERS: u32 = 3072;
282pub const GL_READ_BUFFER: u32 = 3074;
283pub const GL_DRAW_BUFFER: u32 = 3073;
284pub const GL_DOUBLEBUFFER: u32 = 3122;
285pub const GL_STEREO: u32 = 3123;
286pub const GL_BITMAP: u32 = 6656;
287pub const GL_COLOR: u32 = 6144;
288pub const GL_DEPTH: u32 = 6145;
289pub const GL_STENCIL: u32 = 6146;
290pub const GL_DITHER: u32 = 3024;
291pub const GL_RGB: u32 = 6407;
292pub const GL_RGBA: u32 = 6408;
293pub const GL_MAX_LIST_NESTING: u32 = 2865;
294pub const GL_MAX_EVAL_ORDER: u32 = 3376;
295pub const GL_MAX_LIGHTS: u32 = 3377;
296pub const GL_MAX_CLIP_PLANES: u32 = 3378;
297pub const GL_MAX_TEXTURE_SIZE: u32 = 3379;
298pub const GL_MAX_PIXEL_MAP_TABLE: u32 = 3380;
299pub const GL_MAX_ATTRIB_STACK_DEPTH: u32 = 3381;
300pub const GL_MAX_MODELVIEW_STACK_DEPTH: u32 = 3382;
301pub const GL_MAX_NAME_STACK_DEPTH: u32 = 3383;
302pub const GL_MAX_PROJECTION_STACK_DEPTH: u32 = 3384;
303pub const GL_MAX_TEXTURE_STACK_DEPTH: u32 = 3385;
304pub const GL_MAX_VIEWPORT_DIMS: u32 = 3386;
305pub const GL_MAX_CLIENT_ATTRIB_STACK_DEPTH: u32 = 3387;
306pub const GL_ATTRIB_STACK_DEPTH: u32 = 2992;
307pub const GL_CLIENT_ATTRIB_STACK_DEPTH: u32 = 2993;
308pub const GL_COLOR_CLEAR_VALUE: u32 = 3106;
309pub const GL_COLOR_WRITEMASK: u32 = 3107;
310pub const GL_CURRENT_INDEX: u32 = 2817;
311pub const GL_CURRENT_COLOR: u32 = 2816;
312pub const GL_CURRENT_NORMAL: u32 = 2818;
313pub const GL_CURRENT_RASTER_COLOR: u32 = 2820;
314pub const GL_CURRENT_RASTER_DISTANCE: u32 = 2825;
315pub const GL_CURRENT_RASTER_INDEX: u32 = 2821;
316pub const GL_CURRENT_RASTER_POSITION: u32 = 2823;
317pub const GL_CURRENT_RASTER_TEXTURE_COORDS: u32 = 2822;
318pub const GL_CURRENT_RASTER_POSITION_VALID: u32 = 2824;
319pub const GL_CURRENT_TEXTURE_COORDS: u32 = 2819;
320pub const GL_INDEX_CLEAR_VALUE: u32 = 3104;
321pub const GL_INDEX_MODE: u32 = 3120;
322pub const GL_INDEX_WRITEMASK: u32 = 3105;
323pub const GL_MODELVIEW_MATRIX: u32 = 2982;
324pub const GL_MODELVIEW_STACK_DEPTH: u32 = 2979;
325pub const GL_NAME_STACK_DEPTH: u32 = 3440;
326pub const GL_PROJECTION_MATRIX: u32 = 2983;
327pub const GL_PROJECTION_STACK_DEPTH: u32 = 2980;
328pub const GL_RENDER_MODE: u32 = 3136;
329pub const GL_RGBA_MODE: u32 = 3121;
330pub const GL_TEXTURE_MATRIX: u32 = 2984;
331pub const GL_TEXTURE_STACK_DEPTH: u32 = 2981;
332pub const GL_VIEWPORT: u32 = 2978;
333pub const GL_AUTO_NORMAL: u32 = 3456;
334pub const GL_MAP1_COLOR_4: u32 = 3472;
335pub const GL_MAP1_INDEX: u32 = 3473;
336pub const GL_MAP1_NORMAL: u32 = 3474;
337pub const GL_MAP1_TEXTURE_COORD_1: u32 = 3475;
338pub const GL_MAP1_TEXTURE_COORD_2: u32 = 3476;
339pub const GL_MAP1_TEXTURE_COORD_3: u32 = 3477;
340pub const GL_MAP1_TEXTURE_COORD_4: u32 = 3478;
341pub const GL_MAP1_VERTEX_3: u32 = 3479;
342pub const GL_MAP1_VERTEX_4: u32 = 3480;
343pub const GL_MAP2_COLOR_4: u32 = 3504;
344pub const GL_MAP2_INDEX: u32 = 3505;
345pub const GL_MAP2_NORMAL: u32 = 3506;
346pub const GL_MAP2_TEXTURE_COORD_1: u32 = 3507;
347pub const GL_MAP2_TEXTURE_COORD_2: u32 = 3508;
348pub const GL_MAP2_TEXTURE_COORD_3: u32 = 3509;
349pub const GL_MAP2_TEXTURE_COORD_4: u32 = 3510;
350pub const GL_MAP2_VERTEX_3: u32 = 3511;
351pub const GL_MAP2_VERTEX_4: u32 = 3512;
352pub const GL_MAP1_GRID_DOMAIN: u32 = 3536;
353pub const GL_MAP1_GRID_SEGMENTS: u32 = 3537;
354pub const GL_MAP2_GRID_DOMAIN: u32 = 3538;
355pub const GL_MAP2_GRID_SEGMENTS: u32 = 3539;
356pub const GL_COEFF: u32 = 2560;
357pub const GL_ORDER: u32 = 2561;
358pub const GL_DOMAIN: u32 = 2562;
359pub const GL_PERSPECTIVE_CORRECTION_HINT: u32 = 3152;
360pub const GL_POINT_SMOOTH_HINT: u32 = 3153;
361pub const GL_LINE_SMOOTH_HINT: u32 = 3154;
362pub const GL_POLYGON_SMOOTH_HINT: u32 = 3155;
363pub const GL_FOG_HINT: u32 = 3156;
364pub const GL_DONT_CARE: u32 = 4352;
365pub const GL_FASTEST: u32 = 4353;
366pub const GL_NICEST: u32 = 4354;
367pub const GL_SCISSOR_BOX: u32 = 3088;
368pub const GL_SCISSOR_TEST: u32 = 3089;
369pub const GL_MAP_COLOR: u32 = 3344;
370pub const GL_MAP_STENCIL: u32 = 3345;
371pub const GL_INDEX_SHIFT: u32 = 3346;
372pub const GL_INDEX_OFFSET: u32 = 3347;
373pub const GL_RED_SCALE: u32 = 3348;
374pub const GL_RED_BIAS: u32 = 3349;
375pub const GL_GREEN_SCALE: u32 = 3352;
376pub const GL_GREEN_BIAS: u32 = 3353;
377pub const GL_BLUE_SCALE: u32 = 3354;
378pub const GL_BLUE_BIAS: u32 = 3355;
379pub const GL_ALPHA_SCALE: u32 = 3356;
380pub const GL_ALPHA_BIAS: u32 = 3357;
381pub const GL_DEPTH_SCALE: u32 = 3358;
382pub const GL_DEPTH_BIAS: u32 = 3359;
383pub const GL_PIXEL_MAP_S_TO_S_SIZE: u32 = 3249;
384pub const GL_PIXEL_MAP_I_TO_I_SIZE: u32 = 3248;
385pub const GL_PIXEL_MAP_I_TO_R_SIZE: u32 = 3250;
386pub const GL_PIXEL_MAP_I_TO_G_SIZE: u32 = 3251;
387pub const GL_PIXEL_MAP_I_TO_B_SIZE: u32 = 3252;
388pub const GL_PIXEL_MAP_I_TO_A_SIZE: u32 = 3253;
389pub const GL_PIXEL_MAP_R_TO_R_SIZE: u32 = 3254;
390pub const GL_PIXEL_MAP_G_TO_G_SIZE: u32 = 3255;
391pub const GL_PIXEL_MAP_B_TO_B_SIZE: u32 = 3256;
392pub const GL_PIXEL_MAP_A_TO_A_SIZE: u32 = 3257;
393pub const GL_PIXEL_MAP_S_TO_S: u32 = 3185;
394pub const GL_PIXEL_MAP_I_TO_I: u32 = 3184;
395pub const GL_PIXEL_MAP_I_TO_R: u32 = 3186;
396pub const GL_PIXEL_MAP_I_TO_G: u32 = 3187;
397pub const GL_PIXEL_MAP_I_TO_B: u32 = 3188;
398pub const GL_PIXEL_MAP_I_TO_A: u32 = 3189;
399pub const GL_PIXEL_MAP_R_TO_R: u32 = 3190;
400pub const GL_PIXEL_MAP_G_TO_G: u32 = 3191;
401pub const GL_PIXEL_MAP_B_TO_B: u32 = 3192;
402pub const GL_PIXEL_MAP_A_TO_A: u32 = 3193;
403pub const GL_PACK_ALIGNMENT: u32 = 3333;
404pub const GL_PACK_LSB_FIRST: u32 = 3329;
405pub const GL_PACK_ROW_LENGTH: u32 = 3330;
406pub const GL_PACK_SKIP_PIXELS: u32 = 3332;
407pub const GL_PACK_SKIP_ROWS: u32 = 3331;
408pub const GL_PACK_SWAP_BYTES: u32 = 3328;
409pub const GL_UNPACK_ALIGNMENT: u32 = 3317;
410pub const GL_UNPACK_LSB_FIRST: u32 = 3313;
411pub const GL_UNPACK_ROW_LENGTH: u32 = 3314;
412pub const GL_UNPACK_SKIP_PIXELS: u32 = 3316;
413pub const GL_UNPACK_SKIP_ROWS: u32 = 3315;
414pub const GL_UNPACK_SWAP_BYTES: u32 = 3312;
415pub const GL_ZOOM_X: u32 = 3350;
416pub const GL_ZOOM_Y: u32 = 3351;
417pub const GL_TEXTURE_ENV: u32 = 8960;
418pub const GL_TEXTURE_ENV_MODE: u32 = 8704;
419pub const GL_TEXTURE_1D: u32 = 3552;
420pub const GL_TEXTURE_2D: u32 = 3553;
421pub const GL_TEXTURE_WRAP_S: u32 = 10242;
422pub const GL_TEXTURE_WRAP_T: u32 = 10243;
423pub const GL_TEXTURE_MAG_FILTER: u32 = 10240;
424pub const GL_TEXTURE_MIN_FILTER: u32 = 10241;
425pub const GL_TEXTURE_ENV_COLOR: u32 = 8705;
426pub const GL_TEXTURE_GEN_S: u32 = 3168;
427pub const GL_TEXTURE_GEN_T: u32 = 3169;
428pub const GL_TEXTURE_GEN_R: u32 = 3170;
429pub const GL_TEXTURE_GEN_Q: u32 = 3171;
430pub const GL_TEXTURE_GEN_MODE: u32 = 9472;
431pub const GL_TEXTURE_BORDER_COLOR: u32 = 4100;
432pub const GL_TEXTURE_WIDTH: u32 = 4096;
433pub const GL_TEXTURE_HEIGHT: u32 = 4097;
434pub const GL_TEXTURE_BORDER: u32 = 4101;
435pub const GL_TEXTURE_COMPONENTS: u32 = 4099;
436pub const GL_TEXTURE_RED_SIZE: u32 = 32860;
437pub const GL_TEXTURE_GREEN_SIZE: u32 = 32861;
438pub const GL_TEXTURE_BLUE_SIZE: u32 = 32862;
439pub const GL_TEXTURE_ALPHA_SIZE: u32 = 32863;
440pub const GL_TEXTURE_LUMINANCE_SIZE: u32 = 32864;
441pub const GL_TEXTURE_INTENSITY_SIZE: u32 = 32865;
442pub const GL_NEAREST_MIPMAP_NEAREST: u32 = 9984;
443pub const GL_NEAREST_MIPMAP_LINEAR: u32 = 9986;
444pub const GL_LINEAR_MIPMAP_NEAREST: u32 = 9985;
445pub const GL_LINEAR_MIPMAP_LINEAR: u32 = 9987;
446pub const GL_OBJECT_LINEAR: u32 = 9217;
447pub const GL_OBJECT_PLANE: u32 = 9473;
448pub const GL_EYE_LINEAR: u32 = 9216;
449pub const GL_EYE_PLANE: u32 = 9474;
450pub const GL_SPHERE_MAP: u32 = 9218;
451pub const GL_DECAL: u32 = 8449;
452pub const GL_MODULATE: u32 = 8448;
453pub const GL_NEAREST: u32 = 9728;
454pub const GL_REPEAT: u32 = 10497;
455pub const GL_CLAMP: u32 = 10496;
456pub const GL_S: u32 = 8192;
457pub const GL_T: u32 = 8193;
458pub const GL_R: u32 = 8194;
459pub const GL_Q: u32 = 8195;
460pub const GL_VENDOR: u32 = 7936;
461pub const GL_RENDERER: u32 = 7937;
462pub const GL_VERSION: u32 = 7938;
463pub const GL_EXTENSIONS: u32 = 7939;
464pub const GL_NO_ERROR: u32 = 0;
465pub const GL_INVALID_ENUM: u32 = 1280;
466pub const GL_INVALID_VALUE: u32 = 1281;
467pub const GL_INVALID_OPERATION: u32 = 1282;
468pub const GL_STACK_OVERFLOW: u32 = 1283;
469pub const GL_STACK_UNDERFLOW: u32 = 1284;
470pub const GL_OUT_OF_MEMORY: u32 = 1285;
471pub const GL_CURRENT_BIT: u32 = 1;
472pub const GL_POINT_BIT: u32 = 2;
473pub const GL_LINE_BIT: u32 = 4;
474pub const GL_POLYGON_BIT: u32 = 8;
475pub const GL_POLYGON_STIPPLE_BIT: u32 = 16;
476pub const GL_PIXEL_MODE_BIT: u32 = 32;
477pub const GL_LIGHTING_BIT: u32 = 64;
478pub const GL_FOG_BIT: u32 = 128;
479pub const GL_DEPTH_BUFFER_BIT: u32 = 256;
480pub const GL_ACCUM_BUFFER_BIT: u32 = 512;
481pub const GL_STENCIL_BUFFER_BIT: u32 = 1024;
482pub const GL_VIEWPORT_BIT: u32 = 2048;
483pub const GL_TRANSFORM_BIT: u32 = 4096;
484pub const GL_ENABLE_BIT: u32 = 8192;
485pub const GL_COLOR_BUFFER_BIT: u32 = 16384;
486pub const GL_HINT_BIT: u32 = 32768;
487pub const GL_EVAL_BIT: u32 = 65536;
488pub const GL_LIST_BIT: u32 = 131072;
489pub const GL_TEXTURE_BIT: u32 = 262144;
490pub const GL_SCISSOR_BIT: u32 = 524288;
491pub const GL_ALL_ATTRIB_BITS: u32 = 4294967295;
492pub const GL_PROXY_TEXTURE_1D: u32 = 32867;
493pub const GL_PROXY_TEXTURE_2D: u32 = 32868;
494pub const GL_TEXTURE_PRIORITY: u32 = 32870;
495pub const GL_TEXTURE_RESIDENT: u32 = 32871;
496pub const GL_TEXTURE_BINDING_1D: u32 = 32872;
497pub const GL_TEXTURE_BINDING_2D: u32 = 32873;
498pub const GL_TEXTURE_INTERNAL_FORMAT: u32 = 4099;
499pub const GL_ALPHA4: u32 = 32827;
500pub const GL_ALPHA8: u32 = 32828;
501pub const GL_ALPHA12: u32 = 32829;
502pub const GL_ALPHA16: u32 = 32830;
503pub const GL_LUMINANCE4: u32 = 32831;
504pub const GL_LUMINANCE8: u32 = 32832;
505pub const GL_LUMINANCE12: u32 = 32833;
506pub const GL_LUMINANCE16: u32 = 32834;
507pub const GL_LUMINANCE4_ALPHA4: u32 = 32835;
508pub const GL_LUMINANCE6_ALPHA2: u32 = 32836;
509pub const GL_LUMINANCE8_ALPHA8: u32 = 32837;
510pub const GL_LUMINANCE12_ALPHA4: u32 = 32838;
511pub const GL_LUMINANCE12_ALPHA12: u32 = 32839;
512pub const GL_LUMINANCE16_ALPHA16: u32 = 32840;
513pub const GL_INTENSITY: u32 = 32841;
514pub const GL_INTENSITY4: u32 = 32842;
515pub const GL_INTENSITY8: u32 = 32843;
516pub const GL_INTENSITY12: u32 = 32844;
517pub const GL_INTENSITY16: u32 = 32845;
518pub const GL_R3_G3_B2: u32 = 10768;
519pub const GL_RGB4: u32 = 32847;
520pub const GL_RGB5: u32 = 32848;
521pub const GL_RGB8: u32 = 32849;
522pub const GL_RGB10: u32 = 32850;
523pub const GL_RGB12: u32 = 32851;
524pub const GL_RGB16: u32 = 32852;
525pub const GL_RGBA2: u32 = 32853;
526pub const GL_RGBA4: u32 = 32854;
527pub const GL_RGB5_A1: u32 = 32855;
528pub const GL_RGBA8: u32 = 32856;
529pub const GL_RGB10_A2: u32 = 32857;
530pub const GL_RGBA12: u32 = 32858;
531pub const GL_RGBA16: u32 = 32859;
532pub const GL_CLIENT_PIXEL_STORE_BIT: u32 = 1;
533pub const GL_CLIENT_VERTEX_ARRAY_BIT: u32 = 2;
534pub const GL_ALL_CLIENT_ATTRIB_BITS: u32 = 4294967295;
535pub const GL_CLIENT_ALL_ATTRIB_BITS: u32 = 4294967295;
536pub const GL_RESCALE_NORMAL: u32 = 32826;
537pub const GL_CLAMP_TO_EDGE: u32 = 33071;
538pub const GL_MAX_ELEMENTS_VERTICES: u32 = 33000;
539pub const GL_MAX_ELEMENTS_INDICES: u32 = 33001;
540pub const GL_BGR: u32 = 32992;
541pub const GL_BGRA: u32 = 32993;
542pub const GL_UNSIGNED_BYTE_3_3_2: u32 = 32818;
543pub const GL_UNSIGNED_BYTE_2_3_3_REV: u32 = 33634;
544pub const GL_UNSIGNED_SHORT_5_6_5: u32 = 33635;
545pub const GL_UNSIGNED_SHORT_5_6_5_REV: u32 = 33636;
546pub const GL_UNSIGNED_SHORT_4_4_4_4: u32 = 32819;
547pub const GL_UNSIGNED_SHORT_4_4_4_4_REV: u32 = 33637;
548pub const GL_UNSIGNED_SHORT_5_5_5_1: u32 = 32820;
549pub const GL_UNSIGNED_SHORT_1_5_5_5_REV: u32 = 33638;
550pub const GL_UNSIGNED_INT_8_8_8_8: u32 = 32821;
551pub const GL_UNSIGNED_INT_8_8_8_8_REV: u32 = 33639;
552pub const GL_UNSIGNED_INT_10_10_10_2: u32 = 32822;
553pub const GL_UNSIGNED_INT_2_10_10_10_REV: u32 = 33640;
554pub const GL_LIGHT_MODEL_COLOR_CONTROL: u32 = 33272;
555pub const GL_SINGLE_COLOR: u32 = 33273;
556pub const GL_SEPARATE_SPECULAR_COLOR: u32 = 33274;
557pub const GL_TEXTURE_MIN_LOD: u32 = 33082;
558pub const GL_TEXTURE_MAX_LOD: u32 = 33083;
559pub const GL_TEXTURE_BASE_LEVEL: u32 = 33084;
560pub const GL_TEXTURE_MAX_LEVEL: u32 = 33085;
561pub const GL_SMOOTH_POINT_SIZE_RANGE: u32 = 2834;
562pub const GL_SMOOTH_POINT_SIZE_GRANULARITY: u32 = 2835;
563pub const GL_SMOOTH_LINE_WIDTH_RANGE: u32 = 2850;
564pub const GL_SMOOTH_LINE_WIDTH_GRANULARITY: u32 = 2851;
565pub const GL_ALIASED_POINT_SIZE_RANGE: u32 = 33901;
566pub const GL_ALIASED_LINE_WIDTH_RANGE: u32 = 33902;
567pub const GL_PACK_SKIP_IMAGES: u32 = 32875;
568pub const GL_PACK_IMAGE_HEIGHT: u32 = 32876;
569pub const GL_UNPACK_SKIP_IMAGES: u32 = 32877;
570pub const GL_UNPACK_IMAGE_HEIGHT: u32 = 32878;
571pub const GL_TEXTURE_3D: u32 = 32879;
572pub const GL_PROXY_TEXTURE_3D: u32 = 32880;
573pub const GL_TEXTURE_DEPTH: u32 = 32881;
574pub const GL_TEXTURE_WRAP_R: u32 = 32882;
575pub const GL_MAX_3D_TEXTURE_SIZE: u32 = 32883;
576pub const GL_TEXTURE_BINDING_3D: u32 = 32874;
577pub const GL_CONSTANT_COLOR: u32 = 32769;
578pub const GL_ONE_MINUS_CONSTANT_COLOR: u32 = 32770;
579pub const GL_CONSTANT_ALPHA: u32 = 32771;
580pub const GL_ONE_MINUS_CONSTANT_ALPHA: u32 = 32772;
581pub const GL_COLOR_TABLE: u32 = 32976;
582pub const GL_POST_CONVOLUTION_COLOR_TABLE: u32 = 32977;
583pub const GL_POST_COLOR_MATRIX_COLOR_TABLE: u32 = 32978;
584pub const GL_PROXY_COLOR_TABLE: u32 = 32979;
585pub const GL_PROXY_POST_CONVOLUTION_COLOR_TABLE: u32 = 32980;
586pub const GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE: u32 = 32981;
587pub const GL_COLOR_TABLE_SCALE: u32 = 32982;
588pub const GL_COLOR_TABLE_BIAS: u32 = 32983;
589pub const GL_COLOR_TABLE_FORMAT: u32 = 32984;
590pub const GL_COLOR_TABLE_WIDTH: u32 = 32985;
591pub const GL_COLOR_TABLE_RED_SIZE: u32 = 32986;
592pub const GL_COLOR_TABLE_GREEN_SIZE: u32 = 32987;
593pub const GL_COLOR_TABLE_BLUE_SIZE: u32 = 32988;
594pub const GL_COLOR_TABLE_ALPHA_SIZE: u32 = 32989;
595pub const GL_COLOR_TABLE_LUMINANCE_SIZE: u32 = 32990;
596pub const GL_COLOR_TABLE_INTENSITY_SIZE: u32 = 32991;
597pub const GL_CONVOLUTION_1D: u32 = 32784;
598pub const GL_CONVOLUTION_2D: u32 = 32785;
599pub const GL_SEPARABLE_2D: u32 = 32786;
600pub const GL_CONVOLUTION_BORDER_MODE: u32 = 32787;
601pub const GL_CONVOLUTION_FILTER_SCALE: u32 = 32788;
602pub const GL_CONVOLUTION_FILTER_BIAS: u32 = 32789;
603pub const GL_REDUCE: u32 = 32790;
604pub const GL_CONVOLUTION_FORMAT: u32 = 32791;
605pub const GL_CONVOLUTION_WIDTH: u32 = 32792;
606pub const GL_CONVOLUTION_HEIGHT: u32 = 32793;
607pub const GL_MAX_CONVOLUTION_WIDTH: u32 = 32794;
608pub const GL_MAX_CONVOLUTION_HEIGHT: u32 = 32795;
609pub const GL_POST_CONVOLUTION_RED_SCALE: u32 = 32796;
610pub const GL_POST_CONVOLUTION_GREEN_SCALE: u32 = 32797;
611pub const GL_POST_CONVOLUTION_BLUE_SCALE: u32 = 32798;
612pub const GL_POST_CONVOLUTION_ALPHA_SCALE: u32 = 32799;
613pub const GL_POST_CONVOLUTION_RED_BIAS: u32 = 32800;
614pub const GL_POST_CONVOLUTION_GREEN_BIAS: u32 = 32801;
615pub const GL_POST_CONVOLUTION_BLUE_BIAS: u32 = 32802;
616pub const GL_POST_CONVOLUTION_ALPHA_BIAS: u32 = 32803;
617pub const GL_CONSTANT_BORDER: u32 = 33105;
618pub const GL_REPLICATE_BORDER: u32 = 33107;
619pub const GL_CONVOLUTION_BORDER_COLOR: u32 = 33108;
620pub const GL_COLOR_MATRIX: u32 = 32945;
621pub const GL_COLOR_MATRIX_STACK_DEPTH: u32 = 32946;
622pub const GL_MAX_COLOR_MATRIX_STACK_DEPTH: u32 = 32947;
623pub const GL_POST_COLOR_MATRIX_RED_SCALE: u32 = 32948;
624pub const GL_POST_COLOR_MATRIX_GREEN_SCALE: u32 = 32949;
625pub const GL_POST_COLOR_MATRIX_BLUE_SCALE: u32 = 32950;
626pub const GL_POST_COLOR_MATRIX_ALPHA_SCALE: u32 = 32951;
627pub const GL_POST_COLOR_MATRIX_RED_BIAS: u32 = 32952;
628pub const GL_POST_COLOR_MATRIX_GREEN_BIAS: u32 = 32953;
629pub const GL_POST_COLOR_MATRIX_BLUE_BIAS: u32 = 32954;
630pub const GL_POST_COLOR_MATRIX_ALPHA_BIAS: u32 = 32955;
631pub const GL_HISTOGRAM: u32 = 32804;
632pub const GL_PROXY_HISTOGRAM: u32 = 32805;
633pub const GL_HISTOGRAM_WIDTH: u32 = 32806;
634pub const GL_HISTOGRAM_FORMAT: u32 = 32807;
635pub const GL_HISTOGRAM_RED_SIZE: u32 = 32808;
636pub const GL_HISTOGRAM_GREEN_SIZE: u32 = 32809;
637pub const GL_HISTOGRAM_BLUE_SIZE: u32 = 32810;
638pub const GL_HISTOGRAM_ALPHA_SIZE: u32 = 32811;
639pub const GL_HISTOGRAM_LUMINANCE_SIZE: u32 = 32812;
640pub const GL_HISTOGRAM_SINK: u32 = 32813;
641pub const GL_MINMAX: u32 = 32814;
642pub const GL_MINMAX_FORMAT: u32 = 32815;
643pub const GL_MINMAX_SINK: u32 = 32816;
644pub const GL_TABLE_TOO_LARGE: u32 = 32817;
645pub const GL_BLEND_EQUATION: u32 = 32777;
646pub const GL_MIN: u32 = 32775;
647pub const GL_MAX: u32 = 32776;
648pub const GL_FUNC_ADD: u32 = 32774;
649pub const GL_FUNC_SUBTRACT: u32 = 32778;
650pub const GL_FUNC_REVERSE_SUBTRACT: u32 = 32779;
651pub const GL_BLEND_COLOR: u32 = 32773;
652pub const GL_TEXTURE0: u32 = 33984;
653pub const GL_TEXTURE1: u32 = 33985;
654pub const GL_TEXTURE2: u32 = 33986;
655pub const GL_TEXTURE3: u32 = 33987;
656pub const GL_TEXTURE4: u32 = 33988;
657pub const GL_TEXTURE5: u32 = 33989;
658pub const GL_TEXTURE6: u32 = 33990;
659pub const GL_TEXTURE7: u32 = 33991;
660pub const GL_TEXTURE8: u32 = 33992;
661pub const GL_TEXTURE9: u32 = 33993;
662pub const GL_TEXTURE10: u32 = 33994;
663pub const GL_TEXTURE11: u32 = 33995;
664pub const GL_TEXTURE12: u32 = 33996;
665pub const GL_TEXTURE13: u32 = 33997;
666pub const GL_TEXTURE14: u32 = 33998;
667pub const GL_TEXTURE15: u32 = 33999;
668pub const GL_TEXTURE16: u32 = 34000;
669pub const GL_TEXTURE17: u32 = 34001;
670pub const GL_TEXTURE18: u32 = 34002;
671pub const GL_TEXTURE19: u32 = 34003;
672pub const GL_TEXTURE20: u32 = 34004;
673pub const GL_TEXTURE21: u32 = 34005;
674pub const GL_TEXTURE22: u32 = 34006;
675pub const GL_TEXTURE23: u32 = 34007;
676pub const GL_TEXTURE24: u32 = 34008;
677pub const GL_TEXTURE25: u32 = 34009;
678pub const GL_TEXTURE26: u32 = 34010;
679pub const GL_TEXTURE27: u32 = 34011;
680pub const GL_TEXTURE28: u32 = 34012;
681pub const GL_TEXTURE29: u32 = 34013;
682pub const GL_TEXTURE30: u32 = 34014;
683pub const GL_TEXTURE31: u32 = 34015;
684pub const GL_ACTIVE_TEXTURE: u32 = 34016;
685pub const GL_CLIENT_ACTIVE_TEXTURE: u32 = 34017;
686pub const GL_MAX_TEXTURE_UNITS: u32 = 34018;
687pub const GL_NORMAL_MAP: u32 = 34065;
688pub const GL_REFLECTION_MAP: u32 = 34066;
689pub const GL_TEXTURE_CUBE_MAP: u32 = 34067;
690pub const GL_TEXTURE_BINDING_CUBE_MAP: u32 = 34068;
691pub const GL_TEXTURE_CUBE_MAP_POSITIVE_X: u32 = 34069;
692pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_X: u32 = 34070;
693pub const GL_TEXTURE_CUBE_MAP_POSITIVE_Y: u32 = 34071;
694pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_Y: u32 = 34072;
695pub const GL_TEXTURE_CUBE_MAP_POSITIVE_Z: u32 = 34073;
696pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_Z: u32 = 34074;
697pub const GL_PROXY_TEXTURE_CUBE_MAP: u32 = 34075;
698pub const GL_MAX_CUBE_MAP_TEXTURE_SIZE: u32 = 34076;
699pub const GL_COMPRESSED_ALPHA: u32 = 34025;
700pub const GL_COMPRESSED_LUMINANCE: u32 = 34026;
701pub const GL_COMPRESSED_LUMINANCE_ALPHA: u32 = 34027;
702pub const GL_COMPRESSED_INTENSITY: u32 = 34028;
703pub const GL_COMPRESSED_RGB: u32 = 34029;
704pub const GL_COMPRESSED_RGBA: u32 = 34030;
705pub const GL_TEXTURE_COMPRESSION_HINT: u32 = 34031;
706pub const GL_TEXTURE_COMPRESSED_IMAGE_SIZE: u32 = 34464;
707pub const GL_TEXTURE_COMPRESSED: u32 = 34465;
708pub const GL_NUM_COMPRESSED_TEXTURE_FORMATS: u32 = 34466;
709pub const GL_COMPRESSED_TEXTURE_FORMATS: u32 = 34467;
710pub const GL_MULTISAMPLE: u32 = 32925;
711pub const GL_SAMPLE_ALPHA_TO_COVERAGE: u32 = 32926;
712pub const GL_SAMPLE_ALPHA_TO_ONE: u32 = 32927;
713pub const GL_SAMPLE_COVERAGE: u32 = 32928;
714pub const GL_SAMPLE_BUFFERS: u32 = 32936;
715pub const GL_SAMPLES: u32 = 32937;
716pub const GL_SAMPLE_COVERAGE_VALUE: u32 = 32938;
717pub const GL_SAMPLE_COVERAGE_INVERT: u32 = 32939;
718pub const GL_MULTISAMPLE_BIT: u32 = 536870912;
719pub const GL_TRANSPOSE_MODELVIEW_MATRIX: u32 = 34019;
720pub const GL_TRANSPOSE_PROJECTION_MATRIX: u32 = 34020;
721pub const GL_TRANSPOSE_TEXTURE_MATRIX: u32 = 34021;
722pub const GL_TRANSPOSE_COLOR_MATRIX: u32 = 34022;
723pub const GL_COMBINE: u32 = 34160;
724pub const GL_COMBINE_RGB: u32 = 34161;
725pub const GL_COMBINE_ALPHA: u32 = 34162;
726pub const GL_SOURCE0_RGB: u32 = 34176;
727pub const GL_SOURCE1_RGB: u32 = 34177;
728pub const GL_SOURCE2_RGB: u32 = 34178;
729pub const GL_SOURCE0_ALPHA: u32 = 34184;
730pub const GL_SOURCE1_ALPHA: u32 = 34185;
731pub const GL_SOURCE2_ALPHA: u32 = 34186;
732pub const GL_OPERAND0_RGB: u32 = 34192;
733pub const GL_OPERAND1_RGB: u32 = 34193;
734pub const GL_OPERAND2_RGB: u32 = 34194;
735pub const GL_OPERAND0_ALPHA: u32 = 34200;
736pub const GL_OPERAND1_ALPHA: u32 = 34201;
737pub const GL_OPERAND2_ALPHA: u32 = 34202;
738pub const GL_RGB_SCALE: u32 = 34163;
739pub const GL_ADD_SIGNED: u32 = 34164;
740pub const GL_INTERPOLATE: u32 = 34165;
741pub const GL_SUBTRACT: u32 = 34023;
742pub const GL_CONSTANT: u32 = 34166;
743pub const GL_PRIMARY_COLOR: u32 = 34167;
744pub const GL_PREVIOUS: u32 = 34168;
745pub const GL_DOT3_RGB: u32 = 34478;
746pub const GL_DOT3_RGBA: u32 = 34479;
747pub const GL_CLAMP_TO_BORDER: u32 = 33069;
748pub const GL_ARB_multitexture: u32 = 1;
749pub const GL_TEXTURE0_ARB: u32 = 33984;
750pub const GL_TEXTURE1_ARB: u32 = 33985;
751pub const GL_TEXTURE2_ARB: u32 = 33986;
752pub const GL_TEXTURE3_ARB: u32 = 33987;
753pub const GL_TEXTURE4_ARB: u32 = 33988;
754pub const GL_TEXTURE5_ARB: u32 = 33989;
755pub const GL_TEXTURE6_ARB: u32 = 33990;
756pub const GL_TEXTURE7_ARB: u32 = 33991;
757pub const GL_TEXTURE8_ARB: u32 = 33992;
758pub const GL_TEXTURE9_ARB: u32 = 33993;
759pub const GL_TEXTURE10_ARB: u32 = 33994;
760pub const GL_TEXTURE11_ARB: u32 = 33995;
761pub const GL_TEXTURE12_ARB: u32 = 33996;
762pub const GL_TEXTURE13_ARB: u32 = 33997;
763pub const GL_TEXTURE14_ARB: u32 = 33998;
764pub const GL_TEXTURE15_ARB: u32 = 33999;
765pub const GL_TEXTURE16_ARB: u32 = 34000;
766pub const GL_TEXTURE17_ARB: u32 = 34001;
767pub const GL_TEXTURE18_ARB: u32 = 34002;
768pub const GL_TEXTURE19_ARB: u32 = 34003;
769pub const GL_TEXTURE20_ARB: u32 = 34004;
770pub const GL_TEXTURE21_ARB: u32 = 34005;
771pub const GL_TEXTURE22_ARB: u32 = 34006;
772pub const GL_TEXTURE23_ARB: u32 = 34007;
773pub const GL_TEXTURE24_ARB: u32 = 34008;
774pub const GL_TEXTURE25_ARB: u32 = 34009;
775pub const GL_TEXTURE26_ARB: u32 = 34010;
776pub const GL_TEXTURE27_ARB: u32 = 34011;
777pub const GL_TEXTURE28_ARB: u32 = 34012;
778pub const GL_TEXTURE29_ARB: u32 = 34013;
779pub const GL_TEXTURE30_ARB: u32 = 34014;
780pub const GL_TEXTURE31_ARB: u32 = 34015;
781pub const GL_ACTIVE_TEXTURE_ARB: u32 = 34016;
782pub const GL_CLIENT_ACTIVE_TEXTURE_ARB: u32 = 34017;
783pub const GL_MAX_TEXTURE_UNITS_ARB: u32 = 34018;
784pub const __gl_glext_h_: u32 = 1;
785pub const GL_GLEXT_VERSION: u32 = 20190805;
786pub const _STDINT_H: u32 = 1;
787pub const _FEATURES_H: u32 = 1;
788pub const _DEFAULT_SOURCE: u32 = 1;
789pub const __USE_ISOC11: u32 = 1;
790pub const __USE_ISOC99: u32 = 1;
791pub const __USE_ISOC95: u32 = 1;
792pub const __USE_POSIX_IMPLICITLY: u32 = 1;
793pub const _POSIX_SOURCE: u32 = 1;
794pub const _POSIX_C_SOURCE: u32 = 200809;
795pub const __USE_POSIX: u32 = 1;
796pub const __USE_POSIX2: u32 = 1;
797pub const __USE_POSIX199309: u32 = 1;
798pub const __USE_POSIX199506: u32 = 1;
799pub const __USE_XOPEN2K: u32 = 1;
800pub const __USE_XOPEN2K8: u32 = 1;
801pub const _ATFILE_SOURCE: u32 = 1;
802pub const __USE_MISC: u32 = 1;
803pub const __USE_ATFILE: u32 = 1;
804pub const __USE_FORTIFY_LEVEL: u32 = 0;
805pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
806pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
807pub const _STDC_PREDEF_H: u32 = 1;
808pub const __STDC_IEC_559__: u32 = 1;
809pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
810pub const __STDC_ISO_10646__: u32 = 201706;
811pub const __GNU_LIBRARY__: u32 = 6;
812pub const __GLIBC__: u32 = 2;
813pub const __GLIBC_MINOR__: u32 = 30;
814pub const _SYS_CDEFS_H: u32 = 1;
815pub const __glibc_c99_flexarr_available: u32 = 1;
816pub const __WORDSIZE: u32 = 64;
817pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
818pub const __SYSCALL_WORDSIZE: u32 = 64;
819pub const __HAVE_GENERIC_SELECTION: u32 = 1;
820pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
821pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
822pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
823pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
824pub const _BITS_TYPES_H: u32 = 1;
825pub const __TIMESIZE: u32 = 64;
826pub const _BITS_TYPESIZES_H: u32 = 1;
827pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
828pub const __INO_T_MATCHES_INO64_T: u32 = 1;
829pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
830pub const __FD_SETSIZE: u32 = 1024;
831pub const _BITS_TIME64_H: u32 = 1;
832pub const _BITS_WCHAR_H: u32 = 1;
833pub const _BITS_STDINT_INTN_H: u32 = 1;
834pub const _BITS_STDINT_UINTN_H: u32 = 1;
835pub const INT8_MIN: i32 = -128;
836pub const INT16_MIN: i32 = -32768;
837pub const INT32_MIN: i32 = -2147483648;
838pub const INT8_MAX: u32 = 127;
839pub const INT16_MAX: u32 = 32767;
840pub const INT32_MAX: u32 = 2147483647;
841pub const UINT8_MAX: u32 = 255;
842pub const UINT16_MAX: u32 = 65535;
843pub const UINT32_MAX: u32 = 4294967295;
844pub const INT_LEAST8_MIN: i32 = -128;
845pub const INT_LEAST16_MIN: i32 = -32768;
846pub const INT_LEAST32_MIN: i32 = -2147483648;
847pub const INT_LEAST8_MAX: u32 = 127;
848pub const INT_LEAST16_MAX: u32 = 32767;
849pub const INT_LEAST32_MAX: u32 = 2147483647;
850pub const UINT_LEAST8_MAX: u32 = 255;
851pub const UINT_LEAST16_MAX: u32 = 65535;
852pub const UINT_LEAST32_MAX: u32 = 4294967295;
853pub const INT_FAST8_MIN: i32 = -128;
854pub const INT_FAST16_MIN: i64 = -9223372036854775808;
855pub const INT_FAST32_MIN: i64 = -9223372036854775808;
856pub const INT_FAST8_MAX: u32 = 127;
857pub const INT_FAST16_MAX: u64 = 9223372036854775807;
858pub const INT_FAST32_MAX: u64 = 9223372036854775807;
859pub const UINT_FAST8_MAX: u32 = 255;
860pub const UINT_FAST16_MAX: i32 = -1;
861pub const UINT_FAST32_MAX: i32 = -1;
862pub const INTPTR_MIN: i64 = -9223372036854775808;
863pub const INTPTR_MAX: u64 = 9223372036854775807;
864pub const UINTPTR_MAX: i32 = -1;
865pub const PTRDIFF_MIN: i64 = -9223372036854775808;
866pub const PTRDIFF_MAX: u64 = 9223372036854775807;
867pub const SIG_ATOMIC_MIN: i32 = -2147483648;
868pub const SIG_ATOMIC_MAX: u32 = 2147483647;
869pub const SIZE_MAX: i32 = -1;
870pub const WINT_MIN: u32 = 0;
871pub const WINT_MAX: u32 = 4294967295;
872pub const KHRONOS_SUPPORT_INT64: u32 = 1;
873pub const KHRONOS_SUPPORT_FLOAT: u32 = 1;
874pub const KHRONOS_MAX_ENUM: u32 = 2147483647;
875pub const GL_VERSION_1_4: u32 = 1;
876pub const GL_BLEND_DST_RGB: u32 = 32968;
877pub const GL_BLEND_SRC_RGB: u32 = 32969;
878pub const GL_BLEND_DST_ALPHA: u32 = 32970;
879pub const GL_BLEND_SRC_ALPHA: u32 = 32971;
880pub const GL_POINT_FADE_THRESHOLD_SIZE: u32 = 33064;
881pub const GL_DEPTH_COMPONENT16: u32 = 33189;
882pub const GL_DEPTH_COMPONENT24: u32 = 33190;
883pub const GL_DEPTH_COMPONENT32: u32 = 33191;
884pub const GL_MIRRORED_REPEAT: u32 = 33648;
885pub const GL_MAX_TEXTURE_LOD_BIAS: u32 = 34045;
886pub const GL_TEXTURE_LOD_BIAS: u32 = 34049;
887pub const GL_INCR_WRAP: u32 = 34055;
888pub const GL_DECR_WRAP: u32 = 34056;
889pub const GL_TEXTURE_DEPTH_SIZE: u32 = 34890;
890pub const GL_TEXTURE_COMPARE_MODE: u32 = 34892;
891pub const GL_TEXTURE_COMPARE_FUNC: u32 = 34893;
892pub const GL_POINT_SIZE_MIN: u32 = 33062;
893pub const GL_POINT_SIZE_MAX: u32 = 33063;
894pub const GL_POINT_DISTANCE_ATTENUATION: u32 = 33065;
895pub const GL_GENERATE_MIPMAP: u32 = 33169;
896pub const GL_GENERATE_MIPMAP_HINT: u32 = 33170;
897pub const GL_FOG_COORDINATE_SOURCE: u32 = 33872;
898pub const GL_FOG_COORDINATE: u32 = 33873;
899pub const GL_FRAGMENT_DEPTH: u32 = 33874;
900pub const GL_CURRENT_FOG_COORDINATE: u32 = 33875;
901pub const GL_FOG_COORDINATE_ARRAY_TYPE: u32 = 33876;
902pub const GL_FOG_COORDINATE_ARRAY_STRIDE: u32 = 33877;
903pub const GL_FOG_COORDINATE_ARRAY_POINTER: u32 = 33878;
904pub const GL_FOG_COORDINATE_ARRAY: u32 = 33879;
905pub const GL_COLOR_SUM: u32 = 33880;
906pub const GL_CURRENT_SECONDARY_COLOR: u32 = 33881;
907pub const GL_SECONDARY_COLOR_ARRAY_SIZE: u32 = 33882;
908pub const GL_SECONDARY_COLOR_ARRAY_TYPE: u32 = 33883;
909pub const GL_SECONDARY_COLOR_ARRAY_STRIDE: u32 = 33884;
910pub const GL_SECONDARY_COLOR_ARRAY_POINTER: u32 = 33885;
911pub const GL_SECONDARY_COLOR_ARRAY: u32 = 33886;
912pub const GL_TEXTURE_FILTER_CONTROL: u32 = 34048;
913pub const GL_DEPTH_TEXTURE_MODE: u32 = 34891;
914pub const GL_COMPARE_R_TO_TEXTURE: u32 = 34894;
915pub const GL_VERSION_1_5: u32 = 1;
916pub const GL_BUFFER_SIZE: u32 = 34660;
917pub const GL_BUFFER_USAGE: u32 = 34661;
918pub const GL_QUERY_COUNTER_BITS: u32 = 34916;
919pub const GL_CURRENT_QUERY: u32 = 34917;
920pub const GL_QUERY_RESULT: u32 = 34918;
921pub const GL_QUERY_RESULT_AVAILABLE: u32 = 34919;
922pub const GL_ARRAY_BUFFER: u32 = 34962;
923pub const GL_ELEMENT_ARRAY_BUFFER: u32 = 34963;
924pub const GL_ARRAY_BUFFER_BINDING: u32 = 34964;
925pub const GL_ELEMENT_ARRAY_BUFFER_BINDING: u32 = 34965;
926pub const GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: u32 = 34975;
927pub const GL_READ_ONLY: u32 = 35000;
928pub const GL_WRITE_ONLY: u32 = 35001;
929pub const GL_READ_WRITE: u32 = 35002;
930pub const GL_BUFFER_ACCESS: u32 = 35003;
931pub const GL_BUFFER_MAPPED: u32 = 35004;
932pub const GL_BUFFER_MAP_POINTER: u32 = 35005;
933pub const GL_STREAM_DRAW: u32 = 35040;
934pub const GL_STREAM_READ: u32 = 35041;
935pub const GL_STREAM_COPY: u32 = 35042;
936pub const GL_STATIC_DRAW: u32 = 35044;
937pub const GL_STATIC_READ: u32 = 35045;
938pub const GL_STATIC_COPY: u32 = 35046;
939pub const GL_DYNAMIC_DRAW: u32 = 35048;
940pub const GL_DYNAMIC_READ: u32 = 35049;
941pub const GL_DYNAMIC_COPY: u32 = 35050;
942pub const GL_SAMPLES_PASSED: u32 = 35092;
943pub const GL_SRC1_ALPHA: u32 = 34185;
944pub const GL_VERTEX_ARRAY_BUFFER_BINDING: u32 = 34966;
945pub const GL_NORMAL_ARRAY_BUFFER_BINDING: u32 = 34967;
946pub const GL_COLOR_ARRAY_BUFFER_BINDING: u32 = 34968;
947pub const GL_INDEX_ARRAY_BUFFER_BINDING: u32 = 34969;
948pub const GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING: u32 = 34970;
949pub const GL_EDGE_FLAG_ARRAY_BUFFER_BINDING: u32 = 34971;
950pub const GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING: u32 = 34972;
951pub const GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING: u32 = 34973;
952pub const GL_WEIGHT_ARRAY_BUFFER_BINDING: u32 = 34974;
953pub const GL_FOG_COORD_SRC: u32 = 33872;
954pub const GL_FOG_COORD: u32 = 33873;
955pub const GL_CURRENT_FOG_COORD: u32 = 33875;
956pub const GL_FOG_COORD_ARRAY_TYPE: u32 = 33876;
957pub const GL_FOG_COORD_ARRAY_STRIDE: u32 = 33877;
958pub const GL_FOG_COORD_ARRAY_POINTER: u32 = 33878;
959pub const GL_FOG_COORD_ARRAY: u32 = 33879;
960pub const GL_FOG_COORD_ARRAY_BUFFER_BINDING: u32 = 34973;
961pub const GL_SRC0_RGB: u32 = 34176;
962pub const GL_SRC1_RGB: u32 = 34177;
963pub const GL_SRC2_RGB: u32 = 34178;
964pub const GL_SRC0_ALPHA: u32 = 34184;
965pub const GL_SRC2_ALPHA: u32 = 34186;
966pub const GL_VERSION_2_0: u32 = 1;
967pub const GL_BLEND_EQUATION_RGB: u32 = 32777;
968pub const GL_VERTEX_ATTRIB_ARRAY_ENABLED: u32 = 34338;
969pub const GL_VERTEX_ATTRIB_ARRAY_SIZE: u32 = 34339;
970pub const GL_VERTEX_ATTRIB_ARRAY_STRIDE: u32 = 34340;
971pub const GL_VERTEX_ATTRIB_ARRAY_TYPE: u32 = 34341;
972pub const GL_CURRENT_VERTEX_ATTRIB: u32 = 34342;
973pub const GL_VERTEX_PROGRAM_POINT_SIZE: u32 = 34370;
974pub const GL_VERTEX_ATTRIB_ARRAY_POINTER: u32 = 34373;
975pub const GL_STENCIL_BACK_FUNC: u32 = 34816;
976pub const GL_STENCIL_BACK_FAIL: u32 = 34817;
977pub const GL_STENCIL_BACK_PASS_DEPTH_FAIL: u32 = 34818;
978pub const GL_STENCIL_BACK_PASS_DEPTH_PASS: u32 = 34819;
979pub const GL_MAX_DRAW_BUFFERS: u32 = 34852;
980pub const GL_DRAW_BUFFER0: u32 = 34853;
981pub const GL_DRAW_BUFFER1: u32 = 34854;
982pub const GL_DRAW_BUFFER2: u32 = 34855;
983pub const GL_DRAW_BUFFER3: u32 = 34856;
984pub const GL_DRAW_BUFFER4: u32 = 34857;
985pub const GL_DRAW_BUFFER5: u32 = 34858;
986pub const GL_DRAW_BUFFER6: u32 = 34859;
987pub const GL_DRAW_BUFFER7: u32 = 34860;
988pub const GL_DRAW_BUFFER8: u32 = 34861;
989pub const GL_DRAW_BUFFER9: u32 = 34862;
990pub const GL_DRAW_BUFFER10: u32 = 34863;
991pub const GL_DRAW_BUFFER11: u32 = 34864;
992pub const GL_DRAW_BUFFER12: u32 = 34865;
993pub const GL_DRAW_BUFFER13: u32 = 34866;
994pub const GL_DRAW_BUFFER14: u32 = 34867;
995pub const GL_DRAW_BUFFER15: u32 = 34868;
996pub const GL_BLEND_EQUATION_ALPHA: u32 = 34877;
997pub const GL_MAX_VERTEX_ATTRIBS: u32 = 34921;
998pub const GL_VERTEX_ATTRIB_ARRAY_NORMALIZED: u32 = 34922;
999pub const GL_MAX_TEXTURE_IMAGE_UNITS: u32 = 34930;
1000pub const GL_FRAGMENT_SHADER: u32 = 35632;
1001pub const GL_VERTEX_SHADER: u32 = 35633;
1002pub const GL_MAX_FRAGMENT_UNIFORM_COMPONENTS: u32 = 35657;
1003pub const GL_MAX_VERTEX_UNIFORM_COMPONENTS: u32 = 35658;
1004pub const GL_MAX_VARYING_FLOATS: u32 = 35659;
1005pub const GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS: u32 = 35660;
1006pub const GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS: u32 = 35661;
1007pub const GL_SHADER_TYPE: u32 = 35663;
1008pub const GL_FLOAT_VEC2: u32 = 35664;
1009pub const GL_FLOAT_VEC3: u32 = 35665;
1010pub const GL_FLOAT_VEC4: u32 = 35666;
1011pub const GL_INT_VEC2: u32 = 35667;
1012pub const GL_INT_VEC3: u32 = 35668;
1013pub const GL_INT_VEC4: u32 = 35669;
1014pub const GL_BOOL: u32 = 35670;
1015pub const GL_BOOL_VEC2: u32 = 35671;
1016pub const GL_BOOL_VEC3: u32 = 35672;
1017pub const GL_BOOL_VEC4: u32 = 35673;
1018pub const GL_FLOAT_MAT2: u32 = 35674;
1019pub const GL_FLOAT_MAT3: u32 = 35675;
1020pub const GL_FLOAT_MAT4: u32 = 35676;
1021pub const GL_SAMPLER_1D: u32 = 35677;
1022pub const GL_SAMPLER_2D: u32 = 35678;
1023pub const GL_SAMPLER_3D: u32 = 35679;
1024pub const GL_SAMPLER_CUBE: u32 = 35680;
1025pub const GL_SAMPLER_1D_SHADOW: u32 = 35681;
1026pub const GL_SAMPLER_2D_SHADOW: u32 = 35682;
1027pub const GL_DELETE_STATUS: u32 = 35712;
1028pub const GL_COMPILE_STATUS: u32 = 35713;
1029pub const GL_LINK_STATUS: u32 = 35714;
1030pub const GL_VALIDATE_STATUS: u32 = 35715;
1031pub const GL_INFO_LOG_LENGTH: u32 = 35716;
1032pub const GL_ATTACHED_SHADERS: u32 = 35717;
1033pub const GL_ACTIVE_UNIFORMS: u32 = 35718;
1034pub const GL_ACTIVE_UNIFORM_MAX_LENGTH: u32 = 35719;
1035pub const GL_SHADER_SOURCE_LENGTH: u32 = 35720;
1036pub const GL_ACTIVE_ATTRIBUTES: u32 = 35721;
1037pub const GL_ACTIVE_ATTRIBUTE_MAX_LENGTH: u32 = 35722;
1038pub const GL_FRAGMENT_SHADER_DERIVATIVE_HINT: u32 = 35723;
1039pub const GL_SHADING_LANGUAGE_VERSION: u32 = 35724;
1040pub const GL_CURRENT_PROGRAM: u32 = 35725;
1041pub const GL_POINT_SPRITE_COORD_ORIGIN: u32 = 36000;
1042pub const GL_LOWER_LEFT: u32 = 36001;
1043pub const GL_UPPER_LEFT: u32 = 36002;
1044pub const GL_STENCIL_BACK_REF: u32 = 36003;
1045pub const GL_STENCIL_BACK_VALUE_MASK: u32 = 36004;
1046pub const GL_STENCIL_BACK_WRITEMASK: u32 = 36005;
1047pub const GL_VERTEX_PROGRAM_TWO_SIDE: u32 = 34371;
1048pub const GL_POINT_SPRITE: u32 = 34913;
1049pub const GL_COORD_REPLACE: u32 = 34914;
1050pub const GL_MAX_TEXTURE_COORDS: u32 = 34929;
1051pub const GL_VERSION_2_1: u32 = 1;
1052pub const GL_PIXEL_PACK_BUFFER: u32 = 35051;
1053pub const GL_PIXEL_UNPACK_BUFFER: u32 = 35052;
1054pub const GL_PIXEL_PACK_BUFFER_BINDING: u32 = 35053;
1055pub const GL_PIXEL_UNPACK_BUFFER_BINDING: u32 = 35055;
1056pub const GL_FLOAT_MAT2x3: u32 = 35685;
1057pub const GL_FLOAT_MAT2x4: u32 = 35686;
1058pub const GL_FLOAT_MAT3x2: u32 = 35687;
1059pub const GL_FLOAT_MAT3x4: u32 = 35688;
1060pub const GL_FLOAT_MAT4x2: u32 = 35689;
1061pub const GL_FLOAT_MAT4x3: u32 = 35690;
1062pub const GL_SRGB: u32 = 35904;
1063pub const GL_SRGB8: u32 = 35905;
1064pub const GL_SRGB_ALPHA: u32 = 35906;
1065pub const GL_SRGB8_ALPHA8: u32 = 35907;
1066pub const GL_COMPRESSED_SRGB: u32 = 35912;
1067pub const GL_COMPRESSED_SRGB_ALPHA: u32 = 35913;
1068pub const GL_CURRENT_RASTER_SECONDARY_COLOR: u32 = 33887;
1069pub const GL_SLUMINANCE_ALPHA: u32 = 35908;
1070pub const GL_SLUMINANCE8_ALPHA8: u32 = 35909;
1071pub const GL_SLUMINANCE: u32 = 35910;
1072pub const GL_SLUMINANCE8: u32 = 35911;
1073pub const GL_COMPRESSED_SLUMINANCE: u32 = 35914;
1074pub const GL_COMPRESSED_SLUMINANCE_ALPHA: u32 = 35915;
1075pub const GL_VERSION_3_0: u32 = 1;
1076pub const GL_COMPARE_REF_TO_TEXTURE: u32 = 34894;
1077pub const GL_CLIP_DISTANCE0: u32 = 12288;
1078pub const GL_CLIP_DISTANCE1: u32 = 12289;
1079pub const GL_CLIP_DISTANCE2: u32 = 12290;
1080pub const GL_CLIP_DISTANCE3: u32 = 12291;
1081pub const GL_CLIP_DISTANCE4: u32 = 12292;
1082pub const GL_CLIP_DISTANCE5: u32 = 12293;
1083pub const GL_CLIP_DISTANCE6: u32 = 12294;
1084pub const GL_CLIP_DISTANCE7: u32 = 12295;
1085pub const GL_MAX_CLIP_DISTANCES: u32 = 3378;
1086pub const GL_MAJOR_VERSION: u32 = 33307;
1087pub const GL_MINOR_VERSION: u32 = 33308;
1088pub const GL_NUM_EXTENSIONS: u32 = 33309;
1089pub const GL_CONTEXT_FLAGS: u32 = 33310;
1090pub const GL_COMPRESSED_RED: u32 = 33317;
1091pub const GL_COMPRESSED_RG: u32 = 33318;
1092pub const GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT: u32 = 1;
1093pub const GL_RGBA32F: u32 = 34836;
1094pub const GL_RGB32F: u32 = 34837;
1095pub const GL_RGBA16F: u32 = 34842;
1096pub const GL_RGB16F: u32 = 34843;
1097pub const GL_VERTEX_ATTRIB_ARRAY_INTEGER: u32 = 35069;
1098pub const GL_MAX_ARRAY_TEXTURE_LAYERS: u32 = 35071;
1099pub const GL_MIN_PROGRAM_TEXEL_OFFSET: u32 = 35076;
1100pub const GL_MAX_PROGRAM_TEXEL_OFFSET: u32 = 35077;
1101pub const GL_CLAMP_READ_COLOR: u32 = 35100;
1102pub const GL_FIXED_ONLY: u32 = 35101;
1103pub const GL_MAX_VARYING_COMPONENTS: u32 = 35659;
1104pub const GL_TEXTURE_1D_ARRAY: u32 = 35864;
1105pub const GL_PROXY_TEXTURE_1D_ARRAY: u32 = 35865;
1106pub const GL_TEXTURE_2D_ARRAY: u32 = 35866;
1107pub const GL_PROXY_TEXTURE_2D_ARRAY: u32 = 35867;
1108pub const GL_TEXTURE_BINDING_1D_ARRAY: u32 = 35868;
1109pub const GL_TEXTURE_BINDING_2D_ARRAY: u32 = 35869;
1110pub const GL_R11F_G11F_B10F: u32 = 35898;
1111pub const GL_UNSIGNED_INT_10F_11F_11F_REV: u32 = 35899;
1112pub const GL_RGB9_E5: u32 = 35901;
1113pub const GL_UNSIGNED_INT_5_9_9_9_REV: u32 = 35902;
1114pub const GL_TEXTURE_SHARED_SIZE: u32 = 35903;
1115pub const GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH: u32 = 35958;
1116pub const GL_TRANSFORM_FEEDBACK_BUFFER_MODE: u32 = 35967;
1117pub const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: u32 = 35968;
1118pub const GL_TRANSFORM_FEEDBACK_VARYINGS: u32 = 35971;
1119pub const GL_TRANSFORM_FEEDBACK_BUFFER_START: u32 = 35972;
1120pub const GL_TRANSFORM_FEEDBACK_BUFFER_SIZE: u32 = 35973;
1121pub const GL_PRIMITIVES_GENERATED: u32 = 35975;
1122pub const GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: u32 = 35976;
1123pub const GL_RASTERIZER_DISCARD: u32 = 35977;
1124pub const GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: u32 = 35978;
1125pub const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: u32 = 35979;
1126pub const GL_INTERLEAVED_ATTRIBS: u32 = 35980;
1127pub const GL_SEPARATE_ATTRIBS: u32 = 35981;
1128pub const GL_TRANSFORM_FEEDBACK_BUFFER: u32 = 35982;
1129pub const GL_TRANSFORM_FEEDBACK_BUFFER_BINDING: u32 = 35983;
1130pub const GL_RGBA32UI: u32 = 36208;
1131pub const GL_RGB32UI: u32 = 36209;
1132pub const GL_RGBA16UI: u32 = 36214;
1133pub const GL_RGB16UI: u32 = 36215;
1134pub const GL_RGBA8UI: u32 = 36220;
1135pub const GL_RGB8UI: u32 = 36221;
1136pub const GL_RGBA32I: u32 = 36226;
1137pub const GL_RGB32I: u32 = 36227;
1138pub const GL_RGBA16I: u32 = 36232;
1139pub const GL_RGB16I: u32 = 36233;
1140pub const GL_RGBA8I: u32 = 36238;
1141pub const GL_RGB8I: u32 = 36239;
1142pub const GL_RED_INTEGER: u32 = 36244;
1143pub const GL_GREEN_INTEGER: u32 = 36245;
1144pub const GL_BLUE_INTEGER: u32 = 36246;
1145pub const GL_RGB_INTEGER: u32 = 36248;
1146pub const GL_RGBA_INTEGER: u32 = 36249;
1147pub const GL_BGR_INTEGER: u32 = 36250;
1148pub const GL_BGRA_INTEGER: u32 = 36251;
1149pub const GL_SAMPLER_1D_ARRAY: u32 = 36288;
1150pub const GL_SAMPLER_2D_ARRAY: u32 = 36289;
1151pub const GL_SAMPLER_1D_ARRAY_SHADOW: u32 = 36291;
1152pub const GL_SAMPLER_2D_ARRAY_SHADOW: u32 = 36292;
1153pub const GL_SAMPLER_CUBE_SHADOW: u32 = 36293;
1154pub const GL_UNSIGNED_INT_VEC2: u32 = 36294;
1155pub const GL_UNSIGNED_INT_VEC3: u32 = 36295;
1156pub const GL_UNSIGNED_INT_VEC4: u32 = 36296;
1157pub const GL_INT_SAMPLER_1D: u32 = 36297;
1158pub const GL_INT_SAMPLER_2D: u32 = 36298;
1159pub const GL_INT_SAMPLER_3D: u32 = 36299;
1160pub const GL_INT_SAMPLER_CUBE: u32 = 36300;
1161pub const GL_INT_SAMPLER_1D_ARRAY: u32 = 36302;
1162pub const GL_INT_SAMPLER_2D_ARRAY: u32 = 36303;
1163pub const GL_UNSIGNED_INT_SAMPLER_1D: u32 = 36305;
1164pub const GL_UNSIGNED_INT_SAMPLER_2D: u32 = 36306;
1165pub const GL_UNSIGNED_INT_SAMPLER_3D: u32 = 36307;
1166pub const GL_UNSIGNED_INT_SAMPLER_CUBE: u32 = 36308;
1167pub const GL_UNSIGNED_INT_SAMPLER_1D_ARRAY: u32 = 36310;
1168pub const GL_UNSIGNED_INT_SAMPLER_2D_ARRAY: u32 = 36311;
1169pub const GL_QUERY_WAIT: u32 = 36371;
1170pub const GL_QUERY_NO_WAIT: u32 = 36372;
1171pub const GL_QUERY_BY_REGION_WAIT: u32 = 36373;
1172pub const GL_QUERY_BY_REGION_NO_WAIT: u32 = 36374;
1173pub const GL_BUFFER_ACCESS_FLAGS: u32 = 37151;
1174pub const GL_BUFFER_MAP_LENGTH: u32 = 37152;
1175pub const GL_BUFFER_MAP_OFFSET: u32 = 37153;
1176pub const GL_DEPTH_COMPONENT32F: u32 = 36012;
1177pub const GL_DEPTH32F_STENCIL8: u32 = 36013;
1178pub const GL_FLOAT_32_UNSIGNED_INT_24_8_REV: u32 = 36269;
1179pub const GL_INVALID_FRAMEBUFFER_OPERATION: u32 = 1286;
1180pub const GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: u32 = 33296;
1181pub const GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: u32 = 33297;
1182pub const GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE: u32 = 33298;
1183pub const GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: u32 = 33299;
1184pub const GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: u32 = 33300;
1185pub const GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: u32 = 33301;
1186pub const GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: u32 = 33302;
1187pub const GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: u32 = 33303;
1188pub const GL_FRAMEBUFFER_DEFAULT: u32 = 33304;
1189pub const GL_FRAMEBUFFER_UNDEFINED: u32 = 33305;
1190pub const GL_DEPTH_STENCIL_ATTACHMENT: u32 = 33306;
1191pub const GL_MAX_RENDERBUFFER_SIZE: u32 = 34024;
1192pub const GL_DEPTH_STENCIL: u32 = 34041;
1193pub const GL_UNSIGNED_INT_24_8: u32 = 34042;
1194pub const GL_DEPTH24_STENCIL8: u32 = 35056;
1195pub const GL_TEXTURE_STENCIL_SIZE: u32 = 35057;
1196pub const GL_TEXTURE_RED_TYPE: u32 = 35856;
1197pub const GL_TEXTURE_GREEN_TYPE: u32 = 35857;
1198pub const GL_TEXTURE_BLUE_TYPE: u32 = 35858;
1199pub const GL_TEXTURE_ALPHA_TYPE: u32 = 35859;
1200pub const GL_TEXTURE_DEPTH_TYPE: u32 = 35862;
1201pub const GL_UNSIGNED_NORMALIZED: u32 = 35863;
1202pub const GL_FRAMEBUFFER_BINDING: u32 = 36006;
1203pub const GL_DRAW_FRAMEBUFFER_BINDING: u32 = 36006;
1204pub const GL_RENDERBUFFER_BINDING: u32 = 36007;
1205pub const GL_READ_FRAMEBUFFER: u32 = 36008;
1206pub const GL_DRAW_FRAMEBUFFER: u32 = 36009;
1207pub const GL_READ_FRAMEBUFFER_BINDING: u32 = 36010;
1208pub const GL_RENDERBUFFER_SAMPLES: u32 = 36011;
1209pub const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: u32 = 36048;
1210pub const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: u32 = 36049;
1211pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: u32 = 36050;
1212pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: u32 = 36051;
1213pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: u32 = 36052;
1214pub const GL_FRAMEBUFFER_COMPLETE: u32 = 36053;
1215pub const GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: u32 = 36054;
1216pub const GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: u32 = 36055;
1217pub const GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER: u32 = 36059;
1218pub const GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER: u32 = 36060;
1219pub const GL_FRAMEBUFFER_UNSUPPORTED: u32 = 36061;
1220pub const GL_MAX_COLOR_ATTACHMENTS: u32 = 36063;
1221pub const GL_COLOR_ATTACHMENT0: u32 = 36064;
1222pub const GL_COLOR_ATTACHMENT1: u32 = 36065;
1223pub const GL_COLOR_ATTACHMENT2: u32 = 36066;
1224pub const GL_COLOR_ATTACHMENT3: u32 = 36067;
1225pub const GL_COLOR_ATTACHMENT4: u32 = 36068;
1226pub const GL_COLOR_ATTACHMENT5: u32 = 36069;
1227pub const GL_COLOR_ATTACHMENT6: u32 = 36070;
1228pub const GL_COLOR_ATTACHMENT7: u32 = 36071;
1229pub const GL_COLOR_ATTACHMENT8: u32 = 36072;
1230pub const GL_COLOR_ATTACHMENT9: u32 = 36073;
1231pub const GL_COLOR_ATTACHMENT10: u32 = 36074;
1232pub const GL_COLOR_ATTACHMENT11: u32 = 36075;
1233pub const GL_COLOR_ATTACHMENT12: u32 = 36076;
1234pub const GL_COLOR_ATTACHMENT13: u32 = 36077;
1235pub const GL_COLOR_ATTACHMENT14: u32 = 36078;
1236pub const GL_COLOR_ATTACHMENT15: u32 = 36079;
1237pub const GL_COLOR_ATTACHMENT16: u32 = 36080;
1238pub const GL_COLOR_ATTACHMENT17: u32 = 36081;
1239pub const GL_COLOR_ATTACHMENT18: u32 = 36082;
1240pub const GL_COLOR_ATTACHMENT19: u32 = 36083;
1241pub const GL_COLOR_ATTACHMENT20: u32 = 36084;
1242pub const GL_COLOR_ATTACHMENT21: u32 = 36085;
1243pub const GL_COLOR_ATTACHMENT22: u32 = 36086;
1244pub const GL_COLOR_ATTACHMENT23: u32 = 36087;
1245pub const GL_COLOR_ATTACHMENT24: u32 = 36088;
1246pub const GL_COLOR_ATTACHMENT25: u32 = 36089;
1247pub const GL_COLOR_ATTACHMENT26: u32 = 36090;
1248pub const GL_COLOR_ATTACHMENT27: u32 = 36091;
1249pub const GL_COLOR_ATTACHMENT28: u32 = 36092;
1250pub const GL_COLOR_ATTACHMENT29: u32 = 36093;
1251pub const GL_COLOR_ATTACHMENT30: u32 = 36094;
1252pub const GL_COLOR_ATTACHMENT31: u32 = 36095;
1253pub const GL_DEPTH_ATTACHMENT: u32 = 36096;
1254pub const GL_STENCIL_ATTACHMENT: u32 = 36128;
1255pub const GL_FRAMEBUFFER: u32 = 36160;
1256pub const GL_RENDERBUFFER: u32 = 36161;
1257pub const GL_RENDERBUFFER_WIDTH: u32 = 36162;
1258pub const GL_RENDERBUFFER_HEIGHT: u32 = 36163;
1259pub const GL_RENDERBUFFER_INTERNAL_FORMAT: u32 = 36164;
1260pub const GL_STENCIL_INDEX1: u32 = 36166;
1261pub const GL_STENCIL_INDEX4: u32 = 36167;
1262pub const GL_STENCIL_INDEX8: u32 = 36168;
1263pub const GL_STENCIL_INDEX16: u32 = 36169;
1264pub const GL_RENDERBUFFER_RED_SIZE: u32 = 36176;
1265pub const GL_RENDERBUFFER_GREEN_SIZE: u32 = 36177;
1266pub const GL_RENDERBUFFER_BLUE_SIZE: u32 = 36178;
1267pub const GL_RENDERBUFFER_ALPHA_SIZE: u32 = 36179;
1268pub const GL_RENDERBUFFER_DEPTH_SIZE: u32 = 36180;
1269pub const GL_RENDERBUFFER_STENCIL_SIZE: u32 = 36181;
1270pub const GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: u32 = 36182;
1271pub const GL_MAX_SAMPLES: u32 = 36183;
1272pub const GL_INDEX: u32 = 33314;
1273pub const GL_TEXTURE_LUMINANCE_TYPE: u32 = 35860;
1274pub const GL_TEXTURE_INTENSITY_TYPE: u32 = 35861;
1275pub const GL_FRAMEBUFFER_SRGB: u32 = 36281;
1276pub const GL_HALF_FLOAT: u32 = 5131;
1277pub const GL_MAP_READ_BIT: u32 = 1;
1278pub const GL_MAP_WRITE_BIT: u32 = 2;
1279pub const GL_MAP_INVALIDATE_RANGE_BIT: u32 = 4;
1280pub const GL_MAP_INVALIDATE_BUFFER_BIT: u32 = 8;
1281pub const GL_MAP_FLUSH_EXPLICIT_BIT: u32 = 16;
1282pub const GL_MAP_UNSYNCHRONIZED_BIT: u32 = 32;
1283pub const GL_COMPRESSED_RED_RGTC1: u32 = 36283;
1284pub const GL_COMPRESSED_SIGNED_RED_RGTC1: u32 = 36284;
1285pub const GL_COMPRESSED_RG_RGTC2: u32 = 36285;
1286pub const GL_COMPRESSED_SIGNED_RG_RGTC2: u32 = 36286;
1287pub const GL_RG: u32 = 33319;
1288pub const GL_RG_INTEGER: u32 = 33320;
1289pub const GL_R8: u32 = 33321;
1290pub const GL_R16: u32 = 33322;
1291pub const GL_RG8: u32 = 33323;
1292pub const GL_RG16: u32 = 33324;
1293pub const GL_R16F: u32 = 33325;
1294pub const GL_R32F: u32 = 33326;
1295pub const GL_RG16F: u32 = 33327;
1296pub const GL_RG32F: u32 = 33328;
1297pub const GL_R8I: u32 = 33329;
1298pub const GL_R8UI: u32 = 33330;
1299pub const GL_R16I: u32 = 33331;
1300pub const GL_R16UI: u32 = 33332;
1301pub const GL_R32I: u32 = 33333;
1302pub const GL_R32UI: u32 = 33334;
1303pub const GL_RG8I: u32 = 33335;
1304pub const GL_RG8UI: u32 = 33336;
1305pub const GL_RG16I: u32 = 33337;
1306pub const GL_RG16UI: u32 = 33338;
1307pub const GL_RG32I: u32 = 33339;
1308pub const GL_RG32UI: u32 = 33340;
1309pub const GL_VERTEX_ARRAY_BINDING: u32 = 34229;
1310pub const GL_CLAMP_VERTEX_COLOR: u32 = 35098;
1311pub const GL_CLAMP_FRAGMENT_COLOR: u32 = 35099;
1312pub const GL_ALPHA_INTEGER: u32 = 36247;
1313pub const GL_VERSION_3_1: u32 = 1;
1314pub const GL_SAMPLER_2D_RECT: u32 = 35683;
1315pub const GL_SAMPLER_2D_RECT_SHADOW: u32 = 35684;
1316pub const GL_SAMPLER_BUFFER: u32 = 36290;
1317pub const GL_INT_SAMPLER_2D_RECT: u32 = 36301;
1318pub const GL_INT_SAMPLER_BUFFER: u32 = 36304;
1319pub const GL_UNSIGNED_INT_SAMPLER_2D_RECT: u32 = 36309;
1320pub const GL_UNSIGNED_INT_SAMPLER_BUFFER: u32 = 36312;
1321pub const GL_TEXTURE_BUFFER: u32 = 35882;
1322pub const GL_MAX_TEXTURE_BUFFER_SIZE: u32 = 35883;
1323pub const GL_TEXTURE_BINDING_BUFFER: u32 = 35884;
1324pub const GL_TEXTURE_BUFFER_DATA_STORE_BINDING: u32 = 35885;
1325pub const GL_TEXTURE_RECTANGLE: u32 = 34037;
1326pub const GL_TEXTURE_BINDING_RECTANGLE: u32 = 34038;
1327pub const GL_PROXY_TEXTURE_RECTANGLE: u32 = 34039;
1328pub const GL_MAX_RECTANGLE_TEXTURE_SIZE: u32 = 34040;
1329pub const GL_R8_SNORM: u32 = 36756;
1330pub const GL_RG8_SNORM: u32 = 36757;
1331pub const GL_RGB8_SNORM: u32 = 36758;
1332pub const GL_RGBA8_SNORM: u32 = 36759;
1333pub const GL_R16_SNORM: u32 = 36760;
1334pub const GL_RG16_SNORM: u32 = 36761;
1335pub const GL_RGB16_SNORM: u32 = 36762;
1336pub const GL_RGBA16_SNORM: u32 = 36763;
1337pub const GL_SIGNED_NORMALIZED: u32 = 36764;
1338pub const GL_PRIMITIVE_RESTART: u32 = 36765;
1339pub const GL_PRIMITIVE_RESTART_INDEX: u32 = 36766;
1340pub const GL_COPY_READ_BUFFER: u32 = 36662;
1341pub const GL_COPY_WRITE_BUFFER: u32 = 36663;
1342pub const GL_UNIFORM_BUFFER: u32 = 35345;
1343pub const GL_UNIFORM_BUFFER_BINDING: u32 = 35368;
1344pub const GL_UNIFORM_BUFFER_START: u32 = 35369;
1345pub const GL_UNIFORM_BUFFER_SIZE: u32 = 35370;
1346pub const GL_MAX_VERTEX_UNIFORM_BLOCKS: u32 = 35371;
1347pub const GL_MAX_GEOMETRY_UNIFORM_BLOCKS: u32 = 35372;
1348pub const GL_MAX_FRAGMENT_UNIFORM_BLOCKS: u32 = 35373;
1349pub const GL_MAX_COMBINED_UNIFORM_BLOCKS: u32 = 35374;
1350pub const GL_MAX_UNIFORM_BUFFER_BINDINGS: u32 = 35375;
1351pub const GL_MAX_UNIFORM_BLOCK_SIZE: u32 = 35376;
1352pub const GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: u32 = 35377;
1353pub const GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS: u32 = 35378;
1354pub const GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: u32 = 35379;
1355pub const GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT: u32 = 35380;
1356pub const GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH: u32 = 35381;
1357pub const GL_ACTIVE_UNIFORM_BLOCKS: u32 = 35382;
1358pub const GL_UNIFORM_TYPE: u32 = 35383;
1359pub const GL_UNIFORM_SIZE: u32 = 35384;
1360pub const GL_UNIFORM_NAME_LENGTH: u32 = 35385;
1361pub const GL_UNIFORM_BLOCK_INDEX: u32 = 35386;
1362pub const GL_UNIFORM_OFFSET: u32 = 35387;
1363pub const GL_UNIFORM_ARRAY_STRIDE: u32 = 35388;
1364pub const GL_UNIFORM_MATRIX_STRIDE: u32 = 35389;
1365pub const GL_UNIFORM_IS_ROW_MAJOR: u32 = 35390;
1366pub const GL_UNIFORM_BLOCK_BINDING: u32 = 35391;
1367pub const GL_UNIFORM_BLOCK_DATA_SIZE: u32 = 35392;
1368pub const GL_UNIFORM_BLOCK_NAME_LENGTH: u32 = 35393;
1369pub const GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS: u32 = 35394;
1370pub const GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: u32 = 35395;
1371pub const GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: u32 = 35396;
1372pub const GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER: u32 = 35397;
1373pub const GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: u32 = 35398;
1374pub const GL_INVALID_INDEX: u32 = 4294967295;
1375pub const GL_VERSION_3_2: u32 = 1;
1376pub const GL_CONTEXT_CORE_PROFILE_BIT: u32 = 1;
1377pub const GL_CONTEXT_COMPATIBILITY_PROFILE_BIT: u32 = 2;
1378pub const GL_LINES_ADJACENCY: u32 = 10;
1379pub const GL_LINE_STRIP_ADJACENCY: u32 = 11;
1380pub const GL_TRIANGLES_ADJACENCY: u32 = 12;
1381pub const GL_TRIANGLE_STRIP_ADJACENCY: u32 = 13;
1382pub const GL_PROGRAM_POINT_SIZE: u32 = 34370;
1383pub const GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS: u32 = 35881;
1384pub const GL_FRAMEBUFFER_ATTACHMENT_LAYERED: u32 = 36263;
1385pub const GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS: u32 = 36264;
1386pub const GL_GEOMETRY_SHADER: u32 = 36313;
1387pub const GL_GEOMETRY_VERTICES_OUT: u32 = 35094;
1388pub const GL_GEOMETRY_INPUT_TYPE: u32 = 35095;
1389pub const GL_GEOMETRY_OUTPUT_TYPE: u32 = 35096;
1390pub const GL_MAX_GEOMETRY_UNIFORM_COMPONENTS: u32 = 36319;
1391pub const GL_MAX_GEOMETRY_OUTPUT_VERTICES: u32 = 36320;
1392pub const GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS: u32 = 36321;
1393pub const GL_MAX_VERTEX_OUTPUT_COMPONENTS: u32 = 37154;
1394pub const GL_MAX_GEOMETRY_INPUT_COMPONENTS: u32 = 37155;
1395pub const GL_MAX_GEOMETRY_OUTPUT_COMPONENTS: u32 = 37156;
1396pub const GL_MAX_FRAGMENT_INPUT_COMPONENTS: u32 = 37157;
1397pub const GL_CONTEXT_PROFILE_MASK: u32 = 37158;
1398pub const GL_DEPTH_CLAMP: u32 = 34383;
1399pub const GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION: u32 = 36428;
1400pub const GL_FIRST_VERTEX_CONVENTION: u32 = 36429;
1401pub const GL_LAST_VERTEX_CONVENTION: u32 = 36430;
1402pub const GL_PROVOKING_VERTEX: u32 = 36431;
1403pub const GL_TEXTURE_CUBE_MAP_SEAMLESS: u32 = 34895;
1404pub const GL_MAX_SERVER_WAIT_TIMEOUT: u32 = 37137;
1405pub const GL_OBJECT_TYPE: u32 = 37138;
1406pub const GL_SYNC_CONDITION: u32 = 37139;
1407pub const GL_SYNC_STATUS: u32 = 37140;
1408pub const GL_SYNC_FLAGS: u32 = 37141;
1409pub const GL_SYNC_FENCE: u32 = 37142;
1410pub const GL_SYNC_GPU_COMMANDS_COMPLETE: u32 = 37143;
1411pub const GL_UNSIGNALED: u32 = 37144;
1412pub const GL_SIGNALED: u32 = 37145;
1413pub const GL_ALREADY_SIGNALED: u32 = 37146;
1414pub const GL_TIMEOUT_EXPIRED: u32 = 37147;
1415pub const GL_CONDITION_SATISFIED: u32 = 37148;
1416pub const GL_WAIT_FAILED: u32 = 37149;
1417pub const GL_TIMEOUT_IGNORED: i32 = -1;
1418pub const GL_SYNC_FLUSH_COMMANDS_BIT: u32 = 1;
1419pub const GL_SAMPLE_POSITION: u32 = 36432;
1420pub const GL_SAMPLE_MASK: u32 = 36433;
1421pub const GL_SAMPLE_MASK_VALUE: u32 = 36434;
1422pub const GL_MAX_SAMPLE_MASK_WORDS: u32 = 36441;
1423pub const GL_TEXTURE_2D_MULTISAMPLE: u32 = 37120;
1424pub const GL_PROXY_TEXTURE_2D_MULTISAMPLE: u32 = 37121;
1425pub const GL_TEXTURE_2D_MULTISAMPLE_ARRAY: u32 = 37122;
1426pub const GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY: u32 = 37123;
1427pub const GL_TEXTURE_BINDING_2D_MULTISAMPLE: u32 = 37124;
1428pub const GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY: u32 = 37125;
1429pub const GL_TEXTURE_SAMPLES: u32 = 37126;
1430pub const GL_TEXTURE_FIXED_SAMPLE_LOCATIONS: u32 = 37127;
1431pub const GL_SAMPLER_2D_MULTISAMPLE: u32 = 37128;
1432pub const GL_INT_SAMPLER_2D_MULTISAMPLE: u32 = 37129;
1433pub const GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE: u32 = 37130;
1434pub const GL_SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 37131;
1435pub const GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 37132;
1436pub const GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 37133;
1437pub const GL_MAX_COLOR_TEXTURE_SAMPLES: u32 = 37134;
1438pub const GL_MAX_DEPTH_TEXTURE_SAMPLES: u32 = 37135;
1439pub const GL_MAX_INTEGER_SAMPLES: u32 = 37136;
1440pub const GL_VERSION_3_3: u32 = 1;
1441pub const GL_VERTEX_ATTRIB_ARRAY_DIVISOR: u32 = 35070;
1442pub const GL_SRC1_COLOR: u32 = 35065;
1443pub const GL_ONE_MINUS_SRC1_COLOR: u32 = 35066;
1444pub const GL_ONE_MINUS_SRC1_ALPHA: u32 = 35067;
1445pub const GL_MAX_DUAL_SOURCE_DRAW_BUFFERS: u32 = 35068;
1446pub const GL_ANY_SAMPLES_PASSED: u32 = 35887;
1447pub const GL_SAMPLER_BINDING: u32 = 35097;
1448pub const GL_RGB10_A2UI: u32 = 36975;
1449pub const GL_TEXTURE_SWIZZLE_R: u32 = 36418;
1450pub const GL_TEXTURE_SWIZZLE_G: u32 = 36419;
1451pub const GL_TEXTURE_SWIZZLE_B: u32 = 36420;
1452pub const GL_TEXTURE_SWIZZLE_A: u32 = 36421;
1453pub const GL_TEXTURE_SWIZZLE_RGBA: u32 = 36422;
1454pub const GL_TIME_ELAPSED: u32 = 35007;
1455pub const GL_TIMESTAMP: u32 = 36392;
1456pub const GL_INT_2_10_10_10_REV: u32 = 36255;
1457pub const GL_VERSION_4_0: u32 = 1;
1458pub const GL_SAMPLE_SHADING: u32 = 35894;
1459pub const GL_MIN_SAMPLE_SHADING_VALUE: u32 = 35895;
1460pub const GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET: u32 = 36446;
1461pub const GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET: u32 = 36447;
1462pub const GL_TEXTURE_CUBE_MAP_ARRAY: u32 = 36873;
1463pub const GL_TEXTURE_BINDING_CUBE_MAP_ARRAY: u32 = 36874;
1464pub const GL_PROXY_TEXTURE_CUBE_MAP_ARRAY: u32 = 36875;
1465pub const GL_SAMPLER_CUBE_MAP_ARRAY: u32 = 36876;
1466pub const GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW: u32 = 36877;
1467pub const GL_INT_SAMPLER_CUBE_MAP_ARRAY: u32 = 36878;
1468pub const GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY: u32 = 36879;
1469pub const GL_DRAW_INDIRECT_BUFFER: u32 = 36671;
1470pub const GL_DRAW_INDIRECT_BUFFER_BINDING: u32 = 36675;
1471pub const GL_GEOMETRY_SHADER_INVOCATIONS: u32 = 34943;
1472pub const GL_MAX_GEOMETRY_SHADER_INVOCATIONS: u32 = 36442;
1473pub const GL_MIN_FRAGMENT_INTERPOLATION_OFFSET: u32 = 36443;
1474pub const GL_MAX_FRAGMENT_INTERPOLATION_OFFSET: u32 = 36444;
1475pub const GL_FRAGMENT_INTERPOLATION_OFFSET_BITS: u32 = 36445;
1476pub const GL_MAX_VERTEX_STREAMS: u32 = 36465;
1477pub const GL_DOUBLE_VEC2: u32 = 36860;
1478pub const GL_DOUBLE_VEC3: u32 = 36861;
1479pub const GL_DOUBLE_VEC4: u32 = 36862;
1480pub const GL_DOUBLE_MAT2: u32 = 36678;
1481pub const GL_DOUBLE_MAT3: u32 = 36679;
1482pub const GL_DOUBLE_MAT4: u32 = 36680;
1483pub const GL_DOUBLE_MAT2x3: u32 = 36681;
1484pub const GL_DOUBLE_MAT2x4: u32 = 36682;
1485pub const GL_DOUBLE_MAT3x2: u32 = 36683;
1486pub const GL_DOUBLE_MAT3x4: u32 = 36684;
1487pub const GL_DOUBLE_MAT4x2: u32 = 36685;
1488pub const GL_DOUBLE_MAT4x3: u32 = 36686;
1489pub const GL_ACTIVE_SUBROUTINES: u32 = 36325;
1490pub const GL_ACTIVE_SUBROUTINE_UNIFORMS: u32 = 36326;
1491pub const GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS: u32 = 36423;
1492pub const GL_ACTIVE_SUBROUTINE_MAX_LENGTH: u32 = 36424;
1493pub const GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH: u32 = 36425;
1494pub const GL_MAX_SUBROUTINES: u32 = 36327;
1495pub const GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS: u32 = 36328;
1496pub const GL_NUM_COMPATIBLE_SUBROUTINES: u32 = 36426;
1497pub const GL_COMPATIBLE_SUBROUTINES: u32 = 36427;
1498pub const GL_PATCHES: u32 = 14;
1499pub const GL_PATCH_VERTICES: u32 = 36466;
1500pub const GL_PATCH_DEFAULT_INNER_LEVEL: u32 = 36467;
1501pub const GL_PATCH_DEFAULT_OUTER_LEVEL: u32 = 36468;
1502pub const GL_TESS_CONTROL_OUTPUT_VERTICES: u32 = 36469;
1503pub const GL_TESS_GEN_MODE: u32 = 36470;
1504pub const GL_TESS_GEN_SPACING: u32 = 36471;
1505pub const GL_TESS_GEN_VERTEX_ORDER: u32 = 36472;
1506pub const GL_TESS_GEN_POINT_MODE: u32 = 36473;
1507pub const GL_ISOLINES: u32 = 36474;
1508pub const GL_FRACTIONAL_ODD: u32 = 36475;
1509pub const GL_FRACTIONAL_EVEN: u32 = 36476;
1510pub const GL_MAX_PATCH_VERTICES: u32 = 36477;
1511pub const GL_MAX_TESS_GEN_LEVEL: u32 = 36478;
1512pub const GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS: u32 = 36479;
1513pub const GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS: u32 = 36480;
1514pub const GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS: u32 = 36481;
1515pub const GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS: u32 = 36482;
1516pub const GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS: u32 = 36483;
1517pub const GL_MAX_TESS_PATCH_COMPONENTS: u32 = 36484;
1518pub const GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS: u32 = 36485;
1519pub const GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS: u32 = 36486;
1520pub const GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS: u32 = 36489;
1521pub const GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS: u32 = 36490;
1522pub const GL_MAX_TESS_CONTROL_INPUT_COMPONENTS: u32 = 34924;
1523pub const GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS: u32 = 34925;
1524pub const GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS: u32 = 36382;
1525pub const GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS: u32 = 36383;
1526pub const GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 34032;
1527pub const GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 34033;
1528pub const GL_TESS_EVALUATION_SHADER: u32 = 36487;
1529pub const GL_TESS_CONTROL_SHADER: u32 = 36488;
1530pub const GL_TRANSFORM_FEEDBACK: u32 = 36386;
1531pub const GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED: u32 = 36387;
1532pub const GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE: u32 = 36388;
1533pub const GL_TRANSFORM_FEEDBACK_BINDING: u32 = 36389;
1534pub const GL_MAX_TRANSFORM_FEEDBACK_BUFFERS: u32 = 36464;
1535pub const GL_VERSION_4_1: u32 = 1;
1536pub const GL_FIXED: u32 = 5132;
1537pub const GL_IMPLEMENTATION_COLOR_READ_TYPE: u32 = 35738;
1538pub const GL_IMPLEMENTATION_COLOR_READ_FORMAT: u32 = 35739;
1539pub const GL_LOW_FLOAT: u32 = 36336;
1540pub const GL_MEDIUM_FLOAT: u32 = 36337;
1541pub const GL_HIGH_FLOAT: u32 = 36338;
1542pub const GL_LOW_INT: u32 = 36339;
1543pub const GL_MEDIUM_INT: u32 = 36340;
1544pub const GL_HIGH_INT: u32 = 36341;
1545pub const GL_SHADER_COMPILER: u32 = 36346;
1546pub const GL_SHADER_BINARY_FORMATS: u32 = 36344;
1547pub const GL_NUM_SHADER_BINARY_FORMATS: u32 = 36345;
1548pub const GL_MAX_VERTEX_UNIFORM_VECTORS: u32 = 36347;
1549pub const GL_MAX_VARYING_VECTORS: u32 = 36348;
1550pub const GL_MAX_FRAGMENT_UNIFORM_VECTORS: u32 = 36349;
1551pub const GL_RGB565: u32 = 36194;
1552pub const GL_PROGRAM_BINARY_RETRIEVABLE_HINT: u32 = 33367;
1553pub const GL_PROGRAM_BINARY_LENGTH: u32 = 34625;
1554pub const GL_NUM_PROGRAM_BINARY_FORMATS: u32 = 34814;
1555pub const GL_PROGRAM_BINARY_FORMATS: u32 = 34815;
1556pub const GL_VERTEX_SHADER_BIT: u32 = 1;
1557pub const GL_FRAGMENT_SHADER_BIT: u32 = 2;
1558pub const GL_GEOMETRY_SHADER_BIT: u32 = 4;
1559pub const GL_TESS_CONTROL_SHADER_BIT: u32 = 8;
1560pub const GL_TESS_EVALUATION_SHADER_BIT: u32 = 16;
1561pub const GL_ALL_SHADER_BITS: u32 = 4294967295;
1562pub const GL_PROGRAM_SEPARABLE: u32 = 33368;
1563pub const GL_ACTIVE_PROGRAM: u32 = 33369;
1564pub const GL_PROGRAM_PIPELINE_BINDING: u32 = 33370;
1565pub const GL_MAX_VIEWPORTS: u32 = 33371;
1566pub const GL_VIEWPORT_SUBPIXEL_BITS: u32 = 33372;
1567pub const GL_VIEWPORT_BOUNDS_RANGE: u32 = 33373;
1568pub const GL_LAYER_PROVOKING_VERTEX: u32 = 33374;
1569pub const GL_VIEWPORT_INDEX_PROVOKING_VERTEX: u32 = 33375;
1570pub const GL_UNDEFINED_VERTEX: u32 = 33376;
1571pub const GL_VERSION_4_2: u32 = 1;
1572pub const GL_COPY_READ_BUFFER_BINDING: u32 = 36662;
1573pub const GL_COPY_WRITE_BUFFER_BINDING: u32 = 36663;
1574pub const GL_TRANSFORM_FEEDBACK_ACTIVE: u32 = 36388;
1575pub const GL_TRANSFORM_FEEDBACK_PAUSED: u32 = 36387;
1576pub const GL_UNPACK_COMPRESSED_BLOCK_WIDTH: u32 = 37159;
1577pub const GL_UNPACK_COMPRESSED_BLOCK_HEIGHT: u32 = 37160;
1578pub const GL_UNPACK_COMPRESSED_BLOCK_DEPTH: u32 = 37161;
1579pub const GL_UNPACK_COMPRESSED_BLOCK_SIZE: u32 = 37162;
1580pub const GL_PACK_COMPRESSED_BLOCK_WIDTH: u32 = 37163;
1581pub const GL_PACK_COMPRESSED_BLOCK_HEIGHT: u32 = 37164;
1582pub const GL_PACK_COMPRESSED_BLOCK_DEPTH: u32 = 37165;
1583pub const GL_PACK_COMPRESSED_BLOCK_SIZE: u32 = 37166;
1584pub const GL_NUM_SAMPLE_COUNTS: u32 = 37760;
1585pub const GL_MIN_MAP_BUFFER_ALIGNMENT: u32 = 37052;
1586pub const GL_ATOMIC_COUNTER_BUFFER: u32 = 37568;
1587pub const GL_ATOMIC_COUNTER_BUFFER_BINDING: u32 = 37569;
1588pub const GL_ATOMIC_COUNTER_BUFFER_START: u32 = 37570;
1589pub const GL_ATOMIC_COUNTER_BUFFER_SIZE: u32 = 37571;
1590pub const GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE: u32 = 37572;
1591pub const GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS: u32 = 37573;
1592pub const GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES: u32 = 37574;
1593pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER: u32 = 37575;
1594pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 37576;
1595pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 37577;
1596pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER: u32 = 37578;
1597pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER: u32 = 37579;
1598pub const GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS: u32 = 37580;
1599pub const GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS: u32 = 37581;
1600pub const GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS: u32 = 37582;
1601pub const GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS: u32 = 37583;
1602pub const GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS: u32 = 37584;
1603pub const GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS: u32 = 37585;
1604pub const GL_MAX_VERTEX_ATOMIC_COUNTERS: u32 = 37586;
1605pub const GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS: u32 = 37587;
1606pub const GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS: u32 = 37588;
1607pub const GL_MAX_GEOMETRY_ATOMIC_COUNTERS: u32 = 37589;
1608pub const GL_MAX_FRAGMENT_ATOMIC_COUNTERS: u32 = 37590;
1609pub const GL_MAX_COMBINED_ATOMIC_COUNTERS: u32 = 37591;
1610pub const GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE: u32 = 37592;
1611pub const GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS: u32 = 37596;
1612pub const GL_ACTIVE_ATOMIC_COUNTER_BUFFERS: u32 = 37593;
1613pub const GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX: u32 = 37594;
1614pub const GL_UNSIGNED_INT_ATOMIC_COUNTER: u32 = 37595;
1615pub const GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT: u32 = 1;
1616pub const GL_ELEMENT_ARRAY_BARRIER_BIT: u32 = 2;
1617pub const GL_UNIFORM_BARRIER_BIT: u32 = 4;
1618pub const GL_TEXTURE_FETCH_BARRIER_BIT: u32 = 8;
1619pub const GL_SHADER_IMAGE_ACCESS_BARRIER_BIT: u32 = 32;
1620pub const GL_COMMAND_BARRIER_BIT: u32 = 64;
1621pub const GL_PIXEL_BUFFER_BARRIER_BIT: u32 = 128;
1622pub const GL_TEXTURE_UPDATE_BARRIER_BIT: u32 = 256;
1623pub const GL_BUFFER_UPDATE_BARRIER_BIT: u32 = 512;
1624pub const GL_FRAMEBUFFER_BARRIER_BIT: u32 = 1024;
1625pub const GL_TRANSFORM_FEEDBACK_BARRIER_BIT: u32 = 2048;
1626pub const GL_ATOMIC_COUNTER_BARRIER_BIT: u32 = 4096;
1627pub const GL_ALL_BARRIER_BITS: u32 = 4294967295;
1628pub const GL_MAX_IMAGE_UNITS: u32 = 36664;
1629pub const GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS: u32 = 36665;
1630pub const GL_IMAGE_BINDING_NAME: u32 = 36666;
1631pub const GL_IMAGE_BINDING_LEVEL: u32 = 36667;
1632pub const GL_IMAGE_BINDING_LAYERED: u32 = 36668;
1633pub const GL_IMAGE_BINDING_LAYER: u32 = 36669;
1634pub const GL_IMAGE_BINDING_ACCESS: u32 = 36670;
1635pub const GL_IMAGE_1D: u32 = 36940;
1636pub const GL_IMAGE_2D: u32 = 36941;
1637pub const GL_IMAGE_3D: u32 = 36942;
1638pub const GL_IMAGE_2D_RECT: u32 = 36943;
1639pub const GL_IMAGE_CUBE: u32 = 36944;
1640pub const GL_IMAGE_BUFFER: u32 = 36945;
1641pub const GL_IMAGE_1D_ARRAY: u32 = 36946;
1642pub const GL_IMAGE_2D_ARRAY: u32 = 36947;
1643pub const GL_IMAGE_CUBE_MAP_ARRAY: u32 = 36948;
1644pub const GL_IMAGE_2D_MULTISAMPLE: u32 = 36949;
1645pub const GL_IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 36950;
1646pub const GL_INT_IMAGE_1D: u32 = 36951;
1647pub const GL_INT_IMAGE_2D: u32 = 36952;
1648pub const GL_INT_IMAGE_3D: u32 = 36953;
1649pub const GL_INT_IMAGE_2D_RECT: u32 = 36954;
1650pub const GL_INT_IMAGE_CUBE: u32 = 36955;
1651pub const GL_INT_IMAGE_BUFFER: u32 = 36956;
1652pub const GL_INT_IMAGE_1D_ARRAY: u32 = 36957;
1653pub const GL_INT_IMAGE_2D_ARRAY: u32 = 36958;
1654pub const GL_INT_IMAGE_CUBE_MAP_ARRAY: u32 = 36959;
1655pub const GL_INT_IMAGE_2D_MULTISAMPLE: u32 = 36960;
1656pub const GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 36961;
1657pub const GL_UNSIGNED_INT_IMAGE_1D: u32 = 36962;
1658pub const GL_UNSIGNED_INT_IMAGE_2D: u32 = 36963;
1659pub const GL_UNSIGNED_INT_IMAGE_3D: u32 = 36964;
1660pub const GL_UNSIGNED_INT_IMAGE_2D_RECT: u32 = 36965;
1661pub const GL_UNSIGNED_INT_IMAGE_CUBE: u32 = 36966;
1662pub const GL_UNSIGNED_INT_IMAGE_BUFFER: u32 = 36967;
1663pub const GL_UNSIGNED_INT_IMAGE_1D_ARRAY: u32 = 36968;
1664pub const GL_UNSIGNED_INT_IMAGE_2D_ARRAY: u32 = 36969;
1665pub const GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY: u32 = 36970;
1666pub const GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE: u32 = 36971;
1667pub const GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 36972;
1668pub const GL_MAX_IMAGE_SAMPLES: u32 = 36973;
1669pub const GL_IMAGE_BINDING_FORMAT: u32 = 36974;
1670pub const GL_IMAGE_FORMAT_COMPATIBILITY_TYPE: u32 = 37063;
1671pub const GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE: u32 = 37064;
1672pub const GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS: u32 = 37065;
1673pub const GL_MAX_VERTEX_IMAGE_UNIFORMS: u32 = 37066;
1674pub const GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS: u32 = 37067;
1675pub const GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS: u32 = 37068;
1676pub const GL_MAX_GEOMETRY_IMAGE_UNIFORMS: u32 = 37069;
1677pub const GL_MAX_FRAGMENT_IMAGE_UNIFORMS: u32 = 37070;
1678pub const GL_MAX_COMBINED_IMAGE_UNIFORMS: u32 = 37071;
1679pub const GL_COMPRESSED_RGBA_BPTC_UNORM: u32 = 36492;
1680pub const GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM: u32 = 36493;
1681pub const GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT: u32 = 36494;
1682pub const GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT: u32 = 36495;
1683pub const GL_TEXTURE_IMMUTABLE_FORMAT: u32 = 37167;
1684pub const GL_VERSION_4_3: u32 = 1;
1685pub const GL_NUM_SHADING_LANGUAGE_VERSIONS: u32 = 33513;
1686pub const GL_VERTEX_ATTRIB_ARRAY_LONG: u32 = 34638;
1687pub const GL_COMPRESSED_RGB8_ETC2: u32 = 37492;
1688pub const GL_COMPRESSED_SRGB8_ETC2: u32 = 37493;
1689pub const GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: u32 = 37494;
1690pub const GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: u32 = 37495;
1691pub const GL_COMPRESSED_RGBA8_ETC2_EAC: u32 = 37496;
1692pub const GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: u32 = 37497;
1693pub const GL_COMPRESSED_R11_EAC: u32 = 37488;
1694pub const GL_COMPRESSED_SIGNED_R11_EAC: u32 = 37489;
1695pub const GL_COMPRESSED_RG11_EAC: u32 = 37490;
1696pub const GL_COMPRESSED_SIGNED_RG11_EAC: u32 = 37491;
1697pub const GL_PRIMITIVE_RESTART_FIXED_INDEX: u32 = 36201;
1698pub const GL_ANY_SAMPLES_PASSED_CONSERVATIVE: u32 = 36202;
1699pub const GL_MAX_ELEMENT_INDEX: u32 = 36203;
1700pub const GL_COMPUTE_SHADER: u32 = 37305;
1701pub const GL_MAX_COMPUTE_UNIFORM_BLOCKS: u32 = 37307;
1702pub const GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS: u32 = 37308;
1703pub const GL_MAX_COMPUTE_IMAGE_UNIFORMS: u32 = 37309;
1704pub const GL_MAX_COMPUTE_SHARED_MEMORY_SIZE: u32 = 33378;
1705pub const GL_MAX_COMPUTE_UNIFORM_COMPONENTS: u32 = 33379;
1706pub const GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS: u32 = 33380;
1707pub const GL_MAX_COMPUTE_ATOMIC_COUNTERS: u32 = 33381;
1708pub const GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS: u32 = 33382;
1709pub const GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS: u32 = 37099;
1710pub const GL_MAX_COMPUTE_WORK_GROUP_COUNT: u32 = 37310;
1711pub const GL_MAX_COMPUTE_WORK_GROUP_SIZE: u32 = 37311;
1712pub const GL_COMPUTE_WORK_GROUP_SIZE: u32 = 33383;
1713pub const GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER: u32 = 37100;
1714pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER: u32 = 37101;
1715pub const GL_DISPATCH_INDIRECT_BUFFER: u32 = 37102;
1716pub const GL_DISPATCH_INDIRECT_BUFFER_BINDING: u32 = 37103;
1717pub const GL_COMPUTE_SHADER_BIT: u32 = 32;
1718pub const GL_DEBUG_OUTPUT_SYNCHRONOUS: u32 = 33346;
1719pub const GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH: u32 = 33347;
1720pub const GL_DEBUG_CALLBACK_FUNCTION: u32 = 33348;
1721pub const GL_DEBUG_CALLBACK_USER_PARAM: u32 = 33349;
1722pub const GL_DEBUG_SOURCE_API: u32 = 33350;
1723pub const GL_DEBUG_SOURCE_WINDOW_SYSTEM: u32 = 33351;
1724pub const GL_DEBUG_SOURCE_SHADER_COMPILER: u32 = 33352;
1725pub const GL_DEBUG_SOURCE_THIRD_PARTY: u32 = 33353;
1726pub const GL_DEBUG_SOURCE_APPLICATION: u32 = 33354;
1727pub const GL_DEBUG_SOURCE_OTHER: u32 = 33355;
1728pub const GL_DEBUG_TYPE_ERROR: u32 = 33356;
1729pub const GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR: u32 = 33357;
1730pub const GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR: u32 = 33358;
1731pub const GL_DEBUG_TYPE_PORTABILITY: u32 = 33359;
1732pub const GL_DEBUG_TYPE_PERFORMANCE: u32 = 33360;
1733pub const GL_DEBUG_TYPE_OTHER: u32 = 33361;
1734pub const GL_MAX_DEBUG_MESSAGE_LENGTH: u32 = 37187;
1735pub const GL_MAX_DEBUG_LOGGED_MESSAGES: u32 = 37188;
1736pub const GL_DEBUG_LOGGED_MESSAGES: u32 = 37189;
1737pub const GL_DEBUG_SEVERITY_HIGH: u32 = 37190;
1738pub const GL_DEBUG_SEVERITY_MEDIUM: u32 = 37191;
1739pub const GL_DEBUG_SEVERITY_LOW: u32 = 37192;
1740pub const GL_DEBUG_TYPE_MARKER: u32 = 33384;
1741pub const GL_DEBUG_TYPE_PUSH_GROUP: u32 = 33385;
1742pub const GL_DEBUG_TYPE_POP_GROUP: u32 = 33386;
1743pub const GL_DEBUG_SEVERITY_NOTIFICATION: u32 = 33387;
1744pub const GL_MAX_DEBUG_GROUP_STACK_DEPTH: u32 = 33388;
1745pub const GL_DEBUG_GROUP_STACK_DEPTH: u32 = 33389;
1746pub const GL_BUFFER: u32 = 33504;
1747pub const GL_SHADER: u32 = 33505;
1748pub const GL_PROGRAM: u32 = 33506;
1749pub const GL_QUERY: u32 = 33507;
1750pub const GL_PROGRAM_PIPELINE: u32 = 33508;
1751pub const GL_SAMPLER: u32 = 33510;
1752pub const GL_MAX_LABEL_LENGTH: u32 = 33512;
1753pub const GL_DEBUG_OUTPUT: u32 = 37600;
1754pub const GL_CONTEXT_FLAG_DEBUG_BIT: u32 = 2;
1755pub const GL_MAX_UNIFORM_LOCATIONS: u32 = 33390;
1756pub const GL_FRAMEBUFFER_DEFAULT_WIDTH: u32 = 37648;
1757pub const GL_FRAMEBUFFER_DEFAULT_HEIGHT: u32 = 37649;
1758pub const GL_FRAMEBUFFER_DEFAULT_LAYERS: u32 = 37650;
1759pub const GL_FRAMEBUFFER_DEFAULT_SAMPLES: u32 = 37651;
1760pub const GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS: u32 = 37652;
1761pub const GL_MAX_FRAMEBUFFER_WIDTH: u32 = 37653;
1762pub const GL_MAX_FRAMEBUFFER_HEIGHT: u32 = 37654;
1763pub const GL_MAX_FRAMEBUFFER_LAYERS: u32 = 37655;
1764pub const GL_MAX_FRAMEBUFFER_SAMPLES: u32 = 37656;
1765pub const GL_INTERNALFORMAT_SUPPORTED: u32 = 33391;
1766pub const GL_INTERNALFORMAT_PREFERRED: u32 = 33392;
1767pub const GL_INTERNALFORMAT_RED_SIZE: u32 = 33393;
1768pub const GL_INTERNALFORMAT_GREEN_SIZE: u32 = 33394;
1769pub const GL_INTERNALFORMAT_BLUE_SIZE: u32 = 33395;
1770pub const GL_INTERNALFORMAT_ALPHA_SIZE: u32 = 33396;
1771pub const GL_INTERNALFORMAT_DEPTH_SIZE: u32 = 33397;
1772pub const GL_INTERNALFORMAT_STENCIL_SIZE: u32 = 33398;
1773pub const GL_INTERNALFORMAT_SHARED_SIZE: u32 = 33399;
1774pub const GL_INTERNALFORMAT_RED_TYPE: u32 = 33400;
1775pub const GL_INTERNALFORMAT_GREEN_TYPE: u32 = 33401;
1776pub const GL_INTERNALFORMAT_BLUE_TYPE: u32 = 33402;
1777pub const GL_INTERNALFORMAT_ALPHA_TYPE: u32 = 33403;
1778pub const GL_INTERNALFORMAT_DEPTH_TYPE: u32 = 33404;
1779pub const GL_INTERNALFORMAT_STENCIL_TYPE: u32 = 33405;
1780pub const GL_MAX_WIDTH: u32 = 33406;
1781pub const GL_MAX_HEIGHT: u32 = 33407;
1782pub const GL_MAX_DEPTH: u32 = 33408;
1783pub const GL_MAX_LAYERS: u32 = 33409;
1784pub const GL_MAX_COMBINED_DIMENSIONS: u32 = 33410;
1785pub const GL_COLOR_COMPONENTS: u32 = 33411;
1786pub const GL_DEPTH_COMPONENTS: u32 = 33412;
1787pub const GL_STENCIL_COMPONENTS: u32 = 33413;
1788pub const GL_COLOR_RENDERABLE: u32 = 33414;
1789pub const GL_DEPTH_RENDERABLE: u32 = 33415;
1790pub const GL_STENCIL_RENDERABLE: u32 = 33416;
1791pub const GL_FRAMEBUFFER_RENDERABLE: u32 = 33417;
1792pub const GL_FRAMEBUFFER_RENDERABLE_LAYERED: u32 = 33418;
1793pub const GL_FRAMEBUFFER_BLEND: u32 = 33419;
1794pub const GL_READ_PIXELS: u32 = 33420;
1795pub const GL_READ_PIXELS_FORMAT: u32 = 33421;
1796pub const GL_READ_PIXELS_TYPE: u32 = 33422;
1797pub const GL_TEXTURE_IMAGE_FORMAT: u32 = 33423;
1798pub const GL_TEXTURE_IMAGE_TYPE: u32 = 33424;
1799pub const GL_GET_TEXTURE_IMAGE_FORMAT: u32 = 33425;
1800pub const GL_GET_TEXTURE_IMAGE_TYPE: u32 = 33426;
1801pub const GL_MIPMAP: u32 = 33427;
1802pub const GL_MANUAL_GENERATE_MIPMAP: u32 = 33428;
1803pub const GL_AUTO_GENERATE_MIPMAP: u32 = 33429;
1804pub const GL_COLOR_ENCODING: u32 = 33430;
1805pub const GL_SRGB_READ: u32 = 33431;
1806pub const GL_SRGB_WRITE: u32 = 33432;
1807pub const GL_FILTER: u32 = 33434;
1808pub const GL_VERTEX_TEXTURE: u32 = 33435;
1809pub const GL_TESS_CONTROL_TEXTURE: u32 = 33436;
1810pub const GL_TESS_EVALUATION_TEXTURE: u32 = 33437;
1811pub const GL_GEOMETRY_TEXTURE: u32 = 33438;
1812pub const GL_FRAGMENT_TEXTURE: u32 = 33439;
1813pub const GL_COMPUTE_TEXTURE: u32 = 33440;
1814pub const GL_TEXTURE_SHADOW: u32 = 33441;
1815pub const GL_TEXTURE_GATHER: u32 = 33442;
1816pub const GL_TEXTURE_GATHER_SHADOW: u32 = 33443;
1817pub const GL_SHADER_IMAGE_LOAD: u32 = 33444;
1818pub const GL_SHADER_IMAGE_STORE: u32 = 33445;
1819pub const GL_SHADER_IMAGE_ATOMIC: u32 = 33446;
1820pub const GL_IMAGE_TEXEL_SIZE: u32 = 33447;
1821pub const GL_IMAGE_COMPATIBILITY_CLASS: u32 = 33448;
1822pub const GL_IMAGE_PIXEL_FORMAT: u32 = 33449;
1823pub const GL_IMAGE_PIXEL_TYPE: u32 = 33450;
1824pub const GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST: u32 = 33452;
1825pub const GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST: u32 = 33453;
1826pub const GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE: u32 = 33454;
1827pub const GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE: u32 = 33455;
1828pub const GL_TEXTURE_COMPRESSED_BLOCK_WIDTH: u32 = 33457;
1829pub const GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT: u32 = 33458;
1830pub const GL_TEXTURE_COMPRESSED_BLOCK_SIZE: u32 = 33459;
1831pub const GL_CLEAR_BUFFER: u32 = 33460;
1832pub const GL_TEXTURE_VIEW: u32 = 33461;
1833pub const GL_VIEW_COMPATIBILITY_CLASS: u32 = 33462;
1834pub const GL_FULL_SUPPORT: u32 = 33463;
1835pub const GL_CAVEAT_SUPPORT: u32 = 33464;
1836pub const GL_IMAGE_CLASS_4_X_32: u32 = 33465;
1837pub const GL_IMAGE_CLASS_2_X_32: u32 = 33466;
1838pub const GL_IMAGE_CLASS_1_X_32: u32 = 33467;
1839pub const GL_IMAGE_CLASS_4_X_16: u32 = 33468;
1840pub const GL_IMAGE_CLASS_2_X_16: u32 = 33469;
1841pub const GL_IMAGE_CLASS_1_X_16: u32 = 33470;
1842pub const GL_IMAGE_CLASS_4_X_8: u32 = 33471;
1843pub const GL_IMAGE_CLASS_2_X_8: u32 = 33472;
1844pub const GL_IMAGE_CLASS_1_X_8: u32 = 33473;
1845pub const GL_IMAGE_CLASS_11_11_10: u32 = 33474;
1846pub const GL_IMAGE_CLASS_10_10_10_2: u32 = 33475;
1847pub const GL_VIEW_CLASS_128_BITS: u32 = 33476;
1848pub const GL_VIEW_CLASS_96_BITS: u32 = 33477;
1849pub const GL_VIEW_CLASS_64_BITS: u32 = 33478;
1850pub const GL_VIEW_CLASS_48_BITS: u32 = 33479;
1851pub const GL_VIEW_CLASS_32_BITS: u32 = 33480;
1852pub const GL_VIEW_CLASS_24_BITS: u32 = 33481;
1853pub const GL_VIEW_CLASS_16_BITS: u32 = 33482;
1854pub const GL_VIEW_CLASS_8_BITS: u32 = 33483;
1855pub const GL_VIEW_CLASS_S3TC_DXT1_RGB: u32 = 33484;
1856pub const GL_VIEW_CLASS_S3TC_DXT1_RGBA: u32 = 33485;
1857pub const GL_VIEW_CLASS_S3TC_DXT3_RGBA: u32 = 33486;
1858pub const GL_VIEW_CLASS_S3TC_DXT5_RGBA: u32 = 33487;
1859pub const GL_VIEW_CLASS_RGTC1_RED: u32 = 33488;
1860pub const GL_VIEW_CLASS_RGTC2_RG: u32 = 33489;
1861pub const GL_VIEW_CLASS_BPTC_UNORM: u32 = 33490;
1862pub const GL_VIEW_CLASS_BPTC_FLOAT: u32 = 33491;
1863pub const GL_UNIFORM: u32 = 37601;
1864pub const GL_UNIFORM_BLOCK: u32 = 37602;
1865pub const GL_PROGRAM_INPUT: u32 = 37603;
1866pub const GL_PROGRAM_OUTPUT: u32 = 37604;
1867pub const GL_BUFFER_VARIABLE: u32 = 37605;
1868pub const GL_SHADER_STORAGE_BLOCK: u32 = 37606;
1869pub const GL_VERTEX_SUBROUTINE: u32 = 37608;
1870pub const GL_TESS_CONTROL_SUBROUTINE: u32 = 37609;
1871pub const GL_TESS_EVALUATION_SUBROUTINE: u32 = 37610;
1872pub const GL_GEOMETRY_SUBROUTINE: u32 = 37611;
1873pub const GL_FRAGMENT_SUBROUTINE: u32 = 37612;
1874pub const GL_COMPUTE_SUBROUTINE: u32 = 37613;
1875pub const GL_VERTEX_SUBROUTINE_UNIFORM: u32 = 37614;
1876pub const GL_TESS_CONTROL_SUBROUTINE_UNIFORM: u32 = 37615;
1877pub const GL_TESS_EVALUATION_SUBROUTINE_UNIFORM: u32 = 37616;
1878pub const GL_GEOMETRY_SUBROUTINE_UNIFORM: u32 = 37617;
1879pub const GL_FRAGMENT_SUBROUTINE_UNIFORM: u32 = 37618;
1880pub const GL_COMPUTE_SUBROUTINE_UNIFORM: u32 = 37619;
1881pub const GL_TRANSFORM_FEEDBACK_VARYING: u32 = 37620;
1882pub const GL_ACTIVE_RESOURCES: u32 = 37621;
1883pub const GL_MAX_NAME_LENGTH: u32 = 37622;
1884pub const GL_MAX_NUM_ACTIVE_VARIABLES: u32 = 37623;
1885pub const GL_MAX_NUM_COMPATIBLE_SUBROUTINES: u32 = 37624;
1886pub const GL_NAME_LENGTH: u32 = 37625;
1887pub const GL_TYPE: u32 = 37626;
1888pub const GL_ARRAY_SIZE: u32 = 37627;
1889pub const GL_OFFSET: u32 = 37628;
1890pub const GL_BLOCK_INDEX: u32 = 37629;
1891pub const GL_ARRAY_STRIDE: u32 = 37630;
1892pub const GL_MATRIX_STRIDE: u32 = 37631;
1893pub const GL_IS_ROW_MAJOR: u32 = 37632;
1894pub const GL_ATOMIC_COUNTER_BUFFER_INDEX: u32 = 37633;
1895pub const GL_BUFFER_BINDING: u32 = 37634;
1896pub const GL_BUFFER_DATA_SIZE: u32 = 37635;
1897pub const GL_NUM_ACTIVE_VARIABLES: u32 = 37636;
1898pub const GL_ACTIVE_VARIABLES: u32 = 37637;
1899pub const GL_REFERENCED_BY_VERTEX_SHADER: u32 = 37638;
1900pub const GL_REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 37639;
1901pub const GL_REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 37640;
1902pub const GL_REFERENCED_BY_GEOMETRY_SHADER: u32 = 37641;
1903pub const GL_REFERENCED_BY_FRAGMENT_SHADER: u32 = 37642;
1904pub const GL_REFERENCED_BY_COMPUTE_SHADER: u32 = 37643;
1905pub const GL_TOP_LEVEL_ARRAY_SIZE: u32 = 37644;
1906pub const GL_TOP_LEVEL_ARRAY_STRIDE: u32 = 37645;
1907pub const GL_LOCATION: u32 = 37646;
1908pub const GL_LOCATION_INDEX: u32 = 37647;
1909pub const GL_IS_PER_PATCH: u32 = 37607;
1910pub const GL_SHADER_STORAGE_BUFFER: u32 = 37074;
1911pub const GL_SHADER_STORAGE_BUFFER_BINDING: u32 = 37075;
1912pub const GL_SHADER_STORAGE_BUFFER_START: u32 = 37076;
1913pub const GL_SHADER_STORAGE_BUFFER_SIZE: u32 = 37077;
1914pub const GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS: u32 = 37078;
1915pub const GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS: u32 = 37079;
1916pub const GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS: u32 = 37080;
1917pub const GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS: u32 = 37081;
1918pub const GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS: u32 = 37082;
1919pub const GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS: u32 = 37083;
1920pub const GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS: u32 = 37084;
1921pub const GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS: u32 = 37085;
1922pub const GL_MAX_SHADER_STORAGE_BLOCK_SIZE: u32 = 37086;
1923pub const GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT: u32 = 37087;
1924pub const GL_SHADER_STORAGE_BARRIER_BIT: u32 = 8192;
1925pub const GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES: u32 = 36665;
1926pub const GL_DEPTH_STENCIL_TEXTURE_MODE: u32 = 37098;
1927pub const GL_TEXTURE_BUFFER_OFFSET: u32 = 37277;
1928pub const GL_TEXTURE_BUFFER_SIZE: u32 = 37278;
1929pub const GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT: u32 = 37279;
1930pub const GL_TEXTURE_VIEW_MIN_LEVEL: u32 = 33499;
1931pub const GL_TEXTURE_VIEW_NUM_LEVELS: u32 = 33500;
1932pub const GL_TEXTURE_VIEW_MIN_LAYER: u32 = 33501;
1933pub const GL_TEXTURE_VIEW_NUM_LAYERS: u32 = 33502;
1934pub const GL_TEXTURE_IMMUTABLE_LEVELS: u32 = 33503;
1935pub const GL_VERTEX_ATTRIB_BINDING: u32 = 33492;
1936pub const GL_VERTEX_ATTRIB_RELATIVE_OFFSET: u32 = 33493;
1937pub const GL_VERTEX_BINDING_DIVISOR: u32 = 33494;
1938pub const GL_VERTEX_BINDING_OFFSET: u32 = 33495;
1939pub const GL_VERTEX_BINDING_STRIDE: u32 = 33496;
1940pub const GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET: u32 = 33497;
1941pub const GL_MAX_VERTEX_ATTRIB_BINDINGS: u32 = 33498;
1942pub const GL_VERTEX_BINDING_BUFFER: u32 = 36687;
1943pub const GL_DISPLAY_LIST: u32 = 33511;
1944pub const GL_VERSION_4_4: u32 = 1;
1945pub const GL_MAX_VERTEX_ATTRIB_STRIDE: u32 = 33509;
1946pub const GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED: u32 = 33313;
1947pub const GL_TEXTURE_BUFFER_BINDING: u32 = 35882;
1948pub const GL_MAP_PERSISTENT_BIT: u32 = 64;
1949pub const GL_MAP_COHERENT_BIT: u32 = 128;
1950pub const GL_DYNAMIC_STORAGE_BIT: u32 = 256;
1951pub const GL_CLIENT_STORAGE_BIT: u32 = 512;
1952pub const GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT: u32 = 16384;
1953pub const GL_BUFFER_IMMUTABLE_STORAGE: u32 = 33311;
1954pub const GL_BUFFER_STORAGE_FLAGS: u32 = 33312;
1955pub const GL_CLEAR_TEXTURE: u32 = 37733;
1956pub const GL_LOCATION_COMPONENT: u32 = 37706;
1957pub const GL_TRANSFORM_FEEDBACK_BUFFER_INDEX: u32 = 37707;
1958pub const GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE: u32 = 37708;
1959pub const GL_QUERY_BUFFER: u32 = 37266;
1960pub const GL_QUERY_BUFFER_BARRIER_BIT: u32 = 32768;
1961pub const GL_QUERY_BUFFER_BINDING: u32 = 37267;
1962pub const GL_QUERY_RESULT_NO_WAIT: u32 = 37268;
1963pub const GL_MIRROR_CLAMP_TO_EDGE: u32 = 34627;
1964pub const GL_VERSION_4_5: u32 = 1;
1965pub const GL_CONTEXT_LOST: u32 = 1287;
1966pub const GL_NEGATIVE_ONE_TO_ONE: u32 = 37726;
1967pub const GL_ZERO_TO_ONE: u32 = 37727;
1968pub const GL_CLIP_ORIGIN: u32 = 37724;
1969pub const GL_CLIP_DEPTH_MODE: u32 = 37725;
1970pub const GL_QUERY_WAIT_INVERTED: u32 = 36375;
1971pub const GL_QUERY_NO_WAIT_INVERTED: u32 = 36376;
1972pub const GL_QUERY_BY_REGION_WAIT_INVERTED: u32 = 36377;
1973pub const GL_QUERY_BY_REGION_NO_WAIT_INVERTED: u32 = 36378;
1974pub const GL_MAX_CULL_DISTANCES: u32 = 33529;
1975pub const GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES: u32 = 33530;
1976pub const GL_TEXTURE_TARGET: u32 = 4102;
1977pub const GL_QUERY_TARGET: u32 = 33514;
1978pub const GL_GUILTY_CONTEXT_RESET: u32 = 33363;
1979pub const GL_INNOCENT_CONTEXT_RESET: u32 = 33364;
1980pub const GL_UNKNOWN_CONTEXT_RESET: u32 = 33365;
1981pub const GL_RESET_NOTIFICATION_STRATEGY: u32 = 33366;
1982pub const GL_LOSE_CONTEXT_ON_RESET: u32 = 33362;
1983pub const GL_NO_RESET_NOTIFICATION: u32 = 33377;
1984pub const GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT: u32 = 4;
1985pub const GL_CONTEXT_RELEASE_BEHAVIOR: u32 = 33531;
1986pub const GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH: u32 = 33532;
1987pub const GL_VERSION_4_6: u32 = 1;
1988pub const GL_SHADER_BINARY_FORMAT_SPIR_V: u32 = 38225;
1989pub const GL_SPIR_V_BINARY: u32 = 38226;
1990pub const GL_PARAMETER_BUFFER: u32 = 33006;
1991pub const GL_PARAMETER_BUFFER_BINDING: u32 = 33007;
1992pub const GL_CONTEXT_FLAG_NO_ERROR_BIT: u32 = 8;
1993pub const GL_VERTICES_SUBMITTED: u32 = 33518;
1994pub const GL_PRIMITIVES_SUBMITTED: u32 = 33519;
1995pub const GL_VERTEX_SHADER_INVOCATIONS: u32 = 33520;
1996pub const GL_TESS_CONTROL_SHADER_PATCHES: u32 = 33521;
1997pub const GL_TESS_EVALUATION_SHADER_INVOCATIONS: u32 = 33522;
1998pub const GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED: u32 = 33523;
1999pub const GL_FRAGMENT_SHADER_INVOCATIONS: u32 = 33524;
2000pub const GL_COMPUTE_SHADER_INVOCATIONS: u32 = 33525;
2001pub const GL_CLIPPING_INPUT_PRIMITIVES: u32 = 33526;
2002pub const GL_CLIPPING_OUTPUT_PRIMITIVES: u32 = 33527;
2003pub const GL_POLYGON_OFFSET_CLAMP: u32 = 36379;
2004pub const GL_SPIR_V_EXTENSIONS: u32 = 38227;
2005pub const GL_NUM_SPIR_V_EXTENSIONS: u32 = 38228;
2006pub const GL_TEXTURE_MAX_ANISOTROPY: u32 = 34046;
2007pub const GL_MAX_TEXTURE_MAX_ANISOTROPY: u32 = 34047;
2008pub const GL_TRANSFORM_FEEDBACK_OVERFLOW: u32 = 33516;
2009pub const GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW: u32 = 33517;
2010pub const GL_ARB_ES2_compatibility: u32 = 1;
2011pub const GL_ARB_ES3_1_compatibility: u32 = 1;
2012pub const GL_ARB_ES3_2_compatibility: u32 = 1;
2013pub const GL_PRIMITIVE_BOUNDING_BOX_ARB: u32 = 37566;
2014pub const GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB: u32 = 37761;
2015pub const GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB: u32 = 37762;
2016pub const GL_ARB_ES3_compatibility: u32 = 1;
2017pub const GL_ARB_arrays_of_arrays: u32 = 1;
2018pub const GL_ARB_base_instance: u32 = 1;
2019pub const GL_ARB_bindless_texture: u32 = 1;
2020pub const GL_UNSIGNED_INT64_ARB: u32 = 5135;
2021pub const GL_ARB_blend_func_extended: u32 = 1;
2022pub const GL_ARB_buffer_storage: u32 = 1;
2023pub const GL_ARB_cl_event: u32 = 1;
2024pub const GL_SYNC_CL_EVENT_ARB: u32 = 33344;
2025pub const GL_SYNC_CL_EVENT_COMPLETE_ARB: u32 = 33345;
2026pub const GL_ARB_clear_buffer_object: u32 = 1;
2027pub const GL_ARB_clear_texture: u32 = 1;
2028pub const GL_ARB_clip_control: u32 = 1;
2029pub const GL_ARB_color_buffer_float: u32 = 1;
2030pub const GL_RGBA_FLOAT_MODE_ARB: u32 = 34848;
2031pub const GL_CLAMP_VERTEX_COLOR_ARB: u32 = 35098;
2032pub const GL_CLAMP_FRAGMENT_COLOR_ARB: u32 = 35099;
2033pub const GL_CLAMP_READ_COLOR_ARB: u32 = 35100;
2034pub const GL_FIXED_ONLY_ARB: u32 = 35101;
2035pub const GL_ARB_compatibility: u32 = 1;
2036pub const GL_ARB_compressed_texture_pixel_storage: u32 = 1;
2037pub const GL_ARB_compute_shader: u32 = 1;
2038pub const GL_ARB_compute_variable_group_size: u32 = 1;
2039pub const GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB: u32 = 37700;
2040pub const GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB: u32 = 37099;
2041pub const GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB: u32 = 37701;
2042pub const GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB: u32 = 37311;
2043pub const GL_ARB_conditional_render_inverted: u32 = 1;
2044pub const GL_ARB_conservative_depth: u32 = 1;
2045pub const GL_ARB_copy_buffer: u32 = 1;
2046pub const GL_ARB_copy_image: u32 = 1;
2047pub const GL_ARB_cull_distance: u32 = 1;
2048pub const GL_ARB_debug_output: u32 = 1;
2049pub const GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB: u32 = 33346;
2050pub const GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB: u32 = 33347;
2051pub const GL_DEBUG_CALLBACK_FUNCTION_ARB: u32 = 33348;
2052pub const GL_DEBUG_CALLBACK_USER_PARAM_ARB: u32 = 33349;
2053pub const GL_DEBUG_SOURCE_API_ARB: u32 = 33350;
2054pub const GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB: u32 = 33351;
2055pub const GL_DEBUG_SOURCE_SHADER_COMPILER_ARB: u32 = 33352;
2056pub const GL_DEBUG_SOURCE_THIRD_PARTY_ARB: u32 = 33353;
2057pub const GL_DEBUG_SOURCE_APPLICATION_ARB: u32 = 33354;
2058pub const GL_DEBUG_SOURCE_OTHER_ARB: u32 = 33355;
2059pub const GL_DEBUG_TYPE_ERROR_ARB: u32 = 33356;
2060pub const GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB: u32 = 33357;
2061pub const GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB: u32 = 33358;
2062pub const GL_DEBUG_TYPE_PORTABILITY_ARB: u32 = 33359;
2063pub const GL_DEBUG_TYPE_PERFORMANCE_ARB: u32 = 33360;
2064pub const GL_DEBUG_TYPE_OTHER_ARB: u32 = 33361;
2065pub const GL_MAX_DEBUG_MESSAGE_LENGTH_ARB: u32 = 37187;
2066pub const GL_MAX_DEBUG_LOGGED_MESSAGES_ARB: u32 = 37188;
2067pub const GL_DEBUG_LOGGED_MESSAGES_ARB: u32 = 37189;
2068pub const GL_DEBUG_SEVERITY_HIGH_ARB: u32 = 37190;
2069pub const GL_DEBUG_SEVERITY_MEDIUM_ARB: u32 = 37191;
2070pub const GL_DEBUG_SEVERITY_LOW_ARB: u32 = 37192;
2071pub const GL_ARB_depth_buffer_float: u32 = 1;
2072pub const GL_ARB_depth_clamp: u32 = 1;
2073pub const GL_ARB_depth_texture: u32 = 1;
2074pub const GL_DEPTH_COMPONENT16_ARB: u32 = 33189;
2075pub const GL_DEPTH_COMPONENT24_ARB: u32 = 33190;
2076pub const GL_DEPTH_COMPONENT32_ARB: u32 = 33191;
2077pub const GL_TEXTURE_DEPTH_SIZE_ARB: u32 = 34890;
2078pub const GL_DEPTH_TEXTURE_MODE_ARB: u32 = 34891;
2079pub const GL_ARB_derivative_control: u32 = 1;
2080pub const GL_ARB_direct_state_access: u32 = 1;
2081pub const GL_ARB_draw_buffers: u32 = 1;
2082pub const GL_MAX_DRAW_BUFFERS_ARB: u32 = 34852;
2083pub const GL_DRAW_BUFFER0_ARB: u32 = 34853;
2084pub const GL_DRAW_BUFFER1_ARB: u32 = 34854;
2085pub const GL_DRAW_BUFFER2_ARB: u32 = 34855;
2086pub const GL_DRAW_BUFFER3_ARB: u32 = 34856;
2087pub const GL_DRAW_BUFFER4_ARB: u32 = 34857;
2088pub const GL_DRAW_BUFFER5_ARB: u32 = 34858;
2089pub const GL_DRAW_BUFFER6_ARB: u32 = 34859;
2090pub const GL_DRAW_BUFFER7_ARB: u32 = 34860;
2091pub const GL_DRAW_BUFFER8_ARB: u32 = 34861;
2092pub const GL_DRAW_BUFFER9_ARB: u32 = 34862;
2093pub const GL_DRAW_BUFFER10_ARB: u32 = 34863;
2094pub const GL_DRAW_BUFFER11_ARB: u32 = 34864;
2095pub const GL_DRAW_BUFFER12_ARB: u32 = 34865;
2096pub const GL_DRAW_BUFFER13_ARB: u32 = 34866;
2097pub const GL_DRAW_BUFFER14_ARB: u32 = 34867;
2098pub const GL_DRAW_BUFFER15_ARB: u32 = 34868;
2099pub const GL_ARB_draw_buffers_blend: u32 = 1;
2100pub const GL_ARB_draw_elements_base_vertex: u32 = 1;
2101pub const GL_ARB_draw_indirect: u32 = 1;
2102pub const GL_ARB_draw_instanced: u32 = 1;
2103pub const GL_ARB_enhanced_layouts: u32 = 1;
2104pub const GL_ARB_explicit_attrib_location: u32 = 1;
2105pub const GL_ARB_explicit_uniform_location: u32 = 1;
2106pub const GL_ARB_fragment_coord_conventions: u32 = 1;
2107pub const GL_ARB_fragment_layer_viewport: u32 = 1;
2108pub const GL_ARB_fragment_program: u32 = 1;
2109pub const GL_FRAGMENT_PROGRAM_ARB: u32 = 34820;
2110pub const GL_PROGRAM_FORMAT_ASCII_ARB: u32 = 34933;
2111pub const GL_PROGRAM_LENGTH_ARB: u32 = 34343;
2112pub const GL_PROGRAM_FORMAT_ARB: u32 = 34934;
2113pub const GL_PROGRAM_BINDING_ARB: u32 = 34423;
2114pub const GL_PROGRAM_INSTRUCTIONS_ARB: u32 = 34976;
2115pub const GL_MAX_PROGRAM_INSTRUCTIONS_ARB: u32 = 34977;
2116pub const GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB: u32 = 34978;
2117pub const GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB: u32 = 34979;
2118pub const GL_PROGRAM_TEMPORARIES_ARB: u32 = 34980;
2119pub const GL_MAX_PROGRAM_TEMPORARIES_ARB: u32 = 34981;
2120pub const GL_PROGRAM_NATIVE_TEMPORARIES_ARB: u32 = 34982;
2121pub const GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB: u32 = 34983;
2122pub const GL_PROGRAM_PARAMETERS_ARB: u32 = 34984;
2123pub const GL_MAX_PROGRAM_PARAMETERS_ARB: u32 = 34985;
2124pub const GL_PROGRAM_NATIVE_PARAMETERS_ARB: u32 = 34986;
2125pub const GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB: u32 = 34987;
2126pub const GL_PROGRAM_ATTRIBS_ARB: u32 = 34988;
2127pub const GL_MAX_PROGRAM_ATTRIBS_ARB: u32 = 34989;
2128pub const GL_PROGRAM_NATIVE_ATTRIBS_ARB: u32 = 34990;
2129pub const GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB: u32 = 34991;
2130pub const GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB: u32 = 34996;
2131pub const GL_MAX_PROGRAM_ENV_PARAMETERS_ARB: u32 = 34997;
2132pub const GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB: u32 = 34998;
2133pub const GL_PROGRAM_ALU_INSTRUCTIONS_ARB: u32 = 34821;
2134pub const GL_PROGRAM_TEX_INSTRUCTIONS_ARB: u32 = 34822;
2135pub const GL_PROGRAM_TEX_INDIRECTIONS_ARB: u32 = 34823;
2136pub const GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB: u32 = 34824;
2137pub const GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB: u32 = 34825;
2138pub const GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB: u32 = 34826;
2139pub const GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB: u32 = 34827;
2140pub const GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB: u32 = 34828;
2141pub const GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB: u32 = 34829;
2142pub const GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB: u32 = 34830;
2143pub const GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB: u32 = 34831;
2144pub const GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB: u32 = 34832;
2145pub const GL_PROGRAM_STRING_ARB: u32 = 34344;
2146pub const GL_PROGRAM_ERROR_POSITION_ARB: u32 = 34379;
2147pub const GL_CURRENT_MATRIX_ARB: u32 = 34369;
2148pub const GL_TRANSPOSE_CURRENT_MATRIX_ARB: u32 = 34999;
2149pub const GL_CURRENT_MATRIX_STACK_DEPTH_ARB: u32 = 34368;
2150pub const GL_MAX_PROGRAM_MATRICES_ARB: u32 = 34351;
2151pub const GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB: u32 = 34350;
2152pub const GL_MAX_TEXTURE_COORDS_ARB: u32 = 34929;
2153pub const GL_MAX_TEXTURE_IMAGE_UNITS_ARB: u32 = 34930;
2154pub const GL_PROGRAM_ERROR_STRING_ARB: u32 = 34932;
2155pub const GL_MATRIX0_ARB: u32 = 35008;
2156pub const GL_MATRIX1_ARB: u32 = 35009;
2157pub const GL_MATRIX2_ARB: u32 = 35010;
2158pub const GL_MATRIX3_ARB: u32 = 35011;
2159pub const GL_MATRIX4_ARB: u32 = 35012;
2160pub const GL_MATRIX5_ARB: u32 = 35013;
2161pub const GL_MATRIX6_ARB: u32 = 35014;
2162pub const GL_MATRIX7_ARB: u32 = 35015;
2163pub const GL_MATRIX8_ARB: u32 = 35016;
2164pub const GL_MATRIX9_ARB: u32 = 35017;
2165pub const GL_MATRIX10_ARB: u32 = 35018;
2166pub const GL_MATRIX11_ARB: u32 = 35019;
2167pub const GL_MATRIX12_ARB: u32 = 35020;
2168pub const GL_MATRIX13_ARB: u32 = 35021;
2169pub const GL_MATRIX14_ARB: u32 = 35022;
2170pub const GL_MATRIX15_ARB: u32 = 35023;
2171pub const GL_MATRIX16_ARB: u32 = 35024;
2172pub const GL_MATRIX17_ARB: u32 = 35025;
2173pub const GL_MATRIX18_ARB: u32 = 35026;
2174pub const GL_MATRIX19_ARB: u32 = 35027;
2175pub const GL_MATRIX20_ARB: u32 = 35028;
2176pub const GL_MATRIX21_ARB: u32 = 35029;
2177pub const GL_MATRIX22_ARB: u32 = 35030;
2178pub const GL_MATRIX23_ARB: u32 = 35031;
2179pub const GL_MATRIX24_ARB: u32 = 35032;
2180pub const GL_MATRIX25_ARB: u32 = 35033;
2181pub const GL_MATRIX26_ARB: u32 = 35034;
2182pub const GL_MATRIX27_ARB: u32 = 35035;
2183pub const GL_MATRIX28_ARB: u32 = 35036;
2184pub const GL_MATRIX29_ARB: u32 = 35037;
2185pub const GL_MATRIX30_ARB: u32 = 35038;
2186pub const GL_MATRIX31_ARB: u32 = 35039;
2187pub const GL_ARB_fragment_program_shadow: u32 = 1;
2188pub const GL_ARB_fragment_shader: u32 = 1;
2189pub const GL_FRAGMENT_SHADER_ARB: u32 = 35632;
2190pub const GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB: u32 = 35657;
2191pub const GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB: u32 = 35723;
2192pub const GL_ARB_fragment_shader_interlock: u32 = 1;
2193pub const GL_ARB_framebuffer_no_attachments: u32 = 1;
2194pub const GL_ARB_framebuffer_object: u32 = 1;
2195pub const GL_ARB_framebuffer_sRGB: u32 = 1;
2196pub const GL_ARB_geometry_shader4: u32 = 1;
2197pub const GL_LINES_ADJACENCY_ARB: u32 = 10;
2198pub const GL_LINE_STRIP_ADJACENCY_ARB: u32 = 11;
2199pub const GL_TRIANGLES_ADJACENCY_ARB: u32 = 12;
2200pub const GL_TRIANGLE_STRIP_ADJACENCY_ARB: u32 = 13;
2201pub const GL_PROGRAM_POINT_SIZE_ARB: u32 = 34370;
2202pub const GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB: u32 = 35881;
2203pub const GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB: u32 = 36263;
2204pub const GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB: u32 = 36264;
2205pub const GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB: u32 = 36265;
2206pub const GL_GEOMETRY_SHADER_ARB: u32 = 36313;
2207pub const GL_GEOMETRY_VERTICES_OUT_ARB: u32 = 36314;
2208pub const GL_GEOMETRY_INPUT_TYPE_ARB: u32 = 36315;
2209pub const GL_GEOMETRY_OUTPUT_TYPE_ARB: u32 = 36316;
2210pub const GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB: u32 = 36317;
2211pub const GL_MAX_VERTEX_VARYING_COMPONENTS_ARB: u32 = 36318;
2212pub const GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB: u32 = 36319;
2213pub const GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB: u32 = 36320;
2214pub const GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB: u32 = 36321;
2215pub const GL_ARB_get_program_binary: u32 = 1;
2216pub const GL_ARB_get_texture_sub_image: u32 = 1;
2217pub const GL_ARB_gl_spirv: u32 = 1;
2218pub const GL_SHADER_BINARY_FORMAT_SPIR_V_ARB: u32 = 38225;
2219pub const GL_SPIR_V_BINARY_ARB: u32 = 38226;
2220pub const GL_ARB_gpu_shader5: u32 = 1;
2221pub const GL_ARB_gpu_shader_fp64: u32 = 1;
2222pub const GL_ARB_gpu_shader_int64: u32 = 1;
2223pub const GL_INT64_ARB: u32 = 5134;
2224pub const GL_INT64_VEC2_ARB: u32 = 36841;
2225pub const GL_INT64_VEC3_ARB: u32 = 36842;
2226pub const GL_INT64_VEC4_ARB: u32 = 36843;
2227pub const GL_UNSIGNED_INT64_VEC2_ARB: u32 = 36853;
2228pub const GL_UNSIGNED_INT64_VEC3_ARB: u32 = 36854;
2229pub const GL_UNSIGNED_INT64_VEC4_ARB: u32 = 36855;
2230pub const GL_ARB_half_float_pixel: u32 = 1;
2231pub const GL_HALF_FLOAT_ARB: u32 = 5131;
2232pub const GL_ARB_half_float_vertex: u32 = 1;
2233pub const GL_ARB_indirect_parameters: u32 = 1;
2234pub const GL_PARAMETER_BUFFER_ARB: u32 = 33006;
2235pub const GL_PARAMETER_BUFFER_BINDING_ARB: u32 = 33007;
2236pub const GL_ARB_instanced_arrays: u32 = 1;
2237pub const GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB: u32 = 35070;
2238pub const GL_ARB_internalformat_query: u32 = 1;
2239pub const GL_ARB_internalformat_query2: u32 = 1;
2240pub const GL_SRGB_DECODE_ARB: u32 = 33433;
2241pub const GL_VIEW_CLASS_EAC_R11: u32 = 37763;
2242pub const GL_VIEW_CLASS_EAC_RG11: u32 = 37764;
2243pub const GL_VIEW_CLASS_ETC2_RGB: u32 = 37765;
2244pub const GL_VIEW_CLASS_ETC2_RGBA: u32 = 37766;
2245pub const GL_VIEW_CLASS_ETC2_EAC_RGBA: u32 = 37767;
2246pub const GL_VIEW_CLASS_ASTC_4x4_RGBA: u32 = 37768;
2247pub const GL_VIEW_CLASS_ASTC_5x4_RGBA: u32 = 37769;
2248pub const GL_VIEW_CLASS_ASTC_5x5_RGBA: u32 = 37770;
2249pub const GL_VIEW_CLASS_ASTC_6x5_RGBA: u32 = 37771;
2250pub const GL_VIEW_CLASS_ASTC_6x6_RGBA: u32 = 37772;
2251pub const GL_VIEW_CLASS_ASTC_8x5_RGBA: u32 = 37773;
2252pub const GL_VIEW_CLASS_ASTC_8x6_RGBA: u32 = 37774;
2253pub const GL_VIEW_CLASS_ASTC_8x8_RGBA: u32 = 37775;
2254pub const GL_VIEW_CLASS_ASTC_10x5_RGBA: u32 = 37776;
2255pub const GL_VIEW_CLASS_ASTC_10x6_RGBA: u32 = 37777;
2256pub const GL_VIEW_CLASS_ASTC_10x8_RGBA: u32 = 37778;
2257pub const GL_VIEW_CLASS_ASTC_10x10_RGBA: u32 = 37779;
2258pub const GL_VIEW_CLASS_ASTC_12x10_RGBA: u32 = 37780;
2259pub const GL_VIEW_CLASS_ASTC_12x12_RGBA: u32 = 37781;
2260pub const GL_ARB_invalidate_subdata: u32 = 1;
2261pub const GL_ARB_map_buffer_alignment: u32 = 1;
2262pub const GL_ARB_map_buffer_range: u32 = 1;
2263pub const GL_ARB_matrix_palette: u32 = 1;
2264pub const GL_MATRIX_PALETTE_ARB: u32 = 34880;
2265pub const GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB: u32 = 34881;
2266pub const GL_MAX_PALETTE_MATRICES_ARB: u32 = 34882;
2267pub const GL_CURRENT_PALETTE_MATRIX_ARB: u32 = 34883;
2268pub const GL_MATRIX_INDEX_ARRAY_ARB: u32 = 34884;
2269pub const GL_CURRENT_MATRIX_INDEX_ARB: u32 = 34885;
2270pub const GL_MATRIX_INDEX_ARRAY_SIZE_ARB: u32 = 34886;
2271pub const GL_MATRIX_INDEX_ARRAY_TYPE_ARB: u32 = 34887;
2272pub const GL_MATRIX_INDEX_ARRAY_STRIDE_ARB: u32 = 34888;
2273pub const GL_MATRIX_INDEX_ARRAY_POINTER_ARB: u32 = 34889;
2274pub const GL_ARB_multi_bind: u32 = 1;
2275pub const GL_ARB_multi_draw_indirect: u32 = 1;
2276pub const GL_ARB_multisample: u32 = 1;
2277pub const GL_MULTISAMPLE_ARB: u32 = 32925;
2278pub const GL_SAMPLE_ALPHA_TO_COVERAGE_ARB: u32 = 32926;
2279pub const GL_SAMPLE_ALPHA_TO_ONE_ARB: u32 = 32927;
2280pub const GL_SAMPLE_COVERAGE_ARB: u32 = 32928;
2281pub const GL_SAMPLE_BUFFERS_ARB: u32 = 32936;
2282pub const GL_SAMPLES_ARB: u32 = 32937;
2283pub const GL_SAMPLE_COVERAGE_VALUE_ARB: u32 = 32938;
2284pub const GL_SAMPLE_COVERAGE_INVERT_ARB: u32 = 32939;
2285pub const GL_MULTISAMPLE_BIT_ARB: u32 = 536870912;
2286pub const GL_ARB_occlusion_query: u32 = 1;
2287pub const GL_QUERY_COUNTER_BITS_ARB: u32 = 34916;
2288pub const GL_CURRENT_QUERY_ARB: u32 = 34917;
2289pub const GL_QUERY_RESULT_ARB: u32 = 34918;
2290pub const GL_QUERY_RESULT_AVAILABLE_ARB: u32 = 34919;
2291pub const GL_SAMPLES_PASSED_ARB: u32 = 35092;
2292pub const GL_ARB_occlusion_query2: u32 = 1;
2293pub const GL_ARB_parallel_shader_compile: u32 = 1;
2294pub const GL_MAX_SHADER_COMPILER_THREADS_ARB: u32 = 37296;
2295pub const GL_COMPLETION_STATUS_ARB: u32 = 37297;
2296pub const GL_ARB_pipeline_statistics_query: u32 = 1;
2297pub const GL_VERTICES_SUBMITTED_ARB: u32 = 33518;
2298pub const GL_PRIMITIVES_SUBMITTED_ARB: u32 = 33519;
2299pub const GL_VERTEX_SHADER_INVOCATIONS_ARB: u32 = 33520;
2300pub const GL_TESS_CONTROL_SHADER_PATCHES_ARB: u32 = 33521;
2301pub const GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB: u32 = 33522;
2302pub const GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB: u32 = 33523;
2303pub const GL_FRAGMENT_SHADER_INVOCATIONS_ARB: u32 = 33524;
2304pub const GL_COMPUTE_SHADER_INVOCATIONS_ARB: u32 = 33525;
2305pub const GL_CLIPPING_INPUT_PRIMITIVES_ARB: u32 = 33526;
2306pub const GL_CLIPPING_OUTPUT_PRIMITIVES_ARB: u32 = 33527;
2307pub const GL_ARB_pixel_buffer_object: u32 = 1;
2308pub const GL_PIXEL_PACK_BUFFER_ARB: u32 = 35051;
2309pub const GL_PIXEL_UNPACK_BUFFER_ARB: u32 = 35052;
2310pub const GL_PIXEL_PACK_BUFFER_BINDING_ARB: u32 = 35053;
2311pub const GL_PIXEL_UNPACK_BUFFER_BINDING_ARB: u32 = 35055;
2312pub const GL_ARB_point_parameters: u32 = 1;
2313pub const GL_POINT_SIZE_MIN_ARB: u32 = 33062;
2314pub const GL_POINT_SIZE_MAX_ARB: u32 = 33063;
2315pub const GL_POINT_FADE_THRESHOLD_SIZE_ARB: u32 = 33064;
2316pub const GL_POINT_DISTANCE_ATTENUATION_ARB: u32 = 33065;
2317pub const GL_ARB_point_sprite: u32 = 1;
2318pub const GL_POINT_SPRITE_ARB: u32 = 34913;
2319pub const GL_COORD_REPLACE_ARB: u32 = 34914;
2320pub const GL_ARB_polygon_offset_clamp: u32 = 1;
2321pub const GL_ARB_post_depth_coverage: u32 = 1;
2322pub const GL_ARB_program_interface_query: u32 = 1;
2323pub const GL_ARB_provoking_vertex: u32 = 1;
2324pub const GL_ARB_query_buffer_object: u32 = 1;
2325pub const GL_ARB_robust_buffer_access_behavior: u32 = 1;
2326pub const GL_ARB_robustness: u32 = 1;
2327pub const GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB: u32 = 4;
2328pub const GL_LOSE_CONTEXT_ON_RESET_ARB: u32 = 33362;
2329pub const GL_GUILTY_CONTEXT_RESET_ARB: u32 = 33363;
2330pub const GL_INNOCENT_CONTEXT_RESET_ARB: u32 = 33364;
2331pub const GL_UNKNOWN_CONTEXT_RESET_ARB: u32 = 33365;
2332pub const GL_RESET_NOTIFICATION_STRATEGY_ARB: u32 = 33366;
2333pub const GL_NO_RESET_NOTIFICATION_ARB: u32 = 33377;
2334pub const GL_ARB_robustness_isolation: u32 = 1;
2335pub const GL_ARB_sample_locations: u32 = 1;
2336pub const GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB: u32 = 37693;
2337pub const GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB: u32 = 37694;
2338pub const GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB: u32 = 37695;
2339pub const GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB: u32 = 37696;
2340pub const GL_SAMPLE_LOCATION_ARB: u32 = 36432;
2341pub const GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB: u32 = 37697;
2342pub const GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB: u32 = 37698;
2343pub const GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB: u32 = 37699;
2344pub const GL_ARB_sample_shading: u32 = 1;
2345pub const GL_SAMPLE_SHADING_ARB: u32 = 35894;
2346pub const GL_MIN_SAMPLE_SHADING_VALUE_ARB: u32 = 35895;
2347pub const GL_ARB_sampler_objects: u32 = 1;
2348pub const GL_ARB_seamless_cube_map: u32 = 1;
2349pub const GL_ARB_seamless_cubemap_per_texture: u32 = 1;
2350pub const GL_ARB_separate_shader_objects: u32 = 1;
2351pub const GL_ARB_shader_atomic_counter_ops: u32 = 1;
2352pub const GL_ARB_shader_atomic_counters: u32 = 1;
2353pub const GL_ARB_shader_ballot: u32 = 1;
2354pub const GL_ARB_shader_bit_encoding: u32 = 1;
2355pub const GL_ARB_shader_clock: u32 = 1;
2356pub const GL_ARB_shader_draw_parameters: u32 = 1;
2357pub const GL_ARB_shader_group_vote: u32 = 1;
2358pub const GL_ARB_shader_image_load_store: u32 = 1;
2359pub const GL_ARB_shader_image_size: u32 = 1;
2360pub const GL_ARB_shader_objects: u32 = 1;
2361pub const GL_PROGRAM_OBJECT_ARB: u32 = 35648;
2362pub const GL_SHADER_OBJECT_ARB: u32 = 35656;
2363pub const GL_OBJECT_TYPE_ARB: u32 = 35662;
2364pub const GL_OBJECT_SUBTYPE_ARB: u32 = 35663;
2365pub const GL_FLOAT_VEC2_ARB: u32 = 35664;
2366pub const GL_FLOAT_VEC3_ARB: u32 = 35665;
2367pub const GL_FLOAT_VEC4_ARB: u32 = 35666;
2368pub const GL_INT_VEC2_ARB: u32 = 35667;
2369pub const GL_INT_VEC3_ARB: u32 = 35668;
2370pub const GL_INT_VEC4_ARB: u32 = 35669;
2371pub const GL_BOOL_ARB: u32 = 35670;
2372pub const GL_BOOL_VEC2_ARB: u32 = 35671;
2373pub const GL_BOOL_VEC3_ARB: u32 = 35672;
2374pub const GL_BOOL_VEC4_ARB: u32 = 35673;
2375pub const GL_FLOAT_MAT2_ARB: u32 = 35674;
2376pub const GL_FLOAT_MAT3_ARB: u32 = 35675;
2377pub const GL_FLOAT_MAT4_ARB: u32 = 35676;
2378pub const GL_SAMPLER_1D_ARB: u32 = 35677;
2379pub const GL_SAMPLER_2D_ARB: u32 = 35678;
2380pub const GL_SAMPLER_3D_ARB: u32 = 35679;
2381pub const GL_SAMPLER_CUBE_ARB: u32 = 35680;
2382pub const GL_SAMPLER_1D_SHADOW_ARB: u32 = 35681;
2383pub const GL_SAMPLER_2D_SHADOW_ARB: u32 = 35682;
2384pub const GL_SAMPLER_2D_RECT_ARB: u32 = 35683;
2385pub const GL_SAMPLER_2D_RECT_SHADOW_ARB: u32 = 35684;
2386pub const GL_OBJECT_DELETE_STATUS_ARB: u32 = 35712;
2387pub const GL_OBJECT_COMPILE_STATUS_ARB: u32 = 35713;
2388pub const GL_OBJECT_LINK_STATUS_ARB: u32 = 35714;
2389pub const GL_OBJECT_VALIDATE_STATUS_ARB: u32 = 35715;
2390pub const GL_OBJECT_INFO_LOG_LENGTH_ARB: u32 = 35716;
2391pub const GL_OBJECT_ATTACHED_OBJECTS_ARB: u32 = 35717;
2392pub const GL_OBJECT_ACTIVE_UNIFORMS_ARB: u32 = 35718;
2393pub const GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB: u32 = 35719;
2394pub const GL_OBJECT_SHADER_SOURCE_LENGTH_ARB: u32 = 35720;
2395pub const GL_ARB_shader_precision: u32 = 1;
2396pub const GL_ARB_shader_stencil_export: u32 = 1;
2397pub const GL_ARB_shader_storage_buffer_object: u32 = 1;
2398pub const GL_ARB_shader_subroutine: u32 = 1;
2399pub const GL_ARB_shader_texture_image_samples: u32 = 1;
2400pub const GL_ARB_shader_texture_lod: u32 = 1;
2401pub const GL_ARB_shader_viewport_layer_array: u32 = 1;
2402pub const GL_ARB_shading_language_100: u32 = 1;
2403pub const GL_SHADING_LANGUAGE_VERSION_ARB: u32 = 35724;
2404pub const GL_ARB_shading_language_420pack: u32 = 1;
2405pub const GL_ARB_shading_language_include: u32 = 1;
2406pub const GL_SHADER_INCLUDE_ARB: u32 = 36270;
2407pub const GL_NAMED_STRING_LENGTH_ARB: u32 = 36329;
2408pub const GL_NAMED_STRING_TYPE_ARB: u32 = 36330;
2409pub const GL_ARB_shading_language_packing: u32 = 1;
2410pub const GL_ARB_shadow: u32 = 1;
2411pub const GL_TEXTURE_COMPARE_MODE_ARB: u32 = 34892;
2412pub const GL_TEXTURE_COMPARE_FUNC_ARB: u32 = 34893;
2413pub const GL_COMPARE_R_TO_TEXTURE_ARB: u32 = 34894;
2414pub const GL_ARB_shadow_ambient: u32 = 1;
2415pub const GL_TEXTURE_COMPARE_FAIL_VALUE_ARB: u32 = 32959;
2416pub const GL_ARB_sparse_buffer: u32 = 1;
2417pub const GL_SPARSE_STORAGE_BIT_ARB: u32 = 1024;
2418pub const GL_SPARSE_BUFFER_PAGE_SIZE_ARB: u32 = 33528;
2419pub const GL_ARB_sparse_texture: u32 = 1;
2420pub const GL_TEXTURE_SPARSE_ARB: u32 = 37286;
2421pub const GL_VIRTUAL_PAGE_SIZE_INDEX_ARB: u32 = 37287;
2422pub const GL_NUM_SPARSE_LEVELS_ARB: u32 = 37290;
2423pub const GL_NUM_VIRTUAL_PAGE_SIZES_ARB: u32 = 37288;
2424pub const GL_VIRTUAL_PAGE_SIZE_X_ARB: u32 = 37269;
2425pub const GL_VIRTUAL_PAGE_SIZE_Y_ARB: u32 = 37270;
2426pub const GL_VIRTUAL_PAGE_SIZE_Z_ARB: u32 = 37271;
2427pub const GL_MAX_SPARSE_TEXTURE_SIZE_ARB: u32 = 37272;
2428pub const GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB: u32 = 37273;
2429pub const GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB: u32 = 37274;
2430pub const GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB: u32 = 37289;
2431pub const GL_ARB_sparse_texture2: u32 = 1;
2432pub const GL_ARB_sparse_texture_clamp: u32 = 1;
2433pub const GL_ARB_spirv_extensions: u32 = 1;
2434pub const GL_ARB_stencil_texturing: u32 = 1;
2435pub const GL_ARB_sync: u32 = 1;
2436pub const GL_ARB_tessellation_shader: u32 = 1;
2437pub const GL_ARB_texture_barrier: u32 = 1;
2438pub const GL_ARB_texture_border_clamp: u32 = 1;
2439pub const GL_CLAMP_TO_BORDER_ARB: u32 = 33069;
2440pub const GL_ARB_texture_buffer_object: u32 = 1;
2441pub const GL_TEXTURE_BUFFER_ARB: u32 = 35882;
2442pub const GL_MAX_TEXTURE_BUFFER_SIZE_ARB: u32 = 35883;
2443pub const GL_TEXTURE_BINDING_BUFFER_ARB: u32 = 35884;
2444pub const GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB: u32 = 35885;
2445pub const GL_TEXTURE_BUFFER_FORMAT_ARB: u32 = 35886;
2446pub const GL_ARB_texture_buffer_object_rgb32: u32 = 1;
2447pub const GL_ARB_texture_buffer_range: u32 = 1;
2448pub const GL_ARB_texture_compression: u32 = 1;
2449pub const GL_COMPRESSED_ALPHA_ARB: u32 = 34025;
2450pub const GL_COMPRESSED_LUMINANCE_ARB: u32 = 34026;
2451pub const GL_COMPRESSED_LUMINANCE_ALPHA_ARB: u32 = 34027;
2452pub const GL_COMPRESSED_INTENSITY_ARB: u32 = 34028;
2453pub const GL_COMPRESSED_RGB_ARB: u32 = 34029;
2454pub const GL_COMPRESSED_RGBA_ARB: u32 = 34030;
2455pub const GL_TEXTURE_COMPRESSION_HINT_ARB: u32 = 34031;
2456pub const GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB: u32 = 34464;
2457pub const GL_TEXTURE_COMPRESSED_ARB: u32 = 34465;
2458pub const GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB: u32 = 34466;
2459pub const GL_COMPRESSED_TEXTURE_FORMATS_ARB: u32 = 34467;
2460pub const GL_ARB_texture_compression_bptc: u32 = 1;
2461pub const GL_COMPRESSED_RGBA_BPTC_UNORM_ARB: u32 = 36492;
2462pub const GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB: u32 = 36493;
2463pub const GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB: u32 = 36494;
2464pub const GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB: u32 = 36495;
2465pub const GL_ARB_texture_compression_rgtc: u32 = 1;
2466pub const GL_ARB_texture_cube_map: u32 = 1;
2467pub const GL_NORMAL_MAP_ARB: u32 = 34065;
2468pub const GL_REFLECTION_MAP_ARB: u32 = 34066;
2469pub const GL_TEXTURE_CUBE_MAP_ARB: u32 = 34067;
2470pub const GL_TEXTURE_BINDING_CUBE_MAP_ARB: u32 = 34068;
2471pub const GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB: u32 = 34069;
2472pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB: u32 = 34070;
2473pub const GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB: u32 = 34071;
2474pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB: u32 = 34072;
2475pub const GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB: u32 = 34073;
2476pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB: u32 = 34074;
2477pub const GL_PROXY_TEXTURE_CUBE_MAP_ARB: u32 = 34075;
2478pub const GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB: u32 = 34076;
2479pub const GL_ARB_texture_cube_map_array: u32 = 1;
2480pub const GL_TEXTURE_CUBE_MAP_ARRAY_ARB: u32 = 36873;
2481pub const GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB: u32 = 36874;
2482pub const GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB: u32 = 36875;
2483pub const GL_SAMPLER_CUBE_MAP_ARRAY_ARB: u32 = 36876;
2484pub const GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB: u32 = 36877;
2485pub const GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB: u32 = 36878;
2486pub const GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB: u32 = 36879;
2487pub const GL_ARB_texture_env_add: u32 = 1;
2488pub const GL_ARB_texture_env_combine: u32 = 1;
2489pub const GL_COMBINE_ARB: u32 = 34160;
2490pub const GL_COMBINE_RGB_ARB: u32 = 34161;
2491pub const GL_COMBINE_ALPHA_ARB: u32 = 34162;
2492pub const GL_SOURCE0_RGB_ARB: u32 = 34176;
2493pub const GL_SOURCE1_RGB_ARB: u32 = 34177;
2494pub const GL_SOURCE2_RGB_ARB: u32 = 34178;
2495pub const GL_SOURCE0_ALPHA_ARB: u32 = 34184;
2496pub const GL_SOURCE1_ALPHA_ARB: u32 = 34185;
2497pub const GL_SOURCE2_ALPHA_ARB: u32 = 34186;
2498pub const GL_OPERAND0_RGB_ARB: u32 = 34192;
2499pub const GL_OPERAND1_RGB_ARB: u32 = 34193;
2500pub const GL_OPERAND2_RGB_ARB: u32 = 34194;
2501pub const GL_OPERAND0_ALPHA_ARB: u32 = 34200;
2502pub const GL_OPERAND1_ALPHA_ARB: u32 = 34201;
2503pub const GL_OPERAND2_ALPHA_ARB: u32 = 34202;
2504pub const GL_RGB_SCALE_ARB: u32 = 34163;
2505pub const GL_ADD_SIGNED_ARB: u32 = 34164;
2506pub const GL_INTERPOLATE_ARB: u32 = 34165;
2507pub const GL_SUBTRACT_ARB: u32 = 34023;
2508pub const GL_CONSTANT_ARB: u32 = 34166;
2509pub const GL_PRIMARY_COLOR_ARB: u32 = 34167;
2510pub const GL_PREVIOUS_ARB: u32 = 34168;
2511pub const GL_ARB_texture_env_crossbar: u32 = 1;
2512pub const GL_ARB_texture_env_dot3: u32 = 1;
2513pub const GL_DOT3_RGB_ARB: u32 = 34478;
2514pub const GL_DOT3_RGBA_ARB: u32 = 34479;
2515pub const GL_ARB_texture_filter_anisotropic: u32 = 1;
2516pub const GL_ARB_texture_filter_minmax: u32 = 1;
2517pub const GL_TEXTURE_REDUCTION_MODE_ARB: u32 = 37734;
2518pub const GL_WEIGHTED_AVERAGE_ARB: u32 = 37735;
2519pub const GL_ARB_texture_float: u32 = 1;
2520pub const GL_TEXTURE_RED_TYPE_ARB: u32 = 35856;
2521pub const GL_TEXTURE_GREEN_TYPE_ARB: u32 = 35857;
2522pub const GL_TEXTURE_BLUE_TYPE_ARB: u32 = 35858;
2523pub const GL_TEXTURE_ALPHA_TYPE_ARB: u32 = 35859;
2524pub const GL_TEXTURE_LUMINANCE_TYPE_ARB: u32 = 35860;
2525pub const GL_TEXTURE_INTENSITY_TYPE_ARB: u32 = 35861;
2526pub const GL_TEXTURE_DEPTH_TYPE_ARB: u32 = 35862;
2527pub const GL_UNSIGNED_NORMALIZED_ARB: u32 = 35863;
2528pub const GL_RGBA32F_ARB: u32 = 34836;
2529pub const GL_RGB32F_ARB: u32 = 34837;
2530pub const GL_ALPHA32F_ARB: u32 = 34838;
2531pub const GL_INTENSITY32F_ARB: u32 = 34839;
2532pub const GL_LUMINANCE32F_ARB: u32 = 34840;
2533pub const GL_LUMINANCE_ALPHA32F_ARB: u32 = 34841;
2534pub const GL_RGBA16F_ARB: u32 = 34842;
2535pub const GL_RGB16F_ARB: u32 = 34843;
2536pub const GL_ALPHA16F_ARB: u32 = 34844;
2537pub const GL_INTENSITY16F_ARB: u32 = 34845;
2538pub const GL_LUMINANCE16F_ARB: u32 = 34846;
2539pub const GL_LUMINANCE_ALPHA16F_ARB: u32 = 34847;
2540pub const GL_ARB_texture_gather: u32 = 1;
2541pub const GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB: u32 = 36446;
2542pub const GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB: u32 = 36447;
2543pub const GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB: u32 = 36767;
2544pub const GL_ARB_texture_mirror_clamp_to_edge: u32 = 1;
2545pub const GL_ARB_texture_mirrored_repeat: u32 = 1;
2546pub const GL_MIRRORED_REPEAT_ARB: u32 = 33648;
2547pub const GL_ARB_texture_multisample: u32 = 1;
2548pub const GL_ARB_texture_non_power_of_two: u32 = 1;
2549pub const GL_ARB_texture_query_levels: u32 = 1;
2550pub const GL_ARB_texture_query_lod: u32 = 1;
2551pub const GL_ARB_texture_rectangle: u32 = 1;
2552pub const GL_TEXTURE_RECTANGLE_ARB: u32 = 34037;
2553pub const GL_TEXTURE_BINDING_RECTANGLE_ARB: u32 = 34038;
2554pub const GL_PROXY_TEXTURE_RECTANGLE_ARB: u32 = 34039;
2555pub const GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB: u32 = 34040;
2556pub const GL_ARB_texture_rg: u32 = 1;
2557pub const GL_ARB_texture_rgb10_a2ui: u32 = 1;
2558pub const GL_ARB_texture_stencil8: u32 = 1;
2559pub const GL_ARB_texture_storage: u32 = 1;
2560pub const GL_ARB_texture_storage_multisample: u32 = 1;
2561pub const GL_ARB_texture_swizzle: u32 = 1;
2562pub const GL_ARB_texture_view: u32 = 1;
2563pub const GL_ARB_timer_query: u32 = 1;
2564pub const GL_ARB_transform_feedback2: u32 = 1;
2565pub const GL_ARB_transform_feedback3: u32 = 1;
2566pub const GL_ARB_transform_feedback_instanced: u32 = 1;
2567pub const GL_ARB_transform_feedback_overflow_query: u32 = 1;
2568pub const GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB: u32 = 33516;
2569pub const GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB: u32 = 33517;
2570pub const GL_ARB_transpose_matrix: u32 = 1;
2571pub const GL_TRANSPOSE_MODELVIEW_MATRIX_ARB: u32 = 34019;
2572pub const GL_TRANSPOSE_PROJECTION_MATRIX_ARB: u32 = 34020;
2573pub const GL_TRANSPOSE_TEXTURE_MATRIX_ARB: u32 = 34021;
2574pub const GL_TRANSPOSE_COLOR_MATRIX_ARB: u32 = 34022;
2575pub const GL_ARB_uniform_buffer_object: u32 = 1;
2576pub const GL_ARB_vertex_array_bgra: u32 = 1;
2577pub const GL_ARB_vertex_array_object: u32 = 1;
2578pub const GL_ARB_vertex_attrib_64bit: u32 = 1;
2579pub const GL_ARB_vertex_attrib_binding: u32 = 1;
2580pub const GL_ARB_vertex_blend: u32 = 1;
2581pub const GL_MAX_VERTEX_UNITS_ARB: u32 = 34468;
2582pub const GL_ACTIVE_VERTEX_UNITS_ARB: u32 = 34469;
2583pub const GL_WEIGHT_SUM_UNITY_ARB: u32 = 34470;
2584pub const GL_VERTEX_BLEND_ARB: u32 = 34471;
2585pub const GL_CURRENT_WEIGHT_ARB: u32 = 34472;
2586pub const GL_WEIGHT_ARRAY_TYPE_ARB: u32 = 34473;
2587pub const GL_WEIGHT_ARRAY_STRIDE_ARB: u32 = 34474;
2588pub const GL_WEIGHT_ARRAY_SIZE_ARB: u32 = 34475;
2589pub const GL_WEIGHT_ARRAY_POINTER_ARB: u32 = 34476;
2590pub const GL_WEIGHT_ARRAY_ARB: u32 = 34477;
2591pub const GL_MODELVIEW0_ARB: u32 = 5888;
2592pub const GL_MODELVIEW1_ARB: u32 = 34058;
2593pub const GL_MODELVIEW2_ARB: u32 = 34594;
2594pub const GL_MODELVIEW3_ARB: u32 = 34595;
2595pub const GL_MODELVIEW4_ARB: u32 = 34596;
2596pub const GL_MODELVIEW5_ARB: u32 = 34597;
2597pub const GL_MODELVIEW6_ARB: u32 = 34598;
2598pub const GL_MODELVIEW7_ARB: u32 = 34599;
2599pub const GL_MODELVIEW8_ARB: u32 = 34600;
2600pub const GL_MODELVIEW9_ARB: u32 = 34601;
2601pub const GL_MODELVIEW10_ARB: u32 = 34602;
2602pub const GL_MODELVIEW11_ARB: u32 = 34603;
2603pub const GL_MODELVIEW12_ARB: u32 = 34604;
2604pub const GL_MODELVIEW13_ARB: u32 = 34605;
2605pub const GL_MODELVIEW14_ARB: u32 = 34606;
2606pub const GL_MODELVIEW15_ARB: u32 = 34607;
2607pub const GL_MODELVIEW16_ARB: u32 = 34608;
2608pub const GL_MODELVIEW17_ARB: u32 = 34609;
2609pub const GL_MODELVIEW18_ARB: u32 = 34610;
2610pub const GL_MODELVIEW19_ARB: u32 = 34611;
2611pub const GL_MODELVIEW20_ARB: u32 = 34612;
2612pub const GL_MODELVIEW21_ARB: u32 = 34613;
2613pub const GL_MODELVIEW22_ARB: u32 = 34614;
2614pub const GL_MODELVIEW23_ARB: u32 = 34615;
2615pub const GL_MODELVIEW24_ARB: u32 = 34616;
2616pub const GL_MODELVIEW25_ARB: u32 = 34617;
2617pub const GL_MODELVIEW26_ARB: u32 = 34618;
2618pub const GL_MODELVIEW27_ARB: u32 = 34619;
2619pub const GL_MODELVIEW28_ARB: u32 = 34620;
2620pub const GL_MODELVIEW29_ARB: u32 = 34621;
2621pub const GL_MODELVIEW30_ARB: u32 = 34622;
2622pub const GL_MODELVIEW31_ARB: u32 = 34623;
2623pub const GL_ARB_vertex_buffer_object: u32 = 1;
2624pub const GL_BUFFER_SIZE_ARB: u32 = 34660;
2625pub const GL_BUFFER_USAGE_ARB: u32 = 34661;
2626pub const GL_ARRAY_BUFFER_ARB: u32 = 34962;
2627pub const GL_ELEMENT_ARRAY_BUFFER_ARB: u32 = 34963;
2628pub const GL_ARRAY_BUFFER_BINDING_ARB: u32 = 34964;
2629pub const GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB: u32 = 34965;
2630pub const GL_VERTEX_ARRAY_BUFFER_BINDING_ARB: u32 = 34966;
2631pub const GL_NORMAL_ARRAY_BUFFER_BINDING_ARB: u32 = 34967;
2632pub const GL_COLOR_ARRAY_BUFFER_BINDING_ARB: u32 = 34968;
2633pub const GL_INDEX_ARRAY_BUFFER_BINDING_ARB: u32 = 34969;
2634pub const GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB: u32 = 34970;
2635pub const GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB: u32 = 34971;
2636pub const GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB: u32 = 34972;
2637pub const GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB: u32 = 34973;
2638pub const GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB: u32 = 34974;
2639pub const GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB: u32 = 34975;
2640pub const GL_READ_ONLY_ARB: u32 = 35000;
2641pub const GL_WRITE_ONLY_ARB: u32 = 35001;
2642pub const GL_READ_WRITE_ARB: u32 = 35002;
2643pub const GL_BUFFER_ACCESS_ARB: u32 = 35003;
2644pub const GL_BUFFER_MAPPED_ARB: u32 = 35004;
2645pub const GL_BUFFER_MAP_POINTER_ARB: u32 = 35005;
2646pub const GL_STREAM_DRAW_ARB: u32 = 35040;
2647pub const GL_STREAM_READ_ARB: u32 = 35041;
2648pub const GL_STREAM_COPY_ARB: u32 = 35042;
2649pub const GL_STATIC_DRAW_ARB: u32 = 35044;
2650pub const GL_STATIC_READ_ARB: u32 = 35045;
2651pub const GL_STATIC_COPY_ARB: u32 = 35046;
2652pub const GL_DYNAMIC_DRAW_ARB: u32 = 35048;
2653pub const GL_DYNAMIC_READ_ARB: u32 = 35049;
2654pub const GL_DYNAMIC_COPY_ARB: u32 = 35050;
2655pub const GL_ARB_vertex_program: u32 = 1;
2656pub const GL_COLOR_SUM_ARB: u32 = 33880;
2657pub const GL_VERTEX_PROGRAM_ARB: u32 = 34336;
2658pub const GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB: u32 = 34338;
2659pub const GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB: u32 = 34339;
2660pub const GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB: u32 = 34340;
2661pub const GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB: u32 = 34341;
2662pub const GL_CURRENT_VERTEX_ATTRIB_ARB: u32 = 34342;
2663pub const GL_VERTEX_PROGRAM_POINT_SIZE_ARB: u32 = 34370;
2664pub const GL_VERTEX_PROGRAM_TWO_SIDE_ARB: u32 = 34371;
2665pub const GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB: u32 = 34373;
2666pub const GL_MAX_VERTEX_ATTRIBS_ARB: u32 = 34921;
2667pub const GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB: u32 = 34922;
2668pub const GL_PROGRAM_ADDRESS_REGISTERS_ARB: u32 = 34992;
2669pub const GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB: u32 = 34993;
2670pub const GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB: u32 = 34994;
2671pub const GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB: u32 = 34995;
2672pub const GL_ARB_vertex_shader: u32 = 1;
2673pub const GL_VERTEX_SHADER_ARB: u32 = 35633;
2674pub const GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB: u32 = 35658;
2675pub const GL_MAX_VARYING_FLOATS_ARB: u32 = 35659;
2676pub const GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB: u32 = 35660;
2677pub const GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB: u32 = 35661;
2678pub const GL_OBJECT_ACTIVE_ATTRIBUTES_ARB: u32 = 35721;
2679pub const GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB: u32 = 35722;
2680pub const GL_ARB_vertex_type_10f_11f_11f_rev: u32 = 1;
2681pub const GL_ARB_vertex_type_2_10_10_10_rev: u32 = 1;
2682pub const GL_ARB_viewport_array: u32 = 1;
2683pub const GL_ARB_window_pos: u32 = 1;
2684pub const GL_KHR_blend_equation_advanced: u32 = 1;
2685pub const GL_MULTIPLY_KHR: u32 = 37524;
2686pub const GL_SCREEN_KHR: u32 = 37525;
2687pub const GL_OVERLAY_KHR: u32 = 37526;
2688pub const GL_DARKEN_KHR: u32 = 37527;
2689pub const GL_LIGHTEN_KHR: u32 = 37528;
2690pub const GL_COLORDODGE_KHR: u32 = 37529;
2691pub const GL_COLORBURN_KHR: u32 = 37530;
2692pub const GL_HARDLIGHT_KHR: u32 = 37531;
2693pub const GL_SOFTLIGHT_KHR: u32 = 37532;
2694pub const GL_DIFFERENCE_KHR: u32 = 37534;
2695pub const GL_EXCLUSION_KHR: u32 = 37536;
2696pub const GL_HSL_HUE_KHR: u32 = 37549;
2697pub const GL_HSL_SATURATION_KHR: u32 = 37550;
2698pub const GL_HSL_COLOR_KHR: u32 = 37551;
2699pub const GL_HSL_LUMINOSITY_KHR: u32 = 37552;
2700pub const GL_KHR_blend_equation_advanced_coherent: u32 = 1;
2701pub const GL_BLEND_ADVANCED_COHERENT_KHR: u32 = 37509;
2702pub const GL_KHR_context_flush_control: u32 = 1;
2703pub const GL_KHR_debug: u32 = 1;
2704pub const GL_KHR_no_error: u32 = 1;
2705pub const GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR: u32 = 8;
2706pub const GL_KHR_parallel_shader_compile: u32 = 1;
2707pub const GL_MAX_SHADER_COMPILER_THREADS_KHR: u32 = 37296;
2708pub const GL_COMPLETION_STATUS_KHR: u32 = 37297;
2709pub const GL_KHR_robust_buffer_access_behavior: u32 = 1;
2710pub const GL_KHR_robustness: u32 = 1;
2711pub const GL_CONTEXT_ROBUST_ACCESS: u32 = 37107;
2712pub const GL_KHR_shader_subgroup: u32 = 1;
2713pub const GL_SUBGROUP_SIZE_KHR: u32 = 38194;
2714pub const GL_SUBGROUP_SUPPORTED_STAGES_KHR: u32 = 38195;
2715pub const GL_SUBGROUP_SUPPORTED_FEATURES_KHR: u32 = 38196;
2716pub const GL_SUBGROUP_QUAD_ALL_STAGES_KHR: u32 = 38197;
2717pub const GL_SUBGROUP_FEATURE_BASIC_BIT_KHR: u32 = 1;
2718pub const GL_SUBGROUP_FEATURE_VOTE_BIT_KHR: u32 = 2;
2719pub const GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR: u32 = 4;
2720pub const GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR: u32 = 8;
2721pub const GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR: u32 = 16;
2722pub const GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR: u32 = 32;
2723pub const GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR: u32 = 64;
2724pub const GL_SUBGROUP_FEATURE_QUAD_BIT_KHR: u32 = 128;
2725pub const GL_KHR_texture_compression_astc_hdr: u32 = 1;
2726pub const GL_COMPRESSED_RGBA_ASTC_4x4_KHR: u32 = 37808;
2727pub const GL_COMPRESSED_RGBA_ASTC_5x4_KHR: u32 = 37809;
2728pub const GL_COMPRESSED_RGBA_ASTC_5x5_KHR: u32 = 37810;
2729pub const GL_COMPRESSED_RGBA_ASTC_6x5_KHR: u32 = 37811;
2730pub const GL_COMPRESSED_RGBA_ASTC_6x6_KHR: u32 = 37812;
2731pub const GL_COMPRESSED_RGBA_ASTC_8x5_KHR: u32 = 37813;
2732pub const GL_COMPRESSED_RGBA_ASTC_8x6_KHR: u32 = 37814;
2733pub const GL_COMPRESSED_RGBA_ASTC_8x8_KHR: u32 = 37815;
2734pub const GL_COMPRESSED_RGBA_ASTC_10x5_KHR: u32 = 37816;
2735pub const GL_COMPRESSED_RGBA_ASTC_10x6_KHR: u32 = 37817;
2736pub const GL_COMPRESSED_RGBA_ASTC_10x8_KHR: u32 = 37818;
2737pub const GL_COMPRESSED_RGBA_ASTC_10x10_KHR: u32 = 37819;
2738pub const GL_COMPRESSED_RGBA_ASTC_12x10_KHR: u32 = 37820;
2739pub const GL_COMPRESSED_RGBA_ASTC_12x12_KHR: u32 = 37821;
2740pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR: u32 = 37840;
2741pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR: u32 = 37841;
2742pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR: u32 = 37842;
2743pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR: u32 = 37843;
2744pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR: u32 = 37844;
2745pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR: u32 = 37845;
2746pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR: u32 = 37846;
2747pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR: u32 = 37847;
2748pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR: u32 = 37848;
2749pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR: u32 = 37849;
2750pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR: u32 = 37850;
2751pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR: u32 = 37851;
2752pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR: u32 = 37852;
2753pub const GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR: u32 = 37853;
2754pub const GL_KHR_texture_compression_astc_ldr: u32 = 1;
2755pub const GL_KHR_texture_compression_astc_sliced_3d: u32 = 1;
2756pub const GL_OES_byte_coordinates: u32 = 1;
2757pub const GL_OES_compressed_paletted_texture: u32 = 1;
2758pub const GL_PALETTE4_RGB8_OES: u32 = 35728;
2759pub const GL_PALETTE4_RGBA8_OES: u32 = 35729;
2760pub const GL_PALETTE4_R5_G6_B5_OES: u32 = 35730;
2761pub const GL_PALETTE4_RGBA4_OES: u32 = 35731;
2762pub const GL_PALETTE4_RGB5_A1_OES: u32 = 35732;
2763pub const GL_PALETTE8_RGB8_OES: u32 = 35733;
2764pub const GL_PALETTE8_RGBA8_OES: u32 = 35734;
2765pub const GL_PALETTE8_R5_G6_B5_OES: u32 = 35735;
2766pub const GL_PALETTE8_RGBA4_OES: u32 = 35736;
2767pub const GL_PALETTE8_RGB5_A1_OES: u32 = 35737;
2768pub const GL_OES_fixed_point: u32 = 1;
2769pub const GL_FIXED_OES: u32 = 5132;
2770pub const GL_OES_query_matrix: u32 = 1;
2771pub const GL_OES_read_format: u32 = 1;
2772pub const GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: u32 = 35738;
2773pub const GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: u32 = 35739;
2774pub const GL_OES_single_precision: u32 = 1;
2775pub const GL_3DFX_multisample: u32 = 1;
2776pub const GL_MULTISAMPLE_3DFX: u32 = 34482;
2777pub const GL_SAMPLE_BUFFERS_3DFX: u32 = 34483;
2778pub const GL_SAMPLES_3DFX: u32 = 34484;
2779pub const GL_MULTISAMPLE_BIT_3DFX: u32 = 536870912;
2780pub const GL_3DFX_tbuffer: u32 = 1;
2781pub const GL_3DFX_texture_compression_FXT1: u32 = 1;
2782pub const GL_COMPRESSED_RGB_FXT1_3DFX: u32 = 34480;
2783pub const GL_COMPRESSED_RGBA_FXT1_3DFX: u32 = 34481;
2784pub const GL_AMD_blend_minmax_factor: u32 = 1;
2785pub const GL_FACTOR_MIN_AMD: u32 = 36892;
2786pub const GL_FACTOR_MAX_AMD: u32 = 36893;
2787pub const GL_AMD_conservative_depth: u32 = 1;
2788pub const GL_AMD_debug_output: u32 = 1;
2789pub const GL_MAX_DEBUG_MESSAGE_LENGTH_AMD: u32 = 37187;
2790pub const GL_MAX_DEBUG_LOGGED_MESSAGES_AMD: u32 = 37188;
2791pub const GL_DEBUG_LOGGED_MESSAGES_AMD: u32 = 37189;
2792pub const GL_DEBUG_SEVERITY_HIGH_AMD: u32 = 37190;
2793pub const GL_DEBUG_SEVERITY_MEDIUM_AMD: u32 = 37191;
2794pub const GL_DEBUG_SEVERITY_LOW_AMD: u32 = 37192;
2795pub const GL_DEBUG_CATEGORY_API_ERROR_AMD: u32 = 37193;
2796pub const GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD: u32 = 37194;
2797pub const GL_DEBUG_CATEGORY_DEPRECATION_AMD: u32 = 37195;
2798pub const GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD: u32 = 37196;
2799pub const GL_DEBUG_CATEGORY_PERFORMANCE_AMD: u32 = 37197;
2800pub const GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD: u32 = 37198;
2801pub const GL_DEBUG_CATEGORY_APPLICATION_AMD: u32 = 37199;
2802pub const GL_DEBUG_CATEGORY_OTHER_AMD: u32 = 37200;
2803pub const GL_AMD_depth_clamp_separate: u32 = 1;
2804pub const GL_DEPTH_CLAMP_NEAR_AMD: u32 = 36894;
2805pub const GL_DEPTH_CLAMP_FAR_AMD: u32 = 36895;
2806pub const GL_AMD_draw_buffers_blend: u32 = 1;
2807pub const GL_AMD_framebuffer_multisample_advanced: u32 = 1;
2808pub const GL_RENDERBUFFER_STORAGE_SAMPLES_AMD: u32 = 37298;
2809pub const GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD: u32 = 37299;
2810pub const GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD: u32 = 37300;
2811pub const GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD: u32 = 37301;
2812pub const GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD: u32 = 37302;
2813pub const GL_SUPPORTED_MULTISAMPLE_MODES_AMD: u32 = 37303;
2814pub const GL_AMD_framebuffer_sample_positions: u32 = 1;
2815pub const GL_SUBSAMPLE_DISTANCE_AMD: u32 = 34879;
2816pub const GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD: u32 = 37294;
2817pub const GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD: u32 = 37295;
2818pub const GL_ALL_PIXELS_AMD: u32 = 4294967295;
2819pub const GL_AMD_gcn_shader: u32 = 1;
2820pub const GL_AMD_gpu_shader_half_float: u32 = 1;
2821pub const GL_FLOAT16_NV: u32 = 36856;
2822pub const GL_FLOAT16_VEC2_NV: u32 = 36857;
2823pub const GL_FLOAT16_VEC3_NV: u32 = 36858;
2824pub const GL_FLOAT16_VEC4_NV: u32 = 36859;
2825pub const GL_FLOAT16_MAT2_AMD: u32 = 37317;
2826pub const GL_FLOAT16_MAT3_AMD: u32 = 37318;
2827pub const GL_FLOAT16_MAT4_AMD: u32 = 37319;
2828pub const GL_FLOAT16_MAT2x3_AMD: u32 = 37320;
2829pub const GL_FLOAT16_MAT2x4_AMD: u32 = 37321;
2830pub const GL_FLOAT16_MAT3x2_AMD: u32 = 37322;
2831pub const GL_FLOAT16_MAT3x4_AMD: u32 = 37323;
2832pub const GL_FLOAT16_MAT4x2_AMD: u32 = 37324;
2833pub const GL_FLOAT16_MAT4x3_AMD: u32 = 37325;
2834pub const GL_AMD_gpu_shader_int16: u32 = 1;
2835pub const GL_AMD_gpu_shader_int64: u32 = 1;
2836pub const GL_INT64_NV: u32 = 5134;
2837pub const GL_UNSIGNED_INT64_NV: u32 = 5135;
2838pub const GL_INT8_NV: u32 = 36832;
2839pub const GL_INT8_VEC2_NV: u32 = 36833;
2840pub const GL_INT8_VEC3_NV: u32 = 36834;
2841pub const GL_INT8_VEC4_NV: u32 = 36835;
2842pub const GL_INT16_NV: u32 = 36836;
2843pub const GL_INT16_VEC2_NV: u32 = 36837;
2844pub const GL_INT16_VEC3_NV: u32 = 36838;
2845pub const GL_INT16_VEC4_NV: u32 = 36839;
2846pub const GL_INT64_VEC2_NV: u32 = 36841;
2847pub const GL_INT64_VEC3_NV: u32 = 36842;
2848pub const GL_INT64_VEC4_NV: u32 = 36843;
2849pub const GL_UNSIGNED_INT8_NV: u32 = 36844;
2850pub const GL_UNSIGNED_INT8_VEC2_NV: u32 = 36845;
2851pub const GL_UNSIGNED_INT8_VEC3_NV: u32 = 36846;
2852pub const GL_UNSIGNED_INT8_VEC4_NV: u32 = 36847;
2853pub const GL_UNSIGNED_INT16_NV: u32 = 36848;
2854pub const GL_UNSIGNED_INT16_VEC2_NV: u32 = 36849;
2855pub const GL_UNSIGNED_INT16_VEC3_NV: u32 = 36850;
2856pub const GL_UNSIGNED_INT16_VEC4_NV: u32 = 36851;
2857pub const GL_UNSIGNED_INT64_VEC2_NV: u32 = 36853;
2858pub const GL_UNSIGNED_INT64_VEC3_NV: u32 = 36854;
2859pub const GL_UNSIGNED_INT64_VEC4_NV: u32 = 36855;
2860pub const GL_AMD_interleaved_elements: u32 = 1;
2861pub const GL_VERTEX_ELEMENT_SWIZZLE_AMD: u32 = 37284;
2862pub const GL_VERTEX_ID_SWIZZLE_AMD: u32 = 37285;
2863pub const GL_AMD_multi_draw_indirect: u32 = 1;
2864pub const GL_AMD_name_gen_delete: u32 = 1;
2865pub const GL_DATA_BUFFER_AMD: u32 = 37201;
2866pub const GL_PERFORMANCE_MONITOR_AMD: u32 = 37202;
2867pub const GL_QUERY_OBJECT_AMD: u32 = 37203;
2868pub const GL_VERTEX_ARRAY_OBJECT_AMD: u32 = 37204;
2869pub const GL_SAMPLER_OBJECT_AMD: u32 = 37205;
2870pub const GL_AMD_occlusion_query_event: u32 = 1;
2871pub const GL_OCCLUSION_QUERY_EVENT_MASK_AMD: u32 = 34639;
2872pub const GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD: u32 = 1;
2873pub const GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD: u32 = 2;
2874pub const GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD: u32 = 4;
2875pub const GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD: u32 = 8;
2876pub const GL_QUERY_ALL_EVENT_BITS_AMD: u32 = 4294967295;
2877pub const GL_AMD_performance_monitor: u32 = 1;
2878pub const GL_COUNTER_TYPE_AMD: u32 = 35776;
2879pub const GL_COUNTER_RANGE_AMD: u32 = 35777;
2880pub const GL_UNSIGNED_INT64_AMD: u32 = 35778;
2881pub const GL_PERCENTAGE_AMD: u32 = 35779;
2882pub const GL_PERFMON_RESULT_AVAILABLE_AMD: u32 = 35780;
2883pub const GL_PERFMON_RESULT_SIZE_AMD: u32 = 35781;
2884pub const GL_PERFMON_RESULT_AMD: u32 = 35782;
2885pub const GL_AMD_pinned_memory: u32 = 1;
2886pub const GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD: u32 = 37216;
2887pub const GL_AMD_query_buffer_object: u32 = 1;
2888pub const GL_QUERY_BUFFER_AMD: u32 = 37266;
2889pub const GL_QUERY_BUFFER_BINDING_AMD: u32 = 37267;
2890pub const GL_QUERY_RESULT_NO_WAIT_AMD: u32 = 37268;
2891pub const GL_AMD_sample_positions: u32 = 1;
2892pub const GL_AMD_seamless_cubemap_per_texture: u32 = 1;
2893pub const GL_AMD_shader_atomic_counter_ops: u32 = 1;
2894pub const GL_AMD_shader_ballot: u32 = 1;
2895pub const GL_AMD_shader_explicit_vertex_parameter: u32 = 1;
2896pub const GL_AMD_shader_gpu_shader_half_float_fetch: u32 = 1;
2897pub const GL_AMD_shader_image_load_store_lod: u32 = 1;
2898pub const GL_AMD_shader_stencil_export: u32 = 1;
2899pub const GL_AMD_shader_trinary_minmax: u32 = 1;
2900pub const GL_AMD_sparse_texture: u32 = 1;
2901pub const GL_VIRTUAL_PAGE_SIZE_X_AMD: u32 = 37269;
2902pub const GL_VIRTUAL_PAGE_SIZE_Y_AMD: u32 = 37270;
2903pub const GL_VIRTUAL_PAGE_SIZE_Z_AMD: u32 = 37271;
2904pub const GL_MAX_SPARSE_TEXTURE_SIZE_AMD: u32 = 37272;
2905pub const GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD: u32 = 37273;
2906pub const GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS: u32 = 37274;
2907pub const GL_MIN_SPARSE_LEVEL_AMD: u32 = 37275;
2908pub const GL_MIN_LOD_WARNING_AMD: u32 = 37276;
2909pub const GL_TEXTURE_STORAGE_SPARSE_BIT_AMD: u32 = 1;
2910pub const GL_AMD_stencil_operation_extended: u32 = 1;
2911pub const GL_SET_AMD: u32 = 34634;
2912pub const GL_REPLACE_VALUE_AMD: u32 = 34635;
2913pub const GL_STENCIL_OP_VALUE_AMD: u32 = 34636;
2914pub const GL_STENCIL_BACK_OP_VALUE_AMD: u32 = 34637;
2915pub const GL_AMD_texture_gather_bias_lod: u32 = 1;
2916pub const GL_AMD_texture_texture4: u32 = 1;
2917pub const GL_AMD_transform_feedback3_lines_triangles: u32 = 1;
2918pub const GL_AMD_transform_feedback4: u32 = 1;
2919pub const GL_STREAM_RASTERIZATION_AMD: u32 = 37280;
2920pub const GL_AMD_vertex_shader_layer: u32 = 1;
2921pub const GL_AMD_vertex_shader_tessellator: u32 = 1;
2922pub const GL_SAMPLER_BUFFER_AMD: u32 = 36865;
2923pub const GL_INT_SAMPLER_BUFFER_AMD: u32 = 36866;
2924pub const GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD: u32 = 36867;
2925pub const GL_TESSELLATION_MODE_AMD: u32 = 36868;
2926pub const GL_TESSELLATION_FACTOR_AMD: u32 = 36869;
2927pub const GL_DISCRETE_AMD: u32 = 36870;
2928pub const GL_CONTINUOUS_AMD: u32 = 36871;
2929pub const GL_AMD_vertex_shader_viewport_index: u32 = 1;
2930pub const GL_APPLE_aux_depth_stencil: u32 = 1;
2931pub const GL_AUX_DEPTH_STENCIL_APPLE: u32 = 35348;
2932pub const GL_APPLE_client_storage: u32 = 1;
2933pub const GL_UNPACK_CLIENT_STORAGE_APPLE: u32 = 34226;
2934pub const GL_APPLE_element_array: u32 = 1;
2935pub const GL_ELEMENT_ARRAY_APPLE: u32 = 35340;
2936pub const GL_ELEMENT_ARRAY_TYPE_APPLE: u32 = 35341;
2937pub const GL_ELEMENT_ARRAY_POINTER_APPLE: u32 = 35342;
2938pub const GL_APPLE_fence: u32 = 1;
2939pub const GL_DRAW_PIXELS_APPLE: u32 = 35338;
2940pub const GL_FENCE_APPLE: u32 = 35339;
2941pub const GL_APPLE_float_pixels: u32 = 1;
2942pub const GL_HALF_APPLE: u32 = 5131;
2943pub const GL_RGBA_FLOAT32_APPLE: u32 = 34836;
2944pub const GL_RGB_FLOAT32_APPLE: u32 = 34837;
2945pub const GL_ALPHA_FLOAT32_APPLE: u32 = 34838;
2946pub const GL_INTENSITY_FLOAT32_APPLE: u32 = 34839;
2947pub const GL_LUMINANCE_FLOAT32_APPLE: u32 = 34840;
2948pub const GL_LUMINANCE_ALPHA_FLOAT32_APPLE: u32 = 34841;
2949pub const GL_RGBA_FLOAT16_APPLE: u32 = 34842;
2950pub const GL_RGB_FLOAT16_APPLE: u32 = 34843;
2951pub const GL_ALPHA_FLOAT16_APPLE: u32 = 34844;
2952pub const GL_INTENSITY_FLOAT16_APPLE: u32 = 34845;
2953pub const GL_LUMINANCE_FLOAT16_APPLE: u32 = 34846;
2954pub const GL_LUMINANCE_ALPHA_FLOAT16_APPLE: u32 = 34847;
2955pub const GL_COLOR_FLOAT_APPLE: u32 = 35343;
2956pub const GL_APPLE_flush_buffer_range: u32 = 1;
2957pub const GL_BUFFER_SERIALIZED_MODIFY_APPLE: u32 = 35346;
2958pub const GL_BUFFER_FLUSHING_UNMAP_APPLE: u32 = 35347;
2959pub const GL_APPLE_object_purgeable: u32 = 1;
2960pub const GL_BUFFER_OBJECT_APPLE: u32 = 34227;
2961pub const GL_RELEASED_APPLE: u32 = 35353;
2962pub const GL_VOLATILE_APPLE: u32 = 35354;
2963pub const GL_RETAINED_APPLE: u32 = 35355;
2964pub const GL_UNDEFINED_APPLE: u32 = 35356;
2965pub const GL_PURGEABLE_APPLE: u32 = 35357;
2966pub const GL_APPLE_rgb_422: u32 = 1;
2967pub const GL_RGB_422_APPLE: u32 = 35359;
2968pub const GL_UNSIGNED_SHORT_8_8_APPLE: u32 = 34234;
2969pub const GL_UNSIGNED_SHORT_8_8_REV_APPLE: u32 = 34235;
2970pub const GL_RGB_RAW_422_APPLE: u32 = 35409;
2971pub const GL_APPLE_row_bytes: u32 = 1;
2972pub const GL_PACK_ROW_BYTES_APPLE: u32 = 35349;
2973pub const GL_UNPACK_ROW_BYTES_APPLE: u32 = 35350;
2974pub const GL_APPLE_specular_vector: u32 = 1;
2975pub const GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE: u32 = 34224;
2976pub const GL_APPLE_texture_range: u32 = 1;
2977pub const GL_TEXTURE_RANGE_LENGTH_APPLE: u32 = 34231;
2978pub const GL_TEXTURE_RANGE_POINTER_APPLE: u32 = 34232;
2979pub const GL_TEXTURE_STORAGE_HINT_APPLE: u32 = 34236;
2980pub const GL_STORAGE_PRIVATE_APPLE: u32 = 34237;
2981pub const GL_STORAGE_CACHED_APPLE: u32 = 34238;
2982pub const GL_STORAGE_SHARED_APPLE: u32 = 34239;
2983pub const GL_APPLE_transform_hint: u32 = 1;
2984pub const GL_TRANSFORM_HINT_APPLE: u32 = 34225;
2985pub const GL_APPLE_vertex_array_object: u32 = 1;
2986pub const GL_VERTEX_ARRAY_BINDING_APPLE: u32 = 34229;
2987pub const GL_APPLE_vertex_array_range: u32 = 1;
2988pub const GL_VERTEX_ARRAY_RANGE_APPLE: u32 = 34077;
2989pub const GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE: u32 = 34078;
2990pub const GL_VERTEX_ARRAY_STORAGE_HINT_APPLE: u32 = 34079;
2991pub const GL_VERTEX_ARRAY_RANGE_POINTER_APPLE: u32 = 34081;
2992pub const GL_STORAGE_CLIENT_APPLE: u32 = 34228;
2993pub const GL_APPLE_vertex_program_evaluators: u32 = 1;
2994pub const GL_VERTEX_ATTRIB_MAP1_APPLE: u32 = 35328;
2995pub const GL_VERTEX_ATTRIB_MAP2_APPLE: u32 = 35329;
2996pub const GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE: u32 = 35330;
2997pub const GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE: u32 = 35331;
2998pub const GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE: u32 = 35332;
2999pub const GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE: u32 = 35333;
3000pub const GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE: u32 = 35334;
3001pub const GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE: u32 = 35335;
3002pub const GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE: u32 = 35336;
3003pub const GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE: u32 = 35337;
3004pub const GL_APPLE_ycbcr_422: u32 = 1;
3005pub const GL_YCBCR_422_APPLE: u32 = 34233;
3006pub const GL_ATI_draw_buffers: u32 = 1;
3007pub const GL_MAX_DRAW_BUFFERS_ATI: u32 = 34852;
3008pub const GL_DRAW_BUFFER0_ATI: u32 = 34853;
3009pub const GL_DRAW_BUFFER1_ATI: u32 = 34854;
3010pub const GL_DRAW_BUFFER2_ATI: u32 = 34855;
3011pub const GL_DRAW_BUFFER3_ATI: u32 = 34856;
3012pub const GL_DRAW_BUFFER4_ATI: u32 = 34857;
3013pub const GL_DRAW_BUFFER5_ATI: u32 = 34858;
3014pub const GL_DRAW_BUFFER6_ATI: u32 = 34859;
3015pub const GL_DRAW_BUFFER7_ATI: u32 = 34860;
3016pub const GL_DRAW_BUFFER8_ATI: u32 = 34861;
3017pub const GL_DRAW_BUFFER9_ATI: u32 = 34862;
3018pub const GL_DRAW_BUFFER10_ATI: u32 = 34863;
3019pub const GL_DRAW_BUFFER11_ATI: u32 = 34864;
3020pub const GL_DRAW_BUFFER12_ATI: u32 = 34865;
3021pub const GL_DRAW_BUFFER13_ATI: u32 = 34866;
3022pub const GL_DRAW_BUFFER14_ATI: u32 = 34867;
3023pub const GL_DRAW_BUFFER15_ATI: u32 = 34868;
3024pub const GL_ATI_element_array: u32 = 1;
3025pub const GL_ELEMENT_ARRAY_ATI: u32 = 34664;
3026pub const GL_ELEMENT_ARRAY_TYPE_ATI: u32 = 34665;
3027pub const GL_ELEMENT_ARRAY_POINTER_ATI: u32 = 34666;
3028pub const GL_ATI_envmap_bumpmap: u32 = 1;
3029pub const GL_BUMP_ROT_MATRIX_ATI: u32 = 34677;
3030pub const GL_BUMP_ROT_MATRIX_SIZE_ATI: u32 = 34678;
3031pub const GL_BUMP_NUM_TEX_UNITS_ATI: u32 = 34679;
3032pub const GL_BUMP_TEX_UNITS_ATI: u32 = 34680;
3033pub const GL_DUDV_ATI: u32 = 34681;
3034pub const GL_DU8DV8_ATI: u32 = 34682;
3035pub const GL_BUMP_ENVMAP_ATI: u32 = 34683;
3036pub const GL_BUMP_TARGET_ATI: u32 = 34684;
3037pub const GL_ATI_fragment_shader: u32 = 1;
3038pub const GL_FRAGMENT_SHADER_ATI: u32 = 35104;
3039pub const GL_REG_0_ATI: u32 = 35105;
3040pub const GL_REG_1_ATI: u32 = 35106;
3041pub const GL_REG_2_ATI: u32 = 35107;
3042pub const GL_REG_3_ATI: u32 = 35108;
3043pub const GL_REG_4_ATI: u32 = 35109;
3044pub const GL_REG_5_ATI: u32 = 35110;
3045pub const GL_REG_6_ATI: u32 = 35111;
3046pub const GL_REG_7_ATI: u32 = 35112;
3047pub const GL_REG_8_ATI: u32 = 35113;
3048pub const GL_REG_9_ATI: u32 = 35114;
3049pub const GL_REG_10_ATI: u32 = 35115;
3050pub const GL_REG_11_ATI: u32 = 35116;
3051pub const GL_REG_12_ATI: u32 = 35117;
3052pub const GL_REG_13_ATI: u32 = 35118;
3053pub const GL_REG_14_ATI: u32 = 35119;
3054pub const GL_REG_15_ATI: u32 = 35120;
3055pub const GL_REG_16_ATI: u32 = 35121;
3056pub const GL_REG_17_ATI: u32 = 35122;
3057pub const GL_REG_18_ATI: u32 = 35123;
3058pub const GL_REG_19_ATI: u32 = 35124;
3059pub const GL_REG_20_ATI: u32 = 35125;
3060pub const GL_REG_21_ATI: u32 = 35126;
3061pub const GL_REG_22_ATI: u32 = 35127;
3062pub const GL_REG_23_ATI: u32 = 35128;
3063pub const GL_REG_24_ATI: u32 = 35129;
3064pub const GL_REG_25_ATI: u32 = 35130;
3065pub const GL_REG_26_ATI: u32 = 35131;
3066pub const GL_REG_27_ATI: u32 = 35132;
3067pub const GL_REG_28_ATI: u32 = 35133;
3068pub const GL_REG_29_ATI: u32 = 35134;
3069pub const GL_REG_30_ATI: u32 = 35135;
3070pub const GL_REG_31_ATI: u32 = 35136;
3071pub const GL_CON_0_ATI: u32 = 35137;
3072pub const GL_CON_1_ATI: u32 = 35138;
3073pub const GL_CON_2_ATI: u32 = 35139;
3074pub const GL_CON_3_ATI: u32 = 35140;
3075pub const GL_CON_4_ATI: u32 = 35141;
3076pub const GL_CON_5_ATI: u32 = 35142;
3077pub const GL_CON_6_ATI: u32 = 35143;
3078pub const GL_CON_7_ATI: u32 = 35144;
3079pub const GL_CON_8_ATI: u32 = 35145;
3080pub const GL_CON_9_ATI: u32 = 35146;
3081pub const GL_CON_10_ATI: u32 = 35147;
3082pub const GL_CON_11_ATI: u32 = 35148;
3083pub const GL_CON_12_ATI: u32 = 35149;
3084pub const GL_CON_13_ATI: u32 = 35150;
3085pub const GL_CON_14_ATI: u32 = 35151;
3086pub const GL_CON_15_ATI: u32 = 35152;
3087pub const GL_CON_16_ATI: u32 = 35153;
3088pub const GL_CON_17_ATI: u32 = 35154;
3089pub const GL_CON_18_ATI: u32 = 35155;
3090pub const GL_CON_19_ATI: u32 = 35156;
3091pub const GL_CON_20_ATI: u32 = 35157;
3092pub const GL_CON_21_ATI: u32 = 35158;
3093pub const GL_CON_22_ATI: u32 = 35159;
3094pub const GL_CON_23_ATI: u32 = 35160;
3095pub const GL_CON_24_ATI: u32 = 35161;
3096pub const GL_CON_25_ATI: u32 = 35162;
3097pub const GL_CON_26_ATI: u32 = 35163;
3098pub const GL_CON_27_ATI: u32 = 35164;
3099pub const GL_CON_28_ATI: u32 = 35165;
3100pub const GL_CON_29_ATI: u32 = 35166;
3101pub const GL_CON_30_ATI: u32 = 35167;
3102pub const GL_CON_31_ATI: u32 = 35168;
3103pub const GL_MOV_ATI: u32 = 35169;
3104pub const GL_ADD_ATI: u32 = 35171;
3105pub const GL_MUL_ATI: u32 = 35172;
3106pub const GL_SUB_ATI: u32 = 35173;
3107pub const GL_DOT3_ATI: u32 = 35174;
3108pub const GL_DOT4_ATI: u32 = 35175;
3109pub const GL_MAD_ATI: u32 = 35176;
3110pub const GL_LERP_ATI: u32 = 35177;
3111pub const GL_CND_ATI: u32 = 35178;
3112pub const GL_CND0_ATI: u32 = 35179;
3113pub const GL_DOT2_ADD_ATI: u32 = 35180;
3114pub const GL_SECONDARY_INTERPOLATOR_ATI: u32 = 35181;
3115pub const GL_NUM_FRAGMENT_REGISTERS_ATI: u32 = 35182;
3116pub const GL_NUM_FRAGMENT_CONSTANTS_ATI: u32 = 35183;
3117pub const GL_NUM_PASSES_ATI: u32 = 35184;
3118pub const GL_NUM_INSTRUCTIONS_PER_PASS_ATI: u32 = 35185;
3119pub const GL_NUM_INSTRUCTIONS_TOTAL_ATI: u32 = 35186;
3120pub const GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI: u32 = 35187;
3121pub const GL_NUM_LOOPBACK_COMPONENTS_ATI: u32 = 35188;
3122pub const GL_COLOR_ALPHA_PAIRING_ATI: u32 = 35189;
3123pub const GL_SWIZZLE_STR_ATI: u32 = 35190;
3124pub const GL_SWIZZLE_STQ_ATI: u32 = 35191;
3125pub const GL_SWIZZLE_STR_DR_ATI: u32 = 35192;
3126pub const GL_SWIZZLE_STQ_DQ_ATI: u32 = 35193;
3127pub const GL_SWIZZLE_STRQ_ATI: u32 = 35194;
3128pub const GL_SWIZZLE_STRQ_DQ_ATI: u32 = 35195;
3129pub const GL_RED_BIT_ATI: u32 = 1;
3130pub const GL_GREEN_BIT_ATI: u32 = 2;
3131pub const GL_BLUE_BIT_ATI: u32 = 4;
3132pub const GL_2X_BIT_ATI: u32 = 1;
3133pub const GL_4X_BIT_ATI: u32 = 2;
3134pub const GL_8X_BIT_ATI: u32 = 4;
3135pub const GL_HALF_BIT_ATI: u32 = 8;
3136pub const GL_QUARTER_BIT_ATI: u32 = 16;
3137pub const GL_EIGHTH_BIT_ATI: u32 = 32;
3138pub const GL_SATURATE_BIT_ATI: u32 = 64;
3139pub const GL_COMP_BIT_ATI: u32 = 2;
3140pub const GL_NEGATE_BIT_ATI: u32 = 4;
3141pub const GL_BIAS_BIT_ATI: u32 = 8;
3142pub const GL_ATI_map_object_buffer: u32 = 1;
3143pub const GL_ATI_meminfo: u32 = 1;
3144pub const GL_VBO_FREE_MEMORY_ATI: u32 = 34811;
3145pub const GL_TEXTURE_FREE_MEMORY_ATI: u32 = 34812;
3146pub const GL_RENDERBUFFER_FREE_MEMORY_ATI: u32 = 34813;
3147pub const GL_ATI_pixel_format_float: u32 = 1;
3148pub const GL_RGBA_FLOAT_MODE_ATI: u32 = 34848;
3149pub const GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI: u32 = 34869;
3150pub const GL_ATI_pn_triangles: u32 = 1;
3151pub const GL_PN_TRIANGLES_ATI: u32 = 34800;
3152pub const GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI: u32 = 34801;
3153pub const GL_PN_TRIANGLES_POINT_MODE_ATI: u32 = 34802;
3154pub const GL_PN_TRIANGLES_NORMAL_MODE_ATI: u32 = 34803;
3155pub const GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI: u32 = 34804;
3156pub const GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI: u32 = 34805;
3157pub const GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI: u32 = 34806;
3158pub const GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI: u32 = 34807;
3159pub const GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI: u32 = 34808;
3160pub const GL_ATI_separate_stencil: u32 = 1;
3161pub const GL_STENCIL_BACK_FUNC_ATI: u32 = 34816;
3162pub const GL_STENCIL_BACK_FAIL_ATI: u32 = 34817;
3163pub const GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI: u32 = 34818;
3164pub const GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI: u32 = 34819;
3165pub const GL_ATI_text_fragment_shader: u32 = 1;
3166pub const GL_TEXT_FRAGMENT_SHADER_ATI: u32 = 33280;
3167pub const GL_ATI_texture_env_combine3: u32 = 1;
3168pub const GL_MODULATE_ADD_ATI: u32 = 34628;
3169pub const GL_MODULATE_SIGNED_ADD_ATI: u32 = 34629;
3170pub const GL_MODULATE_SUBTRACT_ATI: u32 = 34630;
3171pub const GL_ATI_texture_float: u32 = 1;
3172pub const GL_RGBA_FLOAT32_ATI: u32 = 34836;
3173pub const GL_RGB_FLOAT32_ATI: u32 = 34837;
3174pub const GL_ALPHA_FLOAT32_ATI: u32 = 34838;
3175pub const GL_INTENSITY_FLOAT32_ATI: u32 = 34839;
3176pub const GL_LUMINANCE_FLOAT32_ATI: u32 = 34840;
3177pub const GL_LUMINANCE_ALPHA_FLOAT32_ATI: u32 = 34841;
3178pub const GL_RGBA_FLOAT16_ATI: u32 = 34842;
3179pub const GL_RGB_FLOAT16_ATI: u32 = 34843;
3180pub const GL_ALPHA_FLOAT16_ATI: u32 = 34844;
3181pub const GL_INTENSITY_FLOAT16_ATI: u32 = 34845;
3182pub const GL_LUMINANCE_FLOAT16_ATI: u32 = 34846;
3183pub const GL_LUMINANCE_ALPHA_FLOAT16_ATI: u32 = 34847;
3184pub const GL_ATI_texture_mirror_once: u32 = 1;
3185pub const GL_MIRROR_CLAMP_ATI: u32 = 34626;
3186pub const GL_MIRROR_CLAMP_TO_EDGE_ATI: u32 = 34627;
3187pub const GL_ATI_vertex_array_object: u32 = 1;
3188pub const GL_STATIC_ATI: u32 = 34656;
3189pub const GL_DYNAMIC_ATI: u32 = 34657;
3190pub const GL_PRESERVE_ATI: u32 = 34658;
3191pub const GL_DISCARD_ATI: u32 = 34659;
3192pub const GL_OBJECT_BUFFER_SIZE_ATI: u32 = 34660;
3193pub const GL_OBJECT_BUFFER_USAGE_ATI: u32 = 34661;
3194pub const GL_ARRAY_OBJECT_BUFFER_ATI: u32 = 34662;
3195pub const GL_ARRAY_OBJECT_OFFSET_ATI: u32 = 34663;
3196pub const GL_ATI_vertex_attrib_array_object: u32 = 1;
3197pub const GL_ATI_vertex_streams: u32 = 1;
3198pub const GL_MAX_VERTEX_STREAMS_ATI: u32 = 34667;
3199pub const GL_VERTEX_STREAM0_ATI: u32 = 34668;
3200pub const GL_VERTEX_STREAM1_ATI: u32 = 34669;
3201pub const GL_VERTEX_STREAM2_ATI: u32 = 34670;
3202pub const GL_VERTEX_STREAM3_ATI: u32 = 34671;
3203pub const GL_VERTEX_STREAM4_ATI: u32 = 34672;
3204pub const GL_VERTEX_STREAM5_ATI: u32 = 34673;
3205pub const GL_VERTEX_STREAM6_ATI: u32 = 34674;
3206pub const GL_VERTEX_STREAM7_ATI: u32 = 34675;
3207pub const GL_VERTEX_SOURCE_ATI: u32 = 34676;
3208pub const GL_EXT_422_pixels: u32 = 1;
3209pub const GL_422_EXT: u32 = 32972;
3210pub const GL_422_REV_EXT: u32 = 32973;
3211pub const GL_422_AVERAGE_EXT: u32 = 32974;
3212pub const GL_422_REV_AVERAGE_EXT: u32 = 32975;
3213pub const GL_EXT_EGL_image_storage: u32 = 1;
3214pub const GL_EXT_abgr: u32 = 1;
3215pub const GL_ABGR_EXT: u32 = 32768;
3216pub const GL_EXT_bgra: u32 = 1;
3217pub const GL_BGR_EXT: u32 = 32992;
3218pub const GL_BGRA_EXT: u32 = 32993;
3219pub const GL_EXT_bindable_uniform: u32 = 1;
3220pub const GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT: u32 = 36322;
3221pub const GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT: u32 = 36323;
3222pub const GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT: u32 = 36324;
3223pub const GL_MAX_BINDABLE_UNIFORM_SIZE_EXT: u32 = 36333;
3224pub const GL_UNIFORM_BUFFER_EXT: u32 = 36334;
3225pub const GL_UNIFORM_BUFFER_BINDING_EXT: u32 = 36335;
3226pub const GL_EXT_blend_color: u32 = 1;
3227pub const GL_CONSTANT_COLOR_EXT: u32 = 32769;
3228pub const GL_ONE_MINUS_CONSTANT_COLOR_EXT: u32 = 32770;
3229pub const GL_CONSTANT_ALPHA_EXT: u32 = 32771;
3230pub const GL_ONE_MINUS_CONSTANT_ALPHA_EXT: u32 = 32772;
3231pub const GL_BLEND_COLOR_EXT: u32 = 32773;
3232pub const GL_EXT_blend_equation_separate: u32 = 1;
3233pub const GL_BLEND_EQUATION_RGB_EXT: u32 = 32777;
3234pub const GL_BLEND_EQUATION_ALPHA_EXT: u32 = 34877;
3235pub const GL_EXT_blend_func_separate: u32 = 1;
3236pub const GL_BLEND_DST_RGB_EXT: u32 = 32968;
3237pub const GL_BLEND_SRC_RGB_EXT: u32 = 32969;
3238pub const GL_BLEND_DST_ALPHA_EXT: u32 = 32970;
3239pub const GL_BLEND_SRC_ALPHA_EXT: u32 = 32971;
3240pub const GL_EXT_blend_logic_op: u32 = 1;
3241pub const GL_EXT_blend_minmax: u32 = 1;
3242pub const GL_MIN_EXT: u32 = 32775;
3243pub const GL_MAX_EXT: u32 = 32776;
3244pub const GL_FUNC_ADD_EXT: u32 = 32774;
3245pub const GL_BLEND_EQUATION_EXT: u32 = 32777;
3246pub const GL_EXT_blend_subtract: u32 = 1;
3247pub const GL_FUNC_SUBTRACT_EXT: u32 = 32778;
3248pub const GL_FUNC_REVERSE_SUBTRACT_EXT: u32 = 32779;
3249pub const GL_EXT_clip_volume_hint: u32 = 1;
3250pub const GL_CLIP_VOLUME_CLIPPING_HINT_EXT: u32 = 33008;
3251pub const GL_EXT_cmyka: u32 = 1;
3252pub const GL_CMYK_EXT: u32 = 32780;
3253pub const GL_CMYKA_EXT: u32 = 32781;
3254pub const GL_PACK_CMYK_HINT_EXT: u32 = 32782;
3255pub const GL_UNPACK_CMYK_HINT_EXT: u32 = 32783;
3256pub const GL_EXT_color_subtable: u32 = 1;
3257pub const GL_EXT_compiled_vertex_array: u32 = 1;
3258pub const GL_ARRAY_ELEMENT_LOCK_FIRST_EXT: u32 = 33192;
3259pub const GL_ARRAY_ELEMENT_LOCK_COUNT_EXT: u32 = 33193;
3260pub const GL_EXT_convolution: u32 = 1;
3261pub const GL_CONVOLUTION_1D_EXT: u32 = 32784;
3262pub const GL_CONVOLUTION_2D_EXT: u32 = 32785;
3263pub const GL_SEPARABLE_2D_EXT: u32 = 32786;
3264pub const GL_CONVOLUTION_BORDER_MODE_EXT: u32 = 32787;
3265pub const GL_CONVOLUTION_FILTER_SCALE_EXT: u32 = 32788;
3266pub const GL_CONVOLUTION_FILTER_BIAS_EXT: u32 = 32789;
3267pub const GL_REDUCE_EXT: u32 = 32790;
3268pub const GL_CONVOLUTION_FORMAT_EXT: u32 = 32791;
3269pub const GL_CONVOLUTION_WIDTH_EXT: u32 = 32792;
3270pub const GL_CONVOLUTION_HEIGHT_EXT: u32 = 32793;
3271pub const GL_MAX_CONVOLUTION_WIDTH_EXT: u32 = 32794;
3272pub const GL_MAX_CONVOLUTION_HEIGHT_EXT: u32 = 32795;
3273pub const GL_POST_CONVOLUTION_RED_SCALE_EXT: u32 = 32796;
3274pub const GL_POST_CONVOLUTION_GREEN_SCALE_EXT: u32 = 32797;
3275pub const GL_POST_CONVOLUTION_BLUE_SCALE_EXT: u32 = 32798;
3276pub const GL_POST_CONVOLUTION_ALPHA_SCALE_EXT: u32 = 32799;
3277pub const GL_POST_CONVOLUTION_RED_BIAS_EXT: u32 = 32800;
3278pub const GL_POST_CONVOLUTION_GREEN_BIAS_EXT: u32 = 32801;
3279pub const GL_POST_CONVOLUTION_BLUE_BIAS_EXT: u32 = 32802;
3280pub const GL_POST_CONVOLUTION_ALPHA_BIAS_EXT: u32 = 32803;
3281pub const GL_EXT_coordinate_frame: u32 = 1;
3282pub const GL_TANGENT_ARRAY_EXT: u32 = 33849;
3283pub const GL_BINORMAL_ARRAY_EXT: u32 = 33850;
3284pub const GL_CURRENT_TANGENT_EXT: u32 = 33851;
3285pub const GL_CURRENT_BINORMAL_EXT: u32 = 33852;
3286pub const GL_TANGENT_ARRAY_TYPE_EXT: u32 = 33854;
3287pub const GL_TANGENT_ARRAY_STRIDE_EXT: u32 = 33855;
3288pub const GL_BINORMAL_ARRAY_TYPE_EXT: u32 = 33856;
3289pub const GL_BINORMAL_ARRAY_STRIDE_EXT: u32 = 33857;
3290pub const GL_TANGENT_ARRAY_POINTER_EXT: u32 = 33858;
3291pub const GL_BINORMAL_ARRAY_POINTER_EXT: u32 = 33859;
3292pub const GL_MAP1_TANGENT_EXT: u32 = 33860;
3293pub const GL_MAP2_TANGENT_EXT: u32 = 33861;
3294pub const GL_MAP1_BINORMAL_EXT: u32 = 33862;
3295pub const GL_MAP2_BINORMAL_EXT: u32 = 33863;
3296pub const GL_EXT_copy_texture: u32 = 1;
3297pub const GL_EXT_cull_vertex: u32 = 1;
3298pub const GL_CULL_VERTEX_EXT: u32 = 33194;
3299pub const GL_CULL_VERTEX_EYE_POSITION_EXT: u32 = 33195;
3300pub const GL_CULL_VERTEX_OBJECT_POSITION_EXT: u32 = 33196;
3301pub const GL_EXT_debug_label: u32 = 1;
3302pub const GL_PROGRAM_PIPELINE_OBJECT_EXT: u32 = 35407;
3303pub const GL_PROGRAM_OBJECT_EXT: u32 = 35648;
3304pub const GL_SHADER_OBJECT_EXT: u32 = 35656;
3305pub const GL_BUFFER_OBJECT_EXT: u32 = 37201;
3306pub const GL_QUERY_OBJECT_EXT: u32 = 37203;
3307pub const GL_VERTEX_ARRAY_OBJECT_EXT: u32 = 37204;
3308pub const GL_EXT_debug_marker: u32 = 1;
3309pub const GL_EXT_depth_bounds_test: u32 = 1;
3310pub const GL_DEPTH_BOUNDS_TEST_EXT: u32 = 34960;
3311pub const GL_DEPTH_BOUNDS_EXT: u32 = 34961;
3312pub const GL_EXT_direct_state_access: u32 = 1;
3313pub const GL_PROGRAM_MATRIX_EXT: u32 = 36397;
3314pub const GL_TRANSPOSE_PROGRAM_MATRIX_EXT: u32 = 36398;
3315pub const GL_PROGRAM_MATRIX_STACK_DEPTH_EXT: u32 = 36399;
3316pub const GL_EXT_draw_buffers2: u32 = 1;
3317pub const GL_EXT_draw_instanced: u32 = 1;
3318pub const GL_EXT_draw_range_elements: u32 = 1;
3319pub const GL_MAX_ELEMENTS_VERTICES_EXT: u32 = 33000;
3320pub const GL_MAX_ELEMENTS_INDICES_EXT: u32 = 33001;
3321pub const GL_EXT_external_buffer: u32 = 1;
3322pub const GL_EXT_fog_coord: u32 = 1;
3323pub const GL_FOG_COORDINATE_SOURCE_EXT: u32 = 33872;
3324pub const GL_FOG_COORDINATE_EXT: u32 = 33873;
3325pub const GL_FRAGMENT_DEPTH_EXT: u32 = 33874;
3326pub const GL_CURRENT_FOG_COORDINATE_EXT: u32 = 33875;
3327pub const GL_FOG_COORDINATE_ARRAY_TYPE_EXT: u32 = 33876;
3328pub const GL_FOG_COORDINATE_ARRAY_STRIDE_EXT: u32 = 33877;
3329pub const GL_FOG_COORDINATE_ARRAY_POINTER_EXT: u32 = 33878;
3330pub const GL_FOG_COORDINATE_ARRAY_EXT: u32 = 33879;
3331pub const GL_EXT_framebuffer_blit: u32 = 1;
3332pub const GL_READ_FRAMEBUFFER_EXT: u32 = 36008;
3333pub const GL_DRAW_FRAMEBUFFER_EXT: u32 = 36009;
3334pub const GL_DRAW_FRAMEBUFFER_BINDING_EXT: u32 = 36006;
3335pub const GL_READ_FRAMEBUFFER_BINDING_EXT: u32 = 36010;
3336pub const GL_EXT_framebuffer_multisample: u32 = 1;
3337pub const GL_RENDERBUFFER_SAMPLES_EXT: u32 = 36011;
3338pub const GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT: u32 = 36182;
3339pub const GL_MAX_SAMPLES_EXT: u32 = 36183;
3340pub const GL_EXT_framebuffer_multisample_blit_scaled: u32 = 1;
3341pub const GL_SCALED_RESOLVE_FASTEST_EXT: u32 = 37050;
3342pub const GL_SCALED_RESOLVE_NICEST_EXT: u32 = 37051;
3343pub const GL_EXT_framebuffer_object: u32 = 1;
3344pub const GL_INVALID_FRAMEBUFFER_OPERATION_EXT: u32 = 1286;
3345pub const GL_MAX_RENDERBUFFER_SIZE_EXT: u32 = 34024;
3346pub const GL_FRAMEBUFFER_BINDING_EXT: u32 = 36006;
3347pub const GL_RENDERBUFFER_BINDING_EXT: u32 = 36007;
3348pub const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT: u32 = 36048;
3349pub const GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT: u32 = 36049;
3350pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT: u32 = 36050;
3351pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT: u32 = 36051;
3352pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT: u32 = 36052;
3353pub const GL_FRAMEBUFFER_COMPLETE_EXT: u32 = 36053;
3354pub const GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT: u32 = 36054;
3355pub const GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT: u32 = 36055;
3356pub const GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT: u32 = 36057;
3357pub const GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT: u32 = 36058;
3358pub const GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT: u32 = 36059;
3359pub const GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT: u32 = 36060;
3360pub const GL_FRAMEBUFFER_UNSUPPORTED_EXT: u32 = 36061;
3361pub const GL_MAX_COLOR_ATTACHMENTS_EXT: u32 = 36063;
3362pub const GL_COLOR_ATTACHMENT0_EXT: u32 = 36064;
3363pub const GL_COLOR_ATTACHMENT1_EXT: u32 = 36065;
3364pub const GL_COLOR_ATTACHMENT2_EXT: u32 = 36066;
3365pub const GL_COLOR_ATTACHMENT3_EXT: u32 = 36067;
3366pub const GL_COLOR_ATTACHMENT4_EXT: u32 = 36068;
3367pub const GL_COLOR_ATTACHMENT5_EXT: u32 = 36069;
3368pub const GL_COLOR_ATTACHMENT6_EXT: u32 = 36070;
3369pub const GL_COLOR_ATTACHMENT7_EXT: u32 = 36071;
3370pub const GL_COLOR_ATTACHMENT8_EXT: u32 = 36072;
3371pub const GL_COLOR_ATTACHMENT9_EXT: u32 = 36073;
3372pub const GL_COLOR_ATTACHMENT10_EXT: u32 = 36074;
3373pub const GL_COLOR_ATTACHMENT11_EXT: u32 = 36075;
3374pub const GL_COLOR_ATTACHMENT12_EXT: u32 = 36076;
3375pub const GL_COLOR_ATTACHMENT13_EXT: u32 = 36077;
3376pub const GL_COLOR_ATTACHMENT14_EXT: u32 = 36078;
3377pub const GL_COLOR_ATTACHMENT15_EXT: u32 = 36079;
3378pub const GL_DEPTH_ATTACHMENT_EXT: u32 = 36096;
3379pub const GL_STENCIL_ATTACHMENT_EXT: u32 = 36128;
3380pub const GL_FRAMEBUFFER_EXT: u32 = 36160;
3381pub const GL_RENDERBUFFER_EXT: u32 = 36161;
3382pub const GL_RENDERBUFFER_WIDTH_EXT: u32 = 36162;
3383pub const GL_RENDERBUFFER_HEIGHT_EXT: u32 = 36163;
3384pub const GL_RENDERBUFFER_INTERNAL_FORMAT_EXT: u32 = 36164;
3385pub const GL_STENCIL_INDEX1_EXT: u32 = 36166;
3386pub const GL_STENCIL_INDEX4_EXT: u32 = 36167;
3387pub const GL_STENCIL_INDEX8_EXT: u32 = 36168;
3388pub const GL_STENCIL_INDEX16_EXT: u32 = 36169;
3389pub const GL_RENDERBUFFER_RED_SIZE_EXT: u32 = 36176;
3390pub const GL_RENDERBUFFER_GREEN_SIZE_EXT: u32 = 36177;
3391pub const GL_RENDERBUFFER_BLUE_SIZE_EXT: u32 = 36178;
3392pub const GL_RENDERBUFFER_ALPHA_SIZE_EXT: u32 = 36179;
3393pub const GL_RENDERBUFFER_DEPTH_SIZE_EXT: u32 = 36180;
3394pub const GL_RENDERBUFFER_STENCIL_SIZE_EXT: u32 = 36181;
3395pub const GL_EXT_framebuffer_sRGB: u32 = 1;
3396pub const GL_FRAMEBUFFER_SRGB_EXT: u32 = 36281;
3397pub const GL_FRAMEBUFFER_SRGB_CAPABLE_EXT: u32 = 36282;
3398pub const GL_EXT_geometry_shader4: u32 = 1;
3399pub const GL_GEOMETRY_SHADER_EXT: u32 = 36313;
3400pub const GL_GEOMETRY_VERTICES_OUT_EXT: u32 = 36314;
3401pub const GL_GEOMETRY_INPUT_TYPE_EXT: u32 = 36315;
3402pub const GL_GEOMETRY_OUTPUT_TYPE_EXT: u32 = 36316;
3403pub const GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT: u32 = 35881;
3404pub const GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT: u32 = 36317;
3405pub const GL_MAX_VERTEX_VARYING_COMPONENTS_EXT: u32 = 36318;
3406pub const GL_MAX_VARYING_COMPONENTS_EXT: u32 = 35659;
3407pub const GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT: u32 = 36319;
3408pub const GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT: u32 = 36320;
3409pub const GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT: u32 = 36321;
3410pub const GL_LINES_ADJACENCY_EXT: u32 = 10;
3411pub const GL_LINE_STRIP_ADJACENCY_EXT: u32 = 11;
3412pub const GL_TRIANGLES_ADJACENCY_EXT: u32 = 12;
3413pub const GL_TRIANGLE_STRIP_ADJACENCY_EXT: u32 = 13;
3414pub const GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT: u32 = 36264;
3415pub const GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT: u32 = 36265;
3416pub const GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT: u32 = 36263;
3417pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT: u32 = 36052;
3418pub const GL_PROGRAM_POINT_SIZE_EXT: u32 = 34370;
3419pub const GL_EXT_gpu_program_parameters: u32 = 1;
3420pub const GL_EXT_gpu_shader4: u32 = 1;
3421pub const GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT: u32 = 35069;
3422pub const GL_SAMPLER_1D_ARRAY_EXT: u32 = 36288;
3423pub const GL_SAMPLER_2D_ARRAY_EXT: u32 = 36289;
3424pub const GL_SAMPLER_BUFFER_EXT: u32 = 36290;
3425pub const GL_SAMPLER_1D_ARRAY_SHADOW_EXT: u32 = 36291;
3426pub const GL_SAMPLER_2D_ARRAY_SHADOW_EXT: u32 = 36292;
3427pub const GL_SAMPLER_CUBE_SHADOW_EXT: u32 = 36293;
3428pub const GL_UNSIGNED_INT_VEC2_EXT: u32 = 36294;
3429pub const GL_UNSIGNED_INT_VEC3_EXT: u32 = 36295;
3430pub const GL_UNSIGNED_INT_VEC4_EXT: u32 = 36296;
3431pub const GL_INT_SAMPLER_1D_EXT: u32 = 36297;
3432pub const GL_INT_SAMPLER_2D_EXT: u32 = 36298;
3433pub const GL_INT_SAMPLER_3D_EXT: u32 = 36299;
3434pub const GL_INT_SAMPLER_CUBE_EXT: u32 = 36300;
3435pub const GL_INT_SAMPLER_2D_RECT_EXT: u32 = 36301;
3436pub const GL_INT_SAMPLER_1D_ARRAY_EXT: u32 = 36302;
3437pub const GL_INT_SAMPLER_2D_ARRAY_EXT: u32 = 36303;
3438pub const GL_INT_SAMPLER_BUFFER_EXT: u32 = 36304;
3439pub const GL_UNSIGNED_INT_SAMPLER_1D_EXT: u32 = 36305;
3440pub const GL_UNSIGNED_INT_SAMPLER_2D_EXT: u32 = 36306;
3441pub const GL_UNSIGNED_INT_SAMPLER_3D_EXT: u32 = 36307;
3442pub const GL_UNSIGNED_INT_SAMPLER_CUBE_EXT: u32 = 36308;
3443pub const GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT: u32 = 36309;
3444pub const GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT: u32 = 36310;
3445pub const GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT: u32 = 36311;
3446pub const GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT: u32 = 36312;
3447pub const GL_MIN_PROGRAM_TEXEL_OFFSET_EXT: u32 = 35076;
3448pub const GL_MAX_PROGRAM_TEXEL_OFFSET_EXT: u32 = 35077;
3449pub const GL_EXT_histogram: u32 = 1;
3450pub const GL_HISTOGRAM_EXT: u32 = 32804;
3451pub const GL_PROXY_HISTOGRAM_EXT: u32 = 32805;
3452pub const GL_HISTOGRAM_WIDTH_EXT: u32 = 32806;
3453pub const GL_HISTOGRAM_FORMAT_EXT: u32 = 32807;
3454pub const GL_HISTOGRAM_RED_SIZE_EXT: u32 = 32808;
3455pub const GL_HISTOGRAM_GREEN_SIZE_EXT: u32 = 32809;
3456pub const GL_HISTOGRAM_BLUE_SIZE_EXT: u32 = 32810;
3457pub const GL_HISTOGRAM_ALPHA_SIZE_EXT: u32 = 32811;
3458pub const GL_HISTOGRAM_LUMINANCE_SIZE_EXT: u32 = 32812;
3459pub const GL_HISTOGRAM_SINK_EXT: u32 = 32813;
3460pub const GL_MINMAX_EXT: u32 = 32814;
3461pub const GL_MINMAX_FORMAT_EXT: u32 = 32815;
3462pub const GL_MINMAX_SINK_EXT: u32 = 32816;
3463pub const GL_TABLE_TOO_LARGE_EXT: u32 = 32817;
3464pub const GL_EXT_index_array_formats: u32 = 1;
3465pub const GL_IUI_V2F_EXT: u32 = 33197;
3466pub const GL_IUI_V3F_EXT: u32 = 33198;
3467pub const GL_IUI_N3F_V2F_EXT: u32 = 33199;
3468pub const GL_IUI_N3F_V3F_EXT: u32 = 33200;
3469pub const GL_T2F_IUI_V2F_EXT: u32 = 33201;
3470pub const GL_T2F_IUI_V3F_EXT: u32 = 33202;
3471pub const GL_T2F_IUI_N3F_V2F_EXT: u32 = 33203;
3472pub const GL_T2F_IUI_N3F_V3F_EXT: u32 = 33204;
3473pub const GL_EXT_index_func: u32 = 1;
3474pub const GL_INDEX_TEST_EXT: u32 = 33205;
3475pub const GL_INDEX_TEST_FUNC_EXT: u32 = 33206;
3476pub const GL_INDEX_TEST_REF_EXT: u32 = 33207;
3477pub const GL_EXT_index_material: u32 = 1;
3478pub const GL_INDEX_MATERIAL_EXT: u32 = 33208;
3479pub const GL_INDEX_MATERIAL_PARAMETER_EXT: u32 = 33209;
3480pub const GL_INDEX_MATERIAL_FACE_EXT: u32 = 33210;
3481pub const GL_EXT_index_texture: u32 = 1;
3482pub const GL_EXT_light_texture: u32 = 1;
3483pub const GL_FRAGMENT_MATERIAL_EXT: u32 = 33609;
3484pub const GL_FRAGMENT_NORMAL_EXT: u32 = 33610;
3485pub const GL_FRAGMENT_COLOR_EXT: u32 = 33612;
3486pub const GL_ATTENUATION_EXT: u32 = 33613;
3487pub const GL_SHADOW_ATTENUATION_EXT: u32 = 33614;
3488pub const GL_TEXTURE_APPLICATION_MODE_EXT: u32 = 33615;
3489pub const GL_TEXTURE_LIGHT_EXT: u32 = 33616;
3490pub const GL_TEXTURE_MATERIAL_FACE_EXT: u32 = 33617;
3491pub const GL_TEXTURE_MATERIAL_PARAMETER_EXT: u32 = 33618;
3492pub const GL_EXT_memory_object: u32 = 1;
3493pub const GL_TEXTURE_TILING_EXT: u32 = 38272;
3494pub const GL_DEDICATED_MEMORY_OBJECT_EXT: u32 = 38273;
3495pub const GL_PROTECTED_MEMORY_OBJECT_EXT: u32 = 38299;
3496pub const GL_NUM_TILING_TYPES_EXT: u32 = 38274;
3497pub const GL_TILING_TYPES_EXT: u32 = 38275;
3498pub const GL_OPTIMAL_TILING_EXT: u32 = 38276;
3499pub const GL_LINEAR_TILING_EXT: u32 = 38277;
3500pub const GL_NUM_DEVICE_UUIDS_EXT: u32 = 38294;
3501pub const GL_DEVICE_UUID_EXT: u32 = 38295;
3502pub const GL_DRIVER_UUID_EXT: u32 = 38296;
3503pub const GL_UUID_SIZE_EXT: u32 = 16;
3504pub const GL_EXT_memory_object_fd: u32 = 1;
3505pub const GL_HANDLE_TYPE_OPAQUE_FD_EXT: u32 = 38278;
3506pub const GL_EXT_memory_object_win32: u32 = 1;
3507pub const GL_HANDLE_TYPE_OPAQUE_WIN32_EXT: u32 = 38279;
3508pub const GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT: u32 = 38280;
3509pub const GL_DEVICE_LUID_EXT: u32 = 38297;
3510pub const GL_DEVICE_NODE_MASK_EXT: u32 = 38298;
3511pub const GL_LUID_SIZE_EXT: u32 = 8;
3512pub const GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT: u32 = 38281;
3513pub const GL_HANDLE_TYPE_D3D12_RESOURCE_EXT: u32 = 38282;
3514pub const GL_HANDLE_TYPE_D3D11_IMAGE_EXT: u32 = 38283;
3515pub const GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT: u32 = 38284;
3516pub const GL_EXT_misc_attribute: u32 = 1;
3517pub const GL_EXT_multi_draw_arrays: u32 = 1;
3518pub const GL_EXT_multisample: u32 = 1;
3519pub const GL_MULTISAMPLE_EXT: u32 = 32925;
3520pub const GL_SAMPLE_ALPHA_TO_MASK_EXT: u32 = 32926;
3521pub const GL_SAMPLE_ALPHA_TO_ONE_EXT: u32 = 32927;
3522pub const GL_SAMPLE_MASK_EXT: u32 = 32928;
3523pub const GL_1PASS_EXT: u32 = 32929;
3524pub const GL_2PASS_0_EXT: u32 = 32930;
3525pub const GL_2PASS_1_EXT: u32 = 32931;
3526pub const GL_4PASS_0_EXT: u32 = 32932;
3527pub const GL_4PASS_1_EXT: u32 = 32933;
3528pub const GL_4PASS_2_EXT: u32 = 32934;
3529pub const GL_4PASS_3_EXT: u32 = 32935;
3530pub const GL_SAMPLE_BUFFERS_EXT: u32 = 32936;
3531pub const GL_SAMPLES_EXT: u32 = 32937;
3532pub const GL_SAMPLE_MASK_VALUE_EXT: u32 = 32938;
3533pub const GL_SAMPLE_MASK_INVERT_EXT: u32 = 32939;
3534pub const GL_SAMPLE_PATTERN_EXT: u32 = 32940;
3535pub const GL_MULTISAMPLE_BIT_EXT: u32 = 536870912;
3536pub const GL_EXT_multiview_tessellation_geometry_shader: u32 = 1;
3537pub const GL_EXT_multiview_texture_multisample: u32 = 1;
3538pub const GL_EXT_multiview_timer_query: u32 = 1;
3539pub const GL_EXT_packed_depth_stencil: u32 = 1;
3540pub const GL_DEPTH_STENCIL_EXT: u32 = 34041;
3541pub const GL_UNSIGNED_INT_24_8_EXT: u32 = 34042;
3542pub const GL_DEPTH24_STENCIL8_EXT: u32 = 35056;
3543pub const GL_TEXTURE_STENCIL_SIZE_EXT: u32 = 35057;
3544pub const GL_EXT_packed_float: u32 = 1;
3545pub const GL_R11F_G11F_B10F_EXT: u32 = 35898;
3546pub const GL_UNSIGNED_INT_10F_11F_11F_REV_EXT: u32 = 35899;
3547pub const GL_RGBA_SIGNED_COMPONENTS_EXT: u32 = 35900;
3548pub const GL_EXT_packed_pixels: u32 = 1;
3549pub const GL_UNSIGNED_BYTE_3_3_2_EXT: u32 = 32818;
3550pub const GL_UNSIGNED_SHORT_4_4_4_4_EXT: u32 = 32819;
3551pub const GL_UNSIGNED_SHORT_5_5_5_1_EXT: u32 = 32820;
3552pub const GL_UNSIGNED_INT_8_8_8_8_EXT: u32 = 32821;
3553pub const GL_UNSIGNED_INT_10_10_10_2_EXT: u32 = 32822;
3554pub const GL_EXT_paletted_texture: u32 = 1;
3555pub const GL_COLOR_INDEX1_EXT: u32 = 32994;
3556pub const GL_COLOR_INDEX2_EXT: u32 = 32995;
3557pub const GL_COLOR_INDEX4_EXT: u32 = 32996;
3558pub const GL_COLOR_INDEX8_EXT: u32 = 32997;
3559pub const GL_COLOR_INDEX12_EXT: u32 = 32998;
3560pub const GL_COLOR_INDEX16_EXT: u32 = 32999;
3561pub const GL_TEXTURE_INDEX_SIZE_EXT: u32 = 33005;
3562pub const GL_EXT_pixel_buffer_object: u32 = 1;
3563pub const GL_PIXEL_PACK_BUFFER_EXT: u32 = 35051;
3564pub const GL_PIXEL_UNPACK_BUFFER_EXT: u32 = 35052;
3565pub const GL_PIXEL_PACK_BUFFER_BINDING_EXT: u32 = 35053;
3566pub const GL_PIXEL_UNPACK_BUFFER_BINDING_EXT: u32 = 35055;
3567pub const GL_EXT_pixel_transform: u32 = 1;
3568pub const GL_PIXEL_TRANSFORM_2D_EXT: u32 = 33584;
3569pub const GL_PIXEL_MAG_FILTER_EXT: u32 = 33585;
3570pub const GL_PIXEL_MIN_FILTER_EXT: u32 = 33586;
3571pub const GL_PIXEL_CUBIC_WEIGHT_EXT: u32 = 33587;
3572pub const GL_CUBIC_EXT: u32 = 33588;
3573pub const GL_AVERAGE_EXT: u32 = 33589;
3574pub const GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT: u32 = 33590;
3575pub const GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT: u32 = 33591;
3576pub const GL_PIXEL_TRANSFORM_2D_MATRIX_EXT: u32 = 33592;
3577pub const GL_EXT_pixel_transform_color_table: u32 = 1;
3578pub const GL_EXT_point_parameters: u32 = 1;
3579pub const GL_POINT_SIZE_MIN_EXT: u32 = 33062;
3580pub const GL_POINT_SIZE_MAX_EXT: u32 = 33063;
3581pub const GL_POINT_FADE_THRESHOLD_SIZE_EXT: u32 = 33064;
3582pub const GL_DISTANCE_ATTENUATION_EXT: u32 = 33065;
3583pub const GL_EXT_polygon_offset: u32 = 1;
3584pub const GL_POLYGON_OFFSET_EXT: u32 = 32823;
3585pub const GL_POLYGON_OFFSET_FACTOR_EXT: u32 = 32824;
3586pub const GL_POLYGON_OFFSET_BIAS_EXT: u32 = 32825;
3587pub const GL_EXT_polygon_offset_clamp: u32 = 1;
3588pub const GL_POLYGON_OFFSET_CLAMP_EXT: u32 = 36379;
3589pub const GL_EXT_post_depth_coverage: u32 = 1;
3590pub const GL_EXT_provoking_vertex: u32 = 1;
3591pub const GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT: u32 = 36428;
3592pub const GL_FIRST_VERTEX_CONVENTION_EXT: u32 = 36429;
3593pub const GL_LAST_VERTEX_CONVENTION_EXT: u32 = 36430;
3594pub const GL_PROVOKING_VERTEX_EXT: u32 = 36431;
3595pub const GL_EXT_raster_multisample: u32 = 1;
3596pub const GL_RASTER_MULTISAMPLE_EXT: u32 = 37671;
3597pub const GL_RASTER_SAMPLES_EXT: u32 = 37672;
3598pub const GL_MAX_RASTER_SAMPLES_EXT: u32 = 37673;
3599pub const GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT: u32 = 37674;
3600pub const GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT: u32 = 37675;
3601pub const GL_EFFECTIVE_RASTER_SAMPLES_EXT: u32 = 37676;
3602pub const GL_EXT_rescale_normal: u32 = 1;
3603pub const GL_RESCALE_NORMAL_EXT: u32 = 32826;
3604pub const GL_EXT_secondary_color: u32 = 1;
3605pub const GL_COLOR_SUM_EXT: u32 = 33880;
3606pub const GL_CURRENT_SECONDARY_COLOR_EXT: u32 = 33881;
3607pub const GL_SECONDARY_COLOR_ARRAY_SIZE_EXT: u32 = 33882;
3608pub const GL_SECONDARY_COLOR_ARRAY_TYPE_EXT: u32 = 33883;
3609pub const GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT: u32 = 33884;
3610pub const GL_SECONDARY_COLOR_ARRAY_POINTER_EXT: u32 = 33885;
3611pub const GL_SECONDARY_COLOR_ARRAY_EXT: u32 = 33886;
3612pub const GL_EXT_semaphore: u32 = 1;
3613pub const GL_LAYOUT_GENERAL_EXT: u32 = 38285;
3614pub const GL_LAYOUT_COLOR_ATTACHMENT_EXT: u32 = 38286;
3615pub const GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT: u32 = 38287;
3616pub const GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT: u32 = 38288;
3617pub const GL_LAYOUT_SHADER_READ_ONLY_EXT: u32 = 38289;
3618pub const GL_LAYOUT_TRANSFER_SRC_EXT: u32 = 38290;
3619pub const GL_LAYOUT_TRANSFER_DST_EXT: u32 = 38291;
3620pub const GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT: u32 = 38192;
3621pub const GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT: u32 = 38193;
3622pub const GL_EXT_semaphore_fd: u32 = 1;
3623pub const GL_EXT_semaphore_win32: u32 = 1;
3624pub const GL_HANDLE_TYPE_D3D12_FENCE_EXT: u32 = 38292;
3625pub const GL_D3D12_FENCE_VALUE_EXT: u32 = 38293;
3626pub const GL_EXT_separate_shader_objects: u32 = 1;
3627pub const GL_ACTIVE_PROGRAM_EXT: u32 = 35725;
3628pub const GL_EXT_separate_specular_color: u32 = 1;
3629pub const GL_LIGHT_MODEL_COLOR_CONTROL_EXT: u32 = 33272;
3630pub const GL_SINGLE_COLOR_EXT: u32 = 33273;
3631pub const GL_SEPARATE_SPECULAR_COLOR_EXT: u32 = 33274;
3632pub const GL_EXT_shader_framebuffer_fetch: u32 = 1;
3633pub const GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT: u32 = 35410;
3634pub const GL_EXT_shader_framebuffer_fetch_non_coherent: u32 = 1;
3635pub const GL_EXT_shader_image_load_formatted: u32 = 1;
3636pub const GL_EXT_shader_image_load_store: u32 = 1;
3637pub const GL_MAX_IMAGE_UNITS_EXT: u32 = 36664;
3638pub const GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT: u32 = 36665;
3639pub const GL_IMAGE_BINDING_NAME_EXT: u32 = 36666;
3640pub const GL_IMAGE_BINDING_LEVEL_EXT: u32 = 36667;
3641pub const GL_IMAGE_BINDING_LAYERED_EXT: u32 = 36668;
3642pub const GL_IMAGE_BINDING_LAYER_EXT: u32 = 36669;
3643pub const GL_IMAGE_BINDING_ACCESS_EXT: u32 = 36670;
3644pub const GL_IMAGE_1D_EXT: u32 = 36940;
3645pub const GL_IMAGE_2D_EXT: u32 = 36941;
3646pub const GL_IMAGE_3D_EXT: u32 = 36942;
3647pub const GL_IMAGE_2D_RECT_EXT: u32 = 36943;
3648pub const GL_IMAGE_CUBE_EXT: u32 = 36944;
3649pub const GL_IMAGE_BUFFER_EXT: u32 = 36945;
3650pub const GL_IMAGE_1D_ARRAY_EXT: u32 = 36946;
3651pub const GL_IMAGE_2D_ARRAY_EXT: u32 = 36947;
3652pub const GL_IMAGE_CUBE_MAP_ARRAY_EXT: u32 = 36948;
3653pub const GL_IMAGE_2D_MULTISAMPLE_EXT: u32 = 36949;
3654pub const GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT: u32 = 36950;
3655pub const GL_INT_IMAGE_1D_EXT: u32 = 36951;
3656pub const GL_INT_IMAGE_2D_EXT: u32 = 36952;
3657pub const GL_INT_IMAGE_3D_EXT: u32 = 36953;
3658pub const GL_INT_IMAGE_2D_RECT_EXT: u32 = 36954;
3659pub const GL_INT_IMAGE_CUBE_EXT: u32 = 36955;
3660pub const GL_INT_IMAGE_BUFFER_EXT: u32 = 36956;
3661pub const GL_INT_IMAGE_1D_ARRAY_EXT: u32 = 36957;
3662pub const GL_INT_IMAGE_2D_ARRAY_EXT: u32 = 36958;
3663pub const GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT: u32 = 36959;
3664pub const GL_INT_IMAGE_2D_MULTISAMPLE_EXT: u32 = 36960;
3665pub const GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT: u32 = 36961;
3666pub const GL_UNSIGNED_INT_IMAGE_1D_EXT: u32 = 36962;
3667pub const GL_UNSIGNED_INT_IMAGE_2D_EXT: u32 = 36963;
3668pub const GL_UNSIGNED_INT_IMAGE_3D_EXT: u32 = 36964;
3669pub const GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT: u32 = 36965;
3670pub const GL_UNSIGNED_INT_IMAGE_CUBE_EXT: u32 = 36966;
3671pub const GL_UNSIGNED_INT_IMAGE_BUFFER_EXT: u32 = 36967;
3672pub const GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT: u32 = 36968;
3673pub const GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT: u32 = 36969;
3674pub const GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT: u32 = 36970;
3675pub const GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT: u32 = 36971;
3676pub const GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT: u32 = 36972;
3677pub const GL_MAX_IMAGE_SAMPLES_EXT: u32 = 36973;
3678pub const GL_IMAGE_BINDING_FORMAT_EXT: u32 = 36974;
3679pub const GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT: u32 = 1;
3680pub const GL_ELEMENT_ARRAY_BARRIER_BIT_EXT: u32 = 2;
3681pub const GL_UNIFORM_BARRIER_BIT_EXT: u32 = 4;
3682pub const GL_TEXTURE_FETCH_BARRIER_BIT_EXT: u32 = 8;
3683pub const GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT: u32 = 32;
3684pub const GL_COMMAND_BARRIER_BIT_EXT: u32 = 64;
3685pub const GL_PIXEL_BUFFER_BARRIER_BIT_EXT: u32 = 128;
3686pub const GL_TEXTURE_UPDATE_BARRIER_BIT_EXT: u32 = 256;
3687pub const GL_BUFFER_UPDATE_BARRIER_BIT_EXT: u32 = 512;
3688pub const GL_FRAMEBUFFER_BARRIER_BIT_EXT: u32 = 1024;
3689pub const GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT: u32 = 2048;
3690pub const GL_ATOMIC_COUNTER_BARRIER_BIT_EXT: u32 = 4096;
3691pub const GL_ALL_BARRIER_BITS_EXT: u32 = 4294967295;
3692pub const GL_EXT_shader_integer_mix: u32 = 1;
3693pub const GL_EXT_shadow_funcs: u32 = 1;
3694pub const GL_EXT_shared_texture_palette: u32 = 1;
3695pub const GL_SHARED_TEXTURE_PALETTE_EXT: u32 = 33275;
3696pub const GL_EXT_sparse_texture2: u32 = 1;
3697pub const GL_EXT_stencil_clear_tag: u32 = 1;
3698pub const GL_STENCIL_TAG_BITS_EXT: u32 = 35058;
3699pub const GL_STENCIL_CLEAR_TAG_VALUE_EXT: u32 = 35059;
3700pub const GL_EXT_stencil_two_side: u32 = 1;
3701pub const GL_STENCIL_TEST_TWO_SIDE_EXT: u32 = 35088;
3702pub const GL_ACTIVE_STENCIL_FACE_EXT: u32 = 35089;
3703pub const GL_EXT_stencil_wrap: u32 = 1;
3704pub const GL_INCR_WRAP_EXT: u32 = 34055;
3705pub const GL_DECR_WRAP_EXT: u32 = 34056;
3706pub const GL_EXT_subtexture: u32 = 1;
3707pub const GL_EXT_texture: u32 = 1;
3708pub const GL_ALPHA4_EXT: u32 = 32827;
3709pub const GL_ALPHA8_EXT: u32 = 32828;
3710pub const GL_ALPHA12_EXT: u32 = 32829;
3711pub const GL_ALPHA16_EXT: u32 = 32830;
3712pub const GL_LUMINANCE4_EXT: u32 = 32831;
3713pub const GL_LUMINANCE8_EXT: u32 = 32832;
3714pub const GL_LUMINANCE12_EXT: u32 = 32833;
3715pub const GL_LUMINANCE16_EXT: u32 = 32834;
3716pub const GL_LUMINANCE4_ALPHA4_EXT: u32 = 32835;
3717pub const GL_LUMINANCE6_ALPHA2_EXT: u32 = 32836;
3718pub const GL_LUMINANCE8_ALPHA8_EXT: u32 = 32837;
3719pub const GL_LUMINANCE12_ALPHA4_EXT: u32 = 32838;
3720pub const GL_LUMINANCE12_ALPHA12_EXT: u32 = 32839;
3721pub const GL_LUMINANCE16_ALPHA16_EXT: u32 = 32840;
3722pub const GL_INTENSITY_EXT: u32 = 32841;
3723pub const GL_INTENSITY4_EXT: u32 = 32842;
3724pub const GL_INTENSITY8_EXT: u32 = 32843;
3725pub const GL_INTENSITY12_EXT: u32 = 32844;
3726pub const GL_INTENSITY16_EXT: u32 = 32845;
3727pub const GL_RGB2_EXT: u32 = 32846;
3728pub const GL_RGB4_EXT: u32 = 32847;
3729pub const GL_RGB5_EXT: u32 = 32848;
3730pub const GL_RGB8_EXT: u32 = 32849;
3731pub const GL_RGB10_EXT: u32 = 32850;
3732pub const GL_RGB12_EXT: u32 = 32851;
3733pub const GL_RGB16_EXT: u32 = 32852;
3734pub const GL_RGBA2_EXT: u32 = 32853;
3735pub const GL_RGBA4_EXT: u32 = 32854;
3736pub const GL_RGB5_A1_EXT: u32 = 32855;
3737pub const GL_RGBA8_EXT: u32 = 32856;
3738pub const GL_RGB10_A2_EXT: u32 = 32857;
3739pub const GL_RGBA12_EXT: u32 = 32858;
3740pub const GL_RGBA16_EXT: u32 = 32859;
3741pub const GL_TEXTURE_RED_SIZE_EXT: u32 = 32860;
3742pub const GL_TEXTURE_GREEN_SIZE_EXT: u32 = 32861;
3743pub const GL_TEXTURE_BLUE_SIZE_EXT: u32 = 32862;
3744pub const GL_TEXTURE_ALPHA_SIZE_EXT: u32 = 32863;
3745pub const GL_TEXTURE_LUMINANCE_SIZE_EXT: u32 = 32864;
3746pub const GL_TEXTURE_INTENSITY_SIZE_EXT: u32 = 32865;
3747pub const GL_REPLACE_EXT: u32 = 32866;
3748pub const GL_PROXY_TEXTURE_1D_EXT: u32 = 32867;
3749pub const GL_PROXY_TEXTURE_2D_EXT: u32 = 32868;
3750pub const GL_TEXTURE_TOO_LARGE_EXT: u32 = 32869;
3751pub const GL_EXT_texture3D: u32 = 1;
3752pub const GL_PACK_SKIP_IMAGES_EXT: u32 = 32875;
3753pub const GL_PACK_IMAGE_HEIGHT_EXT: u32 = 32876;
3754pub const GL_UNPACK_SKIP_IMAGES_EXT: u32 = 32877;
3755pub const GL_UNPACK_IMAGE_HEIGHT_EXT: u32 = 32878;
3756pub const GL_TEXTURE_3D_EXT: u32 = 32879;
3757pub const GL_PROXY_TEXTURE_3D_EXT: u32 = 32880;
3758pub const GL_TEXTURE_DEPTH_EXT: u32 = 32881;
3759pub const GL_TEXTURE_WRAP_R_EXT: u32 = 32882;
3760pub const GL_MAX_3D_TEXTURE_SIZE_EXT: u32 = 32883;
3761pub const GL_EXT_texture_array: u32 = 1;
3762pub const GL_TEXTURE_1D_ARRAY_EXT: u32 = 35864;
3763pub const GL_PROXY_TEXTURE_1D_ARRAY_EXT: u32 = 35865;
3764pub const GL_TEXTURE_2D_ARRAY_EXT: u32 = 35866;
3765pub const GL_PROXY_TEXTURE_2D_ARRAY_EXT: u32 = 35867;
3766pub const GL_TEXTURE_BINDING_1D_ARRAY_EXT: u32 = 35868;
3767pub const GL_TEXTURE_BINDING_2D_ARRAY_EXT: u32 = 35869;
3768pub const GL_MAX_ARRAY_TEXTURE_LAYERS_EXT: u32 = 35071;
3769pub const GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT: u32 = 34894;
3770pub const GL_EXT_texture_buffer_object: u32 = 1;
3771pub const GL_TEXTURE_BUFFER_EXT: u32 = 35882;
3772pub const GL_MAX_TEXTURE_BUFFER_SIZE_EXT: u32 = 35883;
3773pub const GL_TEXTURE_BINDING_BUFFER_EXT: u32 = 35884;
3774pub const GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT: u32 = 35885;
3775pub const GL_TEXTURE_BUFFER_FORMAT_EXT: u32 = 35886;
3776pub const GL_EXT_texture_compression_latc: u32 = 1;
3777pub const GL_COMPRESSED_LUMINANCE_LATC1_EXT: u32 = 35952;
3778pub const GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT: u32 = 35953;
3779pub const GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT: u32 = 35954;
3780pub const GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT: u32 = 35955;
3781pub const GL_EXT_texture_compression_rgtc: u32 = 1;
3782pub const GL_COMPRESSED_RED_RGTC1_EXT: u32 = 36283;
3783pub const GL_COMPRESSED_SIGNED_RED_RGTC1_EXT: u32 = 36284;
3784pub const GL_COMPRESSED_RED_GREEN_RGTC2_EXT: u32 = 36285;
3785pub const GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: u32 = 36286;
3786pub const GL_EXT_texture_compression_s3tc: u32 = 1;
3787pub const GL_COMPRESSED_RGB_S3TC_DXT1_EXT: u32 = 33776;
3788pub const GL_COMPRESSED_RGBA_S3TC_DXT1_EXT: u32 = 33777;
3789pub const GL_COMPRESSED_RGBA_S3TC_DXT3_EXT: u32 = 33778;
3790pub const GL_COMPRESSED_RGBA_S3TC_DXT5_EXT: u32 = 33779;
3791pub const GL_EXT_texture_cube_map: u32 = 1;
3792pub const GL_NORMAL_MAP_EXT: u32 = 34065;
3793pub const GL_REFLECTION_MAP_EXT: u32 = 34066;
3794pub const GL_TEXTURE_CUBE_MAP_EXT: u32 = 34067;
3795pub const GL_TEXTURE_BINDING_CUBE_MAP_EXT: u32 = 34068;
3796pub const GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT: u32 = 34069;
3797pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT: u32 = 34070;
3798pub const GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT: u32 = 34071;
3799pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT: u32 = 34072;
3800pub const GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT: u32 = 34073;
3801pub const GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT: u32 = 34074;
3802pub const GL_PROXY_TEXTURE_CUBE_MAP_EXT: u32 = 34075;
3803pub const GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT: u32 = 34076;
3804pub const GL_EXT_texture_env_add: u32 = 1;
3805pub const GL_EXT_texture_env_combine: u32 = 1;
3806pub const GL_COMBINE_EXT: u32 = 34160;
3807pub const GL_COMBINE_RGB_EXT: u32 = 34161;
3808pub const GL_COMBINE_ALPHA_EXT: u32 = 34162;
3809pub const GL_RGB_SCALE_EXT: u32 = 34163;
3810pub const GL_ADD_SIGNED_EXT: u32 = 34164;
3811pub const GL_INTERPOLATE_EXT: u32 = 34165;
3812pub const GL_CONSTANT_EXT: u32 = 34166;
3813pub const GL_PRIMARY_COLOR_EXT: u32 = 34167;
3814pub const GL_PREVIOUS_EXT: u32 = 34168;
3815pub const GL_SOURCE0_RGB_EXT: u32 = 34176;
3816pub const GL_SOURCE1_RGB_EXT: u32 = 34177;
3817pub const GL_SOURCE2_RGB_EXT: u32 = 34178;
3818pub const GL_SOURCE0_ALPHA_EXT: u32 = 34184;
3819pub const GL_SOURCE1_ALPHA_EXT: u32 = 34185;
3820pub const GL_SOURCE2_ALPHA_EXT: u32 = 34186;
3821pub const GL_OPERAND0_RGB_EXT: u32 = 34192;
3822pub const GL_OPERAND1_RGB_EXT: u32 = 34193;
3823pub const GL_OPERAND2_RGB_EXT: u32 = 34194;
3824pub const GL_OPERAND0_ALPHA_EXT: u32 = 34200;
3825pub const GL_OPERAND1_ALPHA_EXT: u32 = 34201;
3826pub const GL_OPERAND2_ALPHA_EXT: u32 = 34202;
3827pub const GL_EXT_texture_env_dot3: u32 = 1;
3828pub const GL_DOT3_RGB_EXT: u32 = 34624;
3829pub const GL_DOT3_RGBA_EXT: u32 = 34625;
3830pub const GL_EXT_texture_filter_anisotropic: u32 = 1;
3831pub const GL_TEXTURE_MAX_ANISOTROPY_EXT: u32 = 34046;
3832pub const GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT: u32 = 34047;
3833pub const GL_EXT_texture_filter_minmax: u32 = 1;
3834pub const GL_TEXTURE_REDUCTION_MODE_EXT: u32 = 37734;
3835pub const GL_WEIGHTED_AVERAGE_EXT: u32 = 37735;
3836pub const GL_EXT_texture_integer: u32 = 1;
3837pub const GL_RGBA32UI_EXT: u32 = 36208;
3838pub const GL_RGB32UI_EXT: u32 = 36209;
3839pub const GL_ALPHA32UI_EXT: u32 = 36210;
3840pub const GL_INTENSITY32UI_EXT: u32 = 36211;
3841pub const GL_LUMINANCE32UI_EXT: u32 = 36212;
3842pub const GL_LUMINANCE_ALPHA32UI_EXT: u32 = 36213;
3843pub const GL_RGBA16UI_EXT: u32 = 36214;
3844pub const GL_RGB16UI_EXT: u32 = 36215;
3845pub const GL_ALPHA16UI_EXT: u32 = 36216;
3846pub const GL_INTENSITY16UI_EXT: u32 = 36217;
3847pub const GL_LUMINANCE16UI_EXT: u32 = 36218;
3848pub const GL_LUMINANCE_ALPHA16UI_EXT: u32 = 36219;
3849pub const GL_RGBA8UI_EXT: u32 = 36220;
3850pub const GL_RGB8UI_EXT: u32 = 36221;
3851pub const GL_ALPHA8UI_EXT: u32 = 36222;
3852pub const GL_INTENSITY8UI_EXT: u32 = 36223;
3853pub const GL_LUMINANCE8UI_EXT: u32 = 36224;
3854pub const GL_LUMINANCE_ALPHA8UI_EXT: u32 = 36225;
3855pub const GL_RGBA32I_EXT: u32 = 36226;
3856pub const GL_RGB32I_EXT: u32 = 36227;
3857pub const GL_ALPHA32I_EXT: u32 = 36228;
3858pub const GL_INTENSITY32I_EXT: u32 = 36229;
3859pub const GL_LUMINANCE32I_EXT: u32 = 36230;
3860pub const GL_LUMINANCE_ALPHA32I_EXT: u32 = 36231;
3861pub const GL_RGBA16I_EXT: u32 = 36232;
3862pub const GL_RGB16I_EXT: u32 = 36233;
3863pub const GL_ALPHA16I_EXT: u32 = 36234;
3864pub const GL_INTENSITY16I_EXT: u32 = 36235;
3865pub const GL_LUMINANCE16I_EXT: u32 = 36236;
3866pub const GL_LUMINANCE_ALPHA16I_EXT: u32 = 36237;
3867pub const GL_RGBA8I_EXT: u32 = 36238;
3868pub const GL_RGB8I_EXT: u32 = 36239;
3869pub const GL_ALPHA8I_EXT: u32 = 36240;
3870pub const GL_INTENSITY8I_EXT: u32 = 36241;
3871pub const GL_LUMINANCE8I_EXT: u32 = 36242;
3872pub const GL_LUMINANCE_ALPHA8I_EXT: u32 = 36243;
3873pub const GL_RED_INTEGER_EXT: u32 = 36244;
3874pub const GL_GREEN_INTEGER_EXT: u32 = 36245;
3875pub const GL_BLUE_INTEGER_EXT: u32 = 36246;
3876pub const GL_ALPHA_INTEGER_EXT: u32 = 36247;
3877pub const GL_RGB_INTEGER_EXT: u32 = 36248;
3878pub const GL_RGBA_INTEGER_EXT: u32 = 36249;
3879pub const GL_BGR_INTEGER_EXT: u32 = 36250;
3880pub const GL_BGRA_INTEGER_EXT: u32 = 36251;
3881pub const GL_LUMINANCE_INTEGER_EXT: u32 = 36252;
3882pub const GL_LUMINANCE_ALPHA_INTEGER_EXT: u32 = 36253;
3883pub const GL_RGBA_INTEGER_MODE_EXT: u32 = 36254;
3884pub const GL_EXT_texture_lod_bias: u32 = 1;
3885pub const GL_MAX_TEXTURE_LOD_BIAS_EXT: u32 = 34045;
3886pub const GL_TEXTURE_FILTER_CONTROL_EXT: u32 = 34048;
3887pub const GL_TEXTURE_LOD_BIAS_EXT: u32 = 34049;
3888pub const GL_EXT_texture_mirror_clamp: u32 = 1;
3889pub const GL_MIRROR_CLAMP_EXT: u32 = 34626;
3890pub const GL_MIRROR_CLAMP_TO_EDGE_EXT: u32 = 34627;
3891pub const GL_MIRROR_CLAMP_TO_BORDER_EXT: u32 = 35090;
3892pub const GL_EXT_texture_object: u32 = 1;
3893pub const GL_TEXTURE_PRIORITY_EXT: u32 = 32870;
3894pub const GL_TEXTURE_RESIDENT_EXT: u32 = 32871;
3895pub const GL_TEXTURE_1D_BINDING_EXT: u32 = 32872;
3896pub const GL_TEXTURE_2D_BINDING_EXT: u32 = 32873;
3897pub const GL_TEXTURE_3D_BINDING_EXT: u32 = 32874;
3898pub const GL_EXT_texture_perturb_normal: u32 = 1;
3899pub const GL_PERTURB_EXT: u32 = 34222;
3900pub const GL_TEXTURE_NORMAL_EXT: u32 = 34223;
3901pub const GL_EXT_texture_sRGB: u32 = 1;
3902pub const GL_SRGB_EXT: u32 = 35904;
3903pub const GL_SRGB8_EXT: u32 = 35905;
3904pub const GL_SRGB_ALPHA_EXT: u32 = 35906;
3905pub const GL_SRGB8_ALPHA8_EXT: u32 = 35907;
3906pub const GL_SLUMINANCE_ALPHA_EXT: u32 = 35908;
3907pub const GL_SLUMINANCE8_ALPHA8_EXT: u32 = 35909;
3908pub const GL_SLUMINANCE_EXT: u32 = 35910;
3909pub const GL_SLUMINANCE8_EXT: u32 = 35911;
3910pub const GL_COMPRESSED_SRGB_EXT: u32 = 35912;
3911pub const GL_COMPRESSED_SRGB_ALPHA_EXT: u32 = 35913;
3912pub const GL_COMPRESSED_SLUMINANCE_EXT: u32 = 35914;
3913pub const GL_COMPRESSED_SLUMINANCE_ALPHA_EXT: u32 = 35915;
3914pub const GL_COMPRESSED_SRGB_S3TC_DXT1_EXT: u32 = 35916;
3915pub const GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: u32 = 35917;
3916pub const GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: u32 = 35918;
3917pub const GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: u32 = 35919;
3918pub const GL_EXT_texture_sRGB_R8: u32 = 1;
3919pub const GL_SR8_EXT: u32 = 36797;
3920pub const GL_EXT_texture_sRGB_decode: u32 = 1;
3921pub const GL_TEXTURE_SRGB_DECODE_EXT: u32 = 35400;
3922pub const GL_DECODE_EXT: u32 = 35401;
3923pub const GL_SKIP_DECODE_EXT: u32 = 35402;
3924pub const GL_EXT_texture_shadow_lod: u32 = 1;
3925pub const GL_EXT_texture_shared_exponent: u32 = 1;
3926pub const GL_RGB9_E5_EXT: u32 = 35901;
3927pub const GL_UNSIGNED_INT_5_9_9_9_REV_EXT: u32 = 35902;
3928pub const GL_TEXTURE_SHARED_SIZE_EXT: u32 = 35903;
3929pub const GL_EXT_texture_snorm: u32 = 1;
3930pub const GL_ALPHA_SNORM: u32 = 36880;
3931pub const GL_LUMINANCE_SNORM: u32 = 36881;
3932pub const GL_LUMINANCE_ALPHA_SNORM: u32 = 36882;
3933pub const GL_INTENSITY_SNORM: u32 = 36883;
3934pub const GL_ALPHA8_SNORM: u32 = 36884;
3935pub const GL_LUMINANCE8_SNORM: u32 = 36885;
3936pub const GL_LUMINANCE8_ALPHA8_SNORM: u32 = 36886;
3937pub const GL_INTENSITY8_SNORM: u32 = 36887;
3938pub const GL_ALPHA16_SNORM: u32 = 36888;
3939pub const GL_LUMINANCE16_SNORM: u32 = 36889;
3940pub const GL_LUMINANCE16_ALPHA16_SNORM: u32 = 36890;
3941pub const GL_INTENSITY16_SNORM: u32 = 36891;
3942pub const GL_RED_SNORM: u32 = 36752;
3943pub const GL_RG_SNORM: u32 = 36753;
3944pub const GL_RGB_SNORM: u32 = 36754;
3945pub const GL_RGBA_SNORM: u32 = 36755;
3946pub const GL_EXT_texture_swizzle: u32 = 1;
3947pub const GL_TEXTURE_SWIZZLE_R_EXT: u32 = 36418;
3948pub const GL_TEXTURE_SWIZZLE_G_EXT: u32 = 36419;
3949pub const GL_TEXTURE_SWIZZLE_B_EXT: u32 = 36420;
3950pub const GL_TEXTURE_SWIZZLE_A_EXT: u32 = 36421;
3951pub const GL_TEXTURE_SWIZZLE_RGBA_EXT: u32 = 36422;
3952pub const GL_EXT_timer_query: u32 = 1;
3953pub const GL_TIME_ELAPSED_EXT: u32 = 35007;
3954pub const GL_EXT_transform_feedback: u32 = 1;
3955pub const GL_TRANSFORM_FEEDBACK_BUFFER_EXT: u32 = 35982;
3956pub const GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT: u32 = 35972;
3957pub const GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT: u32 = 35973;
3958pub const GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT: u32 = 35983;
3959pub const GL_INTERLEAVED_ATTRIBS_EXT: u32 = 35980;
3960pub const GL_SEPARATE_ATTRIBS_EXT: u32 = 35981;
3961pub const GL_PRIMITIVES_GENERATED_EXT: u32 = 35975;
3962pub const GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT: u32 = 35976;
3963pub const GL_RASTERIZER_DISCARD_EXT: u32 = 35977;
3964pub const GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT: u32 = 35978;
3965pub const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT: u32 = 35979;
3966pub const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT: u32 = 35968;
3967pub const GL_TRANSFORM_FEEDBACK_VARYINGS_EXT: u32 = 35971;
3968pub const GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT: u32 = 35967;
3969pub const GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT: u32 = 35958;
3970pub const GL_EXT_vertex_array: u32 = 1;
3971pub const GL_VERTEX_ARRAY_EXT: u32 = 32884;
3972pub const GL_NORMAL_ARRAY_EXT: u32 = 32885;
3973pub const GL_COLOR_ARRAY_EXT: u32 = 32886;
3974pub const GL_INDEX_ARRAY_EXT: u32 = 32887;
3975pub const GL_TEXTURE_COORD_ARRAY_EXT: u32 = 32888;
3976pub const GL_EDGE_FLAG_ARRAY_EXT: u32 = 32889;
3977pub const GL_VERTEX_ARRAY_SIZE_EXT: u32 = 32890;
3978pub const GL_VERTEX_ARRAY_TYPE_EXT: u32 = 32891;
3979pub const GL_VERTEX_ARRAY_STRIDE_EXT: u32 = 32892;
3980pub const GL_VERTEX_ARRAY_COUNT_EXT: u32 = 32893;
3981pub const GL_NORMAL_ARRAY_TYPE_EXT: u32 = 32894;
3982pub const GL_NORMAL_ARRAY_STRIDE_EXT: u32 = 32895;
3983pub const GL_NORMAL_ARRAY_COUNT_EXT: u32 = 32896;
3984pub const GL_COLOR_ARRAY_SIZE_EXT: u32 = 32897;
3985pub const GL_COLOR_ARRAY_TYPE_EXT: u32 = 32898;
3986pub const GL_COLOR_ARRAY_STRIDE_EXT: u32 = 32899;
3987pub const GL_COLOR_ARRAY_COUNT_EXT: u32 = 32900;
3988pub const GL_INDEX_ARRAY_TYPE_EXT: u32 = 32901;
3989pub const GL_INDEX_ARRAY_STRIDE_EXT: u32 = 32902;
3990pub const GL_INDEX_ARRAY_COUNT_EXT: u32 = 32903;
3991pub const GL_TEXTURE_COORD_ARRAY_SIZE_EXT: u32 = 32904;
3992pub const GL_TEXTURE_COORD_ARRAY_TYPE_EXT: u32 = 32905;
3993pub const GL_TEXTURE_COORD_ARRAY_STRIDE_EXT: u32 = 32906;
3994pub const GL_TEXTURE_COORD_ARRAY_COUNT_EXT: u32 = 32907;
3995pub const GL_EDGE_FLAG_ARRAY_STRIDE_EXT: u32 = 32908;
3996pub const GL_EDGE_FLAG_ARRAY_COUNT_EXT: u32 = 32909;
3997pub const GL_VERTEX_ARRAY_POINTER_EXT: u32 = 32910;
3998pub const GL_NORMAL_ARRAY_POINTER_EXT: u32 = 32911;
3999pub const GL_COLOR_ARRAY_POINTER_EXT: u32 = 32912;
4000pub const GL_INDEX_ARRAY_POINTER_EXT: u32 = 32913;
4001pub const GL_TEXTURE_COORD_ARRAY_POINTER_EXT: u32 = 32914;
4002pub const GL_EDGE_FLAG_ARRAY_POINTER_EXT: u32 = 32915;
4003pub const GL_EXT_vertex_array_bgra: u32 = 1;
4004pub const GL_EXT_vertex_attrib_64bit: u32 = 1;
4005pub const GL_DOUBLE_VEC2_EXT: u32 = 36860;
4006pub const GL_DOUBLE_VEC3_EXT: u32 = 36861;
4007pub const GL_DOUBLE_VEC4_EXT: u32 = 36862;
4008pub const GL_DOUBLE_MAT2_EXT: u32 = 36678;
4009pub const GL_DOUBLE_MAT3_EXT: u32 = 36679;
4010pub const GL_DOUBLE_MAT4_EXT: u32 = 36680;
4011pub const GL_DOUBLE_MAT2x3_EXT: u32 = 36681;
4012pub const GL_DOUBLE_MAT2x4_EXT: u32 = 36682;
4013pub const GL_DOUBLE_MAT3x2_EXT: u32 = 36683;
4014pub const GL_DOUBLE_MAT3x4_EXT: u32 = 36684;
4015pub const GL_DOUBLE_MAT4x2_EXT: u32 = 36685;
4016pub const GL_DOUBLE_MAT4x3_EXT: u32 = 36686;
4017pub const GL_EXT_vertex_shader: u32 = 1;
4018pub const GL_VERTEX_SHADER_EXT: u32 = 34688;
4019pub const GL_VERTEX_SHADER_BINDING_EXT: u32 = 34689;
4020pub const GL_OP_INDEX_EXT: u32 = 34690;
4021pub const GL_OP_NEGATE_EXT: u32 = 34691;
4022pub const GL_OP_DOT3_EXT: u32 = 34692;
4023pub const GL_OP_DOT4_EXT: u32 = 34693;
4024pub const GL_OP_MUL_EXT: u32 = 34694;
4025pub const GL_OP_ADD_EXT: u32 = 34695;
4026pub const GL_OP_MADD_EXT: u32 = 34696;
4027pub const GL_OP_FRAC_EXT: u32 = 34697;
4028pub const GL_OP_MAX_EXT: u32 = 34698;
4029pub const GL_OP_MIN_EXT: u32 = 34699;
4030pub const GL_OP_SET_GE_EXT: u32 = 34700;
4031pub const GL_OP_SET_LT_EXT: u32 = 34701;
4032pub const GL_OP_CLAMP_EXT: u32 = 34702;
4033pub const GL_OP_FLOOR_EXT: u32 = 34703;
4034pub const GL_OP_ROUND_EXT: u32 = 34704;
4035pub const GL_OP_EXP_BASE_2_EXT: u32 = 34705;
4036pub const GL_OP_LOG_BASE_2_EXT: u32 = 34706;
4037pub const GL_OP_POWER_EXT: u32 = 34707;
4038pub const GL_OP_RECIP_EXT: u32 = 34708;
4039pub const GL_OP_RECIP_SQRT_EXT: u32 = 34709;
4040pub const GL_OP_SUB_EXT: u32 = 34710;
4041pub const GL_OP_CROSS_PRODUCT_EXT: u32 = 34711;
4042pub const GL_OP_MULTIPLY_MATRIX_EXT: u32 = 34712;
4043pub const GL_OP_MOV_EXT: u32 = 34713;
4044pub const GL_OUTPUT_VERTEX_EXT: u32 = 34714;
4045pub const GL_OUTPUT_COLOR0_EXT: u32 = 34715;
4046pub const GL_OUTPUT_COLOR1_EXT: u32 = 34716;
4047pub const GL_OUTPUT_TEXTURE_COORD0_EXT: u32 = 34717;
4048pub const GL_OUTPUT_TEXTURE_COORD1_EXT: u32 = 34718;
4049pub const GL_OUTPUT_TEXTURE_COORD2_EXT: u32 = 34719;
4050pub const GL_OUTPUT_TEXTURE_COORD3_EXT: u32 = 34720;
4051pub const GL_OUTPUT_TEXTURE_COORD4_EXT: u32 = 34721;
4052pub const GL_OUTPUT_TEXTURE_COORD5_EXT: u32 = 34722;
4053pub const GL_OUTPUT_TEXTURE_COORD6_EXT: u32 = 34723;
4054pub const GL_OUTPUT_TEXTURE_COORD7_EXT: u32 = 34724;
4055pub const GL_OUTPUT_TEXTURE_COORD8_EXT: u32 = 34725;
4056pub const GL_OUTPUT_TEXTURE_COORD9_EXT: u32 = 34726;
4057pub const GL_OUTPUT_TEXTURE_COORD10_EXT: u32 = 34727;
4058pub const GL_OUTPUT_TEXTURE_COORD11_EXT: u32 = 34728;
4059pub const GL_OUTPUT_TEXTURE_COORD12_EXT: u32 = 34729;
4060pub const GL_OUTPUT_TEXTURE_COORD13_EXT: u32 = 34730;
4061pub const GL_OUTPUT_TEXTURE_COORD14_EXT: u32 = 34731;
4062pub const GL_OUTPUT_TEXTURE_COORD15_EXT: u32 = 34732;
4063pub const GL_OUTPUT_TEXTURE_COORD16_EXT: u32 = 34733;
4064pub const GL_OUTPUT_TEXTURE_COORD17_EXT: u32 = 34734;
4065pub const GL_OUTPUT_TEXTURE_COORD18_EXT: u32 = 34735;
4066pub const GL_OUTPUT_TEXTURE_COORD19_EXT: u32 = 34736;
4067pub const GL_OUTPUT_TEXTURE_COORD20_EXT: u32 = 34737;
4068pub const GL_OUTPUT_TEXTURE_COORD21_EXT: u32 = 34738;
4069pub const GL_OUTPUT_TEXTURE_COORD22_EXT: u32 = 34739;
4070pub const GL_OUTPUT_TEXTURE_COORD23_EXT: u32 = 34740;
4071pub const GL_OUTPUT_TEXTURE_COORD24_EXT: u32 = 34741;
4072pub const GL_OUTPUT_TEXTURE_COORD25_EXT: u32 = 34742;
4073pub const GL_OUTPUT_TEXTURE_COORD26_EXT: u32 = 34743;
4074pub const GL_OUTPUT_TEXTURE_COORD27_EXT: u32 = 34744;
4075pub const GL_OUTPUT_TEXTURE_COORD28_EXT: u32 = 34745;
4076pub const GL_OUTPUT_TEXTURE_COORD29_EXT: u32 = 34746;
4077pub const GL_OUTPUT_TEXTURE_COORD30_EXT: u32 = 34747;
4078pub const GL_OUTPUT_TEXTURE_COORD31_EXT: u32 = 34748;
4079pub const GL_OUTPUT_FOG_EXT: u32 = 34749;
4080pub const GL_SCALAR_EXT: u32 = 34750;
4081pub const GL_VECTOR_EXT: u32 = 34751;
4082pub const GL_MATRIX_EXT: u32 = 34752;
4083pub const GL_VARIANT_EXT: u32 = 34753;
4084pub const GL_INVARIANT_EXT: u32 = 34754;
4085pub const GL_LOCAL_CONSTANT_EXT: u32 = 34755;
4086pub const GL_LOCAL_EXT: u32 = 34756;
4087pub const GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT: u32 = 34757;
4088pub const GL_MAX_VERTEX_SHADER_VARIANTS_EXT: u32 = 34758;
4089pub const GL_MAX_VERTEX_SHADER_INVARIANTS_EXT: u32 = 34759;
4090pub const GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT: u32 = 34760;
4091pub const GL_MAX_VERTEX_SHADER_LOCALS_EXT: u32 = 34761;
4092pub const GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT: u32 = 34762;
4093pub const GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT: u32 = 34763;
4094pub const GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT: u32 = 34764;
4095pub const GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT: u32 = 34765;
4096pub const GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT: u32 = 34766;
4097pub const GL_VERTEX_SHADER_INSTRUCTIONS_EXT: u32 = 34767;
4098pub const GL_VERTEX_SHADER_VARIANTS_EXT: u32 = 34768;
4099pub const GL_VERTEX_SHADER_INVARIANTS_EXT: u32 = 34769;
4100pub const GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT: u32 = 34770;
4101pub const GL_VERTEX_SHADER_LOCALS_EXT: u32 = 34771;
4102pub const GL_VERTEX_SHADER_OPTIMIZED_EXT: u32 = 34772;
4103pub const GL_X_EXT: u32 = 34773;
4104pub const GL_Y_EXT: u32 = 34774;
4105pub const GL_Z_EXT: u32 = 34775;
4106pub const GL_W_EXT: u32 = 34776;
4107pub const GL_NEGATIVE_X_EXT: u32 = 34777;
4108pub const GL_NEGATIVE_Y_EXT: u32 = 34778;
4109pub const GL_NEGATIVE_Z_EXT: u32 = 34779;
4110pub const GL_NEGATIVE_W_EXT: u32 = 34780;
4111pub const GL_ZERO_EXT: u32 = 34781;
4112pub const GL_ONE_EXT: u32 = 34782;
4113pub const GL_NEGATIVE_ONE_EXT: u32 = 34783;
4114pub const GL_NORMALIZED_RANGE_EXT: u32 = 34784;
4115pub const GL_FULL_RANGE_EXT: u32 = 34785;
4116pub const GL_CURRENT_VERTEX_EXT: u32 = 34786;
4117pub const GL_MVP_MATRIX_EXT: u32 = 34787;
4118pub const GL_VARIANT_VALUE_EXT: u32 = 34788;
4119pub const GL_VARIANT_DATATYPE_EXT: u32 = 34789;
4120pub const GL_VARIANT_ARRAY_STRIDE_EXT: u32 = 34790;
4121pub const GL_VARIANT_ARRAY_TYPE_EXT: u32 = 34791;
4122pub const GL_VARIANT_ARRAY_EXT: u32 = 34792;
4123pub const GL_VARIANT_ARRAY_POINTER_EXT: u32 = 34793;
4124pub const GL_INVARIANT_VALUE_EXT: u32 = 34794;
4125pub const GL_INVARIANT_DATATYPE_EXT: u32 = 34795;
4126pub const GL_LOCAL_CONSTANT_VALUE_EXT: u32 = 34796;
4127pub const GL_LOCAL_CONSTANT_DATATYPE_EXT: u32 = 34797;
4128pub const GL_EXT_vertex_weighting: u32 = 1;
4129pub const GL_MODELVIEW0_STACK_DEPTH_EXT: u32 = 2979;
4130pub const GL_MODELVIEW1_STACK_DEPTH_EXT: u32 = 34050;
4131pub const GL_MODELVIEW0_MATRIX_EXT: u32 = 2982;
4132pub const GL_MODELVIEW1_MATRIX_EXT: u32 = 34054;
4133pub const GL_VERTEX_WEIGHTING_EXT: u32 = 34057;
4134pub const GL_MODELVIEW0_EXT: u32 = 5888;
4135pub const GL_MODELVIEW1_EXT: u32 = 34058;
4136pub const GL_CURRENT_VERTEX_WEIGHT_EXT: u32 = 34059;
4137pub const GL_VERTEX_WEIGHT_ARRAY_EXT: u32 = 34060;
4138pub const GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT: u32 = 34061;
4139pub const GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT: u32 = 34062;
4140pub const GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT: u32 = 34063;
4141pub const GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT: u32 = 34064;
4142pub const GL_EXT_win32_keyed_mutex: u32 = 1;
4143pub const GL_EXT_window_rectangles: u32 = 1;
4144pub const GL_INCLUSIVE_EXT: u32 = 36624;
4145pub const GL_EXCLUSIVE_EXT: u32 = 36625;
4146pub const GL_WINDOW_RECTANGLE_EXT: u32 = 36626;
4147pub const GL_WINDOW_RECTANGLE_MODE_EXT: u32 = 36627;
4148pub const GL_MAX_WINDOW_RECTANGLES_EXT: u32 = 36628;
4149pub const GL_NUM_WINDOW_RECTANGLES_EXT: u32 = 36629;
4150pub const GL_EXT_x11_sync_object: u32 = 1;
4151pub const GL_SYNC_X11_FENCE_EXT: u32 = 37089;
4152pub const GL_GREMEDY_frame_terminator: u32 = 1;
4153pub const GL_GREMEDY_string_marker: u32 = 1;
4154pub const GL_HP_convolution_border_modes: u32 = 1;
4155pub const GL_IGNORE_BORDER_HP: u32 = 33104;
4156pub const GL_CONSTANT_BORDER_HP: u32 = 33105;
4157pub const GL_REPLICATE_BORDER_HP: u32 = 33107;
4158pub const GL_CONVOLUTION_BORDER_COLOR_HP: u32 = 33108;
4159pub const GL_HP_image_transform: u32 = 1;
4160pub const GL_IMAGE_SCALE_X_HP: u32 = 33109;
4161pub const GL_IMAGE_SCALE_Y_HP: u32 = 33110;
4162pub const GL_IMAGE_TRANSLATE_X_HP: u32 = 33111;
4163pub const GL_IMAGE_TRANSLATE_Y_HP: u32 = 33112;
4164pub const GL_IMAGE_ROTATE_ANGLE_HP: u32 = 33113;
4165pub const GL_IMAGE_ROTATE_ORIGIN_X_HP: u32 = 33114;
4166pub const GL_IMAGE_ROTATE_ORIGIN_Y_HP: u32 = 33115;
4167pub const GL_IMAGE_MAG_FILTER_HP: u32 = 33116;
4168pub const GL_IMAGE_MIN_FILTER_HP: u32 = 33117;
4169pub const GL_IMAGE_CUBIC_WEIGHT_HP: u32 = 33118;
4170pub const GL_CUBIC_HP: u32 = 33119;
4171pub const GL_AVERAGE_HP: u32 = 33120;
4172pub const GL_IMAGE_TRANSFORM_2D_HP: u32 = 33121;
4173pub const GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP: u32 = 33122;
4174pub const GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP: u32 = 33123;
4175pub const GL_HP_occlusion_test: u32 = 1;
4176pub const GL_OCCLUSION_TEST_HP: u32 = 33125;
4177pub const GL_OCCLUSION_TEST_RESULT_HP: u32 = 33126;
4178pub const GL_HP_texture_lighting: u32 = 1;
4179pub const GL_TEXTURE_LIGHTING_MODE_HP: u32 = 33127;
4180pub const GL_TEXTURE_POST_SPECULAR_HP: u32 = 33128;
4181pub const GL_TEXTURE_PRE_SPECULAR_HP: u32 = 33129;
4182pub const GL_IBM_cull_vertex: u32 = 1;
4183pub const GL_CULL_VERTEX_IBM: u32 = 103050;
4184pub const GL_IBM_multimode_draw_arrays: u32 = 1;
4185pub const GL_IBM_rasterpos_clip: u32 = 1;
4186pub const GL_RASTER_POSITION_UNCLIPPED_IBM: u32 = 103010;
4187pub const GL_IBM_static_data: u32 = 1;
4188pub const GL_ALL_STATIC_DATA_IBM: u32 = 103060;
4189pub const GL_STATIC_VERTEX_ARRAY_IBM: u32 = 103061;
4190pub const GL_IBM_texture_mirrored_repeat: u32 = 1;
4191pub const GL_MIRRORED_REPEAT_IBM: u32 = 33648;
4192pub const GL_IBM_vertex_array_lists: u32 = 1;
4193pub const GL_VERTEX_ARRAY_LIST_IBM: u32 = 103070;
4194pub const GL_NORMAL_ARRAY_LIST_IBM: u32 = 103071;
4195pub const GL_COLOR_ARRAY_LIST_IBM: u32 = 103072;
4196pub const GL_INDEX_ARRAY_LIST_IBM: u32 = 103073;
4197pub const GL_TEXTURE_COORD_ARRAY_LIST_IBM: u32 = 103074;
4198pub const GL_EDGE_FLAG_ARRAY_LIST_IBM: u32 = 103075;
4199pub const GL_FOG_COORDINATE_ARRAY_LIST_IBM: u32 = 103076;
4200pub const GL_SECONDARY_COLOR_ARRAY_LIST_IBM: u32 = 103077;
4201pub const GL_VERTEX_ARRAY_LIST_STRIDE_IBM: u32 = 103080;
4202pub const GL_NORMAL_ARRAY_LIST_STRIDE_IBM: u32 = 103081;
4203pub const GL_COLOR_ARRAY_LIST_STRIDE_IBM: u32 = 103082;
4204pub const GL_INDEX_ARRAY_LIST_STRIDE_IBM: u32 = 103083;
4205pub const GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM: u32 = 103084;
4206pub const GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM: u32 = 103085;
4207pub const GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM: u32 = 103086;
4208pub const GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM: u32 = 103087;
4209pub const GL_INGR_blend_func_separate: u32 = 1;
4210pub const GL_INGR_color_clamp: u32 = 1;
4211pub const GL_RED_MIN_CLAMP_INGR: u32 = 34144;
4212pub const GL_GREEN_MIN_CLAMP_INGR: u32 = 34145;
4213pub const GL_BLUE_MIN_CLAMP_INGR: u32 = 34146;
4214pub const GL_ALPHA_MIN_CLAMP_INGR: u32 = 34147;
4215pub const GL_RED_MAX_CLAMP_INGR: u32 = 34148;
4216pub const GL_GREEN_MAX_CLAMP_INGR: u32 = 34149;
4217pub const GL_BLUE_MAX_CLAMP_INGR: u32 = 34150;
4218pub const GL_ALPHA_MAX_CLAMP_INGR: u32 = 34151;
4219pub const GL_INGR_interlace_read: u32 = 1;
4220pub const GL_INTERLACE_READ_INGR: u32 = 34152;
4221pub const GL_INTEL_blackhole_render: u32 = 1;
4222pub const GL_BLACKHOLE_RENDER_INTEL: u32 = 33788;
4223pub const GL_INTEL_conservative_rasterization: u32 = 1;
4224pub const GL_CONSERVATIVE_RASTERIZATION_INTEL: u32 = 33790;
4225pub const GL_INTEL_fragment_shader_ordering: u32 = 1;
4226pub const GL_INTEL_framebuffer_CMAA: u32 = 1;
4227pub const GL_INTEL_map_texture: u32 = 1;
4228pub const GL_TEXTURE_MEMORY_LAYOUT_INTEL: u32 = 33791;
4229pub const GL_LAYOUT_DEFAULT_INTEL: u32 = 0;
4230pub const GL_LAYOUT_LINEAR_INTEL: u32 = 1;
4231pub const GL_LAYOUT_LINEAR_CPU_CACHED_INTEL: u32 = 2;
4232pub const GL_INTEL_parallel_arrays: u32 = 1;
4233pub const GL_PARALLEL_ARRAYS_INTEL: u32 = 33780;
4234pub const GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL: u32 = 33781;
4235pub const GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL: u32 = 33782;
4236pub const GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL: u32 = 33783;
4237pub const GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL: u32 = 33784;
4238pub const GL_INTEL_performance_query: u32 = 1;
4239pub const GL_PERFQUERY_SINGLE_CONTEXT_INTEL: u32 = 0;
4240pub const GL_PERFQUERY_GLOBAL_CONTEXT_INTEL: u32 = 1;
4241pub const GL_PERFQUERY_WAIT_INTEL: u32 = 33787;
4242pub const GL_PERFQUERY_FLUSH_INTEL: u32 = 33786;
4243pub const GL_PERFQUERY_DONOT_FLUSH_INTEL: u32 = 33785;
4244pub const GL_PERFQUERY_COUNTER_EVENT_INTEL: u32 = 38128;
4245pub const GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL: u32 = 38129;
4246pub const GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL: u32 = 38130;
4247pub const GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL: u32 = 38131;
4248pub const GL_PERFQUERY_COUNTER_RAW_INTEL: u32 = 38132;
4249pub const GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL: u32 = 38133;
4250pub const GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL: u32 = 38136;
4251pub const GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL: u32 = 38137;
4252pub const GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL: u32 = 38138;
4253pub const GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL: u32 = 38139;
4254pub const GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL: u32 = 38140;
4255pub const GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL: u32 = 38141;
4256pub const GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL: u32 = 38142;
4257pub const GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL: u32 = 38143;
4258pub const GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL: u32 = 38144;
4259pub const GL_MESAX_texture_stack: u32 = 1;
4260pub const GL_TEXTURE_1D_STACK_MESAX: u32 = 34649;
4261pub const GL_TEXTURE_2D_STACK_MESAX: u32 = 34650;
4262pub const GL_PROXY_TEXTURE_1D_STACK_MESAX: u32 = 34651;
4263pub const GL_PROXY_TEXTURE_2D_STACK_MESAX: u32 = 34652;
4264pub const GL_TEXTURE_1D_STACK_BINDING_MESAX: u32 = 34653;
4265pub const GL_TEXTURE_2D_STACK_BINDING_MESAX: u32 = 34654;
4266pub const GL_MESA_framebuffer_flip_y: u32 = 1;
4267pub const GL_FRAMEBUFFER_FLIP_Y_MESA: u32 = 35771;
4268pub const GL_MESA_pack_invert: u32 = 1;
4269pub const GL_PACK_INVERT_MESA: u32 = 34648;
4270pub const GL_MESA_program_binary_formats: u32 = 1;
4271pub const GL_PROGRAM_BINARY_FORMAT_MESA: u32 = 34655;
4272pub const GL_MESA_resize_buffers: u32 = 1;
4273pub const GL_MESA_shader_integer_functions: u32 = 1;
4274pub const GL_MESA_tile_raster_order: u32 = 1;
4275pub const GL_TILE_RASTER_ORDER_FIXED_MESA: u32 = 35768;
4276pub const GL_TILE_RASTER_ORDER_INCREASING_X_MESA: u32 = 35769;
4277pub const GL_TILE_RASTER_ORDER_INCREASING_Y_MESA: u32 = 35770;
4278pub const GL_MESA_window_pos: u32 = 1;
4279pub const GL_MESA_ycbcr_texture: u32 = 1;
4280pub const GL_UNSIGNED_SHORT_8_8_MESA: u32 = 34234;
4281pub const GL_UNSIGNED_SHORT_8_8_REV_MESA: u32 = 34235;
4282pub const GL_YCBCR_MESA: u32 = 34647;
4283pub const GL_NVX_blend_equation_advanced_multi_draw_buffers: u32 = 1;
4284pub const GL_NVX_conditional_render: u32 = 1;
4285pub const GL_NVX_gpu_memory_info: u32 = 1;
4286pub const GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX: u32 = 36935;
4287pub const GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX: u32 = 36936;
4288pub const GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX: u32 = 36937;
4289pub const GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX: u32 = 36938;
4290pub const GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX: u32 = 36939;
4291pub const GL_NVX_gpu_multicast2: u32 = 1;
4292pub const GL_UPLOAD_GPU_MASK_NVX: u32 = 38218;
4293pub const GL_NVX_linked_gpu_multicast: u32 = 1;
4294pub const GL_LGPU_SEPARATE_STORAGE_BIT_NVX: u32 = 2048;
4295pub const GL_MAX_LGPU_GPUS_NVX: u32 = 37562;
4296pub const GL_NVX_progress_fence: u32 = 1;
4297pub const GL_NV_alpha_to_coverage_dither_control: u32 = 1;
4298pub const GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV: u32 = 37709;
4299pub const GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV: u32 = 37710;
4300pub const GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV: u32 = 37711;
4301pub const GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV: u32 = 37567;
4302pub const GL_NV_bindless_multi_draw_indirect: u32 = 1;
4303pub const GL_NV_bindless_multi_draw_indirect_count: u32 = 1;
4304pub const GL_NV_bindless_texture: u32 = 1;
4305pub const GL_NV_blend_equation_advanced: u32 = 1;
4306pub const GL_BLEND_OVERLAP_NV: u32 = 37505;
4307pub const GL_BLEND_PREMULTIPLIED_SRC_NV: u32 = 37504;
4308pub const GL_BLUE_NV: u32 = 6405;
4309pub const GL_COLORBURN_NV: u32 = 37530;
4310pub const GL_COLORDODGE_NV: u32 = 37529;
4311pub const GL_CONJOINT_NV: u32 = 37508;
4312pub const GL_CONTRAST_NV: u32 = 37537;
4313pub const GL_DARKEN_NV: u32 = 37527;
4314pub const GL_DIFFERENCE_NV: u32 = 37534;
4315pub const GL_DISJOINT_NV: u32 = 37507;
4316pub const GL_DST_ATOP_NV: u32 = 37519;
4317pub const GL_DST_IN_NV: u32 = 37515;
4318pub const GL_DST_NV: u32 = 37511;
4319pub const GL_DST_OUT_NV: u32 = 37517;
4320pub const GL_DST_OVER_NV: u32 = 37513;
4321pub const GL_EXCLUSION_NV: u32 = 37536;
4322pub const GL_GREEN_NV: u32 = 6404;
4323pub const GL_HARDLIGHT_NV: u32 = 37531;
4324pub const GL_HARDMIX_NV: u32 = 37545;
4325pub const GL_HSL_COLOR_NV: u32 = 37551;
4326pub const GL_HSL_HUE_NV: u32 = 37549;
4327pub const GL_HSL_LUMINOSITY_NV: u32 = 37552;
4328pub const GL_HSL_SATURATION_NV: u32 = 37550;
4329pub const GL_INVERT_OVG_NV: u32 = 37556;
4330pub const GL_INVERT_RGB_NV: u32 = 37539;
4331pub const GL_LIGHTEN_NV: u32 = 37528;
4332pub const GL_LINEARBURN_NV: u32 = 37541;
4333pub const GL_LINEARDODGE_NV: u32 = 37540;
4334pub const GL_LINEARLIGHT_NV: u32 = 37543;
4335pub const GL_MINUS_CLAMPED_NV: u32 = 37555;
4336pub const GL_MINUS_NV: u32 = 37535;
4337pub const GL_MULTIPLY_NV: u32 = 37524;
4338pub const GL_OVERLAY_NV: u32 = 37526;
4339pub const GL_PINLIGHT_NV: u32 = 37544;
4340pub const GL_PLUS_CLAMPED_ALPHA_NV: u32 = 37554;
4341pub const GL_PLUS_CLAMPED_NV: u32 = 37553;
4342pub const GL_PLUS_DARKER_NV: u32 = 37522;
4343pub const GL_PLUS_NV: u32 = 37521;
4344pub const GL_RED_NV: u32 = 6403;
4345pub const GL_SCREEN_NV: u32 = 37525;
4346pub const GL_SOFTLIGHT_NV: u32 = 37532;
4347pub const GL_SRC_ATOP_NV: u32 = 37518;
4348pub const GL_SRC_IN_NV: u32 = 37514;
4349pub const GL_SRC_NV: u32 = 37510;
4350pub const GL_SRC_OUT_NV: u32 = 37516;
4351pub const GL_SRC_OVER_NV: u32 = 37512;
4352pub const GL_UNCORRELATED_NV: u32 = 37506;
4353pub const GL_VIVIDLIGHT_NV: u32 = 37542;
4354pub const GL_XOR_NV: u32 = 5382;
4355pub const GL_NV_blend_equation_advanced_coherent: u32 = 1;
4356pub const GL_BLEND_ADVANCED_COHERENT_NV: u32 = 37509;
4357pub const GL_NV_blend_minmax_factor: u32 = 1;
4358pub const GL_NV_blend_square: u32 = 1;
4359pub const GL_NV_clip_space_w_scaling: u32 = 1;
4360pub const GL_VIEWPORT_POSITION_W_SCALE_NV: u32 = 37756;
4361pub const GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV: u32 = 37757;
4362pub const GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV: u32 = 37758;
4363pub const GL_NV_command_list: u32 = 1;
4364pub const GL_TERMINATE_SEQUENCE_COMMAND_NV: u32 = 0;
4365pub const GL_NOP_COMMAND_NV: u32 = 1;
4366pub const GL_DRAW_ELEMENTS_COMMAND_NV: u32 = 2;
4367pub const GL_DRAW_ARRAYS_COMMAND_NV: u32 = 3;
4368pub const GL_DRAW_ELEMENTS_STRIP_COMMAND_NV: u32 = 4;
4369pub const GL_DRAW_ARRAYS_STRIP_COMMAND_NV: u32 = 5;
4370pub const GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV: u32 = 6;
4371pub const GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV: u32 = 7;
4372pub const GL_ELEMENT_ADDRESS_COMMAND_NV: u32 = 8;
4373pub const GL_ATTRIBUTE_ADDRESS_COMMAND_NV: u32 = 9;
4374pub const GL_UNIFORM_ADDRESS_COMMAND_NV: u32 = 10;
4375pub const GL_BLEND_COLOR_COMMAND_NV: u32 = 11;
4376pub const GL_STENCIL_REF_COMMAND_NV: u32 = 12;
4377pub const GL_LINE_WIDTH_COMMAND_NV: u32 = 13;
4378pub const GL_POLYGON_OFFSET_COMMAND_NV: u32 = 14;
4379pub const GL_ALPHA_REF_COMMAND_NV: u32 = 15;
4380pub const GL_VIEWPORT_COMMAND_NV: u32 = 16;
4381pub const GL_SCISSOR_COMMAND_NV: u32 = 17;
4382pub const GL_FRONT_FACE_COMMAND_NV: u32 = 18;
4383pub const GL_NV_compute_program5: u32 = 1;
4384pub const GL_COMPUTE_PROGRAM_NV: u32 = 37115;
4385pub const GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV: u32 = 37116;
4386pub const GL_NV_compute_shader_derivatives: u32 = 1;
4387pub const GL_NV_conditional_render: u32 = 1;
4388pub const GL_QUERY_WAIT_NV: u32 = 36371;
4389pub const GL_QUERY_NO_WAIT_NV: u32 = 36372;
4390pub const GL_QUERY_BY_REGION_WAIT_NV: u32 = 36373;
4391pub const GL_QUERY_BY_REGION_NO_WAIT_NV: u32 = 36374;
4392pub const GL_NV_conservative_raster: u32 = 1;
4393pub const GL_CONSERVATIVE_RASTERIZATION_NV: u32 = 37702;
4394pub const GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV: u32 = 37703;
4395pub const GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV: u32 = 37704;
4396pub const GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV: u32 = 37705;
4397pub const GL_NV_conservative_raster_dilate: u32 = 1;
4398pub const GL_CONSERVATIVE_RASTER_DILATE_NV: u32 = 37753;
4399pub const GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV: u32 = 37754;
4400pub const GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV: u32 = 37755;
4401pub const GL_NV_conservative_raster_pre_snap: u32 = 1;
4402pub const GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV: u32 = 38224;
4403pub const GL_NV_conservative_raster_pre_snap_triangles: u32 = 1;
4404pub const GL_CONSERVATIVE_RASTER_MODE_NV: u32 = 38221;
4405pub const GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV: u32 = 38222;
4406pub const GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV: u32 = 38223;
4407pub const GL_NV_conservative_raster_underestimation: u32 = 1;
4408pub const GL_NV_copy_depth_to_color: u32 = 1;
4409pub const GL_DEPTH_STENCIL_TO_RGBA_NV: u32 = 34926;
4410pub const GL_DEPTH_STENCIL_TO_BGRA_NV: u32 = 34927;
4411pub const GL_NV_copy_image: u32 = 1;
4412pub const GL_NV_deep_texture3D: u32 = 1;
4413pub const GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV: u32 = 37072;
4414pub const GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV: u32 = 37073;
4415pub const GL_NV_depth_buffer_float: u32 = 1;
4416pub const GL_DEPTH_COMPONENT32F_NV: u32 = 36267;
4417pub const GL_DEPTH32F_STENCIL8_NV: u32 = 36268;
4418pub const GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV: u32 = 36269;
4419pub const GL_DEPTH_BUFFER_FLOAT_MODE_NV: u32 = 36271;
4420pub const GL_NV_depth_clamp: u32 = 1;
4421pub const GL_DEPTH_CLAMP_NV: u32 = 34383;
4422pub const GL_NV_draw_texture: u32 = 1;
4423pub const GL_NV_draw_vulkan_image: u32 = 1;
4424pub const GL_NV_evaluators: u32 = 1;
4425pub const GL_EVAL_2D_NV: u32 = 34496;
4426pub const GL_EVAL_TRIANGULAR_2D_NV: u32 = 34497;
4427pub const GL_MAP_TESSELLATION_NV: u32 = 34498;
4428pub const GL_MAP_ATTRIB_U_ORDER_NV: u32 = 34499;
4429pub const GL_MAP_ATTRIB_V_ORDER_NV: u32 = 34500;
4430pub const GL_EVAL_FRACTIONAL_TESSELLATION_NV: u32 = 34501;
4431pub const GL_EVAL_VERTEX_ATTRIB0_NV: u32 = 34502;
4432pub const GL_EVAL_VERTEX_ATTRIB1_NV: u32 = 34503;
4433pub const GL_EVAL_VERTEX_ATTRIB2_NV: u32 = 34504;
4434pub const GL_EVAL_VERTEX_ATTRIB3_NV: u32 = 34505;
4435pub const GL_EVAL_VERTEX_ATTRIB4_NV: u32 = 34506;
4436pub const GL_EVAL_VERTEX_ATTRIB5_NV: u32 = 34507;
4437pub const GL_EVAL_VERTEX_ATTRIB6_NV: u32 = 34508;
4438pub const GL_EVAL_VERTEX_ATTRIB7_NV: u32 = 34509;
4439pub const GL_EVAL_VERTEX_ATTRIB8_NV: u32 = 34510;
4440pub const GL_EVAL_VERTEX_ATTRIB9_NV: u32 = 34511;
4441pub const GL_EVAL_VERTEX_ATTRIB10_NV: u32 = 34512;
4442pub const GL_EVAL_VERTEX_ATTRIB11_NV: u32 = 34513;
4443pub const GL_EVAL_VERTEX_ATTRIB12_NV: u32 = 34514;
4444pub const GL_EVAL_VERTEX_ATTRIB13_NV: u32 = 34515;
4445pub const GL_EVAL_VERTEX_ATTRIB14_NV: u32 = 34516;
4446pub const GL_EVAL_VERTEX_ATTRIB15_NV: u32 = 34517;
4447pub const GL_MAX_MAP_TESSELLATION_NV: u32 = 34518;
4448pub const GL_MAX_RATIONAL_EVAL_ORDER_NV: u32 = 34519;
4449pub const GL_NV_explicit_multisample: u32 = 1;
4450pub const GL_SAMPLE_POSITION_NV: u32 = 36432;
4451pub const GL_SAMPLE_MASK_NV: u32 = 36433;
4452pub const GL_SAMPLE_MASK_VALUE_NV: u32 = 36434;
4453pub const GL_TEXTURE_BINDING_RENDERBUFFER_NV: u32 = 36435;
4454pub const GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV: u32 = 36436;
4455pub const GL_TEXTURE_RENDERBUFFER_NV: u32 = 36437;
4456pub const GL_SAMPLER_RENDERBUFFER_NV: u32 = 36438;
4457pub const GL_INT_SAMPLER_RENDERBUFFER_NV: u32 = 36439;
4458pub const GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV: u32 = 36440;
4459pub const GL_MAX_SAMPLE_MASK_WORDS_NV: u32 = 36441;
4460pub const GL_NV_fence: u32 = 1;
4461pub const GL_ALL_COMPLETED_NV: u32 = 34034;
4462pub const GL_FENCE_STATUS_NV: u32 = 34035;
4463pub const GL_FENCE_CONDITION_NV: u32 = 34036;
4464pub const GL_NV_fill_rectangle: u32 = 1;
4465pub const GL_FILL_RECTANGLE_NV: u32 = 37692;
4466pub const GL_NV_float_buffer: u32 = 1;
4467pub const GL_FLOAT_R_NV: u32 = 34944;
4468pub const GL_FLOAT_RG_NV: u32 = 34945;
4469pub const GL_FLOAT_RGB_NV: u32 = 34946;
4470pub const GL_FLOAT_RGBA_NV: u32 = 34947;
4471pub const GL_FLOAT_R16_NV: u32 = 34948;
4472pub const GL_FLOAT_R32_NV: u32 = 34949;
4473pub const GL_FLOAT_RG16_NV: u32 = 34950;
4474pub const GL_FLOAT_RG32_NV: u32 = 34951;
4475pub const GL_FLOAT_RGB16_NV: u32 = 34952;
4476pub const GL_FLOAT_RGB32_NV: u32 = 34953;
4477pub const GL_FLOAT_RGBA16_NV: u32 = 34954;
4478pub const GL_FLOAT_RGBA32_NV: u32 = 34955;
4479pub const GL_TEXTURE_FLOAT_COMPONENTS_NV: u32 = 34956;
4480pub const GL_FLOAT_CLEAR_COLOR_VALUE_NV: u32 = 34957;
4481pub const GL_FLOAT_RGBA_MODE_NV: u32 = 34958;
4482pub const GL_NV_fog_distance: u32 = 1;
4483pub const GL_FOG_DISTANCE_MODE_NV: u32 = 34138;
4484pub const GL_EYE_RADIAL_NV: u32 = 34139;
4485pub const GL_EYE_PLANE_ABSOLUTE_NV: u32 = 34140;
4486pub const GL_NV_fragment_coverage_to_color: u32 = 1;
4487pub const GL_FRAGMENT_COVERAGE_TO_COLOR_NV: u32 = 37597;
4488pub const GL_FRAGMENT_COVERAGE_COLOR_NV: u32 = 37598;
4489pub const GL_NV_fragment_program: u32 = 1;
4490pub const GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV: u32 = 34920;
4491pub const GL_FRAGMENT_PROGRAM_NV: u32 = 34928;
4492pub const GL_MAX_TEXTURE_COORDS_NV: u32 = 34929;
4493pub const GL_MAX_TEXTURE_IMAGE_UNITS_NV: u32 = 34930;
4494pub const GL_FRAGMENT_PROGRAM_BINDING_NV: u32 = 34931;
4495pub const GL_PROGRAM_ERROR_STRING_NV: u32 = 34932;
4496pub const GL_NV_fragment_program2: u32 = 1;
4497pub const GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV: u32 = 35060;
4498pub const GL_MAX_PROGRAM_CALL_DEPTH_NV: u32 = 35061;
4499pub const GL_MAX_PROGRAM_IF_DEPTH_NV: u32 = 35062;
4500pub const GL_MAX_PROGRAM_LOOP_DEPTH_NV: u32 = 35063;
4501pub const GL_MAX_PROGRAM_LOOP_COUNT_NV: u32 = 35064;
4502pub const GL_NV_fragment_program4: u32 = 1;
4503pub const GL_NV_fragment_program_option: u32 = 1;
4504pub const GL_NV_fragment_shader_barycentric: u32 = 1;
4505pub const GL_NV_fragment_shader_interlock: u32 = 1;
4506pub const GL_NV_framebuffer_mixed_samples: u32 = 1;
4507pub const GL_COVERAGE_MODULATION_TABLE_NV: u32 = 37681;
4508pub const GL_COLOR_SAMPLES_NV: u32 = 36384;
4509pub const GL_DEPTH_SAMPLES_NV: u32 = 37677;
4510pub const GL_STENCIL_SAMPLES_NV: u32 = 37678;
4511pub const GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV: u32 = 37679;
4512pub const GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV: u32 = 37680;
4513pub const GL_COVERAGE_MODULATION_NV: u32 = 37682;
4514pub const GL_COVERAGE_MODULATION_TABLE_SIZE_NV: u32 = 37683;
4515pub const GL_NV_framebuffer_multisample_coverage: u32 = 1;
4516pub const GL_RENDERBUFFER_COVERAGE_SAMPLES_NV: u32 = 36011;
4517pub const GL_RENDERBUFFER_COLOR_SAMPLES_NV: u32 = 36368;
4518pub const GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV: u32 = 36369;
4519pub const GL_MULTISAMPLE_COVERAGE_MODES_NV: u32 = 36370;
4520pub const GL_NV_geometry_program4: u32 = 1;
4521pub const GL_GEOMETRY_PROGRAM_NV: u32 = 35878;
4522pub const GL_MAX_PROGRAM_OUTPUT_VERTICES_NV: u32 = 35879;
4523pub const GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV: u32 = 35880;
4524pub const GL_NV_geometry_shader4: u32 = 1;
4525pub const GL_NV_geometry_shader_passthrough: u32 = 1;
4526pub const GL_NV_gpu_multicast: u32 = 1;
4527pub const GL_PER_GPU_STORAGE_BIT_NV: u32 = 2048;
4528pub const GL_MULTICAST_GPUS_NV: u32 = 37562;
4529pub const GL_RENDER_GPU_MASK_NV: u32 = 38232;
4530pub const GL_PER_GPU_STORAGE_NV: u32 = 38216;
4531pub const GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV: u32 = 38217;
4532pub const GL_NV_gpu_program4: u32 = 1;
4533pub const GL_MIN_PROGRAM_TEXEL_OFFSET_NV: u32 = 35076;
4534pub const GL_MAX_PROGRAM_TEXEL_OFFSET_NV: u32 = 35077;
4535pub const GL_PROGRAM_ATTRIB_COMPONENTS_NV: u32 = 35078;
4536pub const GL_PROGRAM_RESULT_COMPONENTS_NV: u32 = 35079;
4537pub const GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV: u32 = 35080;
4538pub const GL_MAX_PROGRAM_RESULT_COMPONENTS_NV: u32 = 35081;
4539pub const GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV: u32 = 36261;
4540pub const GL_MAX_PROGRAM_GENERIC_RESULTS_NV: u32 = 36262;
4541pub const GL_NV_gpu_program5: u32 = 1;
4542pub const GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV: u32 = 36442;
4543pub const GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV: u32 = 36443;
4544pub const GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV: u32 = 36444;
4545pub const GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV: u32 = 36445;
4546pub const GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV: u32 = 36446;
4547pub const GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV: u32 = 36447;
4548pub const GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV: u32 = 36676;
4549pub const GL_MAX_PROGRAM_SUBROUTINE_NUM_NV: u32 = 36677;
4550pub const GL_NV_gpu_program5_mem_extended: u32 = 1;
4551pub const GL_NV_gpu_shader5: u32 = 1;
4552pub const GL_NV_half_float: u32 = 1;
4553pub const GL_HALF_FLOAT_NV: u32 = 5131;
4554pub const GL_NV_internalformat_sample_query: u32 = 1;
4555pub const GL_MULTISAMPLES_NV: u32 = 37745;
4556pub const GL_SUPERSAMPLE_SCALE_X_NV: u32 = 37746;
4557pub const GL_SUPERSAMPLE_SCALE_Y_NV: u32 = 37747;
4558pub const GL_CONFORMANT_NV: u32 = 37748;
4559pub const GL_NV_light_max_exponent: u32 = 1;
4560pub const GL_MAX_SHININESS_NV: u32 = 34052;
4561pub const GL_MAX_SPOT_EXPONENT_NV: u32 = 34053;
4562pub const GL_NV_memory_attachment: u32 = 1;
4563pub const GL_ATTACHED_MEMORY_OBJECT_NV: u32 = 38308;
4564pub const GL_ATTACHED_MEMORY_OFFSET_NV: u32 = 38309;
4565pub const GL_MEMORY_ATTACHABLE_ALIGNMENT_NV: u32 = 38310;
4566pub const GL_MEMORY_ATTACHABLE_SIZE_NV: u32 = 38311;
4567pub const GL_MEMORY_ATTACHABLE_NV: u32 = 38312;
4568pub const GL_DETACHED_MEMORY_INCARNATION_NV: u32 = 38313;
4569pub const GL_DETACHED_TEXTURES_NV: u32 = 38314;
4570pub const GL_DETACHED_BUFFERS_NV: u32 = 38315;
4571pub const GL_MAX_DETACHED_TEXTURES_NV: u32 = 38316;
4572pub const GL_MAX_DETACHED_BUFFERS_NV: u32 = 38317;
4573pub const GL_NV_mesh_shader: u32 = 1;
4574pub const GL_MESH_SHADER_NV: u32 = 38233;
4575pub const GL_TASK_SHADER_NV: u32 = 38234;
4576pub const GL_MAX_MESH_UNIFORM_BLOCKS_NV: u32 = 36448;
4577pub const GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV: u32 = 36449;
4578pub const GL_MAX_MESH_IMAGE_UNIFORMS_NV: u32 = 36450;
4579pub const GL_MAX_MESH_UNIFORM_COMPONENTS_NV: u32 = 36451;
4580pub const GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV: u32 = 36452;
4581pub const GL_MAX_MESH_ATOMIC_COUNTERS_NV: u32 = 36453;
4582pub const GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV: u32 = 36454;
4583pub const GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV: u32 = 36455;
4584pub const GL_MAX_TASK_UNIFORM_BLOCKS_NV: u32 = 36456;
4585pub const GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV: u32 = 36457;
4586pub const GL_MAX_TASK_IMAGE_UNIFORMS_NV: u32 = 36458;
4587pub const GL_MAX_TASK_UNIFORM_COMPONENTS_NV: u32 = 36459;
4588pub const GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV: u32 = 36460;
4589pub const GL_MAX_TASK_ATOMIC_COUNTERS_NV: u32 = 36461;
4590pub const GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV: u32 = 36462;
4591pub const GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV: u32 = 36463;
4592pub const GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV: u32 = 38306;
4593pub const GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV: u32 = 38307;
4594pub const GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV: u32 = 38198;
4595pub const GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV: u32 = 38199;
4596pub const GL_MAX_MESH_OUTPUT_VERTICES_NV: u32 = 38200;
4597pub const GL_MAX_MESH_OUTPUT_PRIMITIVES_NV: u32 = 38201;
4598pub const GL_MAX_TASK_OUTPUT_COUNT_NV: u32 = 38202;
4599pub const GL_MAX_DRAW_MESH_TASKS_COUNT_NV: u32 = 38205;
4600pub const GL_MAX_MESH_VIEWS_NV: u32 = 38231;
4601pub const GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV: u32 = 37599;
4602pub const GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV: u32 = 38211;
4603pub const GL_MAX_MESH_WORK_GROUP_SIZE_NV: u32 = 38203;
4604pub const GL_MAX_TASK_WORK_GROUP_SIZE_NV: u32 = 38204;
4605pub const GL_MESH_WORK_GROUP_SIZE_NV: u32 = 38206;
4606pub const GL_TASK_WORK_GROUP_SIZE_NV: u32 = 38207;
4607pub const GL_MESH_VERTICES_OUT_NV: u32 = 38265;
4608pub const GL_MESH_PRIMITIVES_OUT_NV: u32 = 38266;
4609pub const GL_MESH_OUTPUT_TYPE_NV: u32 = 38267;
4610pub const GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV: u32 = 38300;
4611pub const GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV: u32 = 38301;
4612pub const GL_REFERENCED_BY_MESH_SHADER_NV: u32 = 38304;
4613pub const GL_REFERENCED_BY_TASK_SHADER_NV: u32 = 38305;
4614pub const GL_MESH_SHADER_BIT_NV: u32 = 64;
4615pub const GL_TASK_SHADER_BIT_NV: u32 = 128;
4616pub const GL_MESH_SUBROUTINE_NV: u32 = 38268;
4617pub const GL_TASK_SUBROUTINE_NV: u32 = 38269;
4618pub const GL_MESH_SUBROUTINE_UNIFORM_NV: u32 = 38270;
4619pub const GL_TASK_SUBROUTINE_UNIFORM_NV: u32 = 38271;
4620pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV: u32 = 38302;
4621pub const GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV: u32 = 38303;
4622pub const GL_NV_multisample_coverage: u32 = 1;
4623pub const GL_NV_multisample_filter_hint: u32 = 1;
4624pub const GL_MULTISAMPLE_FILTER_HINT_NV: u32 = 34100;
4625pub const GL_NV_occlusion_query: u32 = 1;
4626pub const GL_PIXEL_COUNTER_BITS_NV: u32 = 34916;
4627pub const GL_CURRENT_OCCLUSION_QUERY_ID_NV: u32 = 34917;
4628pub const GL_PIXEL_COUNT_NV: u32 = 34918;
4629pub const GL_PIXEL_COUNT_AVAILABLE_NV: u32 = 34919;
4630pub const GL_NV_packed_depth_stencil: u32 = 1;
4631pub const GL_DEPTH_STENCIL_NV: u32 = 34041;
4632pub const GL_UNSIGNED_INT_24_8_NV: u32 = 34042;
4633pub const GL_NV_parameter_buffer_object: u32 = 1;
4634pub const GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV: u32 = 36256;
4635pub const GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV: u32 = 36257;
4636pub const GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV: u32 = 36258;
4637pub const GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV: u32 = 36259;
4638pub const GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV: u32 = 36260;
4639pub const GL_NV_parameter_buffer_object2: u32 = 1;
4640pub const GL_NV_path_rendering: u32 = 1;
4641pub const GL_PATH_FORMAT_SVG_NV: u32 = 36976;
4642pub const GL_PATH_FORMAT_PS_NV: u32 = 36977;
4643pub const GL_STANDARD_FONT_NAME_NV: u32 = 36978;
4644pub const GL_SYSTEM_FONT_NAME_NV: u32 = 36979;
4645pub const GL_FILE_NAME_NV: u32 = 36980;
4646pub const GL_PATH_STROKE_WIDTH_NV: u32 = 36981;
4647pub const GL_PATH_END_CAPS_NV: u32 = 36982;
4648pub const GL_PATH_INITIAL_END_CAP_NV: u32 = 36983;
4649pub const GL_PATH_TERMINAL_END_CAP_NV: u32 = 36984;
4650pub const GL_PATH_JOIN_STYLE_NV: u32 = 36985;
4651pub const GL_PATH_MITER_LIMIT_NV: u32 = 36986;
4652pub const GL_PATH_DASH_CAPS_NV: u32 = 36987;
4653pub const GL_PATH_INITIAL_DASH_CAP_NV: u32 = 36988;
4654pub const GL_PATH_TERMINAL_DASH_CAP_NV: u32 = 36989;
4655pub const GL_PATH_DASH_OFFSET_NV: u32 = 36990;
4656pub const GL_PATH_CLIENT_LENGTH_NV: u32 = 36991;
4657pub const GL_PATH_FILL_MODE_NV: u32 = 36992;
4658pub const GL_PATH_FILL_MASK_NV: u32 = 36993;
4659pub const GL_PATH_FILL_COVER_MODE_NV: u32 = 36994;
4660pub const GL_PATH_STROKE_COVER_MODE_NV: u32 = 36995;
4661pub const GL_PATH_STROKE_MASK_NV: u32 = 36996;
4662pub const GL_COUNT_UP_NV: u32 = 37000;
4663pub const GL_COUNT_DOWN_NV: u32 = 37001;
4664pub const GL_PATH_OBJECT_BOUNDING_BOX_NV: u32 = 37002;
4665pub const GL_CONVEX_HULL_NV: u32 = 37003;
4666pub const GL_BOUNDING_BOX_NV: u32 = 37005;
4667pub const GL_TRANSLATE_X_NV: u32 = 37006;
4668pub const GL_TRANSLATE_Y_NV: u32 = 37007;
4669pub const GL_TRANSLATE_2D_NV: u32 = 37008;
4670pub const GL_TRANSLATE_3D_NV: u32 = 37009;
4671pub const GL_AFFINE_2D_NV: u32 = 37010;
4672pub const GL_AFFINE_3D_NV: u32 = 37012;
4673pub const GL_TRANSPOSE_AFFINE_2D_NV: u32 = 37014;
4674pub const GL_TRANSPOSE_AFFINE_3D_NV: u32 = 37016;
4675pub const GL_UTF8_NV: u32 = 37018;
4676pub const GL_UTF16_NV: u32 = 37019;
4677pub const GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV: u32 = 37020;
4678pub const GL_PATH_COMMAND_COUNT_NV: u32 = 37021;
4679pub const GL_PATH_COORD_COUNT_NV: u32 = 37022;
4680pub const GL_PATH_DASH_ARRAY_COUNT_NV: u32 = 37023;
4681pub const GL_PATH_COMPUTED_LENGTH_NV: u32 = 37024;
4682pub const GL_PATH_FILL_BOUNDING_BOX_NV: u32 = 37025;
4683pub const GL_PATH_STROKE_BOUNDING_BOX_NV: u32 = 37026;
4684pub const GL_SQUARE_NV: u32 = 37027;
4685pub const GL_ROUND_NV: u32 = 37028;
4686pub const GL_TRIANGULAR_NV: u32 = 37029;
4687pub const GL_BEVEL_NV: u32 = 37030;
4688pub const GL_MITER_REVERT_NV: u32 = 37031;
4689pub const GL_MITER_TRUNCATE_NV: u32 = 37032;
4690pub const GL_SKIP_MISSING_GLYPH_NV: u32 = 37033;
4691pub const GL_USE_MISSING_GLYPH_NV: u32 = 37034;
4692pub const GL_PATH_ERROR_POSITION_NV: u32 = 37035;
4693pub const GL_ACCUM_ADJACENT_PAIRS_NV: u32 = 37037;
4694pub const GL_ADJACENT_PAIRS_NV: u32 = 37038;
4695pub const GL_FIRST_TO_REST_NV: u32 = 37039;
4696pub const GL_PATH_GEN_MODE_NV: u32 = 37040;
4697pub const GL_PATH_GEN_COEFF_NV: u32 = 37041;
4698pub const GL_PATH_GEN_COMPONENTS_NV: u32 = 37043;
4699pub const GL_PATH_STENCIL_FUNC_NV: u32 = 37047;
4700pub const GL_PATH_STENCIL_REF_NV: u32 = 37048;
4701pub const GL_PATH_STENCIL_VALUE_MASK_NV: u32 = 37049;
4702pub const GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV: u32 = 37053;
4703pub const GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV: u32 = 37054;
4704pub const GL_PATH_COVER_DEPTH_FUNC_NV: u32 = 37055;
4705pub const GL_PATH_DASH_OFFSET_RESET_NV: u32 = 37044;
4706pub const GL_MOVE_TO_RESETS_NV: u32 = 37045;
4707pub const GL_MOVE_TO_CONTINUES_NV: u32 = 37046;
4708pub const GL_CLOSE_PATH_NV: u32 = 0;
4709pub const GL_MOVE_TO_NV: u32 = 2;
4710pub const GL_RELATIVE_MOVE_TO_NV: u32 = 3;
4711pub const GL_LINE_TO_NV: u32 = 4;
4712pub const GL_RELATIVE_LINE_TO_NV: u32 = 5;
4713pub const GL_HORIZONTAL_LINE_TO_NV: u32 = 6;
4714pub const GL_RELATIVE_HORIZONTAL_LINE_TO_NV: u32 = 7;
4715pub const GL_VERTICAL_LINE_TO_NV: u32 = 8;
4716pub const GL_RELATIVE_VERTICAL_LINE_TO_NV: u32 = 9;
4717pub const GL_QUADRATIC_CURVE_TO_NV: u32 = 10;
4718pub const GL_RELATIVE_QUADRATIC_CURVE_TO_NV: u32 = 11;
4719pub const GL_CUBIC_CURVE_TO_NV: u32 = 12;
4720pub const GL_RELATIVE_CUBIC_CURVE_TO_NV: u32 = 13;
4721pub const GL_SMOOTH_QUADRATIC_CURVE_TO_NV: u32 = 14;
4722pub const GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV: u32 = 15;
4723pub const GL_SMOOTH_CUBIC_CURVE_TO_NV: u32 = 16;
4724pub const GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV: u32 = 17;
4725pub const GL_SMALL_CCW_ARC_TO_NV: u32 = 18;
4726pub const GL_RELATIVE_SMALL_CCW_ARC_TO_NV: u32 = 19;
4727pub const GL_SMALL_CW_ARC_TO_NV: u32 = 20;
4728pub const GL_RELATIVE_SMALL_CW_ARC_TO_NV: u32 = 21;
4729pub const GL_LARGE_CCW_ARC_TO_NV: u32 = 22;
4730pub const GL_RELATIVE_LARGE_CCW_ARC_TO_NV: u32 = 23;
4731pub const GL_LARGE_CW_ARC_TO_NV: u32 = 24;
4732pub const GL_RELATIVE_LARGE_CW_ARC_TO_NV: u32 = 25;
4733pub const GL_RESTART_PATH_NV: u32 = 240;
4734pub const GL_DUP_FIRST_CUBIC_CURVE_TO_NV: u32 = 242;
4735pub const GL_DUP_LAST_CUBIC_CURVE_TO_NV: u32 = 244;
4736pub const GL_RECT_NV: u32 = 246;
4737pub const GL_CIRCULAR_CCW_ARC_TO_NV: u32 = 248;
4738pub const GL_CIRCULAR_CW_ARC_TO_NV: u32 = 250;
4739pub const GL_CIRCULAR_TANGENT_ARC_TO_NV: u32 = 252;
4740pub const GL_ARC_TO_NV: u32 = 254;
4741pub const GL_RELATIVE_ARC_TO_NV: u32 = 255;
4742pub const GL_BOLD_BIT_NV: u32 = 1;
4743pub const GL_ITALIC_BIT_NV: u32 = 2;
4744pub const GL_GLYPH_WIDTH_BIT_NV: u32 = 1;
4745pub const GL_GLYPH_HEIGHT_BIT_NV: u32 = 2;
4746pub const GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV: u32 = 4;
4747pub const GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV: u32 = 8;
4748pub const GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV: u32 = 16;
4749pub const GL_GLYPH_VERTICAL_BEARING_X_BIT_NV: u32 = 32;
4750pub const GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV: u32 = 64;
4751pub const GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV: u32 = 128;
4752pub const GL_GLYPH_HAS_KERNING_BIT_NV: u32 = 256;
4753pub const GL_FONT_X_MIN_BOUNDS_BIT_NV: u32 = 65536;
4754pub const GL_FONT_Y_MIN_BOUNDS_BIT_NV: u32 = 131072;
4755pub const GL_FONT_X_MAX_BOUNDS_BIT_NV: u32 = 262144;
4756pub const GL_FONT_Y_MAX_BOUNDS_BIT_NV: u32 = 524288;
4757pub const GL_FONT_UNITS_PER_EM_BIT_NV: u32 = 1048576;
4758pub const GL_FONT_ASCENDER_BIT_NV: u32 = 2097152;
4759pub const GL_FONT_DESCENDER_BIT_NV: u32 = 4194304;
4760pub const GL_FONT_HEIGHT_BIT_NV: u32 = 8388608;
4761pub const GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV: u32 = 16777216;
4762pub const GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV: u32 = 33554432;
4763pub const GL_FONT_UNDERLINE_POSITION_BIT_NV: u32 = 67108864;
4764pub const GL_FONT_UNDERLINE_THICKNESS_BIT_NV: u32 = 134217728;
4765pub const GL_FONT_HAS_KERNING_BIT_NV: u32 = 268435456;
4766pub const GL_ROUNDED_RECT_NV: u32 = 232;
4767pub const GL_RELATIVE_ROUNDED_RECT_NV: u32 = 233;
4768pub const GL_ROUNDED_RECT2_NV: u32 = 234;
4769pub const GL_RELATIVE_ROUNDED_RECT2_NV: u32 = 235;
4770pub const GL_ROUNDED_RECT4_NV: u32 = 236;
4771pub const GL_RELATIVE_ROUNDED_RECT4_NV: u32 = 237;
4772pub const GL_ROUNDED_RECT8_NV: u32 = 238;
4773pub const GL_RELATIVE_ROUNDED_RECT8_NV: u32 = 239;
4774pub const GL_RELATIVE_RECT_NV: u32 = 247;
4775pub const GL_FONT_GLYPHS_AVAILABLE_NV: u32 = 37736;
4776pub const GL_FONT_TARGET_UNAVAILABLE_NV: u32 = 37737;
4777pub const GL_FONT_UNAVAILABLE_NV: u32 = 37738;
4778pub const GL_FONT_UNINTELLIGIBLE_NV: u32 = 37739;
4779pub const GL_CONIC_CURVE_TO_NV: u32 = 26;
4780pub const GL_RELATIVE_CONIC_CURVE_TO_NV: u32 = 27;
4781pub const GL_FONT_NUM_GLYPH_INDICES_BIT_NV: u32 = 536870912;
4782pub const GL_STANDARD_FONT_FORMAT_NV: u32 = 37740;
4783pub const GL_2_BYTES_NV: u32 = 5127;
4784pub const GL_3_BYTES_NV: u32 = 5128;
4785pub const GL_4_BYTES_NV: u32 = 5129;
4786pub const GL_EYE_LINEAR_NV: u32 = 9216;
4787pub const GL_OBJECT_LINEAR_NV: u32 = 9217;
4788pub const GL_CONSTANT_NV: u32 = 34166;
4789pub const GL_PATH_FOG_GEN_MODE_NV: u32 = 37036;
4790pub const GL_PRIMARY_COLOR_NV: u32 = 34092;
4791pub const GL_SECONDARY_COLOR_NV: u32 = 34093;
4792pub const GL_PATH_GEN_COLOR_FORMAT_NV: u32 = 37042;
4793pub const GL_PATH_PROJECTION_NV: u32 = 5889;
4794pub const GL_PATH_MODELVIEW_NV: u32 = 5888;
4795pub const GL_PATH_MODELVIEW_STACK_DEPTH_NV: u32 = 2979;
4796pub const GL_PATH_MODELVIEW_MATRIX_NV: u32 = 2982;
4797pub const GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV: u32 = 3382;
4798pub const GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV: u32 = 34019;
4799pub const GL_PATH_PROJECTION_STACK_DEPTH_NV: u32 = 2980;
4800pub const GL_PATH_PROJECTION_MATRIX_NV: u32 = 2983;
4801pub const GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV: u32 = 3384;
4802pub const GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV: u32 = 34020;
4803pub const GL_FRAGMENT_INPUT_NV: u32 = 37741;
4804pub const GL_NV_path_rendering_shared_edge: u32 = 1;
4805pub const GL_SHARED_EDGE_NV: u32 = 192;
4806pub const GL_NV_pixel_data_range: u32 = 1;
4807pub const GL_WRITE_PIXEL_DATA_RANGE_NV: u32 = 34936;
4808pub const GL_READ_PIXEL_DATA_RANGE_NV: u32 = 34937;
4809pub const GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV: u32 = 34938;
4810pub const GL_READ_PIXEL_DATA_RANGE_LENGTH_NV: u32 = 34939;
4811pub const GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV: u32 = 34940;
4812pub const GL_READ_PIXEL_DATA_RANGE_POINTER_NV: u32 = 34941;
4813pub const GL_NV_point_sprite: u32 = 1;
4814pub const GL_POINT_SPRITE_NV: u32 = 34913;
4815pub const GL_COORD_REPLACE_NV: u32 = 34914;
4816pub const GL_POINT_SPRITE_R_MODE_NV: u32 = 34915;
4817pub const GL_NV_present_video: u32 = 1;
4818pub const GL_FRAME_NV: u32 = 36390;
4819pub const GL_FIELDS_NV: u32 = 36391;
4820pub const GL_CURRENT_TIME_NV: u32 = 36392;
4821pub const GL_NUM_FILL_STREAMS_NV: u32 = 36393;
4822pub const GL_PRESENT_TIME_NV: u32 = 36394;
4823pub const GL_PRESENT_DURATION_NV: u32 = 36395;
4824pub const GL_NV_primitive_restart: u32 = 1;
4825pub const GL_PRIMITIVE_RESTART_NV: u32 = 34136;
4826pub const GL_PRIMITIVE_RESTART_INDEX_NV: u32 = 34137;
4827pub const GL_NV_query_resource: u32 = 1;
4828pub const GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV: u32 = 38208;
4829pub const GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV: u32 = 38210;
4830pub const GL_QUERY_RESOURCE_SYS_RESERVED_NV: u32 = 38212;
4831pub const GL_QUERY_RESOURCE_TEXTURE_NV: u32 = 38213;
4832pub const GL_QUERY_RESOURCE_RENDERBUFFER_NV: u32 = 38214;
4833pub const GL_QUERY_RESOURCE_BUFFEROBJECT_NV: u32 = 38215;
4834pub const GL_NV_query_resource_tag: u32 = 1;
4835pub const GL_NV_register_combiners: u32 = 1;
4836pub const GL_REGISTER_COMBINERS_NV: u32 = 34082;
4837pub const GL_VARIABLE_A_NV: u32 = 34083;
4838pub const GL_VARIABLE_B_NV: u32 = 34084;
4839pub const GL_VARIABLE_C_NV: u32 = 34085;
4840pub const GL_VARIABLE_D_NV: u32 = 34086;
4841pub const GL_VARIABLE_E_NV: u32 = 34087;
4842pub const GL_VARIABLE_F_NV: u32 = 34088;
4843pub const GL_VARIABLE_G_NV: u32 = 34089;
4844pub const GL_CONSTANT_COLOR0_NV: u32 = 34090;
4845pub const GL_CONSTANT_COLOR1_NV: u32 = 34091;
4846pub const GL_SPARE0_NV: u32 = 34094;
4847pub const GL_SPARE1_NV: u32 = 34095;
4848pub const GL_DISCARD_NV: u32 = 34096;
4849pub const GL_E_TIMES_F_NV: u32 = 34097;
4850pub const GL_SPARE0_PLUS_SECONDARY_COLOR_NV: u32 = 34098;
4851pub const GL_UNSIGNED_IDENTITY_NV: u32 = 34102;
4852pub const GL_UNSIGNED_INVERT_NV: u32 = 34103;
4853pub const GL_EXPAND_NORMAL_NV: u32 = 34104;
4854pub const GL_EXPAND_NEGATE_NV: u32 = 34105;
4855pub const GL_HALF_BIAS_NORMAL_NV: u32 = 34106;
4856pub const GL_HALF_BIAS_NEGATE_NV: u32 = 34107;
4857pub const GL_SIGNED_IDENTITY_NV: u32 = 34108;
4858pub const GL_SIGNED_NEGATE_NV: u32 = 34109;
4859pub const GL_SCALE_BY_TWO_NV: u32 = 34110;
4860pub const GL_SCALE_BY_FOUR_NV: u32 = 34111;
4861pub const GL_SCALE_BY_ONE_HALF_NV: u32 = 34112;
4862pub const GL_BIAS_BY_NEGATIVE_ONE_HALF_NV: u32 = 34113;
4863pub const GL_COMBINER_INPUT_NV: u32 = 34114;
4864pub const GL_COMBINER_MAPPING_NV: u32 = 34115;
4865pub const GL_COMBINER_COMPONENT_USAGE_NV: u32 = 34116;
4866pub const GL_COMBINER_AB_DOT_PRODUCT_NV: u32 = 34117;
4867pub const GL_COMBINER_CD_DOT_PRODUCT_NV: u32 = 34118;
4868pub const GL_COMBINER_MUX_SUM_NV: u32 = 34119;
4869pub const GL_COMBINER_SCALE_NV: u32 = 34120;
4870pub const GL_COMBINER_BIAS_NV: u32 = 34121;
4871pub const GL_COMBINER_AB_OUTPUT_NV: u32 = 34122;
4872pub const GL_COMBINER_CD_OUTPUT_NV: u32 = 34123;
4873pub const GL_COMBINER_SUM_OUTPUT_NV: u32 = 34124;
4874pub const GL_MAX_GENERAL_COMBINERS_NV: u32 = 34125;
4875pub const GL_NUM_GENERAL_COMBINERS_NV: u32 = 34126;
4876pub const GL_COLOR_SUM_CLAMP_NV: u32 = 34127;
4877pub const GL_COMBINER0_NV: u32 = 34128;
4878pub const GL_COMBINER1_NV: u32 = 34129;
4879pub const GL_COMBINER2_NV: u32 = 34130;
4880pub const GL_COMBINER3_NV: u32 = 34131;
4881pub const GL_COMBINER4_NV: u32 = 34132;
4882pub const GL_COMBINER5_NV: u32 = 34133;
4883pub const GL_COMBINER6_NV: u32 = 34134;
4884pub const GL_COMBINER7_NV: u32 = 34135;
4885pub const GL_NV_register_combiners2: u32 = 1;
4886pub const GL_PER_STAGE_CONSTANTS_NV: u32 = 34101;
4887pub const GL_NV_representative_fragment_test: u32 = 1;
4888pub const GL_REPRESENTATIVE_FRAGMENT_TEST_NV: u32 = 37759;
4889pub const GL_NV_robustness_video_memory_purge: u32 = 1;
4890pub const GL_PURGED_CONTEXT_RESET_NV: u32 = 37563;
4891pub const GL_NV_sample_locations: u32 = 1;
4892pub const GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV: u32 = 37693;
4893pub const GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV: u32 = 37694;
4894pub const GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV: u32 = 37695;
4895pub const GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV: u32 = 37696;
4896pub const GL_SAMPLE_LOCATION_NV: u32 = 36432;
4897pub const GL_PROGRAMMABLE_SAMPLE_LOCATION_NV: u32 = 37697;
4898pub const GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV: u32 = 37698;
4899pub const GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV: u32 = 37699;
4900pub const GL_NV_sample_mask_override_coverage: u32 = 1;
4901pub const GL_NV_scissor_exclusive: u32 = 1;
4902pub const GL_SCISSOR_TEST_EXCLUSIVE_NV: u32 = 38229;
4903pub const GL_SCISSOR_BOX_EXCLUSIVE_NV: u32 = 38230;
4904pub const GL_NV_shader_atomic_counters: u32 = 1;
4905pub const GL_NV_shader_atomic_float: u32 = 1;
4906pub const GL_NV_shader_atomic_float64: u32 = 1;
4907pub const GL_NV_shader_atomic_fp16_vector: u32 = 1;
4908pub const GL_NV_shader_atomic_int64: u32 = 1;
4909pub const GL_NV_shader_buffer_load: u32 = 1;
4910pub const GL_BUFFER_GPU_ADDRESS_NV: u32 = 36637;
4911pub const GL_GPU_ADDRESS_NV: u32 = 36660;
4912pub const GL_MAX_SHADER_BUFFER_ADDRESS_NV: u32 = 36661;
4913pub const GL_NV_shader_buffer_store: u32 = 1;
4914pub const GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV: u32 = 16;
4915pub const GL_NV_shader_storage_buffer_object: u32 = 1;
4916pub const GL_NV_shader_subgroup_partitioned: u32 = 1;
4917pub const GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV: u32 = 256;
4918pub const GL_NV_shader_texture_footprint: u32 = 1;
4919pub const GL_NV_shader_thread_group: u32 = 1;
4920pub const GL_WARP_SIZE_NV: u32 = 37689;
4921pub const GL_WARPS_PER_SM_NV: u32 = 37690;
4922pub const GL_SM_COUNT_NV: u32 = 37691;
4923pub const GL_NV_shader_thread_shuffle: u32 = 1;
4924pub const GL_NV_shading_rate_image: u32 = 1;
4925pub const GL_SHADING_RATE_IMAGE_NV: u32 = 38243;
4926pub const GL_SHADING_RATE_NO_INVOCATIONS_NV: u32 = 38244;
4927pub const GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV: u32 = 38245;
4928pub const GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV: u32 = 38246;
4929pub const GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV: u32 = 38247;
4930pub const GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV: u32 = 38248;
4931pub const GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV: u32 = 38249;
4932pub const GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV: u32 = 38250;
4933pub const GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV: u32 = 38251;
4934pub const GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV: u32 = 38252;
4935pub const GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV: u32 = 38253;
4936pub const GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV: u32 = 38254;
4937pub const GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV: u32 = 38255;
4938pub const GL_SHADING_RATE_IMAGE_BINDING_NV: u32 = 38235;
4939pub const GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV: u32 = 38236;
4940pub const GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV: u32 = 38237;
4941pub const GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV: u32 = 38238;
4942pub const GL_MAX_COARSE_FRAGMENT_SAMPLES_NV: u32 = 38239;
4943pub const GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV: u32 = 38318;
4944pub const GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV: u32 = 38319;
4945pub const GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV: u32 = 38320;
4946pub const GL_NV_stereo_view_rendering: u32 = 1;
4947pub const GL_NV_tessellation_program5: u32 = 1;
4948pub const GL_MAX_PROGRAM_PATCH_ATTRIBS_NV: u32 = 34520;
4949pub const GL_TESS_CONTROL_PROGRAM_NV: u32 = 35102;
4950pub const GL_TESS_EVALUATION_PROGRAM_NV: u32 = 35103;
4951pub const GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV: u32 = 35956;
4952pub const GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV: u32 = 35957;
4953pub const GL_NV_texgen_emboss: u32 = 1;
4954pub const GL_EMBOSS_LIGHT_NV: u32 = 34141;
4955pub const GL_EMBOSS_CONSTANT_NV: u32 = 34142;
4956pub const GL_EMBOSS_MAP_NV: u32 = 34143;
4957pub const GL_NV_texgen_reflection: u32 = 1;
4958pub const GL_NORMAL_MAP_NV: u32 = 34065;
4959pub const GL_REFLECTION_MAP_NV: u32 = 34066;
4960pub const GL_NV_texture_barrier: u32 = 1;
4961pub const GL_NV_texture_compression_vtc: u32 = 1;
4962pub const GL_NV_texture_env_combine4: u32 = 1;
4963pub const GL_COMBINE4_NV: u32 = 34051;
4964pub const GL_SOURCE3_RGB_NV: u32 = 34179;
4965pub const GL_SOURCE3_ALPHA_NV: u32 = 34187;
4966pub const GL_OPERAND3_RGB_NV: u32 = 34195;
4967pub const GL_OPERAND3_ALPHA_NV: u32 = 34203;
4968pub const GL_NV_texture_expand_normal: u32 = 1;
4969pub const GL_TEXTURE_UNSIGNED_REMAP_MODE_NV: u32 = 34959;
4970pub const GL_NV_texture_multisample: u32 = 1;
4971pub const GL_TEXTURE_COVERAGE_SAMPLES_NV: u32 = 36933;
4972pub const GL_TEXTURE_COLOR_SAMPLES_NV: u32 = 36934;
4973pub const GL_NV_texture_rectangle: u32 = 1;
4974pub const GL_TEXTURE_RECTANGLE_NV: u32 = 34037;
4975pub const GL_TEXTURE_BINDING_RECTANGLE_NV: u32 = 34038;
4976pub const GL_PROXY_TEXTURE_RECTANGLE_NV: u32 = 34039;
4977pub const GL_MAX_RECTANGLE_TEXTURE_SIZE_NV: u32 = 34040;
4978pub const GL_NV_texture_rectangle_compressed: u32 = 1;
4979pub const GL_NV_texture_shader: u32 = 1;
4980pub const GL_OFFSET_TEXTURE_RECTANGLE_NV: u32 = 34380;
4981pub const GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV: u32 = 34381;
4982pub const GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV: u32 = 34382;
4983pub const GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV: u32 = 34521;
4984pub const GL_UNSIGNED_INT_S8_S8_8_8_NV: u32 = 34522;
4985pub const GL_UNSIGNED_INT_8_8_S8_S8_REV_NV: u32 = 34523;
4986pub const GL_DSDT_MAG_INTENSITY_NV: u32 = 34524;
4987pub const GL_SHADER_CONSISTENT_NV: u32 = 34525;
4988pub const GL_TEXTURE_SHADER_NV: u32 = 34526;
4989pub const GL_SHADER_OPERATION_NV: u32 = 34527;
4990pub const GL_CULL_MODES_NV: u32 = 34528;
4991pub const GL_OFFSET_TEXTURE_MATRIX_NV: u32 = 34529;
4992pub const GL_OFFSET_TEXTURE_SCALE_NV: u32 = 34530;
4993pub const GL_OFFSET_TEXTURE_BIAS_NV: u32 = 34531;
4994pub const GL_OFFSET_TEXTURE_2D_MATRIX_NV: u32 = 34529;
4995pub const GL_OFFSET_TEXTURE_2D_SCALE_NV: u32 = 34530;
4996pub const GL_OFFSET_TEXTURE_2D_BIAS_NV: u32 = 34531;
4997pub const GL_PREVIOUS_TEXTURE_INPUT_NV: u32 = 34532;
4998pub const GL_CONST_EYE_NV: u32 = 34533;
4999pub const GL_PASS_THROUGH_NV: u32 = 34534;
5000pub const GL_CULL_FRAGMENT_NV: u32 = 34535;
5001pub const GL_OFFSET_TEXTURE_2D_NV: u32 = 34536;
5002pub const GL_DEPENDENT_AR_TEXTURE_2D_NV: u32 = 34537;
5003pub const GL_DEPENDENT_GB_TEXTURE_2D_NV: u32 = 34538;
5004pub const GL_DOT_PRODUCT_NV: u32 = 34540;
5005pub const GL_DOT_PRODUCT_DEPTH_REPLACE_NV: u32 = 34541;
5006pub const GL_DOT_PRODUCT_TEXTURE_2D_NV: u32 = 34542;
5007pub const GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV: u32 = 34544;
5008pub const GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV: u32 = 34545;
5009pub const GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV: u32 = 34546;
5010pub const GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV: u32 = 34547;
5011pub const GL_HILO_NV: u32 = 34548;
5012pub const GL_DSDT_NV: u32 = 34549;
5013pub const GL_DSDT_MAG_NV: u32 = 34550;
5014pub const GL_DSDT_MAG_VIB_NV: u32 = 34551;
5015pub const GL_HILO16_NV: u32 = 34552;
5016pub const GL_SIGNED_HILO_NV: u32 = 34553;
5017pub const GL_SIGNED_HILO16_NV: u32 = 34554;
5018pub const GL_SIGNED_RGBA_NV: u32 = 34555;
5019pub const GL_SIGNED_RGBA8_NV: u32 = 34556;
5020pub const GL_SIGNED_RGB_NV: u32 = 34558;
5021pub const GL_SIGNED_RGB8_NV: u32 = 34559;
5022pub const GL_SIGNED_LUMINANCE_NV: u32 = 34561;
5023pub const GL_SIGNED_LUMINANCE8_NV: u32 = 34562;
5024pub const GL_SIGNED_LUMINANCE_ALPHA_NV: u32 = 34563;
5025pub const GL_SIGNED_LUMINANCE8_ALPHA8_NV: u32 = 34564;
5026pub const GL_SIGNED_ALPHA_NV: u32 = 34565;
5027pub const GL_SIGNED_ALPHA8_NV: u32 = 34566;
5028pub const GL_SIGNED_INTENSITY_NV: u32 = 34567;
5029pub const GL_SIGNED_INTENSITY8_NV: u32 = 34568;
5030pub const GL_DSDT8_NV: u32 = 34569;
5031pub const GL_DSDT8_MAG8_NV: u32 = 34570;
5032pub const GL_DSDT8_MAG8_INTENSITY8_NV: u32 = 34571;
5033pub const GL_SIGNED_RGB_UNSIGNED_ALPHA_NV: u32 = 34572;
5034pub const GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV: u32 = 34573;
5035pub const GL_HI_SCALE_NV: u32 = 34574;
5036pub const GL_LO_SCALE_NV: u32 = 34575;
5037pub const GL_DS_SCALE_NV: u32 = 34576;
5038pub const GL_DT_SCALE_NV: u32 = 34577;
5039pub const GL_MAGNITUDE_SCALE_NV: u32 = 34578;
5040pub const GL_VIBRANCE_SCALE_NV: u32 = 34579;
5041pub const GL_HI_BIAS_NV: u32 = 34580;
5042pub const GL_LO_BIAS_NV: u32 = 34581;
5043pub const GL_DS_BIAS_NV: u32 = 34582;
5044pub const GL_DT_BIAS_NV: u32 = 34583;
5045pub const GL_MAGNITUDE_BIAS_NV: u32 = 34584;
5046pub const GL_VIBRANCE_BIAS_NV: u32 = 34585;
5047pub const GL_TEXTURE_BORDER_VALUES_NV: u32 = 34586;
5048pub const GL_TEXTURE_HI_SIZE_NV: u32 = 34587;
5049pub const GL_TEXTURE_LO_SIZE_NV: u32 = 34588;
5050pub const GL_TEXTURE_DS_SIZE_NV: u32 = 34589;
5051pub const GL_TEXTURE_DT_SIZE_NV: u32 = 34590;
5052pub const GL_TEXTURE_MAG_SIZE_NV: u32 = 34591;
5053pub const GL_NV_texture_shader2: u32 = 1;
5054pub const GL_DOT_PRODUCT_TEXTURE_3D_NV: u32 = 34543;
5055pub const GL_NV_texture_shader3: u32 = 1;
5056pub const GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV: u32 = 34896;
5057pub const GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV: u32 = 34897;
5058pub const GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV: u32 = 34898;
5059pub const GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV: u32 = 34899;
5060pub const GL_OFFSET_HILO_TEXTURE_2D_NV: u32 = 34900;
5061pub const GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV: u32 = 34901;
5062pub const GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV: u32 = 34902;
5063pub const GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV: u32 = 34903;
5064pub const GL_DEPENDENT_HILO_TEXTURE_2D_NV: u32 = 34904;
5065pub const GL_DEPENDENT_RGB_TEXTURE_3D_NV: u32 = 34905;
5066pub const GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV: u32 = 34906;
5067pub const GL_DOT_PRODUCT_PASS_THROUGH_NV: u32 = 34907;
5068pub const GL_DOT_PRODUCT_TEXTURE_1D_NV: u32 = 34908;
5069pub const GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV: u32 = 34909;
5070pub const GL_HILO8_NV: u32 = 34910;
5071pub const GL_SIGNED_HILO8_NV: u32 = 34911;
5072pub const GL_FORCE_BLUE_TO_ONE_NV: u32 = 34912;
5073pub const GL_NV_transform_feedback: u32 = 1;
5074pub const GL_BACK_PRIMARY_COLOR_NV: u32 = 35959;
5075pub const GL_BACK_SECONDARY_COLOR_NV: u32 = 35960;
5076pub const GL_TEXTURE_COORD_NV: u32 = 35961;
5077pub const GL_CLIP_DISTANCE_NV: u32 = 35962;
5078pub const GL_VERTEX_ID_NV: u32 = 35963;
5079pub const GL_PRIMITIVE_ID_NV: u32 = 35964;
5080pub const GL_GENERIC_ATTRIB_NV: u32 = 35965;
5081pub const GL_TRANSFORM_FEEDBACK_ATTRIBS_NV: u32 = 35966;
5082pub const GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV: u32 = 35967;
5083pub const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV: u32 = 35968;
5084pub const GL_ACTIVE_VARYINGS_NV: u32 = 35969;
5085pub const GL_ACTIVE_VARYING_MAX_LENGTH_NV: u32 = 35970;
5086pub const GL_TRANSFORM_FEEDBACK_VARYINGS_NV: u32 = 35971;
5087pub const GL_TRANSFORM_FEEDBACK_BUFFER_START_NV: u32 = 35972;
5088pub const GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV: u32 = 35973;
5089pub const GL_TRANSFORM_FEEDBACK_RECORD_NV: u32 = 35974;
5090pub const GL_PRIMITIVES_GENERATED_NV: u32 = 35975;
5091pub const GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV: u32 = 35976;
5092pub const GL_RASTERIZER_DISCARD_NV: u32 = 35977;
5093pub const GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV: u32 = 35978;
5094pub const GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV: u32 = 35979;
5095pub const GL_INTERLEAVED_ATTRIBS_NV: u32 = 35980;
5096pub const GL_SEPARATE_ATTRIBS_NV: u32 = 35981;
5097pub const GL_TRANSFORM_FEEDBACK_BUFFER_NV: u32 = 35982;
5098pub const GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV: u32 = 35983;
5099pub const GL_LAYER_NV: u32 = 36266;
5100pub const GL_NEXT_BUFFER_NV: i32 = -2;
5101pub const GL_SKIP_COMPONENTS4_NV: i32 = -3;
5102pub const GL_SKIP_COMPONENTS3_NV: i32 = -4;
5103pub const GL_SKIP_COMPONENTS2_NV: i32 = -5;
5104pub const GL_SKIP_COMPONENTS1_NV: i32 = -6;
5105pub const GL_NV_transform_feedback2: u32 = 1;
5106pub const GL_TRANSFORM_FEEDBACK_NV: u32 = 36386;
5107pub const GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV: u32 = 36387;
5108pub const GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV: u32 = 36388;
5109pub const GL_TRANSFORM_FEEDBACK_BINDING_NV: u32 = 36389;
5110pub const GL_NV_uniform_buffer_unified_memory: u32 = 1;
5111pub const GL_UNIFORM_BUFFER_UNIFIED_NV: u32 = 37742;
5112pub const GL_UNIFORM_BUFFER_ADDRESS_NV: u32 = 37743;
5113pub const GL_UNIFORM_BUFFER_LENGTH_NV: u32 = 37744;
5114pub const GL_NV_vdpau_interop: u32 = 1;
5115pub const GL_SURFACE_STATE_NV: u32 = 34539;
5116pub const GL_SURFACE_REGISTERED_NV: u32 = 34557;
5117pub const GL_SURFACE_MAPPED_NV: u32 = 34560;
5118pub const GL_WRITE_DISCARD_NV: u32 = 35006;
5119pub const GL_NV_vdpau_interop2: u32 = 1;
5120pub const GL_NV_vertex_array_range: u32 = 1;
5121pub const GL_VERTEX_ARRAY_RANGE_NV: u32 = 34077;
5122pub const GL_VERTEX_ARRAY_RANGE_LENGTH_NV: u32 = 34078;
5123pub const GL_VERTEX_ARRAY_RANGE_VALID_NV: u32 = 34079;
5124pub const GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV: u32 = 34080;
5125pub const GL_VERTEX_ARRAY_RANGE_POINTER_NV: u32 = 34081;
5126pub const GL_NV_vertex_array_range2: u32 = 1;
5127pub const GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV: u32 = 34099;
5128pub const GL_NV_vertex_attrib_integer_64bit: u32 = 1;
5129pub const GL_NV_vertex_buffer_unified_memory: u32 = 1;
5130pub const GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV: u32 = 36638;
5131pub const GL_ELEMENT_ARRAY_UNIFIED_NV: u32 = 36639;
5132pub const GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV: u32 = 36640;
5133pub const GL_VERTEX_ARRAY_ADDRESS_NV: u32 = 36641;
5134pub const GL_NORMAL_ARRAY_ADDRESS_NV: u32 = 36642;
5135pub const GL_COLOR_ARRAY_ADDRESS_NV: u32 = 36643;
5136pub const GL_INDEX_ARRAY_ADDRESS_NV: u32 = 36644;
5137pub const GL_TEXTURE_COORD_ARRAY_ADDRESS_NV: u32 = 36645;
5138pub const GL_EDGE_FLAG_ARRAY_ADDRESS_NV: u32 = 36646;
5139pub const GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV: u32 = 36647;
5140pub const GL_FOG_COORD_ARRAY_ADDRESS_NV: u32 = 36648;
5141pub const GL_ELEMENT_ARRAY_ADDRESS_NV: u32 = 36649;
5142pub const GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV: u32 = 36650;
5143pub const GL_VERTEX_ARRAY_LENGTH_NV: u32 = 36651;
5144pub const GL_NORMAL_ARRAY_LENGTH_NV: u32 = 36652;
5145pub const GL_COLOR_ARRAY_LENGTH_NV: u32 = 36653;
5146pub const GL_INDEX_ARRAY_LENGTH_NV: u32 = 36654;
5147pub const GL_TEXTURE_COORD_ARRAY_LENGTH_NV: u32 = 36655;
5148pub const GL_EDGE_FLAG_ARRAY_LENGTH_NV: u32 = 36656;
5149pub const GL_SECONDARY_COLOR_ARRAY_LENGTH_NV: u32 = 36657;
5150pub const GL_FOG_COORD_ARRAY_LENGTH_NV: u32 = 36658;
5151pub const GL_ELEMENT_ARRAY_LENGTH_NV: u32 = 36659;
5152pub const GL_DRAW_INDIRECT_UNIFIED_NV: u32 = 36672;
5153pub const GL_DRAW_INDIRECT_ADDRESS_NV: u32 = 36673;
5154pub const GL_DRAW_INDIRECT_LENGTH_NV: u32 = 36674;
5155pub const GL_NV_vertex_program: u32 = 1;
5156pub const GL_VERTEX_PROGRAM_NV: u32 = 34336;
5157pub const GL_VERTEX_STATE_PROGRAM_NV: u32 = 34337;
5158pub const GL_ATTRIB_ARRAY_SIZE_NV: u32 = 34339;
5159pub const GL_ATTRIB_ARRAY_STRIDE_NV: u32 = 34340;
5160pub const GL_ATTRIB_ARRAY_TYPE_NV: u32 = 34341;
5161pub const GL_CURRENT_ATTRIB_NV: u32 = 34342;
5162pub const GL_PROGRAM_LENGTH_NV: u32 = 34343;
5163pub const GL_PROGRAM_STRING_NV: u32 = 34344;
5164pub const GL_MODELVIEW_PROJECTION_NV: u32 = 34345;
5165pub const GL_IDENTITY_NV: u32 = 34346;
5166pub const GL_INVERSE_NV: u32 = 34347;
5167pub const GL_TRANSPOSE_NV: u32 = 34348;
5168pub const GL_INVERSE_TRANSPOSE_NV: u32 = 34349;
5169pub const GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV: u32 = 34350;
5170pub const GL_MAX_TRACK_MATRICES_NV: u32 = 34351;
5171pub const GL_MATRIX0_NV: u32 = 34352;
5172pub const GL_MATRIX1_NV: u32 = 34353;
5173pub const GL_MATRIX2_NV: u32 = 34354;
5174pub const GL_MATRIX3_NV: u32 = 34355;
5175pub const GL_MATRIX4_NV: u32 = 34356;
5176pub const GL_MATRIX5_NV: u32 = 34357;
5177pub const GL_MATRIX6_NV: u32 = 34358;
5178pub const GL_MATRIX7_NV: u32 = 34359;
5179pub const GL_CURRENT_MATRIX_STACK_DEPTH_NV: u32 = 34368;
5180pub const GL_CURRENT_MATRIX_NV: u32 = 34369;
5181pub const GL_VERTEX_PROGRAM_POINT_SIZE_NV: u32 = 34370;
5182pub const GL_VERTEX_PROGRAM_TWO_SIDE_NV: u32 = 34371;
5183pub const GL_PROGRAM_PARAMETER_NV: u32 = 34372;
5184pub const GL_ATTRIB_ARRAY_POINTER_NV: u32 = 34373;
5185pub const GL_PROGRAM_TARGET_NV: u32 = 34374;
5186pub const GL_PROGRAM_RESIDENT_NV: u32 = 34375;
5187pub const GL_TRACK_MATRIX_NV: u32 = 34376;
5188pub const GL_TRACK_MATRIX_TRANSFORM_NV: u32 = 34377;
5189pub const GL_VERTEX_PROGRAM_BINDING_NV: u32 = 34378;
5190pub const GL_PROGRAM_ERROR_POSITION_NV: u32 = 34379;
5191pub const GL_VERTEX_ATTRIB_ARRAY0_NV: u32 = 34384;
5192pub const GL_VERTEX_ATTRIB_ARRAY1_NV: u32 = 34385;
5193pub const GL_VERTEX_ATTRIB_ARRAY2_NV: u32 = 34386;
5194pub const GL_VERTEX_ATTRIB_ARRAY3_NV: u32 = 34387;
5195pub const GL_VERTEX_ATTRIB_ARRAY4_NV: u32 = 34388;
5196pub const GL_VERTEX_ATTRIB_ARRAY5_NV: u32 = 34389;
5197pub const GL_VERTEX_ATTRIB_ARRAY6_NV: u32 = 34390;
5198pub const GL_VERTEX_ATTRIB_ARRAY7_NV: u32 = 34391;
5199pub const GL_VERTEX_ATTRIB_ARRAY8_NV: u32 = 34392;
5200pub const GL_VERTEX_ATTRIB_ARRAY9_NV: u32 = 34393;
5201pub const GL_VERTEX_ATTRIB_ARRAY10_NV: u32 = 34394;
5202pub const GL_VERTEX_ATTRIB_ARRAY11_NV: u32 = 34395;
5203pub const GL_VERTEX_ATTRIB_ARRAY12_NV: u32 = 34396;
5204pub const GL_VERTEX_ATTRIB_ARRAY13_NV: u32 = 34397;
5205pub const GL_VERTEX_ATTRIB_ARRAY14_NV: u32 = 34398;
5206pub const GL_VERTEX_ATTRIB_ARRAY15_NV: u32 = 34399;
5207pub const GL_MAP1_VERTEX_ATTRIB0_4_NV: u32 = 34400;
5208pub const GL_MAP1_VERTEX_ATTRIB1_4_NV: u32 = 34401;
5209pub const GL_MAP1_VERTEX_ATTRIB2_4_NV: u32 = 34402;
5210pub const GL_MAP1_VERTEX_ATTRIB3_4_NV: u32 = 34403;
5211pub const GL_MAP1_VERTEX_ATTRIB4_4_NV: u32 = 34404;
5212pub const GL_MAP1_VERTEX_ATTRIB5_4_NV: u32 = 34405;
5213pub const GL_MAP1_VERTEX_ATTRIB6_4_NV: u32 = 34406;
5214pub const GL_MAP1_VERTEX_ATTRIB7_4_NV: u32 = 34407;
5215pub const GL_MAP1_VERTEX_ATTRIB8_4_NV: u32 = 34408;
5216pub const GL_MAP1_VERTEX_ATTRIB9_4_NV: u32 = 34409;
5217pub const GL_MAP1_VERTEX_ATTRIB10_4_NV: u32 = 34410;
5218pub const GL_MAP1_VERTEX_ATTRIB11_4_NV: u32 = 34411;
5219pub const GL_MAP1_VERTEX_ATTRIB12_4_NV: u32 = 34412;
5220pub const GL_MAP1_VERTEX_ATTRIB13_4_NV: u32 = 34413;
5221pub const GL_MAP1_VERTEX_ATTRIB14_4_NV: u32 = 34414;
5222pub const GL_MAP1_VERTEX_ATTRIB15_4_NV: u32 = 34415;
5223pub const GL_MAP2_VERTEX_ATTRIB0_4_NV: u32 = 34416;
5224pub const GL_MAP2_VERTEX_ATTRIB1_4_NV: u32 = 34417;
5225pub const GL_MAP2_VERTEX_ATTRIB2_4_NV: u32 = 34418;
5226pub const GL_MAP2_VERTEX_ATTRIB3_4_NV: u32 = 34419;
5227pub const GL_MAP2_VERTEX_ATTRIB4_4_NV: u32 = 34420;
5228pub const GL_MAP2_VERTEX_ATTRIB5_4_NV: u32 = 34421;
5229pub const GL_MAP2_VERTEX_ATTRIB6_4_NV: u32 = 34422;
5230pub const GL_MAP2_VERTEX_ATTRIB7_4_NV: u32 = 34423;
5231pub const GL_MAP2_VERTEX_ATTRIB8_4_NV: u32 = 34424;
5232pub const GL_MAP2_VERTEX_ATTRIB9_4_NV: u32 = 34425;
5233pub const GL_MAP2_VERTEX_ATTRIB10_4_NV: u32 = 34426;
5234pub const GL_MAP2_VERTEX_ATTRIB11_4_NV: u32 = 34427;
5235pub const GL_MAP2_VERTEX_ATTRIB12_4_NV: u32 = 34428;
5236pub const GL_MAP2_VERTEX_ATTRIB13_4_NV: u32 = 34429;
5237pub const GL_MAP2_VERTEX_ATTRIB14_4_NV: u32 = 34430;
5238pub const GL_MAP2_VERTEX_ATTRIB15_4_NV: u32 = 34431;
5239pub const GL_NV_vertex_program1_1: u32 = 1;
5240pub const GL_NV_vertex_program2: u32 = 1;
5241pub const GL_NV_vertex_program2_option: u32 = 1;
5242pub const GL_NV_vertex_program3: u32 = 1;
5243pub const GL_NV_vertex_program4: u32 = 1;
5244pub const GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV: u32 = 35069;
5245pub const GL_NV_video_capture: u32 = 1;
5246pub const GL_VIDEO_BUFFER_NV: u32 = 36896;
5247pub const GL_VIDEO_BUFFER_BINDING_NV: u32 = 36897;
5248pub const GL_FIELD_UPPER_NV: u32 = 36898;
5249pub const GL_FIELD_LOWER_NV: u32 = 36899;
5250pub const GL_NUM_VIDEO_CAPTURE_STREAMS_NV: u32 = 36900;
5251pub const GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV: u32 = 36901;
5252pub const GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV: u32 = 36902;
5253pub const GL_LAST_VIDEO_CAPTURE_STATUS_NV: u32 = 36903;
5254pub const GL_VIDEO_BUFFER_PITCH_NV: u32 = 36904;
5255pub const GL_VIDEO_COLOR_CONVERSION_MATRIX_NV: u32 = 36905;
5256pub const GL_VIDEO_COLOR_CONVERSION_MAX_NV: u32 = 36906;
5257pub const GL_VIDEO_COLOR_CONVERSION_MIN_NV: u32 = 36907;
5258pub const GL_VIDEO_COLOR_CONVERSION_OFFSET_NV: u32 = 36908;
5259pub const GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV: u32 = 36909;
5260pub const GL_PARTIAL_SUCCESS_NV: u32 = 36910;
5261pub const GL_SUCCESS_NV: u32 = 36911;
5262pub const GL_FAILURE_NV: u32 = 36912;
5263pub const GL_YCBYCR8_422_NV: u32 = 36913;
5264pub const GL_YCBAYCR8A_4224_NV: u32 = 36914;
5265pub const GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV: u32 = 36915;
5266pub const GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV: u32 = 36916;
5267pub const GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV: u32 = 36917;
5268pub const GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV: u32 = 36918;
5269pub const GL_Z4Y12Z4CB12Z4CR12_444_NV: u32 = 36919;
5270pub const GL_VIDEO_CAPTURE_FRAME_WIDTH_NV: u32 = 36920;
5271pub const GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV: u32 = 36921;
5272pub const GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV: u32 = 36922;
5273pub const GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV: u32 = 36923;
5274pub const GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV: u32 = 36924;
5275pub const GL_NV_viewport_array2: u32 = 1;
5276pub const GL_NV_viewport_swizzle: u32 = 1;
5277pub const GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV: u32 = 37712;
5278pub const GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV: u32 = 37713;
5279pub const GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV: u32 = 37714;
5280pub const GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV: u32 = 37715;
5281pub const GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV: u32 = 37716;
5282pub const GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV: u32 = 37717;
5283pub const GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV: u32 = 37718;
5284pub const GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV: u32 = 37719;
5285pub const GL_VIEWPORT_SWIZZLE_X_NV: u32 = 37720;
5286pub const GL_VIEWPORT_SWIZZLE_Y_NV: u32 = 37721;
5287pub const GL_VIEWPORT_SWIZZLE_Z_NV: u32 = 37722;
5288pub const GL_VIEWPORT_SWIZZLE_W_NV: u32 = 37723;
5289pub const GL_OML_interlace: u32 = 1;
5290pub const GL_INTERLACE_OML: u32 = 35200;
5291pub const GL_INTERLACE_READ_OML: u32 = 35201;
5292pub const GL_OML_resample: u32 = 1;
5293pub const GL_PACK_RESAMPLE_OML: u32 = 35204;
5294pub const GL_UNPACK_RESAMPLE_OML: u32 = 35205;
5295pub const GL_RESAMPLE_REPLICATE_OML: u32 = 35206;
5296pub const GL_RESAMPLE_ZERO_FILL_OML: u32 = 35207;
5297pub const GL_RESAMPLE_AVERAGE_OML: u32 = 35208;
5298pub const GL_RESAMPLE_DECIMATE_OML: u32 = 35209;
5299pub const GL_OML_subsample: u32 = 1;
5300pub const GL_FORMAT_SUBSAMPLE_24_24_OML: u32 = 35202;
5301pub const GL_FORMAT_SUBSAMPLE_244_244_OML: u32 = 35203;
5302pub const GL_OVR_multiview: u32 = 1;
5303pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR: u32 = 38448;
5304pub const GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR: u32 = 38450;
5305pub const GL_MAX_VIEWS_OVR: u32 = 38449;
5306pub const GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR: u32 = 38451;
5307pub const GL_OVR_multiview2: u32 = 1;
5308pub const GL_PGI_misc_hints: u32 = 1;
5309pub const GL_PREFER_DOUBLEBUFFER_HINT_PGI: u32 = 107000;
5310pub const GL_CONSERVE_MEMORY_HINT_PGI: u32 = 107005;
5311pub const GL_RECLAIM_MEMORY_HINT_PGI: u32 = 107006;
5312pub const GL_NATIVE_GRAPHICS_HANDLE_PGI: u32 = 107010;
5313pub const GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI: u32 = 107011;
5314pub const GL_NATIVE_GRAPHICS_END_HINT_PGI: u32 = 107012;
5315pub const GL_ALWAYS_FAST_HINT_PGI: u32 = 107020;
5316pub const GL_ALWAYS_SOFT_HINT_PGI: u32 = 107021;
5317pub const GL_ALLOW_DRAW_OBJ_HINT_PGI: u32 = 107022;
5318pub const GL_ALLOW_DRAW_WIN_HINT_PGI: u32 = 107023;
5319pub const GL_ALLOW_DRAW_FRG_HINT_PGI: u32 = 107024;
5320pub const GL_ALLOW_DRAW_MEM_HINT_PGI: u32 = 107025;
5321pub const GL_STRICT_DEPTHFUNC_HINT_PGI: u32 = 107030;
5322pub const GL_STRICT_LIGHTING_HINT_PGI: u32 = 107031;
5323pub const GL_STRICT_SCISSOR_HINT_PGI: u32 = 107032;
5324pub const GL_FULL_STIPPLE_HINT_PGI: u32 = 107033;
5325pub const GL_CLIP_NEAR_HINT_PGI: u32 = 107040;
5326pub const GL_CLIP_FAR_HINT_PGI: u32 = 107041;
5327pub const GL_WIDE_LINE_HINT_PGI: u32 = 107042;
5328pub const GL_BACK_NORMALS_HINT_PGI: u32 = 107043;
5329pub const GL_PGI_vertex_hints: u32 = 1;
5330pub const GL_VERTEX_DATA_HINT_PGI: u32 = 107050;
5331pub const GL_VERTEX_CONSISTENT_HINT_PGI: u32 = 107051;
5332pub const GL_MATERIAL_SIDE_HINT_PGI: u32 = 107052;
5333pub const GL_MAX_VERTEX_HINT_PGI: u32 = 107053;
5334pub const GL_COLOR3_BIT_PGI: u32 = 65536;
5335pub const GL_COLOR4_BIT_PGI: u32 = 131072;
5336pub const GL_EDGEFLAG_BIT_PGI: u32 = 262144;
5337pub const GL_INDEX_BIT_PGI: u32 = 524288;
5338pub const GL_MAT_AMBIENT_BIT_PGI: u32 = 1048576;
5339pub const GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI: u32 = 2097152;
5340pub const GL_MAT_DIFFUSE_BIT_PGI: u32 = 4194304;
5341pub const GL_MAT_EMISSION_BIT_PGI: u32 = 8388608;
5342pub const GL_MAT_COLOR_INDEXES_BIT_PGI: u32 = 16777216;
5343pub const GL_MAT_SHININESS_BIT_PGI: u32 = 33554432;
5344pub const GL_MAT_SPECULAR_BIT_PGI: u32 = 67108864;
5345pub const GL_NORMAL_BIT_PGI: u32 = 134217728;
5346pub const GL_TEXCOORD1_BIT_PGI: u32 = 268435456;
5347pub const GL_TEXCOORD2_BIT_PGI: u32 = 536870912;
5348pub const GL_TEXCOORD3_BIT_PGI: u32 = 1073741824;
5349pub const GL_TEXCOORD4_BIT_PGI: u32 = 2147483648;
5350pub const GL_VERTEX23_BIT_PGI: u32 = 4;
5351pub const GL_VERTEX4_BIT_PGI: u32 = 8;
5352pub const GL_REND_screen_coordinates: u32 = 1;
5353pub const GL_SCREEN_COORDINATES_REND: u32 = 33936;
5354pub const GL_INVERTED_SCREEN_W_REND: u32 = 33937;
5355pub const GL_S3_s3tc: u32 = 1;
5356pub const GL_RGB_S3TC: u32 = 33696;
5357pub const GL_RGB4_S3TC: u32 = 33697;
5358pub const GL_RGBA_S3TC: u32 = 33698;
5359pub const GL_RGBA4_S3TC: u32 = 33699;
5360pub const GL_RGBA_DXT5_S3TC: u32 = 33700;
5361pub const GL_RGBA4_DXT5_S3TC: u32 = 33701;
5362pub const GL_SGIS_detail_texture: u32 = 1;
5363pub const GL_DETAIL_TEXTURE_2D_SGIS: u32 = 32917;
5364pub const GL_DETAIL_TEXTURE_2D_BINDING_SGIS: u32 = 32918;
5365pub const GL_LINEAR_DETAIL_SGIS: u32 = 32919;
5366pub const GL_LINEAR_DETAIL_ALPHA_SGIS: u32 = 32920;
5367pub const GL_LINEAR_DETAIL_COLOR_SGIS: u32 = 32921;
5368pub const GL_DETAIL_TEXTURE_LEVEL_SGIS: u32 = 32922;
5369pub const GL_DETAIL_TEXTURE_MODE_SGIS: u32 = 32923;
5370pub const GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS: u32 = 32924;
5371pub const GL_SGIS_fog_function: u32 = 1;
5372pub const GL_FOG_FUNC_SGIS: u32 = 33066;
5373pub const GL_FOG_FUNC_POINTS_SGIS: u32 = 33067;
5374pub const GL_MAX_FOG_FUNC_POINTS_SGIS: u32 = 33068;
5375pub const GL_SGIS_generate_mipmap: u32 = 1;
5376pub const GL_GENERATE_MIPMAP_SGIS: u32 = 33169;
5377pub const GL_GENERATE_MIPMAP_HINT_SGIS: u32 = 33170;
5378pub const GL_SGIS_multisample: u32 = 1;
5379pub const GL_MULTISAMPLE_SGIS: u32 = 32925;
5380pub const GL_SAMPLE_ALPHA_TO_MASK_SGIS: u32 = 32926;
5381pub const GL_SAMPLE_ALPHA_TO_ONE_SGIS: u32 = 32927;
5382pub const GL_SAMPLE_MASK_SGIS: u32 = 32928;
5383pub const GL_1PASS_SGIS: u32 = 32929;
5384pub const GL_2PASS_0_SGIS: u32 = 32930;
5385pub const GL_2PASS_1_SGIS: u32 = 32931;
5386pub const GL_4PASS_0_SGIS: u32 = 32932;
5387pub const GL_4PASS_1_SGIS: u32 = 32933;
5388pub const GL_4PASS_2_SGIS: u32 = 32934;
5389pub const GL_4PASS_3_SGIS: u32 = 32935;
5390pub const GL_SAMPLE_BUFFERS_SGIS: u32 = 32936;
5391pub const GL_SAMPLES_SGIS: u32 = 32937;
5392pub const GL_SAMPLE_MASK_VALUE_SGIS: u32 = 32938;
5393pub const GL_SAMPLE_MASK_INVERT_SGIS: u32 = 32939;
5394pub const GL_SAMPLE_PATTERN_SGIS: u32 = 32940;
5395pub const GL_SGIS_pixel_texture: u32 = 1;
5396pub const GL_PIXEL_TEXTURE_SGIS: u32 = 33619;
5397pub const GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS: u32 = 33620;
5398pub const GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS: u32 = 33621;
5399pub const GL_PIXEL_GROUP_COLOR_SGIS: u32 = 33622;
5400pub const GL_SGIS_point_line_texgen: u32 = 1;
5401pub const GL_EYE_DISTANCE_TO_POINT_SGIS: u32 = 33264;
5402pub const GL_OBJECT_DISTANCE_TO_POINT_SGIS: u32 = 33265;
5403pub const GL_EYE_DISTANCE_TO_LINE_SGIS: u32 = 33266;
5404pub const GL_OBJECT_DISTANCE_TO_LINE_SGIS: u32 = 33267;
5405pub const GL_EYE_POINT_SGIS: u32 = 33268;
5406pub const GL_OBJECT_POINT_SGIS: u32 = 33269;
5407pub const GL_EYE_LINE_SGIS: u32 = 33270;
5408pub const GL_OBJECT_LINE_SGIS: u32 = 33271;
5409pub const GL_SGIS_point_parameters: u32 = 1;
5410pub const GL_POINT_SIZE_MIN_SGIS: u32 = 33062;
5411pub const GL_POINT_SIZE_MAX_SGIS: u32 = 33063;
5412pub const GL_POINT_FADE_THRESHOLD_SIZE_SGIS: u32 = 33064;
5413pub const GL_DISTANCE_ATTENUATION_SGIS: u32 = 33065;
5414pub const GL_SGIS_sharpen_texture: u32 = 1;
5415pub const GL_LINEAR_SHARPEN_SGIS: u32 = 32941;
5416pub const GL_LINEAR_SHARPEN_ALPHA_SGIS: u32 = 32942;
5417pub const GL_LINEAR_SHARPEN_COLOR_SGIS: u32 = 32943;
5418pub const GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS: u32 = 32944;
5419pub const GL_SGIS_texture4D: u32 = 1;
5420pub const GL_PACK_SKIP_VOLUMES_SGIS: u32 = 33072;
5421pub const GL_PACK_IMAGE_DEPTH_SGIS: u32 = 33073;
5422pub const GL_UNPACK_SKIP_VOLUMES_SGIS: u32 = 33074;
5423pub const GL_UNPACK_IMAGE_DEPTH_SGIS: u32 = 33075;
5424pub const GL_TEXTURE_4D_SGIS: u32 = 33076;
5425pub const GL_PROXY_TEXTURE_4D_SGIS: u32 = 33077;
5426pub const GL_TEXTURE_4DSIZE_SGIS: u32 = 33078;
5427pub const GL_TEXTURE_WRAP_Q_SGIS: u32 = 33079;
5428pub const GL_MAX_4D_TEXTURE_SIZE_SGIS: u32 = 33080;
5429pub const GL_TEXTURE_4D_BINDING_SGIS: u32 = 33103;
5430pub const GL_SGIS_texture_border_clamp: u32 = 1;
5431pub const GL_CLAMP_TO_BORDER_SGIS: u32 = 33069;
5432pub const GL_SGIS_texture_color_mask: u32 = 1;
5433pub const GL_TEXTURE_COLOR_WRITEMASK_SGIS: u32 = 33263;
5434pub const GL_SGIS_texture_edge_clamp: u32 = 1;
5435pub const GL_CLAMP_TO_EDGE_SGIS: u32 = 33071;
5436pub const GL_SGIS_texture_filter4: u32 = 1;
5437pub const GL_FILTER4_SGIS: u32 = 33094;
5438pub const GL_TEXTURE_FILTER4_SIZE_SGIS: u32 = 33095;
5439pub const GL_SGIS_texture_lod: u32 = 1;
5440pub const GL_TEXTURE_MIN_LOD_SGIS: u32 = 33082;
5441pub const GL_TEXTURE_MAX_LOD_SGIS: u32 = 33083;
5442pub const GL_TEXTURE_BASE_LEVEL_SGIS: u32 = 33084;
5443pub const GL_TEXTURE_MAX_LEVEL_SGIS: u32 = 33085;
5444pub const GL_SGIS_texture_select: u32 = 1;
5445pub const GL_DUAL_ALPHA4_SGIS: u32 = 33040;
5446pub const GL_DUAL_ALPHA8_SGIS: u32 = 33041;
5447pub const GL_DUAL_ALPHA12_SGIS: u32 = 33042;
5448pub const GL_DUAL_ALPHA16_SGIS: u32 = 33043;
5449pub const GL_DUAL_LUMINANCE4_SGIS: u32 = 33044;
5450pub const GL_DUAL_LUMINANCE8_SGIS: u32 = 33045;
5451pub const GL_DUAL_LUMINANCE12_SGIS: u32 = 33046;
5452pub const GL_DUAL_LUMINANCE16_SGIS: u32 = 33047;
5453pub const GL_DUAL_INTENSITY4_SGIS: u32 = 33048;
5454pub const GL_DUAL_INTENSITY8_SGIS: u32 = 33049;
5455pub const GL_DUAL_INTENSITY12_SGIS: u32 = 33050;
5456pub const GL_DUAL_INTENSITY16_SGIS: u32 = 33051;
5457pub const GL_DUAL_LUMINANCE_ALPHA4_SGIS: u32 = 33052;
5458pub const GL_DUAL_LUMINANCE_ALPHA8_SGIS: u32 = 33053;
5459pub const GL_QUAD_ALPHA4_SGIS: u32 = 33054;
5460pub const GL_QUAD_ALPHA8_SGIS: u32 = 33055;
5461pub const GL_QUAD_LUMINANCE4_SGIS: u32 = 33056;
5462pub const GL_QUAD_LUMINANCE8_SGIS: u32 = 33057;
5463pub const GL_QUAD_INTENSITY4_SGIS: u32 = 33058;
5464pub const GL_QUAD_INTENSITY8_SGIS: u32 = 33059;
5465pub const GL_DUAL_TEXTURE_SELECT_SGIS: u32 = 33060;
5466pub const GL_QUAD_TEXTURE_SELECT_SGIS: u32 = 33061;
5467pub const GL_SGIX_async: u32 = 1;
5468pub const GL_ASYNC_MARKER_SGIX: u32 = 33577;
5469pub const GL_SGIX_async_histogram: u32 = 1;
5470pub const GL_ASYNC_HISTOGRAM_SGIX: u32 = 33580;
5471pub const GL_MAX_ASYNC_HISTOGRAM_SGIX: u32 = 33581;
5472pub const GL_SGIX_async_pixel: u32 = 1;
5473pub const GL_ASYNC_TEX_IMAGE_SGIX: u32 = 33628;
5474pub const GL_ASYNC_DRAW_PIXELS_SGIX: u32 = 33629;
5475pub const GL_ASYNC_READ_PIXELS_SGIX: u32 = 33630;
5476pub const GL_MAX_ASYNC_TEX_IMAGE_SGIX: u32 = 33631;
5477pub const GL_MAX_ASYNC_DRAW_PIXELS_SGIX: u32 = 33632;
5478pub const GL_MAX_ASYNC_READ_PIXELS_SGIX: u32 = 33633;
5479pub const GL_SGIX_blend_alpha_minmax: u32 = 1;
5480pub const GL_ALPHA_MIN_SGIX: u32 = 33568;
5481pub const GL_ALPHA_MAX_SGIX: u32 = 33569;
5482pub const GL_SGIX_calligraphic_fragment: u32 = 1;
5483pub const GL_CALLIGRAPHIC_FRAGMENT_SGIX: u32 = 33155;
5484pub const GL_SGIX_clipmap: u32 = 1;
5485pub const GL_LINEAR_CLIPMAP_LINEAR_SGIX: u32 = 33136;
5486pub const GL_TEXTURE_CLIPMAP_CENTER_SGIX: u32 = 33137;
5487pub const GL_TEXTURE_CLIPMAP_FRAME_SGIX: u32 = 33138;
5488pub const GL_TEXTURE_CLIPMAP_OFFSET_SGIX: u32 = 33139;
5489pub const GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX: u32 = 33140;
5490pub const GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX: u32 = 33141;
5491pub const GL_TEXTURE_CLIPMAP_DEPTH_SGIX: u32 = 33142;
5492pub const GL_MAX_CLIPMAP_DEPTH_SGIX: u32 = 33143;
5493pub const GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX: u32 = 33144;
5494pub const GL_NEAREST_CLIPMAP_NEAREST_SGIX: u32 = 33869;
5495pub const GL_NEAREST_CLIPMAP_LINEAR_SGIX: u32 = 33870;
5496pub const GL_LINEAR_CLIPMAP_NEAREST_SGIX: u32 = 33871;
5497pub const GL_SGIX_convolution_accuracy: u32 = 1;
5498pub const GL_CONVOLUTION_HINT_SGIX: u32 = 33558;
5499pub const GL_SGIX_depth_pass_instrument: u32 = 1;
5500pub const GL_SGIX_depth_texture: u32 = 1;
5501pub const GL_DEPTH_COMPONENT16_SGIX: u32 = 33189;
5502pub const GL_DEPTH_COMPONENT24_SGIX: u32 = 33190;
5503pub const GL_DEPTH_COMPONENT32_SGIX: u32 = 33191;
5504pub const GL_SGIX_flush_raster: u32 = 1;
5505pub const GL_SGIX_fog_offset: u32 = 1;
5506pub const GL_FOG_OFFSET_SGIX: u32 = 33176;
5507pub const GL_FOG_OFFSET_VALUE_SGIX: u32 = 33177;
5508pub const GL_SGIX_fragment_lighting: u32 = 1;
5509pub const GL_FRAGMENT_LIGHTING_SGIX: u32 = 33792;
5510pub const GL_FRAGMENT_COLOR_MATERIAL_SGIX: u32 = 33793;
5511pub const GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX: u32 = 33794;
5512pub const GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX: u32 = 33795;
5513pub const GL_MAX_FRAGMENT_LIGHTS_SGIX: u32 = 33796;
5514pub const GL_MAX_ACTIVE_LIGHTS_SGIX: u32 = 33797;
5515pub const GL_CURRENT_RASTER_NORMAL_SGIX: u32 = 33798;
5516pub const GL_LIGHT_ENV_MODE_SGIX: u32 = 33799;
5517pub const GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX: u32 = 33800;
5518pub const GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX: u32 = 33801;
5519pub const GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX: u32 = 33802;
5520pub const GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX: u32 = 33803;
5521pub const GL_FRAGMENT_LIGHT0_SGIX: u32 = 33804;
5522pub const GL_FRAGMENT_LIGHT1_SGIX: u32 = 33805;
5523pub const GL_FRAGMENT_LIGHT2_SGIX: u32 = 33806;
5524pub const GL_FRAGMENT_LIGHT3_SGIX: u32 = 33807;
5525pub const GL_FRAGMENT_LIGHT4_SGIX: u32 = 33808;
5526pub const GL_FRAGMENT_LIGHT5_SGIX: u32 = 33809;
5527pub const GL_FRAGMENT_LIGHT6_SGIX: u32 = 33810;
5528pub const GL_FRAGMENT_LIGHT7_SGIX: u32 = 33811;
5529pub const GL_SGIX_framezoom: u32 = 1;
5530pub const GL_FRAMEZOOM_SGIX: u32 = 33163;
5531pub const GL_FRAMEZOOM_FACTOR_SGIX: u32 = 33164;
5532pub const GL_MAX_FRAMEZOOM_FACTOR_SGIX: u32 = 33165;
5533pub const GL_SGIX_igloo_interface: u32 = 1;
5534pub const GL_SGIX_instruments: u32 = 1;
5535pub const GL_INSTRUMENT_BUFFER_POINTER_SGIX: u32 = 33152;
5536pub const GL_INSTRUMENT_MEASUREMENTS_SGIX: u32 = 33153;
5537pub const GL_SGIX_interlace: u32 = 1;
5538pub const GL_INTERLACE_SGIX: u32 = 32916;
5539pub const GL_SGIX_ir_instrument1: u32 = 1;
5540pub const GL_IR_INSTRUMENT1_SGIX: u32 = 33151;
5541pub const GL_SGIX_list_priority: u32 = 1;
5542pub const GL_LIST_PRIORITY_SGIX: u32 = 33154;
5543pub const GL_SGIX_pixel_texture: u32 = 1;
5544pub const GL_PIXEL_TEX_GEN_SGIX: u32 = 33081;
5545pub const GL_PIXEL_TEX_GEN_MODE_SGIX: u32 = 33579;
5546pub const GL_SGIX_pixel_tiles: u32 = 1;
5547pub const GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX: u32 = 33086;
5548pub const GL_PIXEL_TILE_CACHE_INCREMENT_SGIX: u32 = 33087;
5549pub const GL_PIXEL_TILE_WIDTH_SGIX: u32 = 33088;
5550pub const GL_PIXEL_TILE_HEIGHT_SGIX: u32 = 33089;
5551pub const GL_PIXEL_TILE_GRID_WIDTH_SGIX: u32 = 33090;
5552pub const GL_PIXEL_TILE_GRID_HEIGHT_SGIX: u32 = 33091;
5553pub const GL_PIXEL_TILE_GRID_DEPTH_SGIX: u32 = 33092;
5554pub const GL_PIXEL_TILE_CACHE_SIZE_SGIX: u32 = 33093;
5555pub const GL_SGIX_polynomial_ffd: u32 = 1;
5556pub const GL_TEXTURE_DEFORMATION_BIT_SGIX: u32 = 1;
5557pub const GL_GEOMETRY_DEFORMATION_BIT_SGIX: u32 = 2;
5558pub const GL_GEOMETRY_DEFORMATION_SGIX: u32 = 33172;
5559pub const GL_TEXTURE_DEFORMATION_SGIX: u32 = 33173;
5560pub const GL_DEFORMATIONS_MASK_SGIX: u32 = 33174;
5561pub const GL_MAX_DEFORMATION_ORDER_SGIX: u32 = 33175;
5562pub const GL_SGIX_reference_plane: u32 = 1;
5563pub const GL_REFERENCE_PLANE_SGIX: u32 = 33149;
5564pub const GL_REFERENCE_PLANE_EQUATION_SGIX: u32 = 33150;
5565pub const GL_SGIX_resample: u32 = 1;
5566pub const GL_PACK_RESAMPLE_SGIX: u32 = 33838;
5567pub const GL_UNPACK_RESAMPLE_SGIX: u32 = 33839;
5568pub const GL_RESAMPLE_REPLICATE_SGIX: u32 = 33843;
5569pub const GL_RESAMPLE_ZERO_FILL_SGIX: u32 = 33844;
5570pub const GL_RESAMPLE_DECIMATE_SGIX: u32 = 33840;
5571pub const GL_SGIX_scalebias_hint: u32 = 1;
5572pub const GL_SCALEBIAS_HINT_SGIX: u32 = 33570;
5573pub const GL_SGIX_shadow: u32 = 1;
5574pub const GL_TEXTURE_COMPARE_SGIX: u32 = 33178;
5575pub const GL_TEXTURE_COMPARE_OPERATOR_SGIX: u32 = 33179;
5576pub const GL_TEXTURE_LEQUAL_R_SGIX: u32 = 33180;
5577pub const GL_TEXTURE_GEQUAL_R_SGIX: u32 = 33181;
5578pub const GL_SGIX_shadow_ambient: u32 = 1;
5579pub const GL_SHADOW_AMBIENT_SGIX: u32 = 32959;
5580pub const GL_SGIX_sprite: u32 = 1;
5581pub const GL_SPRITE_SGIX: u32 = 33096;
5582pub const GL_SPRITE_MODE_SGIX: u32 = 33097;
5583pub const GL_SPRITE_AXIS_SGIX: u32 = 33098;
5584pub const GL_SPRITE_TRANSLATION_SGIX: u32 = 33099;
5585pub const GL_SPRITE_AXIAL_SGIX: u32 = 33100;
5586pub const GL_SPRITE_OBJECT_ALIGNED_SGIX: u32 = 33101;
5587pub const GL_SPRITE_EYE_ALIGNED_SGIX: u32 = 33102;
5588pub const GL_SGIX_subsample: u32 = 1;
5589pub const GL_PACK_SUBSAMPLE_RATE_SGIX: u32 = 34208;
5590pub const GL_UNPACK_SUBSAMPLE_RATE_SGIX: u32 = 34209;
5591pub const GL_PIXEL_SUBSAMPLE_4444_SGIX: u32 = 34210;
5592pub const GL_PIXEL_SUBSAMPLE_2424_SGIX: u32 = 34211;
5593pub const GL_PIXEL_SUBSAMPLE_4242_SGIX: u32 = 34212;
5594pub const GL_SGIX_tag_sample_buffer: u32 = 1;
5595pub const GL_SGIX_texture_add_env: u32 = 1;
5596pub const GL_TEXTURE_ENV_BIAS_SGIX: u32 = 32958;
5597pub const GL_SGIX_texture_coordinate_clamp: u32 = 1;
5598pub const GL_TEXTURE_MAX_CLAMP_S_SGIX: u32 = 33641;
5599pub const GL_TEXTURE_MAX_CLAMP_T_SGIX: u32 = 33642;
5600pub const GL_TEXTURE_MAX_CLAMP_R_SGIX: u32 = 33643;
5601pub const GL_SGIX_texture_lod_bias: u32 = 1;
5602pub const GL_TEXTURE_LOD_BIAS_S_SGIX: u32 = 33166;
5603pub const GL_TEXTURE_LOD_BIAS_T_SGIX: u32 = 33167;
5604pub const GL_TEXTURE_LOD_BIAS_R_SGIX: u32 = 33168;
5605pub const GL_SGIX_texture_multi_buffer: u32 = 1;
5606pub const GL_TEXTURE_MULTI_BUFFER_HINT_SGIX: u32 = 33070;
5607pub const GL_SGIX_texture_scale_bias: u32 = 1;
5608pub const GL_POST_TEXTURE_FILTER_BIAS_SGIX: u32 = 33145;
5609pub const GL_POST_TEXTURE_FILTER_SCALE_SGIX: u32 = 33146;
5610pub const GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX: u32 = 33147;
5611pub const GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX: u32 = 33148;
5612pub const GL_SGIX_vertex_preclip: u32 = 1;
5613pub const GL_VERTEX_PRECLIP_SGIX: u32 = 33774;
5614pub const GL_VERTEX_PRECLIP_HINT_SGIX: u32 = 33775;
5615pub const GL_SGIX_ycrcb: u32 = 1;
5616pub const GL_YCRCB_422_SGIX: u32 = 33211;
5617pub const GL_YCRCB_444_SGIX: u32 = 33212;
5618pub const GL_SGIX_ycrcb_subsample: u32 = 1;
5619pub const GL_SGIX_ycrcba: u32 = 1;
5620pub const GL_YCRCB_SGIX: u32 = 33560;
5621pub const GL_YCRCBA_SGIX: u32 = 33561;
5622pub const GL_SGI_color_matrix: u32 = 1;
5623pub const GL_COLOR_MATRIX_SGI: u32 = 32945;
5624pub const GL_COLOR_MATRIX_STACK_DEPTH_SGI: u32 = 32946;
5625pub const GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI: u32 = 32947;
5626pub const GL_POST_COLOR_MATRIX_RED_SCALE_SGI: u32 = 32948;
5627pub const GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI: u32 = 32949;
5628pub const GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI: u32 = 32950;
5629pub const GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI: u32 = 32951;
5630pub const GL_POST_COLOR_MATRIX_RED_BIAS_SGI: u32 = 32952;
5631pub const GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI: u32 = 32953;
5632pub const GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI: u32 = 32954;
5633pub const GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI: u32 = 32955;
5634pub const GL_SGI_color_table: u32 = 1;
5635pub const GL_COLOR_TABLE_SGI: u32 = 32976;
5636pub const GL_POST_CONVOLUTION_COLOR_TABLE_SGI: u32 = 32977;
5637pub const GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI: u32 = 32978;
5638pub const GL_PROXY_COLOR_TABLE_SGI: u32 = 32979;
5639pub const GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI: u32 = 32980;
5640pub const GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI: u32 = 32981;
5641pub const GL_COLOR_TABLE_SCALE_SGI: u32 = 32982;
5642pub const GL_COLOR_TABLE_BIAS_SGI: u32 = 32983;
5643pub const GL_COLOR_TABLE_FORMAT_SGI: u32 = 32984;
5644pub const GL_COLOR_TABLE_WIDTH_SGI: u32 = 32985;
5645pub const GL_COLOR_TABLE_RED_SIZE_SGI: u32 = 32986;
5646pub const GL_COLOR_TABLE_GREEN_SIZE_SGI: u32 = 32987;
5647pub const GL_COLOR_TABLE_BLUE_SIZE_SGI: u32 = 32988;
5648pub const GL_COLOR_TABLE_ALPHA_SIZE_SGI: u32 = 32989;
5649pub const GL_COLOR_TABLE_LUMINANCE_SIZE_SGI: u32 = 32990;
5650pub const GL_COLOR_TABLE_INTENSITY_SIZE_SGI: u32 = 32991;
5651pub const GL_SGI_texture_color_table: u32 = 1;
5652pub const GL_TEXTURE_COLOR_TABLE_SGI: u32 = 32956;
5653pub const GL_PROXY_TEXTURE_COLOR_TABLE_SGI: u32 = 32957;
5654pub const GL_SUNX_constant_data: u32 = 1;
5655pub const GL_UNPACK_CONSTANT_DATA_SUNX: u32 = 33237;
5656pub const GL_TEXTURE_CONSTANT_DATA_SUNX: u32 = 33238;
5657pub const GL_SUN_convolution_border_modes: u32 = 1;
5658pub const GL_WRAP_BORDER_SUN: u32 = 33236;
5659pub const GL_SUN_global_alpha: u32 = 1;
5660pub const GL_GLOBAL_ALPHA_SUN: u32 = 33241;
5661pub const GL_GLOBAL_ALPHA_FACTOR_SUN: u32 = 33242;
5662pub const GL_SUN_mesh_array: u32 = 1;
5663pub const GL_QUAD_MESH_SUN: u32 = 34324;
5664pub const GL_TRIANGLE_MESH_SUN: u32 = 34325;
5665pub const GL_SUN_slice_accum: u32 = 1;
5666pub const GL_SLICE_ACCUM_SUN: u32 = 34252;
5667pub const GL_SUN_triangle_list: u32 = 1;
5668pub const GL_RESTART_SUN: u32 = 1;
5669pub const GL_REPLACE_MIDDLE_SUN: u32 = 2;
5670pub const GL_REPLACE_OLDEST_SUN: u32 = 3;
5671pub const GL_TRIANGLE_LIST_SUN: u32 = 33239;
5672pub const GL_REPLACEMENT_CODE_SUN: u32 = 33240;
5673pub const GL_REPLACEMENT_CODE_ARRAY_SUN: u32 = 34240;
5674pub const GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN: u32 = 34241;
5675pub const GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN: u32 = 34242;
5676pub const GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN: u32 = 34243;
5677pub const GL_R1UI_V3F_SUN: u32 = 34244;
5678pub const GL_R1UI_C4UB_V3F_SUN: u32 = 34245;
5679pub const GL_R1UI_C3F_V3F_SUN: u32 = 34246;
5680pub const GL_R1UI_N3F_V3F_SUN: u32 = 34247;
5681pub const GL_R1UI_C4F_N3F_V3F_SUN: u32 = 34248;
5682pub const GL_R1UI_T2F_V3F_SUN: u32 = 34249;
5683pub const GL_R1UI_T2F_N3F_V3F_SUN: u32 = 34250;
5684pub const GL_R1UI_T2F_C4F_N3F_V3F_SUN: u32 = 34251;
5685pub const GL_SUN_vertex: u32 = 1;
5686pub const GL_WIN_phong_shading: u32 = 1;
5687pub const GL_PHONG_WIN: u32 = 33002;
5688pub const GL_PHONG_HINT_WIN: u32 = 33003;
5689pub const GL_WIN_specular_fog: u32 = 1;
5690pub const GL_FOG_SPECULAR_TEXTURE_WIN: u32 = 33004;
5691pub const GL_MESA_packed_depth_stencil: u32 = 1;
5692pub const GL_DEPTH_STENCIL_MESA: u32 = 34640;
5693pub const GL_UNSIGNED_INT_24_8_MESA: u32 = 34641;
5694pub const GL_UNSIGNED_INT_8_24_REV_MESA: u32 = 34642;
5695pub const GL_UNSIGNED_SHORT_15_1_MESA: u32 = 34643;
5696pub const GL_UNSIGNED_SHORT_1_15_REV_MESA: u32 = 34644;
5697pub const GL_ATI_blend_equation_separate: u32 = 1;
5698pub const GL_ALPHA_BLEND_EQUATION_ATI: u32 = 34877;
5699pub const GL_OES_EGL_image: u32 = 1;
5700pub type GLenum = ::std::os::raw::c_uint;
5701pub type GLboolean = ::std::os::raw::c_uchar;
5702pub type GLbitfield = ::std::os::raw::c_uint;
5703pub type GLvoid = ::std::os::raw::c_void;
5704pub type GLbyte = ::std::os::raw::c_schar;
5705pub type GLshort = ::std::os::raw::c_short;
5706pub type GLint = ::std::os::raw::c_int;
5707pub type GLubyte = ::std::os::raw::c_uchar;
5708pub type GLushort = ::std::os::raw::c_ushort;
5709pub type GLuint = ::std::os::raw::c_uint;
5710pub type GLsizei = ::std::os::raw::c_int;
5711pub type GLfloat = f32;
5712pub type GLclampf = f32;
5713pub type GLdouble = f64;
5714pub type GLclampd = f64;
5715extern "C" {
5716    pub fn glClearIndex(c: GLfloat);
5717}
5718extern "C" {
5719    pub fn glClearColor(red: GLclampf, green: GLclampf, blue: GLclampf, alpha: GLclampf);
5720}
5721extern "C" {
5722    pub fn glClear(mask: GLbitfield);
5723}
5724extern "C" {
5725    pub fn glIndexMask(mask: GLuint);
5726}
5727extern "C" {
5728    pub fn glColorMask(red: GLboolean, green: GLboolean, blue: GLboolean, alpha: GLboolean);
5729}
5730extern "C" {
5731    pub fn glAlphaFunc(func: GLenum, ref_: GLclampf);
5732}
5733extern "C" {
5734    pub fn glBlendFunc(sfactor: GLenum, dfactor: GLenum);
5735}
5736extern "C" {
5737    pub fn glLogicOp(opcode: GLenum);
5738}
5739extern "C" {
5740    pub fn glCullFace(mode: GLenum);
5741}
5742extern "C" {
5743    pub fn glFrontFace(mode: GLenum);
5744}
5745extern "C" {
5746    pub fn glPointSize(size: GLfloat);
5747}
5748extern "C" {
5749    pub fn glLineWidth(width: GLfloat);
5750}
5751extern "C" {
5752    pub fn glLineStipple(factor: GLint, pattern: GLushort);
5753}
5754extern "C" {
5755    pub fn glPolygonMode(face: GLenum, mode: GLenum);
5756}
5757extern "C" {
5758    pub fn glPolygonOffset(factor: GLfloat, units: GLfloat);
5759}
5760extern "C" {
5761    pub fn glPolygonStipple(mask: *const GLubyte);
5762}
5763extern "C" {
5764    pub fn glGetPolygonStipple(mask: *mut GLubyte);
5765}
5766extern "C" {
5767    pub fn glEdgeFlag(flag: GLboolean);
5768}
5769extern "C" {
5770    pub fn glEdgeFlagv(flag: *const GLboolean);
5771}
5772extern "C" {
5773    pub fn glScissor(x: GLint, y: GLint, width: GLsizei, height: GLsizei);
5774}
5775extern "C" {
5776    pub fn glClipPlane(plane: GLenum, equation: *const GLdouble);
5777}
5778extern "C" {
5779    pub fn glGetClipPlane(plane: GLenum, equation: *mut GLdouble);
5780}
5781extern "C" {
5782    pub fn glDrawBuffer(mode: GLenum);
5783}
5784extern "C" {
5785    pub fn glReadBuffer(mode: GLenum);
5786}
5787extern "C" {
5788    pub fn glEnable(cap: GLenum);
5789}
5790extern "C" {
5791    pub fn glDisable(cap: GLenum);
5792}
5793extern "C" {
5794    pub fn glIsEnabled(cap: GLenum) -> GLboolean;
5795}
5796extern "C" {
5797    pub fn glEnableClientState(cap: GLenum);
5798}
5799extern "C" {
5800    pub fn glDisableClientState(cap: GLenum);
5801}
5802extern "C" {
5803    pub fn glGetBooleanv(pname: GLenum, params: *mut GLboolean);
5804}
5805extern "C" {
5806    pub fn glGetDoublev(pname: GLenum, params: *mut GLdouble);
5807}
5808extern "C" {
5809    pub fn glGetFloatv(pname: GLenum, params: *mut GLfloat);
5810}
5811extern "C" {
5812    pub fn glGetIntegerv(pname: GLenum, params: *mut GLint);
5813}
5814extern "C" {
5815    pub fn glPushAttrib(mask: GLbitfield);
5816}
5817extern "C" {
5818    pub fn glPopAttrib();
5819}
5820extern "C" {
5821    pub fn glPushClientAttrib(mask: GLbitfield);
5822}
5823extern "C" {
5824    pub fn glPopClientAttrib();
5825}
5826extern "C" {
5827    pub fn glRenderMode(mode: GLenum) -> GLint;
5828}
5829extern "C" {
5830    pub fn glGetError() -> GLenum;
5831}
5832extern "C" {
5833    pub fn glGetString(name: GLenum) -> *const GLubyte;
5834}
5835extern "C" {
5836    pub fn glFinish();
5837}
5838extern "C" {
5839    pub fn glFlush();
5840}
5841extern "C" {
5842    pub fn glHint(target: GLenum, mode: GLenum);
5843}
5844extern "C" {
5845    pub fn glClearDepth(depth: GLclampd);
5846}
5847extern "C" {
5848    pub fn glDepthFunc(func: GLenum);
5849}
5850extern "C" {
5851    pub fn glDepthMask(flag: GLboolean);
5852}
5853extern "C" {
5854    pub fn glDepthRange(near_val: GLclampd, far_val: GLclampd);
5855}
5856extern "C" {
5857    pub fn glClearAccum(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat);
5858}
5859extern "C" {
5860    pub fn glAccum(op: GLenum, value: GLfloat);
5861}
5862extern "C" {
5863    pub fn glMatrixMode(mode: GLenum);
5864}
5865extern "C" {
5866    pub fn glOrtho(
5867        left: GLdouble,
5868        right: GLdouble,
5869        bottom: GLdouble,
5870        top: GLdouble,
5871        near_val: GLdouble,
5872        far_val: GLdouble,
5873    );
5874}
5875extern "C" {
5876    pub fn glFrustum(
5877        left: GLdouble,
5878        right: GLdouble,
5879        bottom: GLdouble,
5880        top: GLdouble,
5881        near_val: GLdouble,
5882        far_val: GLdouble,
5883    );
5884}
5885extern "C" {
5886    pub fn glViewport(x: GLint, y: GLint, width: GLsizei, height: GLsizei);
5887}
5888extern "C" {
5889    pub fn glPushMatrix();
5890}
5891extern "C" {
5892    pub fn glPopMatrix();
5893}
5894extern "C" {
5895    pub fn glLoadIdentity();
5896}
5897extern "C" {
5898    pub fn glLoadMatrixd(m: *const GLdouble);
5899}
5900extern "C" {
5901    pub fn glLoadMatrixf(m: *const GLfloat);
5902}
5903extern "C" {
5904    pub fn glMultMatrixd(m: *const GLdouble);
5905}
5906extern "C" {
5907    pub fn glMultMatrixf(m: *const GLfloat);
5908}
5909extern "C" {
5910    pub fn glRotated(angle: GLdouble, x: GLdouble, y: GLdouble, z: GLdouble);
5911}
5912extern "C" {
5913    pub fn glRotatef(angle: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat);
5914}
5915extern "C" {
5916    pub fn glScaled(x: GLdouble, y: GLdouble, z: GLdouble);
5917}
5918extern "C" {
5919    pub fn glScalef(x: GLfloat, y: GLfloat, z: GLfloat);
5920}
5921extern "C" {
5922    pub fn glTranslated(x: GLdouble, y: GLdouble, z: GLdouble);
5923}
5924extern "C" {
5925    pub fn glTranslatef(x: GLfloat, y: GLfloat, z: GLfloat);
5926}
5927extern "C" {
5928    pub fn glIsList(list: GLuint) -> GLboolean;
5929}
5930extern "C" {
5931    pub fn glDeleteLists(list: GLuint, range: GLsizei);
5932}
5933extern "C" {
5934    pub fn glGenLists(range: GLsizei) -> GLuint;
5935}
5936extern "C" {
5937    pub fn glNewList(list: GLuint, mode: GLenum);
5938}
5939extern "C" {
5940    pub fn glEndList();
5941}
5942extern "C" {
5943    pub fn glCallList(list: GLuint);
5944}
5945extern "C" {
5946    pub fn glCallLists(n: GLsizei, type_: GLenum, lists: *const GLvoid);
5947}
5948extern "C" {
5949    pub fn glListBase(base: GLuint);
5950}
5951extern "C" {
5952    pub fn glBegin(mode: GLenum);
5953}
5954extern "C" {
5955    pub fn glEnd();
5956}
5957extern "C" {
5958    pub fn glVertex2d(x: GLdouble, y: GLdouble);
5959}
5960extern "C" {
5961    pub fn glVertex2f(x: GLfloat, y: GLfloat);
5962}
5963extern "C" {
5964    pub fn glVertex2i(x: GLint, y: GLint);
5965}
5966extern "C" {
5967    pub fn glVertex2s(x: GLshort, y: GLshort);
5968}
5969extern "C" {
5970    pub fn glVertex3d(x: GLdouble, y: GLdouble, z: GLdouble);
5971}
5972extern "C" {
5973    pub fn glVertex3f(x: GLfloat, y: GLfloat, z: GLfloat);
5974}
5975extern "C" {
5976    pub fn glVertex3i(x: GLint, y: GLint, z: GLint);
5977}
5978extern "C" {
5979    pub fn glVertex3s(x: GLshort, y: GLshort, z: GLshort);
5980}
5981extern "C" {
5982    pub fn glVertex4d(x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
5983}
5984extern "C" {
5985    pub fn glVertex4f(x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat);
5986}
5987extern "C" {
5988    pub fn glVertex4i(x: GLint, y: GLint, z: GLint, w: GLint);
5989}
5990extern "C" {
5991    pub fn glVertex4s(x: GLshort, y: GLshort, z: GLshort, w: GLshort);
5992}
5993extern "C" {
5994    pub fn glVertex2dv(v: *const GLdouble);
5995}
5996extern "C" {
5997    pub fn glVertex2fv(v: *const GLfloat);
5998}
5999extern "C" {
6000    pub fn glVertex2iv(v: *const GLint);
6001}
6002extern "C" {
6003    pub fn glVertex2sv(v: *const GLshort);
6004}
6005extern "C" {
6006    pub fn glVertex3dv(v: *const GLdouble);
6007}
6008extern "C" {
6009    pub fn glVertex3fv(v: *const GLfloat);
6010}
6011extern "C" {
6012    pub fn glVertex3iv(v: *const GLint);
6013}
6014extern "C" {
6015    pub fn glVertex3sv(v: *const GLshort);
6016}
6017extern "C" {
6018    pub fn glVertex4dv(v: *const GLdouble);
6019}
6020extern "C" {
6021    pub fn glVertex4fv(v: *const GLfloat);
6022}
6023extern "C" {
6024    pub fn glVertex4iv(v: *const GLint);
6025}
6026extern "C" {
6027    pub fn glVertex4sv(v: *const GLshort);
6028}
6029extern "C" {
6030    pub fn glNormal3b(nx: GLbyte, ny: GLbyte, nz: GLbyte);
6031}
6032extern "C" {
6033    pub fn glNormal3d(nx: GLdouble, ny: GLdouble, nz: GLdouble);
6034}
6035extern "C" {
6036    pub fn glNormal3f(nx: GLfloat, ny: GLfloat, nz: GLfloat);
6037}
6038extern "C" {
6039    pub fn glNormal3i(nx: GLint, ny: GLint, nz: GLint);
6040}
6041extern "C" {
6042    pub fn glNormal3s(nx: GLshort, ny: GLshort, nz: GLshort);
6043}
6044extern "C" {
6045    pub fn glNormal3bv(v: *const GLbyte);
6046}
6047extern "C" {
6048    pub fn glNormal3dv(v: *const GLdouble);
6049}
6050extern "C" {
6051    pub fn glNormal3fv(v: *const GLfloat);
6052}
6053extern "C" {
6054    pub fn glNormal3iv(v: *const GLint);
6055}
6056extern "C" {
6057    pub fn glNormal3sv(v: *const GLshort);
6058}
6059extern "C" {
6060    pub fn glIndexd(c: GLdouble);
6061}
6062extern "C" {
6063    pub fn glIndexf(c: GLfloat);
6064}
6065extern "C" {
6066    pub fn glIndexi(c: GLint);
6067}
6068extern "C" {
6069    pub fn glIndexs(c: GLshort);
6070}
6071extern "C" {
6072    pub fn glIndexub(c: GLubyte);
6073}
6074extern "C" {
6075    pub fn glIndexdv(c: *const GLdouble);
6076}
6077extern "C" {
6078    pub fn glIndexfv(c: *const GLfloat);
6079}
6080extern "C" {
6081    pub fn glIndexiv(c: *const GLint);
6082}
6083extern "C" {
6084    pub fn glIndexsv(c: *const GLshort);
6085}
6086extern "C" {
6087    pub fn glIndexubv(c: *const GLubyte);
6088}
6089extern "C" {
6090    pub fn glColor3b(red: GLbyte, green: GLbyte, blue: GLbyte);
6091}
6092extern "C" {
6093    pub fn glColor3d(red: GLdouble, green: GLdouble, blue: GLdouble);
6094}
6095extern "C" {
6096    pub fn glColor3f(red: GLfloat, green: GLfloat, blue: GLfloat);
6097}
6098extern "C" {
6099    pub fn glColor3i(red: GLint, green: GLint, blue: GLint);
6100}
6101extern "C" {
6102    pub fn glColor3s(red: GLshort, green: GLshort, blue: GLshort);
6103}
6104extern "C" {
6105    pub fn glColor3ub(red: GLubyte, green: GLubyte, blue: GLubyte);
6106}
6107extern "C" {
6108    pub fn glColor3ui(red: GLuint, green: GLuint, blue: GLuint);
6109}
6110extern "C" {
6111    pub fn glColor3us(red: GLushort, green: GLushort, blue: GLushort);
6112}
6113extern "C" {
6114    pub fn glColor4b(red: GLbyte, green: GLbyte, blue: GLbyte, alpha: GLbyte);
6115}
6116extern "C" {
6117    pub fn glColor4d(red: GLdouble, green: GLdouble, blue: GLdouble, alpha: GLdouble);
6118}
6119extern "C" {
6120    pub fn glColor4f(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat);
6121}
6122extern "C" {
6123    pub fn glColor4i(red: GLint, green: GLint, blue: GLint, alpha: GLint);
6124}
6125extern "C" {
6126    pub fn glColor4s(red: GLshort, green: GLshort, blue: GLshort, alpha: GLshort);
6127}
6128extern "C" {
6129    pub fn glColor4ub(red: GLubyte, green: GLubyte, blue: GLubyte, alpha: GLubyte);
6130}
6131extern "C" {
6132    pub fn glColor4ui(red: GLuint, green: GLuint, blue: GLuint, alpha: GLuint);
6133}
6134extern "C" {
6135    pub fn glColor4us(red: GLushort, green: GLushort, blue: GLushort, alpha: GLushort);
6136}
6137extern "C" {
6138    pub fn glColor3bv(v: *const GLbyte);
6139}
6140extern "C" {
6141    pub fn glColor3dv(v: *const GLdouble);
6142}
6143extern "C" {
6144    pub fn glColor3fv(v: *const GLfloat);
6145}
6146extern "C" {
6147    pub fn glColor3iv(v: *const GLint);
6148}
6149extern "C" {
6150    pub fn glColor3sv(v: *const GLshort);
6151}
6152extern "C" {
6153    pub fn glColor3ubv(v: *const GLubyte);
6154}
6155extern "C" {
6156    pub fn glColor3uiv(v: *const GLuint);
6157}
6158extern "C" {
6159    pub fn glColor3usv(v: *const GLushort);
6160}
6161extern "C" {
6162    pub fn glColor4bv(v: *const GLbyte);
6163}
6164extern "C" {
6165    pub fn glColor4dv(v: *const GLdouble);
6166}
6167extern "C" {
6168    pub fn glColor4fv(v: *const GLfloat);
6169}
6170extern "C" {
6171    pub fn glColor4iv(v: *const GLint);
6172}
6173extern "C" {
6174    pub fn glColor4sv(v: *const GLshort);
6175}
6176extern "C" {
6177    pub fn glColor4ubv(v: *const GLubyte);
6178}
6179extern "C" {
6180    pub fn glColor4uiv(v: *const GLuint);
6181}
6182extern "C" {
6183    pub fn glColor4usv(v: *const GLushort);
6184}
6185extern "C" {
6186    pub fn glTexCoord1d(s: GLdouble);
6187}
6188extern "C" {
6189    pub fn glTexCoord1f(s: GLfloat);
6190}
6191extern "C" {
6192    pub fn glTexCoord1i(s: GLint);
6193}
6194extern "C" {
6195    pub fn glTexCoord1s(s: GLshort);
6196}
6197extern "C" {
6198    pub fn glTexCoord2d(s: GLdouble, t: GLdouble);
6199}
6200extern "C" {
6201    pub fn glTexCoord2f(s: GLfloat, t: GLfloat);
6202}
6203extern "C" {
6204    pub fn glTexCoord2i(s: GLint, t: GLint);
6205}
6206extern "C" {
6207    pub fn glTexCoord2s(s: GLshort, t: GLshort);
6208}
6209extern "C" {
6210    pub fn glTexCoord3d(s: GLdouble, t: GLdouble, r: GLdouble);
6211}
6212extern "C" {
6213    pub fn glTexCoord3f(s: GLfloat, t: GLfloat, r: GLfloat);
6214}
6215extern "C" {
6216    pub fn glTexCoord3i(s: GLint, t: GLint, r: GLint);
6217}
6218extern "C" {
6219    pub fn glTexCoord3s(s: GLshort, t: GLshort, r: GLshort);
6220}
6221extern "C" {
6222    pub fn glTexCoord4d(s: GLdouble, t: GLdouble, r: GLdouble, q: GLdouble);
6223}
6224extern "C" {
6225    pub fn glTexCoord4f(s: GLfloat, t: GLfloat, r: GLfloat, q: GLfloat);
6226}
6227extern "C" {
6228    pub fn glTexCoord4i(s: GLint, t: GLint, r: GLint, q: GLint);
6229}
6230extern "C" {
6231    pub fn glTexCoord4s(s: GLshort, t: GLshort, r: GLshort, q: GLshort);
6232}
6233extern "C" {
6234    pub fn glTexCoord1dv(v: *const GLdouble);
6235}
6236extern "C" {
6237    pub fn glTexCoord1fv(v: *const GLfloat);
6238}
6239extern "C" {
6240    pub fn glTexCoord1iv(v: *const GLint);
6241}
6242extern "C" {
6243    pub fn glTexCoord1sv(v: *const GLshort);
6244}
6245extern "C" {
6246    pub fn glTexCoord2dv(v: *const GLdouble);
6247}
6248extern "C" {
6249    pub fn glTexCoord2fv(v: *const GLfloat);
6250}
6251extern "C" {
6252    pub fn glTexCoord2iv(v: *const GLint);
6253}
6254extern "C" {
6255    pub fn glTexCoord2sv(v: *const GLshort);
6256}
6257extern "C" {
6258    pub fn glTexCoord3dv(v: *const GLdouble);
6259}
6260extern "C" {
6261    pub fn glTexCoord3fv(v: *const GLfloat);
6262}
6263extern "C" {
6264    pub fn glTexCoord3iv(v: *const GLint);
6265}
6266extern "C" {
6267    pub fn glTexCoord3sv(v: *const GLshort);
6268}
6269extern "C" {
6270    pub fn glTexCoord4dv(v: *const GLdouble);
6271}
6272extern "C" {
6273    pub fn glTexCoord4fv(v: *const GLfloat);
6274}
6275extern "C" {
6276    pub fn glTexCoord4iv(v: *const GLint);
6277}
6278extern "C" {
6279    pub fn glTexCoord4sv(v: *const GLshort);
6280}
6281extern "C" {
6282    pub fn glRasterPos2d(x: GLdouble, y: GLdouble);
6283}
6284extern "C" {
6285    pub fn glRasterPos2f(x: GLfloat, y: GLfloat);
6286}
6287extern "C" {
6288    pub fn glRasterPos2i(x: GLint, y: GLint);
6289}
6290extern "C" {
6291    pub fn glRasterPos2s(x: GLshort, y: GLshort);
6292}
6293extern "C" {
6294    pub fn glRasterPos3d(x: GLdouble, y: GLdouble, z: GLdouble);
6295}
6296extern "C" {
6297    pub fn glRasterPos3f(x: GLfloat, y: GLfloat, z: GLfloat);
6298}
6299extern "C" {
6300    pub fn glRasterPos3i(x: GLint, y: GLint, z: GLint);
6301}
6302extern "C" {
6303    pub fn glRasterPos3s(x: GLshort, y: GLshort, z: GLshort);
6304}
6305extern "C" {
6306    pub fn glRasterPos4d(x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
6307}
6308extern "C" {
6309    pub fn glRasterPos4f(x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat);
6310}
6311extern "C" {
6312    pub fn glRasterPos4i(x: GLint, y: GLint, z: GLint, w: GLint);
6313}
6314extern "C" {
6315    pub fn glRasterPos4s(x: GLshort, y: GLshort, z: GLshort, w: GLshort);
6316}
6317extern "C" {
6318    pub fn glRasterPos2dv(v: *const GLdouble);
6319}
6320extern "C" {
6321    pub fn glRasterPos2fv(v: *const GLfloat);
6322}
6323extern "C" {
6324    pub fn glRasterPos2iv(v: *const GLint);
6325}
6326extern "C" {
6327    pub fn glRasterPos2sv(v: *const GLshort);
6328}
6329extern "C" {
6330    pub fn glRasterPos3dv(v: *const GLdouble);
6331}
6332extern "C" {
6333    pub fn glRasterPos3fv(v: *const GLfloat);
6334}
6335extern "C" {
6336    pub fn glRasterPos3iv(v: *const GLint);
6337}
6338extern "C" {
6339    pub fn glRasterPos3sv(v: *const GLshort);
6340}
6341extern "C" {
6342    pub fn glRasterPos4dv(v: *const GLdouble);
6343}
6344extern "C" {
6345    pub fn glRasterPos4fv(v: *const GLfloat);
6346}
6347extern "C" {
6348    pub fn glRasterPos4iv(v: *const GLint);
6349}
6350extern "C" {
6351    pub fn glRasterPos4sv(v: *const GLshort);
6352}
6353extern "C" {
6354    pub fn glRectd(x1: GLdouble, y1: GLdouble, x2: GLdouble, y2: GLdouble);
6355}
6356extern "C" {
6357    pub fn glRectf(x1: GLfloat, y1: GLfloat, x2: GLfloat, y2: GLfloat);
6358}
6359extern "C" {
6360    pub fn glRecti(x1: GLint, y1: GLint, x2: GLint, y2: GLint);
6361}
6362extern "C" {
6363    pub fn glRects(x1: GLshort, y1: GLshort, x2: GLshort, y2: GLshort);
6364}
6365extern "C" {
6366    pub fn glRectdv(v1: *const GLdouble, v2: *const GLdouble);
6367}
6368extern "C" {
6369    pub fn glRectfv(v1: *const GLfloat, v2: *const GLfloat);
6370}
6371extern "C" {
6372    pub fn glRectiv(v1: *const GLint, v2: *const GLint);
6373}
6374extern "C" {
6375    pub fn glRectsv(v1: *const GLshort, v2: *const GLshort);
6376}
6377extern "C" {
6378    pub fn glVertexPointer(size: GLint, type_: GLenum, stride: GLsizei, ptr: *const GLvoid);
6379}
6380extern "C" {
6381    pub fn glNormalPointer(type_: GLenum, stride: GLsizei, ptr: *const GLvoid);
6382}
6383extern "C" {
6384    pub fn glColorPointer(size: GLint, type_: GLenum, stride: GLsizei, ptr: *const GLvoid);
6385}
6386extern "C" {
6387    pub fn glIndexPointer(type_: GLenum, stride: GLsizei, ptr: *const GLvoid);
6388}
6389extern "C" {
6390    pub fn glTexCoordPointer(size: GLint, type_: GLenum, stride: GLsizei, ptr: *const GLvoid);
6391}
6392extern "C" {
6393    pub fn glEdgeFlagPointer(stride: GLsizei, ptr: *const GLvoid);
6394}
6395extern "C" {
6396    pub fn glGetPointerv(pname: GLenum, params: *mut *mut GLvoid);
6397}
6398extern "C" {
6399    pub fn glArrayElement(i: GLint);
6400}
6401extern "C" {
6402    pub fn glDrawArrays(mode: GLenum, first: GLint, count: GLsizei);
6403}
6404extern "C" {
6405    pub fn glDrawElements(mode: GLenum, count: GLsizei, type_: GLenum, indices: *const GLvoid);
6406}
6407extern "C" {
6408    pub fn glInterleavedArrays(format: GLenum, stride: GLsizei, pointer: *const GLvoid);
6409}
6410extern "C" {
6411    pub fn glShadeModel(mode: GLenum);
6412}
6413extern "C" {
6414    pub fn glLightf(light: GLenum, pname: GLenum, param: GLfloat);
6415}
6416extern "C" {
6417    pub fn glLighti(light: GLenum, pname: GLenum, param: GLint);
6418}
6419extern "C" {
6420    pub fn glLightfv(light: GLenum, pname: GLenum, params: *const GLfloat);
6421}
6422extern "C" {
6423    pub fn glLightiv(light: GLenum, pname: GLenum, params: *const GLint);
6424}
6425extern "C" {
6426    pub fn glGetLightfv(light: GLenum, pname: GLenum, params: *mut GLfloat);
6427}
6428extern "C" {
6429    pub fn glGetLightiv(light: GLenum, pname: GLenum, params: *mut GLint);
6430}
6431extern "C" {
6432    pub fn glLightModelf(pname: GLenum, param: GLfloat);
6433}
6434extern "C" {
6435    pub fn glLightModeli(pname: GLenum, param: GLint);
6436}
6437extern "C" {
6438    pub fn glLightModelfv(pname: GLenum, params: *const GLfloat);
6439}
6440extern "C" {
6441    pub fn glLightModeliv(pname: GLenum, params: *const GLint);
6442}
6443extern "C" {
6444    pub fn glMaterialf(face: GLenum, pname: GLenum, param: GLfloat);
6445}
6446extern "C" {
6447    pub fn glMateriali(face: GLenum, pname: GLenum, param: GLint);
6448}
6449extern "C" {
6450    pub fn glMaterialfv(face: GLenum, pname: GLenum, params: *const GLfloat);
6451}
6452extern "C" {
6453    pub fn glMaterialiv(face: GLenum, pname: GLenum, params: *const GLint);
6454}
6455extern "C" {
6456    pub fn glGetMaterialfv(face: GLenum, pname: GLenum, params: *mut GLfloat);
6457}
6458extern "C" {
6459    pub fn glGetMaterialiv(face: GLenum, pname: GLenum, params: *mut GLint);
6460}
6461extern "C" {
6462    pub fn glColorMaterial(face: GLenum, mode: GLenum);
6463}
6464extern "C" {
6465    pub fn glPixelZoom(xfactor: GLfloat, yfactor: GLfloat);
6466}
6467extern "C" {
6468    pub fn glPixelStoref(pname: GLenum, param: GLfloat);
6469}
6470extern "C" {
6471    pub fn glPixelStorei(pname: GLenum, param: GLint);
6472}
6473extern "C" {
6474    pub fn glPixelTransferf(pname: GLenum, param: GLfloat);
6475}
6476extern "C" {
6477    pub fn glPixelTransferi(pname: GLenum, param: GLint);
6478}
6479extern "C" {
6480    pub fn glPixelMapfv(map: GLenum, mapsize: GLsizei, values: *const GLfloat);
6481}
6482extern "C" {
6483    pub fn glPixelMapuiv(map: GLenum, mapsize: GLsizei, values: *const GLuint);
6484}
6485extern "C" {
6486    pub fn glPixelMapusv(map: GLenum, mapsize: GLsizei, values: *const GLushort);
6487}
6488extern "C" {
6489    pub fn glGetPixelMapfv(map: GLenum, values: *mut GLfloat);
6490}
6491extern "C" {
6492    pub fn glGetPixelMapuiv(map: GLenum, values: *mut GLuint);
6493}
6494extern "C" {
6495    pub fn glGetPixelMapusv(map: GLenum, values: *mut GLushort);
6496}
6497extern "C" {
6498    pub fn glBitmap(
6499        width: GLsizei,
6500        height: GLsizei,
6501        xorig: GLfloat,
6502        yorig: GLfloat,
6503        xmove: GLfloat,
6504        ymove: GLfloat,
6505        bitmap: *const GLubyte,
6506    );
6507}
6508extern "C" {
6509    pub fn glReadPixels(
6510        x: GLint,
6511        y: GLint,
6512        width: GLsizei,
6513        height: GLsizei,
6514        format: GLenum,
6515        type_: GLenum,
6516        pixels: *mut GLvoid,
6517    );
6518}
6519extern "C" {
6520    pub fn glDrawPixels(
6521        width: GLsizei,
6522        height: GLsizei,
6523        format: GLenum,
6524        type_: GLenum,
6525        pixels: *const GLvoid,
6526    );
6527}
6528extern "C" {
6529    pub fn glCopyPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, type_: GLenum);
6530}
6531extern "C" {
6532    pub fn glStencilFunc(func: GLenum, ref_: GLint, mask: GLuint);
6533}
6534extern "C" {
6535    pub fn glStencilMask(mask: GLuint);
6536}
6537extern "C" {
6538    pub fn glStencilOp(fail: GLenum, zfail: GLenum, zpass: GLenum);
6539}
6540extern "C" {
6541    pub fn glClearStencil(s: GLint);
6542}
6543extern "C" {
6544    pub fn glTexGend(coord: GLenum, pname: GLenum, param: GLdouble);
6545}
6546extern "C" {
6547    pub fn glTexGenf(coord: GLenum, pname: GLenum, param: GLfloat);
6548}
6549extern "C" {
6550    pub fn glTexGeni(coord: GLenum, pname: GLenum, param: GLint);
6551}
6552extern "C" {
6553    pub fn glTexGendv(coord: GLenum, pname: GLenum, params: *const GLdouble);
6554}
6555extern "C" {
6556    pub fn glTexGenfv(coord: GLenum, pname: GLenum, params: *const GLfloat);
6557}
6558extern "C" {
6559    pub fn glTexGeniv(coord: GLenum, pname: GLenum, params: *const GLint);
6560}
6561extern "C" {
6562    pub fn glGetTexGendv(coord: GLenum, pname: GLenum, params: *mut GLdouble);
6563}
6564extern "C" {
6565    pub fn glGetTexGenfv(coord: GLenum, pname: GLenum, params: *mut GLfloat);
6566}
6567extern "C" {
6568    pub fn glGetTexGeniv(coord: GLenum, pname: GLenum, params: *mut GLint);
6569}
6570extern "C" {
6571    pub fn glTexEnvf(target: GLenum, pname: GLenum, param: GLfloat);
6572}
6573extern "C" {
6574    pub fn glTexEnvi(target: GLenum, pname: GLenum, param: GLint);
6575}
6576extern "C" {
6577    pub fn glTexEnvfv(target: GLenum, pname: GLenum, params: *const GLfloat);
6578}
6579extern "C" {
6580    pub fn glTexEnviv(target: GLenum, pname: GLenum, params: *const GLint);
6581}
6582extern "C" {
6583    pub fn glGetTexEnvfv(target: GLenum, pname: GLenum, params: *mut GLfloat);
6584}
6585extern "C" {
6586    pub fn glGetTexEnviv(target: GLenum, pname: GLenum, params: *mut GLint);
6587}
6588extern "C" {
6589    pub fn glTexParameterf(target: GLenum, pname: GLenum, param: GLfloat);
6590}
6591extern "C" {
6592    pub fn glTexParameteri(target: GLenum, pname: GLenum, param: GLint);
6593}
6594extern "C" {
6595    pub fn glTexParameterfv(target: GLenum, pname: GLenum, params: *const GLfloat);
6596}
6597extern "C" {
6598    pub fn glTexParameteriv(target: GLenum, pname: GLenum, params: *const GLint);
6599}
6600extern "C" {
6601    pub fn glGetTexParameterfv(target: GLenum, pname: GLenum, params: *mut GLfloat);
6602}
6603extern "C" {
6604    pub fn glGetTexParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
6605}
6606extern "C" {
6607    pub fn glGetTexLevelParameterfv(
6608        target: GLenum,
6609        level: GLint,
6610        pname: GLenum,
6611        params: *mut GLfloat,
6612    );
6613}
6614extern "C" {
6615    pub fn glGetTexLevelParameteriv(
6616        target: GLenum,
6617        level: GLint,
6618        pname: GLenum,
6619        params: *mut GLint,
6620    );
6621}
6622extern "C" {
6623    pub fn glTexImage1D(
6624        target: GLenum,
6625        level: GLint,
6626        internalFormat: GLint,
6627        width: GLsizei,
6628        border: GLint,
6629        format: GLenum,
6630        type_: GLenum,
6631        pixels: *const GLvoid,
6632    );
6633}
6634extern "C" {
6635    pub fn glTexImage2D(
6636        target: GLenum,
6637        level: GLint,
6638        internalFormat: GLint,
6639        width: GLsizei,
6640        height: GLsizei,
6641        border: GLint,
6642        format: GLenum,
6643        type_: GLenum,
6644        pixels: *const GLvoid,
6645    );
6646}
6647extern "C" {
6648    pub fn glGetTexImage(
6649        target: GLenum,
6650        level: GLint,
6651        format: GLenum,
6652        type_: GLenum,
6653        pixels: *mut GLvoid,
6654    );
6655}
6656extern "C" {
6657    pub fn glGenTextures(n: GLsizei, textures: *mut GLuint);
6658}
6659extern "C" {
6660    pub fn glDeleteTextures(n: GLsizei, textures: *const GLuint);
6661}
6662extern "C" {
6663    pub fn glBindTexture(target: GLenum, texture: GLuint);
6664}
6665extern "C" {
6666    pub fn glPrioritizeTextures(n: GLsizei, textures: *const GLuint, priorities: *const GLclampf);
6667}
6668extern "C" {
6669    pub fn glAreTexturesResident(
6670        n: GLsizei,
6671        textures: *const GLuint,
6672        residences: *mut GLboolean,
6673    ) -> GLboolean;
6674}
6675extern "C" {
6676    pub fn glIsTexture(texture: GLuint) -> GLboolean;
6677}
6678extern "C" {
6679    pub fn glTexSubImage1D(
6680        target: GLenum,
6681        level: GLint,
6682        xoffset: GLint,
6683        width: GLsizei,
6684        format: GLenum,
6685        type_: GLenum,
6686        pixels: *const GLvoid,
6687    );
6688}
6689extern "C" {
6690    pub fn glTexSubImage2D(
6691        target: GLenum,
6692        level: GLint,
6693        xoffset: GLint,
6694        yoffset: GLint,
6695        width: GLsizei,
6696        height: GLsizei,
6697        format: GLenum,
6698        type_: GLenum,
6699        pixels: *const GLvoid,
6700    );
6701}
6702extern "C" {
6703    pub fn glCopyTexImage1D(
6704        target: GLenum,
6705        level: GLint,
6706        internalformat: GLenum,
6707        x: GLint,
6708        y: GLint,
6709        width: GLsizei,
6710        border: GLint,
6711    );
6712}
6713extern "C" {
6714    pub fn glCopyTexImage2D(
6715        target: GLenum,
6716        level: GLint,
6717        internalformat: GLenum,
6718        x: GLint,
6719        y: GLint,
6720        width: GLsizei,
6721        height: GLsizei,
6722        border: GLint,
6723    );
6724}
6725extern "C" {
6726    pub fn glCopyTexSubImage1D(
6727        target: GLenum,
6728        level: GLint,
6729        xoffset: GLint,
6730        x: GLint,
6731        y: GLint,
6732        width: GLsizei,
6733    );
6734}
6735extern "C" {
6736    pub fn glCopyTexSubImage2D(
6737        target: GLenum,
6738        level: GLint,
6739        xoffset: GLint,
6740        yoffset: GLint,
6741        x: GLint,
6742        y: GLint,
6743        width: GLsizei,
6744        height: GLsizei,
6745    );
6746}
6747extern "C" {
6748    pub fn glMap1d(
6749        target: GLenum,
6750        u1: GLdouble,
6751        u2: GLdouble,
6752        stride: GLint,
6753        order: GLint,
6754        points: *const GLdouble,
6755    );
6756}
6757extern "C" {
6758    pub fn glMap1f(
6759        target: GLenum,
6760        u1: GLfloat,
6761        u2: GLfloat,
6762        stride: GLint,
6763        order: GLint,
6764        points: *const GLfloat,
6765    );
6766}
6767extern "C" {
6768    pub fn glMap2d(
6769        target: GLenum,
6770        u1: GLdouble,
6771        u2: GLdouble,
6772        ustride: GLint,
6773        uorder: GLint,
6774        v1: GLdouble,
6775        v2: GLdouble,
6776        vstride: GLint,
6777        vorder: GLint,
6778        points: *const GLdouble,
6779    );
6780}
6781extern "C" {
6782    pub fn glMap2f(
6783        target: GLenum,
6784        u1: GLfloat,
6785        u2: GLfloat,
6786        ustride: GLint,
6787        uorder: GLint,
6788        v1: GLfloat,
6789        v2: GLfloat,
6790        vstride: GLint,
6791        vorder: GLint,
6792        points: *const GLfloat,
6793    );
6794}
6795extern "C" {
6796    pub fn glGetMapdv(target: GLenum, query: GLenum, v: *mut GLdouble);
6797}
6798extern "C" {
6799    pub fn glGetMapfv(target: GLenum, query: GLenum, v: *mut GLfloat);
6800}
6801extern "C" {
6802    pub fn glGetMapiv(target: GLenum, query: GLenum, v: *mut GLint);
6803}
6804extern "C" {
6805    pub fn glEvalCoord1d(u: GLdouble);
6806}
6807extern "C" {
6808    pub fn glEvalCoord1f(u: GLfloat);
6809}
6810extern "C" {
6811    pub fn glEvalCoord1dv(u: *const GLdouble);
6812}
6813extern "C" {
6814    pub fn glEvalCoord1fv(u: *const GLfloat);
6815}
6816extern "C" {
6817    pub fn glEvalCoord2d(u: GLdouble, v: GLdouble);
6818}
6819extern "C" {
6820    pub fn glEvalCoord2f(u: GLfloat, v: GLfloat);
6821}
6822extern "C" {
6823    pub fn glEvalCoord2dv(u: *const GLdouble);
6824}
6825extern "C" {
6826    pub fn glEvalCoord2fv(u: *const GLfloat);
6827}
6828extern "C" {
6829    pub fn glMapGrid1d(un: GLint, u1: GLdouble, u2: GLdouble);
6830}
6831extern "C" {
6832    pub fn glMapGrid1f(un: GLint, u1: GLfloat, u2: GLfloat);
6833}
6834extern "C" {
6835    pub fn glMapGrid2d(
6836        un: GLint,
6837        u1: GLdouble,
6838        u2: GLdouble,
6839        vn: GLint,
6840        v1: GLdouble,
6841        v2: GLdouble,
6842    );
6843}
6844extern "C" {
6845    pub fn glMapGrid2f(un: GLint, u1: GLfloat, u2: GLfloat, vn: GLint, v1: GLfloat, v2: GLfloat);
6846}
6847extern "C" {
6848    pub fn glEvalPoint1(i: GLint);
6849}
6850extern "C" {
6851    pub fn glEvalPoint2(i: GLint, j: GLint);
6852}
6853extern "C" {
6854    pub fn glEvalMesh1(mode: GLenum, i1: GLint, i2: GLint);
6855}
6856extern "C" {
6857    pub fn glEvalMesh2(mode: GLenum, i1: GLint, i2: GLint, j1: GLint, j2: GLint);
6858}
6859extern "C" {
6860    pub fn glFogf(pname: GLenum, param: GLfloat);
6861}
6862extern "C" {
6863    pub fn glFogi(pname: GLenum, param: GLint);
6864}
6865extern "C" {
6866    pub fn glFogfv(pname: GLenum, params: *const GLfloat);
6867}
6868extern "C" {
6869    pub fn glFogiv(pname: GLenum, params: *const GLint);
6870}
6871extern "C" {
6872    pub fn glFeedbackBuffer(size: GLsizei, type_: GLenum, buffer: *mut GLfloat);
6873}
6874extern "C" {
6875    pub fn glPassThrough(token: GLfloat);
6876}
6877extern "C" {
6878    pub fn glSelectBuffer(size: GLsizei, buffer: *mut GLuint);
6879}
6880extern "C" {
6881    pub fn glInitNames();
6882}
6883extern "C" {
6884    pub fn glLoadName(name: GLuint);
6885}
6886extern "C" {
6887    pub fn glPushName(name: GLuint);
6888}
6889extern "C" {
6890    pub fn glPopName();
6891}
6892extern "C" {
6893    pub fn glDrawRangeElements(
6894        mode: GLenum,
6895        start: GLuint,
6896        end: GLuint,
6897        count: GLsizei,
6898        type_: GLenum,
6899        indices: *const GLvoid,
6900    );
6901}
6902extern "C" {
6903    pub fn glTexImage3D(
6904        target: GLenum,
6905        level: GLint,
6906        internalFormat: GLint,
6907        width: GLsizei,
6908        height: GLsizei,
6909        depth: GLsizei,
6910        border: GLint,
6911        format: GLenum,
6912        type_: GLenum,
6913        pixels: *const GLvoid,
6914    );
6915}
6916extern "C" {
6917    pub fn glTexSubImage3D(
6918        target: GLenum,
6919        level: GLint,
6920        xoffset: GLint,
6921        yoffset: GLint,
6922        zoffset: GLint,
6923        width: GLsizei,
6924        height: GLsizei,
6925        depth: GLsizei,
6926        format: GLenum,
6927        type_: GLenum,
6928        pixels: *const GLvoid,
6929    );
6930}
6931extern "C" {
6932    pub fn glCopyTexSubImage3D(
6933        target: GLenum,
6934        level: GLint,
6935        xoffset: GLint,
6936        yoffset: GLint,
6937        zoffset: GLint,
6938        x: GLint,
6939        y: GLint,
6940        width: GLsizei,
6941        height: GLsizei,
6942    );
6943}
6944pub type PFNGLDRAWRANGEELEMENTSPROC = ::std::option::Option<
6945    unsafe extern "C" fn(
6946        mode: GLenum,
6947        start: GLuint,
6948        end: GLuint,
6949        count: GLsizei,
6950        type_: GLenum,
6951        indices: *const GLvoid,
6952    ),
6953>;
6954pub type PFNGLTEXIMAGE3DPROC = ::std::option::Option<
6955    unsafe extern "C" fn(
6956        target: GLenum,
6957        level: GLint,
6958        internalformat: GLint,
6959        width: GLsizei,
6960        height: GLsizei,
6961        depth: GLsizei,
6962        border: GLint,
6963        format: GLenum,
6964        type_: GLenum,
6965        pixels: *const GLvoid,
6966    ),
6967>;
6968pub type PFNGLTEXSUBIMAGE3DPROC = ::std::option::Option<
6969    unsafe extern "C" fn(
6970        target: GLenum,
6971        level: GLint,
6972        xoffset: GLint,
6973        yoffset: GLint,
6974        zoffset: GLint,
6975        width: GLsizei,
6976        height: GLsizei,
6977        depth: GLsizei,
6978        format: GLenum,
6979        type_: GLenum,
6980        pixels: *const GLvoid,
6981    ),
6982>;
6983pub type PFNGLCOPYTEXSUBIMAGE3DPROC = ::std::option::Option<
6984    unsafe extern "C" fn(
6985        target: GLenum,
6986        level: GLint,
6987        xoffset: GLint,
6988        yoffset: GLint,
6989        zoffset: GLint,
6990        x: GLint,
6991        y: GLint,
6992        width: GLsizei,
6993        height: GLsizei,
6994    ),
6995>;
6996extern "C" {
6997    pub fn glColorTable(
6998        target: GLenum,
6999        internalformat: GLenum,
7000        width: GLsizei,
7001        format: GLenum,
7002        type_: GLenum,
7003        table: *const GLvoid,
7004    );
7005}
7006extern "C" {
7007    pub fn glColorSubTable(
7008        target: GLenum,
7009        start: GLsizei,
7010        count: GLsizei,
7011        format: GLenum,
7012        type_: GLenum,
7013        data: *const GLvoid,
7014    );
7015}
7016extern "C" {
7017    pub fn glColorTableParameteriv(target: GLenum, pname: GLenum, params: *const GLint);
7018}
7019extern "C" {
7020    pub fn glColorTableParameterfv(target: GLenum, pname: GLenum, params: *const GLfloat);
7021}
7022extern "C" {
7023    pub fn glCopyColorSubTable(target: GLenum, start: GLsizei, x: GLint, y: GLint, width: GLsizei);
7024}
7025extern "C" {
7026    pub fn glCopyColorTable(
7027        target: GLenum,
7028        internalformat: GLenum,
7029        x: GLint,
7030        y: GLint,
7031        width: GLsizei,
7032    );
7033}
7034extern "C" {
7035    pub fn glGetColorTable(target: GLenum, format: GLenum, type_: GLenum, table: *mut GLvoid);
7036}
7037extern "C" {
7038    pub fn glGetColorTableParameterfv(target: GLenum, pname: GLenum, params: *mut GLfloat);
7039}
7040extern "C" {
7041    pub fn glGetColorTableParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
7042}
7043extern "C" {
7044    pub fn glBlendEquation(mode: GLenum);
7045}
7046extern "C" {
7047    pub fn glBlendColor(red: GLclampf, green: GLclampf, blue: GLclampf, alpha: GLclampf);
7048}
7049extern "C" {
7050    pub fn glHistogram(target: GLenum, width: GLsizei, internalformat: GLenum, sink: GLboolean);
7051}
7052extern "C" {
7053    pub fn glResetHistogram(target: GLenum);
7054}
7055extern "C" {
7056    pub fn glGetHistogram(
7057        target: GLenum,
7058        reset: GLboolean,
7059        format: GLenum,
7060        type_: GLenum,
7061        values: *mut GLvoid,
7062    );
7063}
7064extern "C" {
7065    pub fn glGetHistogramParameterfv(target: GLenum, pname: GLenum, params: *mut GLfloat);
7066}
7067extern "C" {
7068    pub fn glGetHistogramParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
7069}
7070extern "C" {
7071    pub fn glMinmax(target: GLenum, internalformat: GLenum, sink: GLboolean);
7072}
7073extern "C" {
7074    pub fn glResetMinmax(target: GLenum);
7075}
7076extern "C" {
7077    pub fn glGetMinmax(
7078        target: GLenum,
7079        reset: GLboolean,
7080        format: GLenum,
7081        types: GLenum,
7082        values: *mut GLvoid,
7083    );
7084}
7085extern "C" {
7086    pub fn glGetMinmaxParameterfv(target: GLenum, pname: GLenum, params: *mut GLfloat);
7087}
7088extern "C" {
7089    pub fn glGetMinmaxParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
7090}
7091extern "C" {
7092    pub fn glConvolutionFilter1D(
7093        target: GLenum,
7094        internalformat: GLenum,
7095        width: GLsizei,
7096        format: GLenum,
7097        type_: GLenum,
7098        image: *const GLvoid,
7099    );
7100}
7101extern "C" {
7102    pub fn glConvolutionFilter2D(
7103        target: GLenum,
7104        internalformat: GLenum,
7105        width: GLsizei,
7106        height: GLsizei,
7107        format: GLenum,
7108        type_: GLenum,
7109        image: *const GLvoid,
7110    );
7111}
7112extern "C" {
7113    pub fn glConvolutionParameterf(target: GLenum, pname: GLenum, params: GLfloat);
7114}
7115extern "C" {
7116    pub fn glConvolutionParameterfv(target: GLenum, pname: GLenum, params: *const GLfloat);
7117}
7118extern "C" {
7119    pub fn glConvolutionParameteri(target: GLenum, pname: GLenum, params: GLint);
7120}
7121extern "C" {
7122    pub fn glConvolutionParameteriv(target: GLenum, pname: GLenum, params: *const GLint);
7123}
7124extern "C" {
7125    pub fn glCopyConvolutionFilter1D(
7126        target: GLenum,
7127        internalformat: GLenum,
7128        x: GLint,
7129        y: GLint,
7130        width: GLsizei,
7131    );
7132}
7133extern "C" {
7134    pub fn glCopyConvolutionFilter2D(
7135        target: GLenum,
7136        internalformat: GLenum,
7137        x: GLint,
7138        y: GLint,
7139        width: GLsizei,
7140        height: GLsizei,
7141    );
7142}
7143extern "C" {
7144    pub fn glGetConvolutionFilter(
7145        target: GLenum,
7146        format: GLenum,
7147        type_: GLenum,
7148        image: *mut GLvoid,
7149    );
7150}
7151extern "C" {
7152    pub fn glGetConvolutionParameterfv(target: GLenum, pname: GLenum, params: *mut GLfloat);
7153}
7154extern "C" {
7155    pub fn glGetConvolutionParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
7156}
7157extern "C" {
7158    pub fn glSeparableFilter2D(
7159        target: GLenum,
7160        internalformat: GLenum,
7161        width: GLsizei,
7162        height: GLsizei,
7163        format: GLenum,
7164        type_: GLenum,
7165        row: *const GLvoid,
7166        column: *const GLvoid,
7167    );
7168}
7169extern "C" {
7170    pub fn glGetSeparableFilter(
7171        target: GLenum,
7172        format: GLenum,
7173        type_: GLenum,
7174        row: *mut GLvoid,
7175        column: *mut GLvoid,
7176        span: *mut GLvoid,
7177    );
7178}
7179extern "C" {
7180    pub fn glActiveTexture(texture: GLenum);
7181}
7182extern "C" {
7183    pub fn glClientActiveTexture(texture: GLenum);
7184}
7185extern "C" {
7186    pub fn glCompressedTexImage1D(
7187        target: GLenum,
7188        level: GLint,
7189        internalformat: GLenum,
7190        width: GLsizei,
7191        border: GLint,
7192        imageSize: GLsizei,
7193        data: *const GLvoid,
7194    );
7195}
7196extern "C" {
7197    pub fn glCompressedTexImage2D(
7198        target: GLenum,
7199        level: GLint,
7200        internalformat: GLenum,
7201        width: GLsizei,
7202        height: GLsizei,
7203        border: GLint,
7204        imageSize: GLsizei,
7205        data: *const GLvoid,
7206    );
7207}
7208extern "C" {
7209    pub fn glCompressedTexImage3D(
7210        target: GLenum,
7211        level: GLint,
7212        internalformat: GLenum,
7213        width: GLsizei,
7214        height: GLsizei,
7215        depth: GLsizei,
7216        border: GLint,
7217        imageSize: GLsizei,
7218        data: *const GLvoid,
7219    );
7220}
7221extern "C" {
7222    pub fn glCompressedTexSubImage1D(
7223        target: GLenum,
7224        level: GLint,
7225        xoffset: GLint,
7226        width: GLsizei,
7227        format: GLenum,
7228        imageSize: GLsizei,
7229        data: *const GLvoid,
7230    );
7231}
7232extern "C" {
7233    pub fn glCompressedTexSubImage2D(
7234        target: GLenum,
7235        level: GLint,
7236        xoffset: GLint,
7237        yoffset: GLint,
7238        width: GLsizei,
7239        height: GLsizei,
7240        format: GLenum,
7241        imageSize: GLsizei,
7242        data: *const GLvoid,
7243    );
7244}
7245extern "C" {
7246    pub fn glCompressedTexSubImage3D(
7247        target: GLenum,
7248        level: GLint,
7249        xoffset: GLint,
7250        yoffset: GLint,
7251        zoffset: GLint,
7252        width: GLsizei,
7253        height: GLsizei,
7254        depth: GLsizei,
7255        format: GLenum,
7256        imageSize: GLsizei,
7257        data: *const GLvoid,
7258    );
7259}
7260extern "C" {
7261    pub fn glGetCompressedTexImage(target: GLenum, lod: GLint, img: *mut GLvoid);
7262}
7263extern "C" {
7264    pub fn glMultiTexCoord1d(target: GLenum, s: GLdouble);
7265}
7266extern "C" {
7267    pub fn glMultiTexCoord1dv(target: GLenum, v: *const GLdouble);
7268}
7269extern "C" {
7270    pub fn glMultiTexCoord1f(target: GLenum, s: GLfloat);
7271}
7272extern "C" {
7273    pub fn glMultiTexCoord1fv(target: GLenum, v: *const GLfloat);
7274}
7275extern "C" {
7276    pub fn glMultiTexCoord1i(target: GLenum, s: GLint);
7277}
7278extern "C" {
7279    pub fn glMultiTexCoord1iv(target: GLenum, v: *const GLint);
7280}
7281extern "C" {
7282    pub fn glMultiTexCoord1s(target: GLenum, s: GLshort);
7283}
7284extern "C" {
7285    pub fn glMultiTexCoord1sv(target: GLenum, v: *const GLshort);
7286}
7287extern "C" {
7288    pub fn glMultiTexCoord2d(target: GLenum, s: GLdouble, t: GLdouble);
7289}
7290extern "C" {
7291    pub fn glMultiTexCoord2dv(target: GLenum, v: *const GLdouble);
7292}
7293extern "C" {
7294    pub fn glMultiTexCoord2f(target: GLenum, s: GLfloat, t: GLfloat);
7295}
7296extern "C" {
7297    pub fn glMultiTexCoord2fv(target: GLenum, v: *const GLfloat);
7298}
7299extern "C" {
7300    pub fn glMultiTexCoord2i(target: GLenum, s: GLint, t: GLint);
7301}
7302extern "C" {
7303    pub fn glMultiTexCoord2iv(target: GLenum, v: *const GLint);
7304}
7305extern "C" {
7306    pub fn glMultiTexCoord2s(target: GLenum, s: GLshort, t: GLshort);
7307}
7308extern "C" {
7309    pub fn glMultiTexCoord2sv(target: GLenum, v: *const GLshort);
7310}
7311extern "C" {
7312    pub fn glMultiTexCoord3d(target: GLenum, s: GLdouble, t: GLdouble, r: GLdouble);
7313}
7314extern "C" {
7315    pub fn glMultiTexCoord3dv(target: GLenum, v: *const GLdouble);
7316}
7317extern "C" {
7318    pub fn glMultiTexCoord3f(target: GLenum, s: GLfloat, t: GLfloat, r: GLfloat);
7319}
7320extern "C" {
7321    pub fn glMultiTexCoord3fv(target: GLenum, v: *const GLfloat);
7322}
7323extern "C" {
7324    pub fn glMultiTexCoord3i(target: GLenum, s: GLint, t: GLint, r: GLint);
7325}
7326extern "C" {
7327    pub fn glMultiTexCoord3iv(target: GLenum, v: *const GLint);
7328}
7329extern "C" {
7330    pub fn glMultiTexCoord3s(target: GLenum, s: GLshort, t: GLshort, r: GLshort);
7331}
7332extern "C" {
7333    pub fn glMultiTexCoord3sv(target: GLenum, v: *const GLshort);
7334}
7335extern "C" {
7336    pub fn glMultiTexCoord4d(target: GLenum, s: GLdouble, t: GLdouble, r: GLdouble, q: GLdouble);
7337}
7338extern "C" {
7339    pub fn glMultiTexCoord4dv(target: GLenum, v: *const GLdouble);
7340}
7341extern "C" {
7342    pub fn glMultiTexCoord4f(target: GLenum, s: GLfloat, t: GLfloat, r: GLfloat, q: GLfloat);
7343}
7344extern "C" {
7345    pub fn glMultiTexCoord4fv(target: GLenum, v: *const GLfloat);
7346}
7347extern "C" {
7348    pub fn glMultiTexCoord4i(target: GLenum, s: GLint, t: GLint, r: GLint, q: GLint);
7349}
7350extern "C" {
7351    pub fn glMultiTexCoord4iv(target: GLenum, v: *const GLint);
7352}
7353extern "C" {
7354    pub fn glMultiTexCoord4s(target: GLenum, s: GLshort, t: GLshort, r: GLshort, q: GLshort);
7355}
7356extern "C" {
7357    pub fn glMultiTexCoord4sv(target: GLenum, v: *const GLshort);
7358}
7359extern "C" {
7360    pub fn glLoadTransposeMatrixd(m: *const GLdouble);
7361}
7362extern "C" {
7363    pub fn glLoadTransposeMatrixf(m: *const GLfloat);
7364}
7365extern "C" {
7366    pub fn glMultTransposeMatrixd(m: *const GLdouble);
7367}
7368extern "C" {
7369    pub fn glMultTransposeMatrixf(m: *const GLfloat);
7370}
7371extern "C" {
7372    pub fn glSampleCoverage(value: GLclampf, invert: GLboolean);
7373}
7374pub type PFNGLACTIVETEXTUREPROC = ::std::option::Option<unsafe extern "C" fn(texture: GLenum)>;
7375pub type PFNGLSAMPLECOVERAGEPROC =
7376    ::std::option::Option<unsafe extern "C" fn(value: GLclampf, invert: GLboolean)>;
7377pub type PFNGLCOMPRESSEDTEXIMAGE3DPROC = ::std::option::Option<
7378    unsafe extern "C" fn(
7379        target: GLenum,
7380        level: GLint,
7381        internalformat: GLenum,
7382        width: GLsizei,
7383        height: GLsizei,
7384        depth: GLsizei,
7385        border: GLint,
7386        imageSize: GLsizei,
7387        data: *const GLvoid,
7388    ),
7389>;
7390pub type PFNGLCOMPRESSEDTEXIMAGE2DPROC = ::std::option::Option<
7391    unsafe extern "C" fn(
7392        target: GLenum,
7393        level: GLint,
7394        internalformat: GLenum,
7395        width: GLsizei,
7396        height: GLsizei,
7397        border: GLint,
7398        imageSize: GLsizei,
7399        data: *const GLvoid,
7400    ),
7401>;
7402pub type PFNGLCOMPRESSEDTEXIMAGE1DPROC = ::std::option::Option<
7403    unsafe extern "C" fn(
7404        target: GLenum,
7405        level: GLint,
7406        internalformat: GLenum,
7407        width: GLsizei,
7408        border: GLint,
7409        imageSize: GLsizei,
7410        data: *const GLvoid,
7411    ),
7412>;
7413pub type PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC = ::std::option::Option<
7414    unsafe extern "C" fn(
7415        target: GLenum,
7416        level: GLint,
7417        xoffset: GLint,
7418        yoffset: GLint,
7419        zoffset: GLint,
7420        width: GLsizei,
7421        height: GLsizei,
7422        depth: GLsizei,
7423        format: GLenum,
7424        imageSize: GLsizei,
7425        data: *const GLvoid,
7426    ),
7427>;
7428pub type PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC = ::std::option::Option<
7429    unsafe extern "C" fn(
7430        target: GLenum,
7431        level: GLint,
7432        xoffset: GLint,
7433        yoffset: GLint,
7434        width: GLsizei,
7435        height: GLsizei,
7436        format: GLenum,
7437        imageSize: GLsizei,
7438        data: *const GLvoid,
7439    ),
7440>;
7441pub type PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC = ::std::option::Option<
7442    unsafe extern "C" fn(
7443        target: GLenum,
7444        level: GLint,
7445        xoffset: GLint,
7446        width: GLsizei,
7447        format: GLenum,
7448        imageSize: GLsizei,
7449        data: *const GLvoid,
7450    ),
7451>;
7452pub type PFNGLGETCOMPRESSEDTEXIMAGEPROC =
7453    ::std::option::Option<unsafe extern "C" fn(target: GLenum, level: GLint, img: *mut GLvoid)>;
7454extern "C" {
7455    pub fn glActiveTextureARB(texture: GLenum);
7456}
7457extern "C" {
7458    pub fn glClientActiveTextureARB(texture: GLenum);
7459}
7460extern "C" {
7461    pub fn glMultiTexCoord1dARB(target: GLenum, s: GLdouble);
7462}
7463extern "C" {
7464    pub fn glMultiTexCoord1dvARB(target: GLenum, v: *const GLdouble);
7465}
7466extern "C" {
7467    pub fn glMultiTexCoord1fARB(target: GLenum, s: GLfloat);
7468}
7469extern "C" {
7470    pub fn glMultiTexCoord1fvARB(target: GLenum, v: *const GLfloat);
7471}
7472extern "C" {
7473    pub fn glMultiTexCoord1iARB(target: GLenum, s: GLint);
7474}
7475extern "C" {
7476    pub fn glMultiTexCoord1ivARB(target: GLenum, v: *const GLint);
7477}
7478extern "C" {
7479    pub fn glMultiTexCoord1sARB(target: GLenum, s: GLshort);
7480}
7481extern "C" {
7482    pub fn glMultiTexCoord1svARB(target: GLenum, v: *const GLshort);
7483}
7484extern "C" {
7485    pub fn glMultiTexCoord2dARB(target: GLenum, s: GLdouble, t: GLdouble);
7486}
7487extern "C" {
7488    pub fn glMultiTexCoord2dvARB(target: GLenum, v: *const GLdouble);
7489}
7490extern "C" {
7491    pub fn glMultiTexCoord2fARB(target: GLenum, s: GLfloat, t: GLfloat);
7492}
7493extern "C" {
7494    pub fn glMultiTexCoord2fvARB(target: GLenum, v: *const GLfloat);
7495}
7496extern "C" {
7497    pub fn glMultiTexCoord2iARB(target: GLenum, s: GLint, t: GLint);
7498}
7499extern "C" {
7500    pub fn glMultiTexCoord2ivARB(target: GLenum, v: *const GLint);
7501}
7502extern "C" {
7503    pub fn glMultiTexCoord2sARB(target: GLenum, s: GLshort, t: GLshort);
7504}
7505extern "C" {
7506    pub fn glMultiTexCoord2svARB(target: GLenum, v: *const GLshort);
7507}
7508extern "C" {
7509    pub fn glMultiTexCoord3dARB(target: GLenum, s: GLdouble, t: GLdouble, r: GLdouble);
7510}
7511extern "C" {
7512    pub fn glMultiTexCoord3dvARB(target: GLenum, v: *const GLdouble);
7513}
7514extern "C" {
7515    pub fn glMultiTexCoord3fARB(target: GLenum, s: GLfloat, t: GLfloat, r: GLfloat);
7516}
7517extern "C" {
7518    pub fn glMultiTexCoord3fvARB(target: GLenum, v: *const GLfloat);
7519}
7520extern "C" {
7521    pub fn glMultiTexCoord3iARB(target: GLenum, s: GLint, t: GLint, r: GLint);
7522}
7523extern "C" {
7524    pub fn glMultiTexCoord3ivARB(target: GLenum, v: *const GLint);
7525}
7526extern "C" {
7527    pub fn glMultiTexCoord3sARB(target: GLenum, s: GLshort, t: GLshort, r: GLshort);
7528}
7529extern "C" {
7530    pub fn glMultiTexCoord3svARB(target: GLenum, v: *const GLshort);
7531}
7532extern "C" {
7533    pub fn glMultiTexCoord4dARB(target: GLenum, s: GLdouble, t: GLdouble, r: GLdouble, q: GLdouble);
7534}
7535extern "C" {
7536    pub fn glMultiTexCoord4dvARB(target: GLenum, v: *const GLdouble);
7537}
7538extern "C" {
7539    pub fn glMultiTexCoord4fARB(target: GLenum, s: GLfloat, t: GLfloat, r: GLfloat, q: GLfloat);
7540}
7541extern "C" {
7542    pub fn glMultiTexCoord4fvARB(target: GLenum, v: *const GLfloat);
7543}
7544extern "C" {
7545    pub fn glMultiTexCoord4iARB(target: GLenum, s: GLint, t: GLint, r: GLint, q: GLint);
7546}
7547extern "C" {
7548    pub fn glMultiTexCoord4ivARB(target: GLenum, v: *const GLint);
7549}
7550extern "C" {
7551    pub fn glMultiTexCoord4sARB(target: GLenum, s: GLshort, t: GLshort, r: GLshort, q: GLshort);
7552}
7553extern "C" {
7554    pub fn glMultiTexCoord4svARB(target: GLenum, v: *const GLshort);
7555}
7556pub type PFNGLACTIVETEXTUREARBPROC = ::std::option::Option<unsafe extern "C" fn(texture: GLenum)>;
7557pub type PFNGLCLIENTACTIVETEXTUREARBPROC =
7558    ::std::option::Option<unsafe extern "C" fn(texture: GLenum)>;
7559pub type PFNGLMULTITEXCOORD1DARBPROC =
7560    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLdouble)>;
7561pub type PFNGLMULTITEXCOORD1DVARBPROC =
7562    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLdouble)>;
7563pub type PFNGLMULTITEXCOORD1FARBPROC =
7564    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLfloat)>;
7565pub type PFNGLMULTITEXCOORD1FVARBPROC =
7566    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLfloat)>;
7567pub type PFNGLMULTITEXCOORD1IARBPROC =
7568    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLint)>;
7569pub type PFNGLMULTITEXCOORD1IVARBPROC =
7570    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLint)>;
7571pub type PFNGLMULTITEXCOORD1SARBPROC =
7572    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLshort)>;
7573pub type PFNGLMULTITEXCOORD1SVARBPROC =
7574    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLshort)>;
7575pub type PFNGLMULTITEXCOORD2DARBPROC =
7576    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLdouble, t: GLdouble)>;
7577pub type PFNGLMULTITEXCOORD2DVARBPROC =
7578    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLdouble)>;
7579pub type PFNGLMULTITEXCOORD2FARBPROC =
7580    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLfloat, t: GLfloat)>;
7581pub type PFNGLMULTITEXCOORD2FVARBPROC =
7582    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLfloat)>;
7583pub type PFNGLMULTITEXCOORD2IARBPROC =
7584    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLint, t: GLint)>;
7585pub type PFNGLMULTITEXCOORD2IVARBPROC =
7586    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLint)>;
7587pub type PFNGLMULTITEXCOORD2SARBPROC =
7588    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLshort, t: GLshort)>;
7589pub type PFNGLMULTITEXCOORD2SVARBPROC =
7590    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLshort)>;
7591pub type PFNGLMULTITEXCOORD3DARBPROC = ::std::option::Option<
7592    unsafe extern "C" fn(target: GLenum, s: GLdouble, t: GLdouble, r: GLdouble),
7593>;
7594pub type PFNGLMULTITEXCOORD3DVARBPROC =
7595    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLdouble)>;
7596pub type PFNGLMULTITEXCOORD3FARBPROC =
7597    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLfloat, t: GLfloat, r: GLfloat)>;
7598pub type PFNGLMULTITEXCOORD3FVARBPROC =
7599    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLfloat)>;
7600pub type PFNGLMULTITEXCOORD3IARBPROC =
7601    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLint, t: GLint, r: GLint)>;
7602pub type PFNGLMULTITEXCOORD3IVARBPROC =
7603    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLint)>;
7604pub type PFNGLMULTITEXCOORD3SARBPROC =
7605    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLshort, t: GLshort, r: GLshort)>;
7606pub type PFNGLMULTITEXCOORD3SVARBPROC =
7607    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLshort)>;
7608pub type PFNGLMULTITEXCOORD4DARBPROC = ::std::option::Option<
7609    unsafe extern "C" fn(target: GLenum, s: GLdouble, t: GLdouble, r: GLdouble, q: GLdouble),
7610>;
7611pub type PFNGLMULTITEXCOORD4DVARBPROC =
7612    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLdouble)>;
7613pub type PFNGLMULTITEXCOORD4FARBPROC = ::std::option::Option<
7614    unsafe extern "C" fn(target: GLenum, s: GLfloat, t: GLfloat, r: GLfloat, q: GLfloat),
7615>;
7616pub type PFNGLMULTITEXCOORD4FVARBPROC =
7617    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLfloat)>;
7618pub type PFNGLMULTITEXCOORD4IARBPROC = ::std::option::Option<
7619    unsafe extern "C" fn(target: GLenum, s: GLint, t: GLint, r: GLint, q: GLint),
7620>;
7621pub type PFNGLMULTITEXCOORD4IVARBPROC =
7622    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLint)>;
7623pub type PFNGLMULTITEXCOORD4SARBPROC = ::std::option::Option<
7624    unsafe extern "C" fn(target: GLenum, s: GLshort, t: GLshort, r: GLshort, q: GLshort),
7625>;
7626pub type PFNGLMULTITEXCOORD4SVARBPROC =
7627    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLshort)>;
7628pub type __u_char = ::std::os::raw::c_uchar;
7629pub type __u_short = ::std::os::raw::c_ushort;
7630pub type __u_int = ::std::os::raw::c_uint;
7631pub type __u_long = ::std::os::raw::c_ulong;
7632pub type __int8_t = ::std::os::raw::c_schar;
7633pub type __uint8_t = ::std::os::raw::c_uchar;
7634pub type __int16_t = ::std::os::raw::c_short;
7635pub type __uint16_t = ::std::os::raw::c_ushort;
7636pub type __int32_t = ::std::os::raw::c_int;
7637pub type __uint32_t = ::std::os::raw::c_uint;
7638pub type __int64_t = ::std::os::raw::c_long;
7639pub type __uint64_t = ::std::os::raw::c_ulong;
7640pub type __int_least8_t = __int8_t;
7641pub type __uint_least8_t = __uint8_t;
7642pub type __int_least16_t = __int16_t;
7643pub type __uint_least16_t = __uint16_t;
7644pub type __int_least32_t = __int32_t;
7645pub type __uint_least32_t = __uint32_t;
7646pub type __int_least64_t = __int64_t;
7647pub type __uint_least64_t = __uint64_t;
7648pub type __quad_t = ::std::os::raw::c_long;
7649pub type __u_quad_t = ::std::os::raw::c_ulong;
7650pub type __intmax_t = ::std::os::raw::c_long;
7651pub type __uintmax_t = ::std::os::raw::c_ulong;
7652pub type __dev_t = ::std::os::raw::c_ulong;
7653pub type __uid_t = ::std::os::raw::c_uint;
7654pub type __gid_t = ::std::os::raw::c_uint;
7655pub type __ino_t = ::std::os::raw::c_ulong;
7656pub type __ino64_t = ::std::os::raw::c_ulong;
7657pub type __mode_t = ::std::os::raw::c_uint;
7658pub type __nlink_t = ::std::os::raw::c_ulong;
7659pub type __off_t = ::std::os::raw::c_long;
7660pub type __off64_t = ::std::os::raw::c_long;
7661pub type __pid_t = ::std::os::raw::c_int;
7662#[repr(C)]
7663#[derive(Debug, Copy, Clone)]
7664pub struct __fsid_t {
7665    pub __val: [::std::os::raw::c_int; 2usize],
7666}
7667pub type __clock_t = ::std::os::raw::c_long;
7668pub type __rlim_t = ::std::os::raw::c_ulong;
7669pub type __rlim64_t = ::std::os::raw::c_ulong;
7670pub type __id_t = ::std::os::raw::c_uint;
7671pub type __time_t = ::std::os::raw::c_long;
7672pub type __useconds_t = ::std::os::raw::c_uint;
7673pub type __suseconds_t = ::std::os::raw::c_long;
7674pub type __daddr_t = ::std::os::raw::c_int;
7675pub type __key_t = ::std::os::raw::c_int;
7676pub type __clockid_t = ::std::os::raw::c_int;
7677pub type __timer_t = *mut ::std::os::raw::c_void;
7678pub type __blksize_t = ::std::os::raw::c_long;
7679pub type __blkcnt_t = ::std::os::raw::c_long;
7680pub type __blkcnt64_t = ::std::os::raw::c_long;
7681pub type __fsblkcnt_t = ::std::os::raw::c_ulong;
7682pub type __fsblkcnt64_t = ::std::os::raw::c_ulong;
7683pub type __fsfilcnt_t = ::std::os::raw::c_ulong;
7684pub type __fsfilcnt64_t = ::std::os::raw::c_ulong;
7685pub type __fsword_t = ::std::os::raw::c_long;
7686pub type __ssize_t = ::std::os::raw::c_long;
7687pub type __syscall_slong_t = ::std::os::raw::c_long;
7688pub type __syscall_ulong_t = ::std::os::raw::c_ulong;
7689pub type __loff_t = __off64_t;
7690pub type __caddr_t = *mut ::std::os::raw::c_char;
7691pub type __intptr_t = ::std::os::raw::c_long;
7692pub type __socklen_t = ::std::os::raw::c_uint;
7693pub type __sig_atomic_t = ::std::os::raw::c_int;
7694pub type int_least8_t = __int_least8_t;
7695pub type int_least16_t = __int_least16_t;
7696pub type int_least32_t = __int_least32_t;
7697pub type int_least64_t = __int_least64_t;
7698pub type uint_least8_t = __uint_least8_t;
7699pub type uint_least16_t = __uint_least16_t;
7700pub type uint_least32_t = __uint_least32_t;
7701pub type uint_least64_t = __uint_least64_t;
7702pub type int_fast8_t = ::std::os::raw::c_schar;
7703pub type int_fast16_t = ::std::os::raw::c_long;
7704pub type int_fast32_t = ::std::os::raw::c_long;
7705pub type int_fast64_t = ::std::os::raw::c_long;
7706pub type uint_fast8_t = ::std::os::raw::c_uchar;
7707pub type uint_fast16_t = ::std::os::raw::c_ulong;
7708pub type uint_fast32_t = ::std::os::raw::c_ulong;
7709pub type uint_fast64_t = ::std::os::raw::c_ulong;
7710pub type intmax_t = __intmax_t;
7711pub type uintmax_t = __uintmax_t;
7712pub type khronos_int32_t = i32;
7713pub type khronos_uint32_t = u32;
7714pub type khronos_int64_t = i64;
7715pub type khronos_uint64_t = u64;
7716pub type khronos_int8_t = ::std::os::raw::c_schar;
7717pub type khronos_uint8_t = ::std::os::raw::c_uchar;
7718pub type khronos_int16_t = ::std::os::raw::c_short;
7719pub type khronos_uint16_t = ::std::os::raw::c_ushort;
7720pub type khronos_intptr_t = ::std::os::raw::c_long;
7721pub type khronos_uintptr_t = ::std::os::raw::c_ulong;
7722pub type khronos_ssize_t = ::std::os::raw::c_long;
7723pub type khronos_usize_t = ::std::os::raw::c_ulong;
7724pub type khronos_float_t = f32;
7725pub type khronos_utime_nanoseconds_t = khronos_uint64_t;
7726pub type khronos_stime_nanoseconds_t = khronos_int64_t;
7727pub const khronos_boolean_enum_t_KHRONOS_FALSE: khronos_boolean_enum_t = 0;
7728pub const khronos_boolean_enum_t_KHRONOS_TRUE: khronos_boolean_enum_t = 1;
7729pub const khronos_boolean_enum_t_KHRONOS_BOOLEAN_ENUM_FORCE_SIZE: khronos_boolean_enum_t =
7730    2147483647;
7731pub type khronos_boolean_enum_t = u32;
7732pub type PFNGLBLENDFUNCSEPARATEPROC = ::std::option::Option<
7733    unsafe extern "C" fn(
7734        sfactorRGB: GLenum,
7735        dfactorRGB: GLenum,
7736        sfactorAlpha: GLenum,
7737        dfactorAlpha: GLenum,
7738    ),
7739>;
7740pub type PFNGLMULTIDRAWARRAYSPROC = ::std::option::Option<
7741    unsafe extern "C" fn(
7742        mode: GLenum,
7743        first: *const GLint,
7744        count: *const GLsizei,
7745        drawcount: GLsizei,
7746    ),
7747>;
7748pub type PFNGLMULTIDRAWELEMENTSPROC = ::std::option::Option<
7749    unsafe extern "C" fn(
7750        mode: GLenum,
7751        count: *const GLsizei,
7752        type_: GLenum,
7753        indices: *const *const ::std::os::raw::c_void,
7754        drawcount: GLsizei,
7755    ),
7756>;
7757pub type PFNGLPOINTPARAMETERFPROC =
7758    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
7759pub type PFNGLPOINTPARAMETERFVPROC =
7760    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
7761pub type PFNGLPOINTPARAMETERIPROC =
7762    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
7763pub type PFNGLPOINTPARAMETERIVPROC =
7764    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLint)>;
7765pub type PFNGLFOGCOORDFPROC = ::std::option::Option<unsafe extern "C" fn(coord: GLfloat)>;
7766pub type PFNGLFOGCOORDFVPROC = ::std::option::Option<unsafe extern "C" fn(coord: *const GLfloat)>;
7767pub type PFNGLFOGCOORDDPROC = ::std::option::Option<unsafe extern "C" fn(coord: GLdouble)>;
7768pub type PFNGLFOGCOORDDVPROC = ::std::option::Option<unsafe extern "C" fn(coord: *const GLdouble)>;
7769pub type PFNGLFOGCOORDPOINTERPROC = ::std::option::Option<
7770    unsafe extern "C" fn(type_: GLenum, stride: GLsizei, pointer: *const ::std::os::raw::c_void),
7771>;
7772pub type PFNGLSECONDARYCOLOR3BPROC =
7773    ::std::option::Option<unsafe extern "C" fn(red: GLbyte, green: GLbyte, blue: GLbyte)>;
7774pub type PFNGLSECONDARYCOLOR3BVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLbyte)>;
7775pub type PFNGLSECONDARYCOLOR3DPROC =
7776    ::std::option::Option<unsafe extern "C" fn(red: GLdouble, green: GLdouble, blue: GLdouble)>;
7777pub type PFNGLSECONDARYCOLOR3DVPROC =
7778    ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
7779pub type PFNGLSECONDARYCOLOR3FPROC =
7780    ::std::option::Option<unsafe extern "C" fn(red: GLfloat, green: GLfloat, blue: GLfloat)>;
7781pub type PFNGLSECONDARYCOLOR3FVPROC =
7782    ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
7783pub type PFNGLSECONDARYCOLOR3IPROC =
7784    ::std::option::Option<unsafe extern "C" fn(red: GLint, green: GLint, blue: GLint)>;
7785pub type PFNGLSECONDARYCOLOR3IVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
7786pub type PFNGLSECONDARYCOLOR3SPROC =
7787    ::std::option::Option<unsafe extern "C" fn(red: GLshort, green: GLshort, blue: GLshort)>;
7788pub type PFNGLSECONDARYCOLOR3SVPROC =
7789    ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
7790pub type PFNGLSECONDARYCOLOR3UBPROC =
7791    ::std::option::Option<unsafe extern "C" fn(red: GLubyte, green: GLubyte, blue: GLubyte)>;
7792pub type PFNGLSECONDARYCOLOR3UBVPROC =
7793    ::std::option::Option<unsafe extern "C" fn(v: *const GLubyte)>;
7794pub type PFNGLSECONDARYCOLOR3UIPROC =
7795    ::std::option::Option<unsafe extern "C" fn(red: GLuint, green: GLuint, blue: GLuint)>;
7796pub type PFNGLSECONDARYCOLOR3UIVPROC =
7797    ::std::option::Option<unsafe extern "C" fn(v: *const GLuint)>;
7798pub type PFNGLSECONDARYCOLOR3USPROC =
7799    ::std::option::Option<unsafe extern "C" fn(red: GLushort, green: GLushort, blue: GLushort)>;
7800pub type PFNGLSECONDARYCOLOR3USVPROC =
7801    ::std::option::Option<unsafe extern "C" fn(v: *const GLushort)>;
7802pub type PFNGLSECONDARYCOLORPOINTERPROC = ::std::option::Option<
7803    unsafe extern "C" fn(
7804        size: GLint,
7805        type_: GLenum,
7806        stride: GLsizei,
7807        pointer: *const ::std::os::raw::c_void,
7808    ),
7809>;
7810pub type PFNGLWINDOWPOS2DPROC =
7811    ::std::option::Option<unsafe extern "C" fn(x: GLdouble, y: GLdouble)>;
7812pub type PFNGLWINDOWPOS2DVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
7813pub type PFNGLWINDOWPOS2FPROC = ::std::option::Option<unsafe extern "C" fn(x: GLfloat, y: GLfloat)>;
7814pub type PFNGLWINDOWPOS2FVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
7815pub type PFNGLWINDOWPOS2IPROC = ::std::option::Option<unsafe extern "C" fn(x: GLint, y: GLint)>;
7816pub type PFNGLWINDOWPOS2IVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
7817pub type PFNGLWINDOWPOS2SPROC = ::std::option::Option<unsafe extern "C" fn(x: GLshort, y: GLshort)>;
7818pub type PFNGLWINDOWPOS2SVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
7819pub type PFNGLWINDOWPOS3DPROC =
7820    ::std::option::Option<unsafe extern "C" fn(x: GLdouble, y: GLdouble, z: GLdouble)>;
7821pub type PFNGLWINDOWPOS3DVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
7822pub type PFNGLWINDOWPOS3FPROC =
7823    ::std::option::Option<unsafe extern "C" fn(x: GLfloat, y: GLfloat, z: GLfloat)>;
7824pub type PFNGLWINDOWPOS3FVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
7825pub type PFNGLWINDOWPOS3IPROC =
7826    ::std::option::Option<unsafe extern "C" fn(x: GLint, y: GLint, z: GLint)>;
7827pub type PFNGLWINDOWPOS3IVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
7828pub type PFNGLWINDOWPOS3SPROC =
7829    ::std::option::Option<unsafe extern "C" fn(x: GLshort, y: GLshort, z: GLshort)>;
7830pub type PFNGLWINDOWPOS3SVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
7831pub type PFNGLBLENDCOLORPROC = ::std::option::Option<
7832    unsafe extern "C" fn(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat),
7833>;
7834pub type PFNGLBLENDEQUATIONPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
7835extern "C" {
7836    pub fn glBlendFuncSeparate(
7837        sfactorRGB: GLenum,
7838        dfactorRGB: GLenum,
7839        sfactorAlpha: GLenum,
7840        dfactorAlpha: GLenum,
7841    );
7842}
7843extern "C" {
7844    pub fn glMultiDrawArrays(
7845        mode: GLenum,
7846        first: *const GLint,
7847        count: *const GLsizei,
7848        drawcount: GLsizei,
7849    );
7850}
7851extern "C" {
7852    pub fn glMultiDrawElements(
7853        mode: GLenum,
7854        count: *const GLsizei,
7855        type_: GLenum,
7856        indices: *const *const ::std::os::raw::c_void,
7857        drawcount: GLsizei,
7858    );
7859}
7860extern "C" {
7861    pub fn glPointParameterf(pname: GLenum, param: GLfloat);
7862}
7863extern "C" {
7864    pub fn glPointParameterfv(pname: GLenum, params: *const GLfloat);
7865}
7866extern "C" {
7867    pub fn glPointParameteri(pname: GLenum, param: GLint);
7868}
7869extern "C" {
7870    pub fn glPointParameteriv(pname: GLenum, params: *const GLint);
7871}
7872extern "C" {
7873    pub fn glFogCoordf(coord: GLfloat);
7874}
7875extern "C" {
7876    pub fn glFogCoordfv(coord: *const GLfloat);
7877}
7878extern "C" {
7879    pub fn glFogCoordd(coord: GLdouble);
7880}
7881extern "C" {
7882    pub fn glFogCoorddv(coord: *const GLdouble);
7883}
7884extern "C" {
7885    pub fn glFogCoordPointer(
7886        type_: GLenum,
7887        stride: GLsizei,
7888        pointer: *const ::std::os::raw::c_void,
7889    );
7890}
7891extern "C" {
7892    pub fn glSecondaryColor3b(red: GLbyte, green: GLbyte, blue: GLbyte);
7893}
7894extern "C" {
7895    pub fn glSecondaryColor3bv(v: *const GLbyte);
7896}
7897extern "C" {
7898    pub fn glSecondaryColor3d(red: GLdouble, green: GLdouble, blue: GLdouble);
7899}
7900extern "C" {
7901    pub fn glSecondaryColor3dv(v: *const GLdouble);
7902}
7903extern "C" {
7904    pub fn glSecondaryColor3f(red: GLfloat, green: GLfloat, blue: GLfloat);
7905}
7906extern "C" {
7907    pub fn glSecondaryColor3fv(v: *const GLfloat);
7908}
7909extern "C" {
7910    pub fn glSecondaryColor3i(red: GLint, green: GLint, blue: GLint);
7911}
7912extern "C" {
7913    pub fn glSecondaryColor3iv(v: *const GLint);
7914}
7915extern "C" {
7916    pub fn glSecondaryColor3s(red: GLshort, green: GLshort, blue: GLshort);
7917}
7918extern "C" {
7919    pub fn glSecondaryColor3sv(v: *const GLshort);
7920}
7921extern "C" {
7922    pub fn glSecondaryColor3ub(red: GLubyte, green: GLubyte, blue: GLubyte);
7923}
7924extern "C" {
7925    pub fn glSecondaryColor3ubv(v: *const GLubyte);
7926}
7927extern "C" {
7928    pub fn glSecondaryColor3ui(red: GLuint, green: GLuint, blue: GLuint);
7929}
7930extern "C" {
7931    pub fn glSecondaryColor3uiv(v: *const GLuint);
7932}
7933extern "C" {
7934    pub fn glSecondaryColor3us(red: GLushort, green: GLushort, blue: GLushort);
7935}
7936extern "C" {
7937    pub fn glSecondaryColor3usv(v: *const GLushort);
7938}
7939extern "C" {
7940    pub fn glSecondaryColorPointer(
7941        size: GLint,
7942        type_: GLenum,
7943        stride: GLsizei,
7944        pointer: *const ::std::os::raw::c_void,
7945    );
7946}
7947extern "C" {
7948    pub fn glWindowPos2d(x: GLdouble, y: GLdouble);
7949}
7950extern "C" {
7951    pub fn glWindowPos2dv(v: *const GLdouble);
7952}
7953extern "C" {
7954    pub fn glWindowPos2f(x: GLfloat, y: GLfloat);
7955}
7956extern "C" {
7957    pub fn glWindowPos2fv(v: *const GLfloat);
7958}
7959extern "C" {
7960    pub fn glWindowPos2i(x: GLint, y: GLint);
7961}
7962extern "C" {
7963    pub fn glWindowPos2iv(v: *const GLint);
7964}
7965extern "C" {
7966    pub fn glWindowPos2s(x: GLshort, y: GLshort);
7967}
7968extern "C" {
7969    pub fn glWindowPos2sv(v: *const GLshort);
7970}
7971extern "C" {
7972    pub fn glWindowPos3d(x: GLdouble, y: GLdouble, z: GLdouble);
7973}
7974extern "C" {
7975    pub fn glWindowPos3dv(v: *const GLdouble);
7976}
7977extern "C" {
7978    pub fn glWindowPos3f(x: GLfloat, y: GLfloat, z: GLfloat);
7979}
7980extern "C" {
7981    pub fn glWindowPos3fv(v: *const GLfloat);
7982}
7983extern "C" {
7984    pub fn glWindowPos3i(x: GLint, y: GLint, z: GLint);
7985}
7986extern "C" {
7987    pub fn glWindowPos3iv(v: *const GLint);
7988}
7989extern "C" {
7990    pub fn glWindowPos3s(x: GLshort, y: GLshort, z: GLshort);
7991}
7992extern "C" {
7993    pub fn glWindowPos3sv(v: *const GLshort);
7994}
7995pub type GLsizeiptr = khronos_ssize_t;
7996pub type GLintptr = khronos_intptr_t;
7997pub type PFNGLGENQUERIESPROC =
7998    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *mut GLuint)>;
7999pub type PFNGLDELETEQUERIESPROC =
8000    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *const GLuint)>;
8001pub type PFNGLISQUERYPROC = ::std::option::Option<unsafe extern "C" fn(id: GLuint) -> GLboolean>;
8002pub type PFNGLBEGINQUERYPROC =
8003    ::std::option::Option<unsafe extern "C" fn(target: GLenum, id: GLuint)>;
8004pub type PFNGLENDQUERYPROC = ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
8005pub type PFNGLGETQUERYIVPROC =
8006    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
8007pub type PFNGLGETQUERYOBJECTIVPROC =
8008    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLint)>;
8009pub type PFNGLGETQUERYOBJECTUIVPROC =
8010    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLuint)>;
8011pub type PFNGLBINDBUFFERPROC =
8012    ::std::option::Option<unsafe extern "C" fn(target: GLenum, buffer: GLuint)>;
8013pub type PFNGLDELETEBUFFERSPROC =
8014    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, buffers: *const GLuint)>;
8015pub type PFNGLGENBUFFERSPROC =
8016    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, buffers: *mut GLuint)>;
8017pub type PFNGLISBUFFERPROC =
8018    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint) -> GLboolean>;
8019pub type PFNGLBUFFERDATAPROC = ::std::option::Option<
8020    unsafe extern "C" fn(
8021        target: GLenum,
8022        size: GLsizeiptr,
8023        data: *const ::std::os::raw::c_void,
8024        usage: GLenum,
8025    ),
8026>;
8027pub type PFNGLBUFFERSUBDATAPROC = ::std::option::Option<
8028    unsafe extern "C" fn(
8029        target: GLenum,
8030        offset: GLintptr,
8031        size: GLsizeiptr,
8032        data: *const ::std::os::raw::c_void,
8033    ),
8034>;
8035pub type PFNGLGETBUFFERSUBDATAPROC = ::std::option::Option<
8036    unsafe extern "C" fn(
8037        target: GLenum,
8038        offset: GLintptr,
8039        size: GLsizeiptr,
8040        data: *mut ::std::os::raw::c_void,
8041    ),
8042>;
8043pub type PFNGLMAPBUFFERPROC = ::std::option::Option<
8044    unsafe extern "C" fn(target: GLenum, access: GLenum) -> *mut ::std::os::raw::c_void,
8045>;
8046pub type PFNGLUNMAPBUFFERPROC =
8047    ::std::option::Option<unsafe extern "C" fn(target: GLenum) -> GLboolean>;
8048pub type PFNGLGETBUFFERPARAMETERIVPROC =
8049    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
8050pub type PFNGLGETBUFFERPOINTERVPROC = ::std::option::Option<
8051    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut *mut ::std::os::raw::c_void),
8052>;
8053extern "C" {
8054    pub fn glGenQueries(n: GLsizei, ids: *mut GLuint);
8055}
8056extern "C" {
8057    pub fn glDeleteQueries(n: GLsizei, ids: *const GLuint);
8058}
8059extern "C" {
8060    pub fn glIsQuery(id: GLuint) -> GLboolean;
8061}
8062extern "C" {
8063    pub fn glBeginQuery(target: GLenum, id: GLuint);
8064}
8065extern "C" {
8066    pub fn glEndQuery(target: GLenum);
8067}
8068extern "C" {
8069    pub fn glGetQueryiv(target: GLenum, pname: GLenum, params: *mut GLint);
8070}
8071extern "C" {
8072    pub fn glGetQueryObjectiv(id: GLuint, pname: GLenum, params: *mut GLint);
8073}
8074extern "C" {
8075    pub fn glGetQueryObjectuiv(id: GLuint, pname: GLenum, params: *mut GLuint);
8076}
8077extern "C" {
8078    pub fn glBindBuffer(target: GLenum, buffer: GLuint);
8079}
8080extern "C" {
8081    pub fn glDeleteBuffers(n: GLsizei, buffers: *const GLuint);
8082}
8083extern "C" {
8084    pub fn glGenBuffers(n: GLsizei, buffers: *mut GLuint);
8085}
8086extern "C" {
8087    pub fn glIsBuffer(buffer: GLuint) -> GLboolean;
8088}
8089extern "C" {
8090    pub fn glBufferData(
8091        target: GLenum,
8092        size: GLsizeiptr,
8093        data: *const ::std::os::raw::c_void,
8094        usage: GLenum,
8095    );
8096}
8097extern "C" {
8098    pub fn glBufferSubData(
8099        target: GLenum,
8100        offset: GLintptr,
8101        size: GLsizeiptr,
8102        data: *const ::std::os::raw::c_void,
8103    );
8104}
8105extern "C" {
8106    pub fn glGetBufferSubData(
8107        target: GLenum,
8108        offset: GLintptr,
8109        size: GLsizeiptr,
8110        data: *mut ::std::os::raw::c_void,
8111    );
8112}
8113extern "C" {
8114    pub fn glMapBuffer(target: GLenum, access: GLenum) -> *mut ::std::os::raw::c_void;
8115}
8116extern "C" {
8117    pub fn glUnmapBuffer(target: GLenum) -> GLboolean;
8118}
8119extern "C" {
8120    pub fn glGetBufferParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
8121}
8122extern "C" {
8123    pub fn glGetBufferPointerv(
8124        target: GLenum,
8125        pname: GLenum,
8126        params: *mut *mut ::std::os::raw::c_void,
8127    );
8128}
8129pub type GLchar = ::std::os::raw::c_char;
8130pub type PFNGLBLENDEQUATIONSEPARATEPROC =
8131    ::std::option::Option<unsafe extern "C" fn(modeRGB: GLenum, modeAlpha: GLenum)>;
8132pub type PFNGLDRAWBUFFERSPROC =
8133    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, bufs: *const GLenum)>;
8134pub type PFNGLSTENCILOPSEPARATEPROC = ::std::option::Option<
8135    unsafe extern "C" fn(face: GLenum, sfail: GLenum, dpfail: GLenum, dppass: GLenum),
8136>;
8137pub type PFNGLSTENCILFUNCSEPARATEPROC = ::std::option::Option<
8138    unsafe extern "C" fn(face: GLenum, func: GLenum, ref_: GLint, mask: GLuint),
8139>;
8140pub type PFNGLSTENCILMASKSEPARATEPROC =
8141    ::std::option::Option<unsafe extern "C" fn(face: GLenum, mask: GLuint)>;
8142pub type PFNGLATTACHSHADERPROC =
8143    ::std::option::Option<unsafe extern "C" fn(program: GLuint, shader: GLuint)>;
8144pub type PFNGLBINDATTRIBLOCATIONPROC = ::std::option::Option<
8145    unsafe extern "C" fn(program: GLuint, index: GLuint, name: *const GLchar),
8146>;
8147pub type PFNGLCOMPILESHADERPROC = ::std::option::Option<unsafe extern "C" fn(shader: GLuint)>;
8148pub type PFNGLCREATEPROGRAMPROC = ::std::option::Option<unsafe extern "C" fn() -> GLuint>;
8149pub type PFNGLCREATESHADERPROC =
8150    ::std::option::Option<unsafe extern "C" fn(type_: GLenum) -> GLuint>;
8151pub type PFNGLDELETEPROGRAMPROC = ::std::option::Option<unsafe extern "C" fn(program: GLuint)>;
8152pub type PFNGLDELETESHADERPROC = ::std::option::Option<unsafe extern "C" fn(shader: GLuint)>;
8153pub type PFNGLDETACHSHADERPROC =
8154    ::std::option::Option<unsafe extern "C" fn(program: GLuint, shader: GLuint)>;
8155pub type PFNGLDISABLEVERTEXATTRIBARRAYPROC =
8156    ::std::option::Option<unsafe extern "C" fn(index: GLuint)>;
8157pub type PFNGLENABLEVERTEXATTRIBARRAYPROC =
8158    ::std::option::Option<unsafe extern "C" fn(index: GLuint)>;
8159pub type PFNGLGETACTIVEATTRIBPROC = ::std::option::Option<
8160    unsafe extern "C" fn(
8161        program: GLuint,
8162        index: GLuint,
8163        bufSize: GLsizei,
8164        length: *mut GLsizei,
8165        size: *mut GLint,
8166        type_: *mut GLenum,
8167        name: *mut GLchar,
8168    ),
8169>;
8170pub type PFNGLGETACTIVEUNIFORMPROC = ::std::option::Option<
8171    unsafe extern "C" fn(
8172        program: GLuint,
8173        index: GLuint,
8174        bufSize: GLsizei,
8175        length: *mut GLsizei,
8176        size: *mut GLint,
8177        type_: *mut GLenum,
8178        name: *mut GLchar,
8179    ),
8180>;
8181pub type PFNGLGETATTACHEDSHADERSPROC = ::std::option::Option<
8182    unsafe extern "C" fn(
8183        program: GLuint,
8184        maxCount: GLsizei,
8185        count: *mut GLsizei,
8186        shaders: *mut GLuint,
8187    ),
8188>;
8189pub type PFNGLGETATTRIBLOCATIONPROC =
8190    ::std::option::Option<unsafe extern "C" fn(program: GLuint, name: *const GLchar) -> GLint>;
8191pub type PFNGLGETPROGRAMIVPROC =
8192    ::std::option::Option<unsafe extern "C" fn(program: GLuint, pname: GLenum, params: *mut GLint)>;
8193pub type PFNGLGETPROGRAMINFOLOGPROC = ::std::option::Option<
8194    unsafe extern "C" fn(
8195        program: GLuint,
8196        bufSize: GLsizei,
8197        length: *mut GLsizei,
8198        infoLog: *mut GLchar,
8199    ),
8200>;
8201pub type PFNGLGETSHADERIVPROC =
8202    ::std::option::Option<unsafe extern "C" fn(shader: GLuint, pname: GLenum, params: *mut GLint)>;
8203pub type PFNGLGETSHADERINFOLOGPROC = ::std::option::Option<
8204    unsafe extern "C" fn(
8205        shader: GLuint,
8206        bufSize: GLsizei,
8207        length: *mut GLsizei,
8208        infoLog: *mut GLchar,
8209    ),
8210>;
8211pub type PFNGLGETSHADERSOURCEPROC = ::std::option::Option<
8212    unsafe extern "C" fn(
8213        shader: GLuint,
8214        bufSize: GLsizei,
8215        length: *mut GLsizei,
8216        source: *mut GLchar,
8217    ),
8218>;
8219pub type PFNGLGETUNIFORMLOCATIONPROC =
8220    ::std::option::Option<unsafe extern "C" fn(program: GLuint, name: *const GLchar) -> GLint>;
8221pub type PFNGLGETUNIFORMFVPROC = ::std::option::Option<
8222    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLfloat),
8223>;
8224pub type PFNGLGETUNIFORMIVPROC = ::std::option::Option<
8225    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLint),
8226>;
8227pub type PFNGLGETVERTEXATTRIBDVPROC = ::std::option::Option<
8228    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLdouble),
8229>;
8230pub type PFNGLGETVERTEXATTRIBFVPROC =
8231    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLfloat)>;
8232pub type PFNGLGETVERTEXATTRIBIVPROC =
8233    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLint)>;
8234pub type PFNGLGETVERTEXATTRIBPOINTERVPROC = ::std::option::Option<
8235    unsafe extern "C" fn(index: GLuint, pname: GLenum, pointer: *mut *mut ::std::os::raw::c_void),
8236>;
8237pub type PFNGLISPROGRAMPROC =
8238    ::std::option::Option<unsafe extern "C" fn(program: GLuint) -> GLboolean>;
8239pub type PFNGLISSHADERPROC =
8240    ::std::option::Option<unsafe extern "C" fn(shader: GLuint) -> GLboolean>;
8241pub type PFNGLLINKPROGRAMPROC = ::std::option::Option<unsafe extern "C" fn(program: GLuint)>;
8242pub type PFNGLSHADERSOURCEPROC = ::std::option::Option<
8243    unsafe extern "C" fn(
8244        shader: GLuint,
8245        count: GLsizei,
8246        string: *const *const GLchar,
8247        length: *const GLint,
8248    ),
8249>;
8250pub type PFNGLUSEPROGRAMPROC = ::std::option::Option<unsafe extern "C" fn(program: GLuint)>;
8251pub type PFNGLUNIFORM1FPROC =
8252    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLfloat)>;
8253pub type PFNGLUNIFORM2FPROC =
8254    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLfloat, v1: GLfloat)>;
8255pub type PFNGLUNIFORM3FPROC = ::std::option::Option<
8256    unsafe extern "C" fn(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat),
8257>;
8258pub type PFNGLUNIFORM4FPROC = ::std::option::Option<
8259    unsafe extern "C" fn(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat),
8260>;
8261pub type PFNGLUNIFORM1IPROC =
8262    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLint)>;
8263pub type PFNGLUNIFORM2IPROC =
8264    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLint, v1: GLint)>;
8265pub type PFNGLUNIFORM3IPROC =
8266    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLint, v1: GLint, v2: GLint)>;
8267pub type PFNGLUNIFORM4IPROC = ::std::option::Option<
8268    unsafe extern "C" fn(location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint),
8269>;
8270pub type PFNGLUNIFORM1FVPROC = ::std::option::Option<
8271    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
8272>;
8273pub type PFNGLUNIFORM2FVPROC = ::std::option::Option<
8274    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
8275>;
8276pub type PFNGLUNIFORM3FVPROC = ::std::option::Option<
8277    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
8278>;
8279pub type PFNGLUNIFORM4FVPROC = ::std::option::Option<
8280    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
8281>;
8282pub type PFNGLUNIFORM1IVPROC = ::std::option::Option<
8283    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
8284>;
8285pub type PFNGLUNIFORM2IVPROC = ::std::option::Option<
8286    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
8287>;
8288pub type PFNGLUNIFORM3IVPROC = ::std::option::Option<
8289    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
8290>;
8291pub type PFNGLUNIFORM4IVPROC = ::std::option::Option<
8292    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
8293>;
8294pub type PFNGLUNIFORMMATRIX2FVPROC = ::std::option::Option<
8295    unsafe extern "C" fn(
8296        location: GLint,
8297        count: GLsizei,
8298        transpose: GLboolean,
8299        value: *const GLfloat,
8300    ),
8301>;
8302pub type PFNGLUNIFORMMATRIX3FVPROC = ::std::option::Option<
8303    unsafe extern "C" fn(
8304        location: GLint,
8305        count: GLsizei,
8306        transpose: GLboolean,
8307        value: *const GLfloat,
8308    ),
8309>;
8310pub type PFNGLUNIFORMMATRIX4FVPROC = ::std::option::Option<
8311    unsafe extern "C" fn(
8312        location: GLint,
8313        count: GLsizei,
8314        transpose: GLboolean,
8315        value: *const GLfloat,
8316    ),
8317>;
8318pub type PFNGLVALIDATEPROGRAMPROC = ::std::option::Option<unsafe extern "C" fn(program: GLuint)>;
8319pub type PFNGLVERTEXATTRIB1DPROC =
8320    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble)>;
8321pub type PFNGLVERTEXATTRIB1DVPROC =
8322    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
8323pub type PFNGLVERTEXATTRIB1FPROC =
8324    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat)>;
8325pub type PFNGLVERTEXATTRIB1FVPROC =
8326    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
8327pub type PFNGLVERTEXATTRIB1SPROC =
8328    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort)>;
8329pub type PFNGLVERTEXATTRIB1SVPROC =
8330    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
8331pub type PFNGLVERTEXATTRIB2DPROC =
8332    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble)>;
8333pub type PFNGLVERTEXATTRIB2DVPROC =
8334    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
8335pub type PFNGLVERTEXATTRIB2FPROC =
8336    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat)>;
8337pub type PFNGLVERTEXATTRIB2FVPROC =
8338    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
8339pub type PFNGLVERTEXATTRIB2SPROC =
8340    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort)>;
8341pub type PFNGLVERTEXATTRIB2SVPROC =
8342    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
8343pub type PFNGLVERTEXATTRIB3DPROC = ::std::option::Option<
8344    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble),
8345>;
8346pub type PFNGLVERTEXATTRIB3DVPROC =
8347    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
8348pub type PFNGLVERTEXATTRIB3FPROC =
8349    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat)>;
8350pub type PFNGLVERTEXATTRIB3FVPROC =
8351    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
8352pub type PFNGLVERTEXATTRIB3SPROC =
8353    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort, z: GLshort)>;
8354pub type PFNGLVERTEXATTRIB3SVPROC =
8355    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
8356pub type PFNGLVERTEXATTRIB4NBVPROC =
8357    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLbyte)>;
8358pub type PFNGLVERTEXATTRIB4NIVPROC =
8359    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
8360pub type PFNGLVERTEXATTRIB4NSVPROC =
8361    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
8362pub type PFNGLVERTEXATTRIB4NUBPROC = ::std::option::Option<
8363    unsafe extern "C" fn(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte),
8364>;
8365pub type PFNGLVERTEXATTRIB4NUBVPROC =
8366    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLubyte)>;
8367pub type PFNGLVERTEXATTRIB4NUIVPROC =
8368    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
8369pub type PFNGLVERTEXATTRIB4NUSVPROC =
8370    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLushort)>;
8371pub type PFNGLVERTEXATTRIB4BVPROC =
8372    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLbyte)>;
8373pub type PFNGLVERTEXATTRIB4DPROC = ::std::option::Option<
8374    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble),
8375>;
8376pub type PFNGLVERTEXATTRIB4DVPROC =
8377    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
8378pub type PFNGLVERTEXATTRIB4FPROC = ::std::option::Option<
8379    unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat),
8380>;
8381pub type PFNGLVERTEXATTRIB4FVPROC =
8382    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
8383pub type PFNGLVERTEXATTRIB4IVPROC =
8384    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
8385pub type PFNGLVERTEXATTRIB4SPROC = ::std::option::Option<
8386    unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort),
8387>;
8388pub type PFNGLVERTEXATTRIB4SVPROC =
8389    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
8390pub type PFNGLVERTEXATTRIB4UBVPROC =
8391    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLubyte)>;
8392pub type PFNGLVERTEXATTRIB4UIVPROC =
8393    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
8394pub type PFNGLVERTEXATTRIB4USVPROC =
8395    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLushort)>;
8396pub type PFNGLVERTEXATTRIBPOINTERPROC = ::std::option::Option<
8397    unsafe extern "C" fn(
8398        index: GLuint,
8399        size: GLint,
8400        type_: GLenum,
8401        normalized: GLboolean,
8402        stride: GLsizei,
8403        pointer: *const ::std::os::raw::c_void,
8404    ),
8405>;
8406extern "C" {
8407    pub fn glBlendEquationSeparate(modeRGB: GLenum, modeAlpha: GLenum);
8408}
8409extern "C" {
8410    pub fn glDrawBuffers(n: GLsizei, bufs: *const GLenum);
8411}
8412extern "C" {
8413    pub fn glStencilOpSeparate(face: GLenum, sfail: GLenum, dpfail: GLenum, dppass: GLenum);
8414}
8415extern "C" {
8416    pub fn glStencilFuncSeparate(face: GLenum, func: GLenum, ref_: GLint, mask: GLuint);
8417}
8418extern "C" {
8419    pub fn glStencilMaskSeparate(face: GLenum, mask: GLuint);
8420}
8421extern "C" {
8422    pub fn glAttachShader(program: GLuint, shader: GLuint);
8423}
8424extern "C" {
8425    pub fn glBindAttribLocation(program: GLuint, index: GLuint, name: *const GLchar);
8426}
8427extern "C" {
8428    pub fn glCompileShader(shader: GLuint);
8429}
8430extern "C" {
8431    pub fn glCreateProgram() -> GLuint;
8432}
8433extern "C" {
8434    pub fn glCreateShader(type_: GLenum) -> GLuint;
8435}
8436extern "C" {
8437    pub fn glDeleteProgram(program: GLuint);
8438}
8439extern "C" {
8440    pub fn glDeleteShader(shader: GLuint);
8441}
8442extern "C" {
8443    pub fn glDetachShader(program: GLuint, shader: GLuint);
8444}
8445extern "C" {
8446    pub fn glDisableVertexAttribArray(index: GLuint);
8447}
8448extern "C" {
8449    pub fn glEnableVertexAttribArray(index: GLuint);
8450}
8451extern "C" {
8452    pub fn glGetActiveAttrib(
8453        program: GLuint,
8454        index: GLuint,
8455        bufSize: GLsizei,
8456        length: *mut GLsizei,
8457        size: *mut GLint,
8458        type_: *mut GLenum,
8459        name: *mut GLchar,
8460    );
8461}
8462extern "C" {
8463    pub fn glGetActiveUniform(
8464        program: GLuint,
8465        index: GLuint,
8466        bufSize: GLsizei,
8467        length: *mut GLsizei,
8468        size: *mut GLint,
8469        type_: *mut GLenum,
8470        name: *mut GLchar,
8471    );
8472}
8473extern "C" {
8474    pub fn glGetAttachedShaders(
8475        program: GLuint,
8476        maxCount: GLsizei,
8477        count: *mut GLsizei,
8478        shaders: *mut GLuint,
8479    );
8480}
8481extern "C" {
8482    pub fn glGetAttribLocation(program: GLuint, name: *const GLchar) -> GLint;
8483}
8484extern "C" {
8485    pub fn glGetProgramiv(program: GLuint, pname: GLenum, params: *mut GLint);
8486}
8487extern "C" {
8488    pub fn glGetProgramInfoLog(
8489        program: GLuint,
8490        bufSize: GLsizei,
8491        length: *mut GLsizei,
8492        infoLog: *mut GLchar,
8493    );
8494}
8495extern "C" {
8496    pub fn glGetShaderiv(shader: GLuint, pname: GLenum, params: *mut GLint);
8497}
8498extern "C" {
8499    pub fn glGetShaderInfoLog(
8500        shader: GLuint,
8501        bufSize: GLsizei,
8502        length: *mut GLsizei,
8503        infoLog: *mut GLchar,
8504    );
8505}
8506extern "C" {
8507    pub fn glGetShaderSource(
8508        shader: GLuint,
8509        bufSize: GLsizei,
8510        length: *mut GLsizei,
8511        source: *mut GLchar,
8512    );
8513}
8514extern "C" {
8515    pub fn glGetUniformLocation(program: GLuint, name: *const GLchar) -> GLint;
8516}
8517extern "C" {
8518    pub fn glGetUniformfv(program: GLuint, location: GLint, params: *mut GLfloat);
8519}
8520extern "C" {
8521    pub fn glGetUniformiv(program: GLuint, location: GLint, params: *mut GLint);
8522}
8523extern "C" {
8524    pub fn glGetVertexAttribdv(index: GLuint, pname: GLenum, params: *mut GLdouble);
8525}
8526extern "C" {
8527    pub fn glGetVertexAttribfv(index: GLuint, pname: GLenum, params: *mut GLfloat);
8528}
8529extern "C" {
8530    pub fn glGetVertexAttribiv(index: GLuint, pname: GLenum, params: *mut GLint);
8531}
8532extern "C" {
8533    pub fn glGetVertexAttribPointerv(
8534        index: GLuint,
8535        pname: GLenum,
8536        pointer: *mut *mut ::std::os::raw::c_void,
8537    );
8538}
8539extern "C" {
8540    pub fn glIsProgram(program: GLuint) -> GLboolean;
8541}
8542extern "C" {
8543    pub fn glIsShader(shader: GLuint) -> GLboolean;
8544}
8545extern "C" {
8546    pub fn glLinkProgram(program: GLuint);
8547}
8548extern "C" {
8549    pub fn glShaderSource(
8550        shader: GLuint,
8551        count: GLsizei,
8552        string: *const *const GLchar,
8553        length: *const GLint,
8554    );
8555}
8556extern "C" {
8557    pub fn glUseProgram(program: GLuint);
8558}
8559extern "C" {
8560    pub fn glUniform1f(location: GLint, v0: GLfloat);
8561}
8562extern "C" {
8563    pub fn glUniform2f(location: GLint, v0: GLfloat, v1: GLfloat);
8564}
8565extern "C" {
8566    pub fn glUniform3f(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat);
8567}
8568extern "C" {
8569    pub fn glUniform4f(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat);
8570}
8571extern "C" {
8572    pub fn glUniform1i(location: GLint, v0: GLint);
8573}
8574extern "C" {
8575    pub fn glUniform2i(location: GLint, v0: GLint, v1: GLint);
8576}
8577extern "C" {
8578    pub fn glUniform3i(location: GLint, v0: GLint, v1: GLint, v2: GLint);
8579}
8580extern "C" {
8581    pub fn glUniform4i(location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint);
8582}
8583extern "C" {
8584    pub fn glUniform1fv(location: GLint, count: GLsizei, value: *const GLfloat);
8585}
8586extern "C" {
8587    pub fn glUniform2fv(location: GLint, count: GLsizei, value: *const GLfloat);
8588}
8589extern "C" {
8590    pub fn glUniform3fv(location: GLint, count: GLsizei, value: *const GLfloat);
8591}
8592extern "C" {
8593    pub fn glUniform4fv(location: GLint, count: GLsizei, value: *const GLfloat);
8594}
8595extern "C" {
8596    pub fn glUniform1iv(location: GLint, count: GLsizei, value: *const GLint);
8597}
8598extern "C" {
8599    pub fn glUniform2iv(location: GLint, count: GLsizei, value: *const GLint);
8600}
8601extern "C" {
8602    pub fn glUniform3iv(location: GLint, count: GLsizei, value: *const GLint);
8603}
8604extern "C" {
8605    pub fn glUniform4iv(location: GLint, count: GLsizei, value: *const GLint);
8606}
8607extern "C" {
8608    pub fn glUniformMatrix2fv(
8609        location: GLint,
8610        count: GLsizei,
8611        transpose: GLboolean,
8612        value: *const GLfloat,
8613    );
8614}
8615extern "C" {
8616    pub fn glUniformMatrix3fv(
8617        location: GLint,
8618        count: GLsizei,
8619        transpose: GLboolean,
8620        value: *const GLfloat,
8621    );
8622}
8623extern "C" {
8624    pub fn glUniformMatrix4fv(
8625        location: GLint,
8626        count: GLsizei,
8627        transpose: GLboolean,
8628        value: *const GLfloat,
8629    );
8630}
8631extern "C" {
8632    pub fn glValidateProgram(program: GLuint);
8633}
8634extern "C" {
8635    pub fn glVertexAttrib1d(index: GLuint, x: GLdouble);
8636}
8637extern "C" {
8638    pub fn glVertexAttrib1dv(index: GLuint, v: *const GLdouble);
8639}
8640extern "C" {
8641    pub fn glVertexAttrib1f(index: GLuint, x: GLfloat);
8642}
8643extern "C" {
8644    pub fn glVertexAttrib1fv(index: GLuint, v: *const GLfloat);
8645}
8646extern "C" {
8647    pub fn glVertexAttrib1s(index: GLuint, x: GLshort);
8648}
8649extern "C" {
8650    pub fn glVertexAttrib1sv(index: GLuint, v: *const GLshort);
8651}
8652extern "C" {
8653    pub fn glVertexAttrib2d(index: GLuint, x: GLdouble, y: GLdouble);
8654}
8655extern "C" {
8656    pub fn glVertexAttrib2dv(index: GLuint, v: *const GLdouble);
8657}
8658extern "C" {
8659    pub fn glVertexAttrib2f(index: GLuint, x: GLfloat, y: GLfloat);
8660}
8661extern "C" {
8662    pub fn glVertexAttrib2fv(index: GLuint, v: *const GLfloat);
8663}
8664extern "C" {
8665    pub fn glVertexAttrib2s(index: GLuint, x: GLshort, y: GLshort);
8666}
8667extern "C" {
8668    pub fn glVertexAttrib2sv(index: GLuint, v: *const GLshort);
8669}
8670extern "C" {
8671    pub fn glVertexAttrib3d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble);
8672}
8673extern "C" {
8674    pub fn glVertexAttrib3dv(index: GLuint, v: *const GLdouble);
8675}
8676extern "C" {
8677    pub fn glVertexAttrib3f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat);
8678}
8679extern "C" {
8680    pub fn glVertexAttrib3fv(index: GLuint, v: *const GLfloat);
8681}
8682extern "C" {
8683    pub fn glVertexAttrib3s(index: GLuint, x: GLshort, y: GLshort, z: GLshort);
8684}
8685extern "C" {
8686    pub fn glVertexAttrib3sv(index: GLuint, v: *const GLshort);
8687}
8688extern "C" {
8689    pub fn glVertexAttrib4Nbv(index: GLuint, v: *const GLbyte);
8690}
8691extern "C" {
8692    pub fn glVertexAttrib4Niv(index: GLuint, v: *const GLint);
8693}
8694extern "C" {
8695    pub fn glVertexAttrib4Nsv(index: GLuint, v: *const GLshort);
8696}
8697extern "C" {
8698    pub fn glVertexAttrib4Nub(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte);
8699}
8700extern "C" {
8701    pub fn glVertexAttrib4Nubv(index: GLuint, v: *const GLubyte);
8702}
8703extern "C" {
8704    pub fn glVertexAttrib4Nuiv(index: GLuint, v: *const GLuint);
8705}
8706extern "C" {
8707    pub fn glVertexAttrib4Nusv(index: GLuint, v: *const GLushort);
8708}
8709extern "C" {
8710    pub fn glVertexAttrib4bv(index: GLuint, v: *const GLbyte);
8711}
8712extern "C" {
8713    pub fn glVertexAttrib4d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
8714}
8715extern "C" {
8716    pub fn glVertexAttrib4dv(index: GLuint, v: *const GLdouble);
8717}
8718extern "C" {
8719    pub fn glVertexAttrib4f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat);
8720}
8721extern "C" {
8722    pub fn glVertexAttrib4fv(index: GLuint, v: *const GLfloat);
8723}
8724extern "C" {
8725    pub fn glVertexAttrib4iv(index: GLuint, v: *const GLint);
8726}
8727extern "C" {
8728    pub fn glVertexAttrib4s(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort);
8729}
8730extern "C" {
8731    pub fn glVertexAttrib4sv(index: GLuint, v: *const GLshort);
8732}
8733extern "C" {
8734    pub fn glVertexAttrib4ubv(index: GLuint, v: *const GLubyte);
8735}
8736extern "C" {
8737    pub fn glVertexAttrib4uiv(index: GLuint, v: *const GLuint);
8738}
8739extern "C" {
8740    pub fn glVertexAttrib4usv(index: GLuint, v: *const GLushort);
8741}
8742extern "C" {
8743    pub fn glVertexAttribPointer(
8744        index: GLuint,
8745        size: GLint,
8746        type_: GLenum,
8747        normalized: GLboolean,
8748        stride: GLsizei,
8749        pointer: *const ::std::os::raw::c_void,
8750    );
8751}
8752pub type PFNGLUNIFORMMATRIX2X3FVPROC = ::std::option::Option<
8753    unsafe extern "C" fn(
8754        location: GLint,
8755        count: GLsizei,
8756        transpose: GLboolean,
8757        value: *const GLfloat,
8758    ),
8759>;
8760pub type PFNGLUNIFORMMATRIX3X2FVPROC = ::std::option::Option<
8761    unsafe extern "C" fn(
8762        location: GLint,
8763        count: GLsizei,
8764        transpose: GLboolean,
8765        value: *const GLfloat,
8766    ),
8767>;
8768pub type PFNGLUNIFORMMATRIX2X4FVPROC = ::std::option::Option<
8769    unsafe extern "C" fn(
8770        location: GLint,
8771        count: GLsizei,
8772        transpose: GLboolean,
8773        value: *const GLfloat,
8774    ),
8775>;
8776pub type PFNGLUNIFORMMATRIX4X2FVPROC = ::std::option::Option<
8777    unsafe extern "C" fn(
8778        location: GLint,
8779        count: GLsizei,
8780        transpose: GLboolean,
8781        value: *const GLfloat,
8782    ),
8783>;
8784pub type PFNGLUNIFORMMATRIX3X4FVPROC = ::std::option::Option<
8785    unsafe extern "C" fn(
8786        location: GLint,
8787        count: GLsizei,
8788        transpose: GLboolean,
8789        value: *const GLfloat,
8790    ),
8791>;
8792pub type PFNGLUNIFORMMATRIX4X3FVPROC = ::std::option::Option<
8793    unsafe extern "C" fn(
8794        location: GLint,
8795        count: GLsizei,
8796        transpose: GLboolean,
8797        value: *const GLfloat,
8798    ),
8799>;
8800extern "C" {
8801    pub fn glUniformMatrix2x3fv(
8802        location: GLint,
8803        count: GLsizei,
8804        transpose: GLboolean,
8805        value: *const GLfloat,
8806    );
8807}
8808extern "C" {
8809    pub fn glUniformMatrix3x2fv(
8810        location: GLint,
8811        count: GLsizei,
8812        transpose: GLboolean,
8813        value: *const GLfloat,
8814    );
8815}
8816extern "C" {
8817    pub fn glUniformMatrix2x4fv(
8818        location: GLint,
8819        count: GLsizei,
8820        transpose: GLboolean,
8821        value: *const GLfloat,
8822    );
8823}
8824extern "C" {
8825    pub fn glUniformMatrix4x2fv(
8826        location: GLint,
8827        count: GLsizei,
8828        transpose: GLboolean,
8829        value: *const GLfloat,
8830    );
8831}
8832extern "C" {
8833    pub fn glUniformMatrix3x4fv(
8834        location: GLint,
8835        count: GLsizei,
8836        transpose: GLboolean,
8837        value: *const GLfloat,
8838    );
8839}
8840extern "C" {
8841    pub fn glUniformMatrix4x3fv(
8842        location: GLint,
8843        count: GLsizei,
8844        transpose: GLboolean,
8845        value: *const GLfloat,
8846    );
8847}
8848pub type GLhalf = khronos_uint16_t;
8849pub type PFNGLCOLORMASKIPROC = ::std::option::Option<
8850    unsafe extern "C" fn(index: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean),
8851>;
8852pub type PFNGLGETBOOLEANI_VPROC = ::std::option::Option<
8853    unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLboolean),
8854>;
8855pub type PFNGLGETINTEGERI_VPROC =
8856    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLint)>;
8857pub type PFNGLENABLEIPROC =
8858    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint)>;
8859pub type PFNGLDISABLEIPROC =
8860    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint)>;
8861pub type PFNGLISENABLEDIPROC =
8862    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint) -> GLboolean>;
8863pub type PFNGLBEGINTRANSFORMFEEDBACKPROC =
8864    ::std::option::Option<unsafe extern "C" fn(primitiveMode: GLenum)>;
8865pub type PFNGLENDTRANSFORMFEEDBACKPROC = ::std::option::Option<unsafe extern "C" fn()>;
8866pub type PFNGLBINDBUFFERRANGEPROC = ::std::option::Option<
8867    unsafe extern "C" fn(
8868        target: GLenum,
8869        index: GLuint,
8870        buffer: GLuint,
8871        offset: GLintptr,
8872        size: GLsizeiptr,
8873    ),
8874>;
8875pub type PFNGLBINDBUFFERBASEPROC =
8876    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, buffer: GLuint)>;
8877pub type PFNGLTRANSFORMFEEDBACKVARYINGSPROC = ::std::option::Option<
8878    unsafe extern "C" fn(
8879        program: GLuint,
8880        count: GLsizei,
8881        varyings: *const *const GLchar,
8882        bufferMode: GLenum,
8883    ),
8884>;
8885pub type PFNGLGETTRANSFORMFEEDBACKVARYINGPROC = ::std::option::Option<
8886    unsafe extern "C" fn(
8887        program: GLuint,
8888        index: GLuint,
8889        bufSize: GLsizei,
8890        length: *mut GLsizei,
8891        size: *mut GLsizei,
8892        type_: *mut GLenum,
8893        name: *mut GLchar,
8894    ),
8895>;
8896pub type PFNGLCLAMPCOLORPROC =
8897    ::std::option::Option<unsafe extern "C" fn(target: GLenum, clamp: GLenum)>;
8898pub type PFNGLBEGINCONDITIONALRENDERPROC =
8899    ::std::option::Option<unsafe extern "C" fn(id: GLuint, mode: GLenum)>;
8900pub type PFNGLENDCONDITIONALRENDERPROC = ::std::option::Option<unsafe extern "C" fn()>;
8901pub type PFNGLVERTEXATTRIBIPOINTERPROC = ::std::option::Option<
8902    unsafe extern "C" fn(
8903        index: GLuint,
8904        size: GLint,
8905        type_: GLenum,
8906        stride: GLsizei,
8907        pointer: *const ::std::os::raw::c_void,
8908    ),
8909>;
8910pub type PFNGLGETVERTEXATTRIBIIVPROC =
8911    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLint)>;
8912pub type PFNGLGETVERTEXATTRIBIUIVPROC =
8913    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLuint)>;
8914pub type PFNGLVERTEXATTRIBI1IPROC =
8915    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint)>;
8916pub type PFNGLVERTEXATTRIBI2IPROC =
8917    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint, y: GLint)>;
8918pub type PFNGLVERTEXATTRIBI3IPROC =
8919    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint, y: GLint, z: GLint)>;
8920pub type PFNGLVERTEXATTRIBI4IPROC = ::std::option::Option<
8921    unsafe extern "C" fn(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint),
8922>;
8923pub type PFNGLVERTEXATTRIBI1UIPROC =
8924    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint)>;
8925pub type PFNGLVERTEXATTRIBI2UIPROC =
8926    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint, y: GLuint)>;
8927pub type PFNGLVERTEXATTRIBI3UIPROC =
8928    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint, y: GLuint, z: GLuint)>;
8929pub type PFNGLVERTEXATTRIBI4UIPROC = ::std::option::Option<
8930    unsafe extern "C" fn(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint),
8931>;
8932pub type PFNGLVERTEXATTRIBI1IVPROC =
8933    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
8934pub type PFNGLVERTEXATTRIBI2IVPROC =
8935    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
8936pub type PFNGLVERTEXATTRIBI3IVPROC =
8937    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
8938pub type PFNGLVERTEXATTRIBI4IVPROC =
8939    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
8940pub type PFNGLVERTEXATTRIBI1UIVPROC =
8941    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
8942pub type PFNGLVERTEXATTRIBI2UIVPROC =
8943    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
8944pub type PFNGLVERTEXATTRIBI3UIVPROC =
8945    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
8946pub type PFNGLVERTEXATTRIBI4UIVPROC =
8947    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
8948pub type PFNGLVERTEXATTRIBI4BVPROC =
8949    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLbyte)>;
8950pub type PFNGLVERTEXATTRIBI4SVPROC =
8951    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
8952pub type PFNGLVERTEXATTRIBI4UBVPROC =
8953    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLubyte)>;
8954pub type PFNGLVERTEXATTRIBI4USVPROC =
8955    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLushort)>;
8956pub type PFNGLGETUNIFORMUIVPROC = ::std::option::Option<
8957    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLuint),
8958>;
8959pub type PFNGLBINDFRAGDATALOCATIONPROC = ::std::option::Option<
8960    unsafe extern "C" fn(program: GLuint, color: GLuint, name: *const GLchar),
8961>;
8962pub type PFNGLGETFRAGDATALOCATIONPROC =
8963    ::std::option::Option<unsafe extern "C" fn(program: GLuint, name: *const GLchar) -> GLint>;
8964pub type PFNGLUNIFORM1UIPROC =
8965    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLuint)>;
8966pub type PFNGLUNIFORM2UIPROC =
8967    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLuint, v1: GLuint)>;
8968pub type PFNGLUNIFORM3UIPROC = ::std::option::Option<
8969    unsafe extern "C" fn(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint),
8970>;
8971pub type PFNGLUNIFORM4UIPROC = ::std::option::Option<
8972    unsafe extern "C" fn(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint),
8973>;
8974pub type PFNGLUNIFORM1UIVPROC = ::std::option::Option<
8975    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
8976>;
8977pub type PFNGLUNIFORM2UIVPROC = ::std::option::Option<
8978    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
8979>;
8980pub type PFNGLUNIFORM3UIVPROC = ::std::option::Option<
8981    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
8982>;
8983pub type PFNGLUNIFORM4UIVPROC = ::std::option::Option<
8984    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
8985>;
8986pub type PFNGLTEXPARAMETERIIVPROC = ::std::option::Option<
8987    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLint),
8988>;
8989pub type PFNGLTEXPARAMETERIUIVPROC = ::std::option::Option<
8990    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLuint),
8991>;
8992pub type PFNGLGETTEXPARAMETERIIVPROC =
8993    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
8994pub type PFNGLGETTEXPARAMETERIUIVPROC =
8995    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLuint)>;
8996pub type PFNGLCLEARBUFFERIVPROC = ::std::option::Option<
8997    unsafe extern "C" fn(buffer: GLenum, drawbuffer: GLint, value: *const GLint),
8998>;
8999pub type PFNGLCLEARBUFFERUIVPROC = ::std::option::Option<
9000    unsafe extern "C" fn(buffer: GLenum, drawbuffer: GLint, value: *const GLuint),
9001>;
9002pub type PFNGLCLEARBUFFERFVPROC = ::std::option::Option<
9003    unsafe extern "C" fn(buffer: GLenum, drawbuffer: GLint, value: *const GLfloat),
9004>;
9005pub type PFNGLCLEARBUFFERFIPROC = ::std::option::Option<
9006    unsafe extern "C" fn(buffer: GLenum, drawbuffer: GLint, depth: GLfloat, stencil: GLint),
9007>;
9008pub type PFNGLGETSTRINGIPROC =
9009    ::std::option::Option<unsafe extern "C" fn(name: GLenum, index: GLuint) -> *const GLubyte>;
9010pub type PFNGLISRENDERBUFFERPROC =
9011    ::std::option::Option<unsafe extern "C" fn(renderbuffer: GLuint) -> GLboolean>;
9012pub type PFNGLBINDRENDERBUFFERPROC =
9013    ::std::option::Option<unsafe extern "C" fn(target: GLenum, renderbuffer: GLuint)>;
9014pub type PFNGLDELETERENDERBUFFERSPROC =
9015    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, renderbuffers: *const GLuint)>;
9016pub type PFNGLGENRENDERBUFFERSPROC =
9017    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, renderbuffers: *mut GLuint)>;
9018pub type PFNGLRENDERBUFFERSTORAGEPROC = ::std::option::Option<
9019    unsafe extern "C" fn(target: GLenum, internalformat: GLenum, width: GLsizei, height: GLsizei),
9020>;
9021pub type PFNGLGETRENDERBUFFERPARAMETERIVPROC =
9022    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
9023pub type PFNGLISFRAMEBUFFERPROC =
9024    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint) -> GLboolean>;
9025pub type PFNGLBINDFRAMEBUFFERPROC =
9026    ::std::option::Option<unsafe extern "C" fn(target: GLenum, framebuffer: GLuint)>;
9027pub type PFNGLDELETEFRAMEBUFFERSPROC =
9028    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, framebuffers: *const GLuint)>;
9029pub type PFNGLGENFRAMEBUFFERSPROC =
9030    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, framebuffers: *mut GLuint)>;
9031pub type PFNGLCHECKFRAMEBUFFERSTATUSPROC =
9032    ::std::option::Option<unsafe extern "C" fn(target: GLenum) -> GLenum>;
9033pub type PFNGLFRAMEBUFFERTEXTURE1DPROC = ::std::option::Option<
9034    unsafe extern "C" fn(
9035        target: GLenum,
9036        attachment: GLenum,
9037        textarget: GLenum,
9038        texture: GLuint,
9039        level: GLint,
9040    ),
9041>;
9042pub type PFNGLFRAMEBUFFERTEXTURE2DPROC = ::std::option::Option<
9043    unsafe extern "C" fn(
9044        target: GLenum,
9045        attachment: GLenum,
9046        textarget: GLenum,
9047        texture: GLuint,
9048        level: GLint,
9049    ),
9050>;
9051pub type PFNGLFRAMEBUFFERTEXTURE3DPROC = ::std::option::Option<
9052    unsafe extern "C" fn(
9053        target: GLenum,
9054        attachment: GLenum,
9055        textarget: GLenum,
9056        texture: GLuint,
9057        level: GLint,
9058        zoffset: GLint,
9059    ),
9060>;
9061pub type PFNGLFRAMEBUFFERRENDERBUFFERPROC = ::std::option::Option<
9062    unsafe extern "C" fn(
9063        target: GLenum,
9064        attachment: GLenum,
9065        renderbuffertarget: GLenum,
9066        renderbuffer: GLuint,
9067    ),
9068>;
9069pub type PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC = ::std::option::Option<
9070    unsafe extern "C" fn(target: GLenum, attachment: GLenum, pname: GLenum, params: *mut GLint),
9071>;
9072pub type PFNGLGENERATEMIPMAPPROC = ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
9073pub type PFNGLBLITFRAMEBUFFERPROC = ::std::option::Option<
9074    unsafe extern "C" fn(
9075        srcX0: GLint,
9076        srcY0: GLint,
9077        srcX1: GLint,
9078        srcY1: GLint,
9079        dstX0: GLint,
9080        dstY0: GLint,
9081        dstX1: GLint,
9082        dstY1: GLint,
9083        mask: GLbitfield,
9084        filter: GLenum,
9085    ),
9086>;
9087pub type PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC = ::std::option::Option<
9088    unsafe extern "C" fn(
9089        target: GLenum,
9090        samples: GLsizei,
9091        internalformat: GLenum,
9092        width: GLsizei,
9093        height: GLsizei,
9094    ),
9095>;
9096pub type PFNGLFRAMEBUFFERTEXTURELAYERPROC = ::std::option::Option<
9097    unsafe extern "C" fn(
9098        target: GLenum,
9099        attachment: GLenum,
9100        texture: GLuint,
9101        level: GLint,
9102        layer: GLint,
9103    ),
9104>;
9105pub type PFNGLMAPBUFFERRANGEPROC = ::std::option::Option<
9106    unsafe extern "C" fn(
9107        target: GLenum,
9108        offset: GLintptr,
9109        length: GLsizeiptr,
9110        access: GLbitfield,
9111    ) -> *mut ::std::os::raw::c_void,
9112>;
9113pub type PFNGLFLUSHMAPPEDBUFFERRANGEPROC = ::std::option::Option<
9114    unsafe extern "C" fn(target: GLenum, offset: GLintptr, length: GLsizeiptr),
9115>;
9116pub type PFNGLBINDVERTEXARRAYPROC = ::std::option::Option<unsafe extern "C" fn(array: GLuint)>;
9117pub type PFNGLDELETEVERTEXARRAYSPROC =
9118    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, arrays: *const GLuint)>;
9119pub type PFNGLGENVERTEXARRAYSPROC =
9120    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, arrays: *mut GLuint)>;
9121pub type PFNGLISVERTEXARRAYPROC =
9122    ::std::option::Option<unsafe extern "C" fn(array: GLuint) -> GLboolean>;
9123extern "C" {
9124    pub fn glColorMaski(index: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean);
9125}
9126extern "C" {
9127    pub fn glGetBooleani_v(target: GLenum, index: GLuint, data: *mut GLboolean);
9128}
9129extern "C" {
9130    pub fn glGetIntegeri_v(target: GLenum, index: GLuint, data: *mut GLint);
9131}
9132extern "C" {
9133    pub fn glEnablei(target: GLenum, index: GLuint);
9134}
9135extern "C" {
9136    pub fn glDisablei(target: GLenum, index: GLuint);
9137}
9138extern "C" {
9139    pub fn glIsEnabledi(target: GLenum, index: GLuint) -> GLboolean;
9140}
9141extern "C" {
9142    pub fn glBeginTransformFeedback(primitiveMode: GLenum);
9143}
9144extern "C" {
9145    pub fn glEndTransformFeedback();
9146}
9147extern "C" {
9148    pub fn glBindBufferRange(
9149        target: GLenum,
9150        index: GLuint,
9151        buffer: GLuint,
9152        offset: GLintptr,
9153        size: GLsizeiptr,
9154    );
9155}
9156extern "C" {
9157    pub fn glBindBufferBase(target: GLenum, index: GLuint, buffer: GLuint);
9158}
9159extern "C" {
9160    pub fn glTransformFeedbackVaryings(
9161        program: GLuint,
9162        count: GLsizei,
9163        varyings: *const *const GLchar,
9164        bufferMode: GLenum,
9165    );
9166}
9167extern "C" {
9168    pub fn glGetTransformFeedbackVarying(
9169        program: GLuint,
9170        index: GLuint,
9171        bufSize: GLsizei,
9172        length: *mut GLsizei,
9173        size: *mut GLsizei,
9174        type_: *mut GLenum,
9175        name: *mut GLchar,
9176    );
9177}
9178extern "C" {
9179    pub fn glClampColor(target: GLenum, clamp: GLenum);
9180}
9181extern "C" {
9182    pub fn glBeginConditionalRender(id: GLuint, mode: GLenum);
9183}
9184extern "C" {
9185    pub fn glEndConditionalRender();
9186}
9187extern "C" {
9188    pub fn glVertexAttribIPointer(
9189        index: GLuint,
9190        size: GLint,
9191        type_: GLenum,
9192        stride: GLsizei,
9193        pointer: *const ::std::os::raw::c_void,
9194    );
9195}
9196extern "C" {
9197    pub fn glGetVertexAttribIiv(index: GLuint, pname: GLenum, params: *mut GLint);
9198}
9199extern "C" {
9200    pub fn glGetVertexAttribIuiv(index: GLuint, pname: GLenum, params: *mut GLuint);
9201}
9202extern "C" {
9203    pub fn glVertexAttribI1i(index: GLuint, x: GLint);
9204}
9205extern "C" {
9206    pub fn glVertexAttribI2i(index: GLuint, x: GLint, y: GLint);
9207}
9208extern "C" {
9209    pub fn glVertexAttribI3i(index: GLuint, x: GLint, y: GLint, z: GLint);
9210}
9211extern "C" {
9212    pub fn glVertexAttribI4i(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint);
9213}
9214extern "C" {
9215    pub fn glVertexAttribI1ui(index: GLuint, x: GLuint);
9216}
9217extern "C" {
9218    pub fn glVertexAttribI2ui(index: GLuint, x: GLuint, y: GLuint);
9219}
9220extern "C" {
9221    pub fn glVertexAttribI3ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint);
9222}
9223extern "C" {
9224    pub fn glVertexAttribI4ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint);
9225}
9226extern "C" {
9227    pub fn glVertexAttribI1iv(index: GLuint, v: *const GLint);
9228}
9229extern "C" {
9230    pub fn glVertexAttribI2iv(index: GLuint, v: *const GLint);
9231}
9232extern "C" {
9233    pub fn glVertexAttribI3iv(index: GLuint, v: *const GLint);
9234}
9235extern "C" {
9236    pub fn glVertexAttribI4iv(index: GLuint, v: *const GLint);
9237}
9238extern "C" {
9239    pub fn glVertexAttribI1uiv(index: GLuint, v: *const GLuint);
9240}
9241extern "C" {
9242    pub fn glVertexAttribI2uiv(index: GLuint, v: *const GLuint);
9243}
9244extern "C" {
9245    pub fn glVertexAttribI3uiv(index: GLuint, v: *const GLuint);
9246}
9247extern "C" {
9248    pub fn glVertexAttribI4uiv(index: GLuint, v: *const GLuint);
9249}
9250extern "C" {
9251    pub fn glVertexAttribI4bv(index: GLuint, v: *const GLbyte);
9252}
9253extern "C" {
9254    pub fn glVertexAttribI4sv(index: GLuint, v: *const GLshort);
9255}
9256extern "C" {
9257    pub fn glVertexAttribI4ubv(index: GLuint, v: *const GLubyte);
9258}
9259extern "C" {
9260    pub fn glVertexAttribI4usv(index: GLuint, v: *const GLushort);
9261}
9262extern "C" {
9263    pub fn glGetUniformuiv(program: GLuint, location: GLint, params: *mut GLuint);
9264}
9265extern "C" {
9266    pub fn glBindFragDataLocation(program: GLuint, color: GLuint, name: *const GLchar);
9267}
9268extern "C" {
9269    pub fn glGetFragDataLocation(program: GLuint, name: *const GLchar) -> GLint;
9270}
9271extern "C" {
9272    pub fn glUniform1ui(location: GLint, v0: GLuint);
9273}
9274extern "C" {
9275    pub fn glUniform2ui(location: GLint, v0: GLuint, v1: GLuint);
9276}
9277extern "C" {
9278    pub fn glUniform3ui(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint);
9279}
9280extern "C" {
9281    pub fn glUniform4ui(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint);
9282}
9283extern "C" {
9284    pub fn glUniform1uiv(location: GLint, count: GLsizei, value: *const GLuint);
9285}
9286extern "C" {
9287    pub fn glUniform2uiv(location: GLint, count: GLsizei, value: *const GLuint);
9288}
9289extern "C" {
9290    pub fn glUniform3uiv(location: GLint, count: GLsizei, value: *const GLuint);
9291}
9292extern "C" {
9293    pub fn glUniform4uiv(location: GLint, count: GLsizei, value: *const GLuint);
9294}
9295extern "C" {
9296    pub fn glTexParameterIiv(target: GLenum, pname: GLenum, params: *const GLint);
9297}
9298extern "C" {
9299    pub fn glTexParameterIuiv(target: GLenum, pname: GLenum, params: *const GLuint);
9300}
9301extern "C" {
9302    pub fn glGetTexParameterIiv(target: GLenum, pname: GLenum, params: *mut GLint);
9303}
9304extern "C" {
9305    pub fn glGetTexParameterIuiv(target: GLenum, pname: GLenum, params: *mut GLuint);
9306}
9307extern "C" {
9308    pub fn glClearBufferiv(buffer: GLenum, drawbuffer: GLint, value: *const GLint);
9309}
9310extern "C" {
9311    pub fn glClearBufferuiv(buffer: GLenum, drawbuffer: GLint, value: *const GLuint);
9312}
9313extern "C" {
9314    pub fn glClearBufferfv(buffer: GLenum, drawbuffer: GLint, value: *const GLfloat);
9315}
9316extern "C" {
9317    pub fn glClearBufferfi(buffer: GLenum, drawbuffer: GLint, depth: GLfloat, stencil: GLint);
9318}
9319extern "C" {
9320    pub fn glGetStringi(name: GLenum, index: GLuint) -> *const GLubyte;
9321}
9322extern "C" {
9323    pub fn glIsRenderbuffer(renderbuffer: GLuint) -> GLboolean;
9324}
9325extern "C" {
9326    pub fn glBindRenderbuffer(target: GLenum, renderbuffer: GLuint);
9327}
9328extern "C" {
9329    pub fn glDeleteRenderbuffers(n: GLsizei, renderbuffers: *const GLuint);
9330}
9331extern "C" {
9332    pub fn glGenRenderbuffers(n: GLsizei, renderbuffers: *mut GLuint);
9333}
9334extern "C" {
9335    pub fn glRenderbufferStorage(
9336        target: GLenum,
9337        internalformat: GLenum,
9338        width: GLsizei,
9339        height: GLsizei,
9340    );
9341}
9342extern "C" {
9343    pub fn glGetRenderbufferParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
9344}
9345extern "C" {
9346    pub fn glIsFramebuffer(framebuffer: GLuint) -> GLboolean;
9347}
9348extern "C" {
9349    pub fn glBindFramebuffer(target: GLenum, framebuffer: GLuint);
9350}
9351extern "C" {
9352    pub fn glDeleteFramebuffers(n: GLsizei, framebuffers: *const GLuint);
9353}
9354extern "C" {
9355    pub fn glGenFramebuffers(n: GLsizei, framebuffers: *mut GLuint);
9356}
9357extern "C" {
9358    pub fn glCheckFramebufferStatus(target: GLenum) -> GLenum;
9359}
9360extern "C" {
9361    pub fn glFramebufferTexture1D(
9362        target: GLenum,
9363        attachment: GLenum,
9364        textarget: GLenum,
9365        texture: GLuint,
9366        level: GLint,
9367    );
9368}
9369extern "C" {
9370    pub fn glFramebufferTexture2D(
9371        target: GLenum,
9372        attachment: GLenum,
9373        textarget: GLenum,
9374        texture: GLuint,
9375        level: GLint,
9376    );
9377}
9378extern "C" {
9379    pub fn glFramebufferTexture3D(
9380        target: GLenum,
9381        attachment: GLenum,
9382        textarget: GLenum,
9383        texture: GLuint,
9384        level: GLint,
9385        zoffset: GLint,
9386    );
9387}
9388extern "C" {
9389    pub fn glFramebufferRenderbuffer(
9390        target: GLenum,
9391        attachment: GLenum,
9392        renderbuffertarget: GLenum,
9393        renderbuffer: GLuint,
9394    );
9395}
9396extern "C" {
9397    pub fn glGetFramebufferAttachmentParameteriv(
9398        target: GLenum,
9399        attachment: GLenum,
9400        pname: GLenum,
9401        params: *mut GLint,
9402    );
9403}
9404extern "C" {
9405    pub fn glGenerateMipmap(target: GLenum);
9406}
9407extern "C" {
9408    pub fn glBlitFramebuffer(
9409        srcX0: GLint,
9410        srcY0: GLint,
9411        srcX1: GLint,
9412        srcY1: GLint,
9413        dstX0: GLint,
9414        dstY0: GLint,
9415        dstX1: GLint,
9416        dstY1: GLint,
9417        mask: GLbitfield,
9418        filter: GLenum,
9419    );
9420}
9421extern "C" {
9422    pub fn glRenderbufferStorageMultisample(
9423        target: GLenum,
9424        samples: GLsizei,
9425        internalformat: GLenum,
9426        width: GLsizei,
9427        height: GLsizei,
9428    );
9429}
9430extern "C" {
9431    pub fn glFramebufferTextureLayer(
9432        target: GLenum,
9433        attachment: GLenum,
9434        texture: GLuint,
9435        level: GLint,
9436        layer: GLint,
9437    );
9438}
9439extern "C" {
9440    pub fn glMapBufferRange(
9441        target: GLenum,
9442        offset: GLintptr,
9443        length: GLsizeiptr,
9444        access: GLbitfield,
9445    ) -> *mut ::std::os::raw::c_void;
9446}
9447extern "C" {
9448    pub fn glFlushMappedBufferRange(target: GLenum, offset: GLintptr, length: GLsizeiptr);
9449}
9450extern "C" {
9451    pub fn glBindVertexArray(array: GLuint);
9452}
9453extern "C" {
9454    pub fn glDeleteVertexArrays(n: GLsizei, arrays: *const GLuint);
9455}
9456extern "C" {
9457    pub fn glGenVertexArrays(n: GLsizei, arrays: *mut GLuint);
9458}
9459extern "C" {
9460    pub fn glIsVertexArray(array: GLuint) -> GLboolean;
9461}
9462pub type PFNGLDRAWARRAYSINSTANCEDPROC = ::std::option::Option<
9463    unsafe extern "C" fn(mode: GLenum, first: GLint, count: GLsizei, instancecount: GLsizei),
9464>;
9465pub type PFNGLDRAWELEMENTSINSTANCEDPROC = ::std::option::Option<
9466    unsafe extern "C" fn(
9467        mode: GLenum,
9468        count: GLsizei,
9469        type_: GLenum,
9470        indices: *const ::std::os::raw::c_void,
9471        instancecount: GLsizei,
9472    ),
9473>;
9474pub type PFNGLTEXBUFFERPROC = ::std::option::Option<
9475    unsafe extern "C" fn(target: GLenum, internalformat: GLenum, buffer: GLuint),
9476>;
9477pub type PFNGLPRIMITIVERESTARTINDEXPROC =
9478    ::std::option::Option<unsafe extern "C" fn(index: GLuint)>;
9479pub type PFNGLCOPYBUFFERSUBDATAPROC = ::std::option::Option<
9480    unsafe extern "C" fn(
9481        readTarget: GLenum,
9482        writeTarget: GLenum,
9483        readOffset: GLintptr,
9484        writeOffset: GLintptr,
9485        size: GLsizeiptr,
9486    ),
9487>;
9488pub type PFNGLGETUNIFORMINDICESPROC = ::std::option::Option<
9489    unsafe extern "C" fn(
9490        program: GLuint,
9491        uniformCount: GLsizei,
9492        uniformNames: *const *const GLchar,
9493        uniformIndices: *mut GLuint,
9494    ),
9495>;
9496pub type PFNGLGETACTIVEUNIFORMSIVPROC = ::std::option::Option<
9497    unsafe extern "C" fn(
9498        program: GLuint,
9499        uniformCount: GLsizei,
9500        uniformIndices: *const GLuint,
9501        pname: GLenum,
9502        params: *mut GLint,
9503    ),
9504>;
9505pub type PFNGLGETACTIVEUNIFORMNAMEPROC = ::std::option::Option<
9506    unsafe extern "C" fn(
9507        program: GLuint,
9508        uniformIndex: GLuint,
9509        bufSize: GLsizei,
9510        length: *mut GLsizei,
9511        uniformName: *mut GLchar,
9512    ),
9513>;
9514pub type PFNGLGETUNIFORMBLOCKINDEXPROC = ::std::option::Option<
9515    unsafe extern "C" fn(program: GLuint, uniformBlockName: *const GLchar) -> GLuint,
9516>;
9517pub type PFNGLGETACTIVEUNIFORMBLOCKIVPROC = ::std::option::Option<
9518    unsafe extern "C" fn(
9519        program: GLuint,
9520        uniformBlockIndex: GLuint,
9521        pname: GLenum,
9522        params: *mut GLint,
9523    ),
9524>;
9525pub type PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC = ::std::option::Option<
9526    unsafe extern "C" fn(
9527        program: GLuint,
9528        uniformBlockIndex: GLuint,
9529        bufSize: GLsizei,
9530        length: *mut GLsizei,
9531        uniformBlockName: *mut GLchar,
9532    ),
9533>;
9534pub type PFNGLUNIFORMBLOCKBINDINGPROC = ::std::option::Option<
9535    unsafe extern "C" fn(program: GLuint, uniformBlockIndex: GLuint, uniformBlockBinding: GLuint),
9536>;
9537extern "C" {
9538    pub fn glDrawArraysInstanced(
9539        mode: GLenum,
9540        first: GLint,
9541        count: GLsizei,
9542        instancecount: GLsizei,
9543    );
9544}
9545extern "C" {
9546    pub fn glDrawElementsInstanced(
9547        mode: GLenum,
9548        count: GLsizei,
9549        type_: GLenum,
9550        indices: *const ::std::os::raw::c_void,
9551        instancecount: GLsizei,
9552    );
9553}
9554extern "C" {
9555    pub fn glTexBuffer(target: GLenum, internalformat: GLenum, buffer: GLuint);
9556}
9557extern "C" {
9558    pub fn glPrimitiveRestartIndex(index: GLuint);
9559}
9560extern "C" {
9561    pub fn glCopyBufferSubData(
9562        readTarget: GLenum,
9563        writeTarget: GLenum,
9564        readOffset: GLintptr,
9565        writeOffset: GLintptr,
9566        size: GLsizeiptr,
9567    );
9568}
9569extern "C" {
9570    pub fn glGetUniformIndices(
9571        program: GLuint,
9572        uniformCount: GLsizei,
9573        uniformNames: *const *const GLchar,
9574        uniformIndices: *mut GLuint,
9575    );
9576}
9577extern "C" {
9578    pub fn glGetActiveUniformsiv(
9579        program: GLuint,
9580        uniformCount: GLsizei,
9581        uniformIndices: *const GLuint,
9582        pname: GLenum,
9583        params: *mut GLint,
9584    );
9585}
9586extern "C" {
9587    pub fn glGetActiveUniformName(
9588        program: GLuint,
9589        uniformIndex: GLuint,
9590        bufSize: GLsizei,
9591        length: *mut GLsizei,
9592        uniformName: *mut GLchar,
9593    );
9594}
9595extern "C" {
9596    pub fn glGetUniformBlockIndex(program: GLuint, uniformBlockName: *const GLchar) -> GLuint;
9597}
9598extern "C" {
9599    pub fn glGetActiveUniformBlockiv(
9600        program: GLuint,
9601        uniformBlockIndex: GLuint,
9602        pname: GLenum,
9603        params: *mut GLint,
9604    );
9605}
9606extern "C" {
9607    pub fn glGetActiveUniformBlockName(
9608        program: GLuint,
9609        uniformBlockIndex: GLuint,
9610        bufSize: GLsizei,
9611        length: *mut GLsizei,
9612        uniformBlockName: *mut GLchar,
9613    );
9614}
9615extern "C" {
9616    pub fn glUniformBlockBinding(
9617        program: GLuint,
9618        uniformBlockIndex: GLuint,
9619        uniformBlockBinding: GLuint,
9620    );
9621}
9622#[repr(C)]
9623#[derive(Debug, Copy, Clone)]
9624pub struct __GLsync {
9625    _unused: [u8; 0],
9626}
9627pub type GLsync = *mut __GLsync;
9628pub type GLuint64 = khronos_uint64_t;
9629pub type GLint64 = khronos_int64_t;
9630pub type PFNGLDRAWELEMENTSBASEVERTEXPROC = ::std::option::Option<
9631    unsafe extern "C" fn(
9632        mode: GLenum,
9633        count: GLsizei,
9634        type_: GLenum,
9635        indices: *const ::std::os::raw::c_void,
9636        basevertex: GLint,
9637    ),
9638>;
9639pub type PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC = ::std::option::Option<
9640    unsafe extern "C" fn(
9641        mode: GLenum,
9642        start: GLuint,
9643        end: GLuint,
9644        count: GLsizei,
9645        type_: GLenum,
9646        indices: *const ::std::os::raw::c_void,
9647        basevertex: GLint,
9648    ),
9649>;
9650pub type PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC = ::std::option::Option<
9651    unsafe extern "C" fn(
9652        mode: GLenum,
9653        count: GLsizei,
9654        type_: GLenum,
9655        indices: *const ::std::os::raw::c_void,
9656        instancecount: GLsizei,
9657        basevertex: GLint,
9658    ),
9659>;
9660pub type PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC = ::std::option::Option<
9661    unsafe extern "C" fn(
9662        mode: GLenum,
9663        count: *const GLsizei,
9664        type_: GLenum,
9665        indices: *const *const ::std::os::raw::c_void,
9666        drawcount: GLsizei,
9667        basevertex: *const GLint,
9668    ),
9669>;
9670pub type PFNGLPROVOKINGVERTEXPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
9671pub type PFNGLFENCESYNCPROC =
9672    ::std::option::Option<unsafe extern "C" fn(condition: GLenum, flags: GLbitfield) -> GLsync>;
9673pub type PFNGLISSYNCPROC = ::std::option::Option<unsafe extern "C" fn(sync: GLsync) -> GLboolean>;
9674pub type PFNGLDELETESYNCPROC = ::std::option::Option<unsafe extern "C" fn(sync: GLsync)>;
9675pub type PFNGLCLIENTWAITSYNCPROC = ::std::option::Option<
9676    unsafe extern "C" fn(sync: GLsync, flags: GLbitfield, timeout: GLuint64) -> GLenum,
9677>;
9678pub type PFNGLWAITSYNCPROC =
9679    ::std::option::Option<unsafe extern "C" fn(sync: GLsync, flags: GLbitfield, timeout: GLuint64)>;
9680pub type PFNGLGETINTEGER64VPROC =
9681    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, data: *mut GLint64)>;
9682pub type PFNGLGETSYNCIVPROC = ::std::option::Option<
9683    unsafe extern "C" fn(
9684        sync: GLsync,
9685        pname: GLenum,
9686        bufSize: GLsizei,
9687        length: *mut GLsizei,
9688        values: *mut GLint,
9689    ),
9690>;
9691pub type PFNGLGETINTEGER64I_VPROC =
9692    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLint64)>;
9693pub type PFNGLGETBUFFERPARAMETERI64VPROC = ::std::option::Option<
9694    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint64),
9695>;
9696pub type PFNGLFRAMEBUFFERTEXTUREPROC = ::std::option::Option<
9697    unsafe extern "C" fn(target: GLenum, attachment: GLenum, texture: GLuint, level: GLint),
9698>;
9699pub type PFNGLTEXIMAGE2DMULTISAMPLEPROC = ::std::option::Option<
9700    unsafe extern "C" fn(
9701        target: GLenum,
9702        samples: GLsizei,
9703        internalformat: GLenum,
9704        width: GLsizei,
9705        height: GLsizei,
9706        fixedsamplelocations: GLboolean,
9707    ),
9708>;
9709pub type PFNGLTEXIMAGE3DMULTISAMPLEPROC = ::std::option::Option<
9710    unsafe extern "C" fn(
9711        target: GLenum,
9712        samples: GLsizei,
9713        internalformat: GLenum,
9714        width: GLsizei,
9715        height: GLsizei,
9716        depth: GLsizei,
9717        fixedsamplelocations: GLboolean,
9718    ),
9719>;
9720pub type PFNGLGETMULTISAMPLEFVPROC =
9721    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, index: GLuint, val: *mut GLfloat)>;
9722pub type PFNGLSAMPLEMASKIPROC =
9723    ::std::option::Option<unsafe extern "C" fn(maskNumber: GLuint, mask: GLbitfield)>;
9724extern "C" {
9725    pub fn glDrawElementsBaseVertex(
9726        mode: GLenum,
9727        count: GLsizei,
9728        type_: GLenum,
9729        indices: *const ::std::os::raw::c_void,
9730        basevertex: GLint,
9731    );
9732}
9733extern "C" {
9734    pub fn glDrawRangeElementsBaseVertex(
9735        mode: GLenum,
9736        start: GLuint,
9737        end: GLuint,
9738        count: GLsizei,
9739        type_: GLenum,
9740        indices: *const ::std::os::raw::c_void,
9741        basevertex: GLint,
9742    );
9743}
9744extern "C" {
9745    pub fn glDrawElementsInstancedBaseVertex(
9746        mode: GLenum,
9747        count: GLsizei,
9748        type_: GLenum,
9749        indices: *const ::std::os::raw::c_void,
9750        instancecount: GLsizei,
9751        basevertex: GLint,
9752    );
9753}
9754extern "C" {
9755    pub fn glMultiDrawElementsBaseVertex(
9756        mode: GLenum,
9757        count: *const GLsizei,
9758        type_: GLenum,
9759        indices: *const *const ::std::os::raw::c_void,
9760        drawcount: GLsizei,
9761        basevertex: *const GLint,
9762    );
9763}
9764extern "C" {
9765    pub fn glProvokingVertex(mode: GLenum);
9766}
9767extern "C" {
9768    pub fn glFenceSync(condition: GLenum, flags: GLbitfield) -> GLsync;
9769}
9770extern "C" {
9771    pub fn glIsSync(sync: GLsync) -> GLboolean;
9772}
9773extern "C" {
9774    pub fn glDeleteSync(sync: GLsync);
9775}
9776extern "C" {
9777    pub fn glClientWaitSync(sync: GLsync, flags: GLbitfield, timeout: GLuint64) -> GLenum;
9778}
9779extern "C" {
9780    pub fn glWaitSync(sync: GLsync, flags: GLbitfield, timeout: GLuint64);
9781}
9782extern "C" {
9783    pub fn glGetInteger64v(pname: GLenum, data: *mut GLint64);
9784}
9785extern "C" {
9786    pub fn glGetSynciv(
9787        sync: GLsync,
9788        pname: GLenum,
9789        bufSize: GLsizei,
9790        length: *mut GLsizei,
9791        values: *mut GLint,
9792    );
9793}
9794extern "C" {
9795    pub fn glGetInteger64i_v(target: GLenum, index: GLuint, data: *mut GLint64);
9796}
9797extern "C" {
9798    pub fn glGetBufferParameteri64v(target: GLenum, pname: GLenum, params: *mut GLint64);
9799}
9800extern "C" {
9801    pub fn glFramebufferTexture(target: GLenum, attachment: GLenum, texture: GLuint, level: GLint);
9802}
9803extern "C" {
9804    pub fn glTexImage2DMultisample(
9805        target: GLenum,
9806        samples: GLsizei,
9807        internalformat: GLenum,
9808        width: GLsizei,
9809        height: GLsizei,
9810        fixedsamplelocations: GLboolean,
9811    );
9812}
9813extern "C" {
9814    pub fn glTexImage3DMultisample(
9815        target: GLenum,
9816        samples: GLsizei,
9817        internalformat: GLenum,
9818        width: GLsizei,
9819        height: GLsizei,
9820        depth: GLsizei,
9821        fixedsamplelocations: GLboolean,
9822    );
9823}
9824extern "C" {
9825    pub fn glGetMultisamplefv(pname: GLenum, index: GLuint, val: *mut GLfloat);
9826}
9827extern "C" {
9828    pub fn glSampleMaski(maskNumber: GLuint, mask: GLbitfield);
9829}
9830pub type PFNGLBINDFRAGDATALOCATIONINDEXEDPROC = ::std::option::Option<
9831    unsafe extern "C" fn(program: GLuint, colorNumber: GLuint, index: GLuint, name: *const GLchar),
9832>;
9833pub type PFNGLGETFRAGDATAINDEXPROC =
9834    ::std::option::Option<unsafe extern "C" fn(program: GLuint, name: *const GLchar) -> GLint>;
9835pub type PFNGLGENSAMPLERSPROC =
9836    ::std::option::Option<unsafe extern "C" fn(count: GLsizei, samplers: *mut GLuint)>;
9837pub type PFNGLDELETESAMPLERSPROC =
9838    ::std::option::Option<unsafe extern "C" fn(count: GLsizei, samplers: *const GLuint)>;
9839pub type PFNGLISSAMPLERPROC =
9840    ::std::option::Option<unsafe extern "C" fn(sampler: GLuint) -> GLboolean>;
9841pub type PFNGLBINDSAMPLERPROC =
9842    ::std::option::Option<unsafe extern "C" fn(unit: GLuint, sampler: GLuint)>;
9843pub type PFNGLSAMPLERPARAMETERIPROC =
9844    ::std::option::Option<unsafe extern "C" fn(sampler: GLuint, pname: GLenum, param: GLint)>;
9845pub type PFNGLSAMPLERPARAMETERIVPROC = ::std::option::Option<
9846    unsafe extern "C" fn(sampler: GLuint, pname: GLenum, param: *const GLint),
9847>;
9848pub type PFNGLSAMPLERPARAMETERFPROC =
9849    ::std::option::Option<unsafe extern "C" fn(sampler: GLuint, pname: GLenum, param: GLfloat)>;
9850pub type PFNGLSAMPLERPARAMETERFVPROC = ::std::option::Option<
9851    unsafe extern "C" fn(sampler: GLuint, pname: GLenum, param: *const GLfloat),
9852>;
9853pub type PFNGLSAMPLERPARAMETERIIVPROC = ::std::option::Option<
9854    unsafe extern "C" fn(sampler: GLuint, pname: GLenum, param: *const GLint),
9855>;
9856pub type PFNGLSAMPLERPARAMETERIUIVPROC = ::std::option::Option<
9857    unsafe extern "C" fn(sampler: GLuint, pname: GLenum, param: *const GLuint),
9858>;
9859pub type PFNGLGETSAMPLERPARAMETERIVPROC =
9860    ::std::option::Option<unsafe extern "C" fn(sampler: GLuint, pname: GLenum, params: *mut GLint)>;
9861pub type PFNGLGETSAMPLERPARAMETERIIVPROC =
9862    ::std::option::Option<unsafe extern "C" fn(sampler: GLuint, pname: GLenum, params: *mut GLint)>;
9863pub type PFNGLGETSAMPLERPARAMETERFVPROC = ::std::option::Option<
9864    unsafe extern "C" fn(sampler: GLuint, pname: GLenum, params: *mut GLfloat),
9865>;
9866pub type PFNGLGETSAMPLERPARAMETERIUIVPROC = ::std::option::Option<
9867    unsafe extern "C" fn(sampler: GLuint, pname: GLenum, params: *mut GLuint),
9868>;
9869pub type PFNGLQUERYCOUNTERPROC =
9870    ::std::option::Option<unsafe extern "C" fn(id: GLuint, target: GLenum)>;
9871pub type PFNGLGETQUERYOBJECTI64VPROC =
9872    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLint64)>;
9873pub type PFNGLGETQUERYOBJECTUI64VPROC =
9874    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLuint64)>;
9875pub type PFNGLVERTEXATTRIBDIVISORPROC =
9876    ::std::option::Option<unsafe extern "C" fn(index: GLuint, divisor: GLuint)>;
9877pub type PFNGLVERTEXATTRIBP1UIPROC = ::std::option::Option<
9878    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint),
9879>;
9880pub type PFNGLVERTEXATTRIBP1UIVPROC = ::std::option::Option<
9881    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: *const GLuint),
9882>;
9883pub type PFNGLVERTEXATTRIBP2UIPROC = ::std::option::Option<
9884    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint),
9885>;
9886pub type PFNGLVERTEXATTRIBP2UIVPROC = ::std::option::Option<
9887    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: *const GLuint),
9888>;
9889pub type PFNGLVERTEXATTRIBP3UIPROC = ::std::option::Option<
9890    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint),
9891>;
9892pub type PFNGLVERTEXATTRIBP3UIVPROC = ::std::option::Option<
9893    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: *const GLuint),
9894>;
9895pub type PFNGLVERTEXATTRIBP4UIPROC = ::std::option::Option<
9896    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint),
9897>;
9898pub type PFNGLVERTEXATTRIBP4UIVPROC = ::std::option::Option<
9899    unsafe extern "C" fn(index: GLuint, type_: GLenum, normalized: GLboolean, value: *const GLuint),
9900>;
9901pub type PFNGLVERTEXP2UIPROC =
9902    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, value: GLuint)>;
9903pub type PFNGLVERTEXP2UIVPROC =
9904    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, value: *const GLuint)>;
9905pub type PFNGLVERTEXP3UIPROC =
9906    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, value: GLuint)>;
9907pub type PFNGLVERTEXP3UIVPROC =
9908    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, value: *const GLuint)>;
9909pub type PFNGLVERTEXP4UIPROC =
9910    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, value: GLuint)>;
9911pub type PFNGLVERTEXP4UIVPROC =
9912    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, value: *const GLuint)>;
9913pub type PFNGLTEXCOORDP1UIPROC =
9914    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: GLuint)>;
9915pub type PFNGLTEXCOORDP1UIVPROC =
9916    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: *const GLuint)>;
9917pub type PFNGLTEXCOORDP2UIPROC =
9918    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: GLuint)>;
9919pub type PFNGLTEXCOORDP2UIVPROC =
9920    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: *const GLuint)>;
9921pub type PFNGLTEXCOORDP3UIPROC =
9922    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: GLuint)>;
9923pub type PFNGLTEXCOORDP3UIVPROC =
9924    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: *const GLuint)>;
9925pub type PFNGLTEXCOORDP4UIPROC =
9926    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: GLuint)>;
9927pub type PFNGLTEXCOORDP4UIVPROC =
9928    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: *const GLuint)>;
9929pub type PFNGLMULTITEXCOORDP1UIPROC =
9930    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: GLuint)>;
9931pub type PFNGLMULTITEXCOORDP1UIVPROC = ::std::option::Option<
9932    unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: *const GLuint),
9933>;
9934pub type PFNGLMULTITEXCOORDP2UIPROC =
9935    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: GLuint)>;
9936pub type PFNGLMULTITEXCOORDP2UIVPROC = ::std::option::Option<
9937    unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: *const GLuint),
9938>;
9939pub type PFNGLMULTITEXCOORDP3UIPROC =
9940    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: GLuint)>;
9941pub type PFNGLMULTITEXCOORDP3UIVPROC = ::std::option::Option<
9942    unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: *const GLuint),
9943>;
9944pub type PFNGLMULTITEXCOORDP4UIPROC =
9945    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: GLuint)>;
9946pub type PFNGLMULTITEXCOORDP4UIVPROC = ::std::option::Option<
9947    unsafe extern "C" fn(texture: GLenum, type_: GLenum, coords: *const GLuint),
9948>;
9949pub type PFNGLNORMALP3UIPROC =
9950    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: GLuint)>;
9951pub type PFNGLNORMALP3UIVPROC =
9952    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, coords: *const GLuint)>;
9953pub type PFNGLCOLORP3UIPROC =
9954    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, color: GLuint)>;
9955pub type PFNGLCOLORP3UIVPROC =
9956    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, color: *const GLuint)>;
9957pub type PFNGLCOLORP4UIPROC =
9958    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, color: GLuint)>;
9959pub type PFNGLCOLORP4UIVPROC =
9960    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, color: *const GLuint)>;
9961pub type PFNGLSECONDARYCOLORP3UIPROC =
9962    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, color: GLuint)>;
9963pub type PFNGLSECONDARYCOLORP3UIVPROC =
9964    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, color: *const GLuint)>;
9965extern "C" {
9966    pub fn glBindFragDataLocationIndexed(
9967        program: GLuint,
9968        colorNumber: GLuint,
9969        index: GLuint,
9970        name: *const GLchar,
9971    );
9972}
9973extern "C" {
9974    pub fn glGetFragDataIndex(program: GLuint, name: *const GLchar) -> GLint;
9975}
9976extern "C" {
9977    pub fn glGenSamplers(count: GLsizei, samplers: *mut GLuint);
9978}
9979extern "C" {
9980    pub fn glDeleteSamplers(count: GLsizei, samplers: *const GLuint);
9981}
9982extern "C" {
9983    pub fn glIsSampler(sampler: GLuint) -> GLboolean;
9984}
9985extern "C" {
9986    pub fn glBindSampler(unit: GLuint, sampler: GLuint);
9987}
9988extern "C" {
9989    pub fn glSamplerParameteri(sampler: GLuint, pname: GLenum, param: GLint);
9990}
9991extern "C" {
9992    pub fn glSamplerParameteriv(sampler: GLuint, pname: GLenum, param: *const GLint);
9993}
9994extern "C" {
9995    pub fn glSamplerParameterf(sampler: GLuint, pname: GLenum, param: GLfloat);
9996}
9997extern "C" {
9998    pub fn glSamplerParameterfv(sampler: GLuint, pname: GLenum, param: *const GLfloat);
9999}
10000extern "C" {
10001    pub fn glSamplerParameterIiv(sampler: GLuint, pname: GLenum, param: *const GLint);
10002}
10003extern "C" {
10004    pub fn glSamplerParameterIuiv(sampler: GLuint, pname: GLenum, param: *const GLuint);
10005}
10006extern "C" {
10007    pub fn glGetSamplerParameteriv(sampler: GLuint, pname: GLenum, params: *mut GLint);
10008}
10009extern "C" {
10010    pub fn glGetSamplerParameterIiv(sampler: GLuint, pname: GLenum, params: *mut GLint);
10011}
10012extern "C" {
10013    pub fn glGetSamplerParameterfv(sampler: GLuint, pname: GLenum, params: *mut GLfloat);
10014}
10015extern "C" {
10016    pub fn glGetSamplerParameterIuiv(sampler: GLuint, pname: GLenum, params: *mut GLuint);
10017}
10018extern "C" {
10019    pub fn glQueryCounter(id: GLuint, target: GLenum);
10020}
10021extern "C" {
10022    pub fn glGetQueryObjecti64v(id: GLuint, pname: GLenum, params: *mut GLint64);
10023}
10024extern "C" {
10025    pub fn glGetQueryObjectui64v(id: GLuint, pname: GLenum, params: *mut GLuint64);
10026}
10027extern "C" {
10028    pub fn glVertexAttribDivisor(index: GLuint, divisor: GLuint);
10029}
10030extern "C" {
10031    pub fn glVertexAttribP1ui(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint);
10032}
10033extern "C" {
10034    pub fn glVertexAttribP1uiv(
10035        index: GLuint,
10036        type_: GLenum,
10037        normalized: GLboolean,
10038        value: *const GLuint,
10039    );
10040}
10041extern "C" {
10042    pub fn glVertexAttribP2ui(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint);
10043}
10044extern "C" {
10045    pub fn glVertexAttribP2uiv(
10046        index: GLuint,
10047        type_: GLenum,
10048        normalized: GLboolean,
10049        value: *const GLuint,
10050    );
10051}
10052extern "C" {
10053    pub fn glVertexAttribP3ui(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint);
10054}
10055extern "C" {
10056    pub fn glVertexAttribP3uiv(
10057        index: GLuint,
10058        type_: GLenum,
10059        normalized: GLboolean,
10060        value: *const GLuint,
10061    );
10062}
10063extern "C" {
10064    pub fn glVertexAttribP4ui(index: GLuint, type_: GLenum, normalized: GLboolean, value: GLuint);
10065}
10066extern "C" {
10067    pub fn glVertexAttribP4uiv(
10068        index: GLuint,
10069        type_: GLenum,
10070        normalized: GLboolean,
10071        value: *const GLuint,
10072    );
10073}
10074extern "C" {
10075    pub fn glVertexP2ui(type_: GLenum, value: GLuint);
10076}
10077extern "C" {
10078    pub fn glVertexP2uiv(type_: GLenum, value: *const GLuint);
10079}
10080extern "C" {
10081    pub fn glVertexP3ui(type_: GLenum, value: GLuint);
10082}
10083extern "C" {
10084    pub fn glVertexP3uiv(type_: GLenum, value: *const GLuint);
10085}
10086extern "C" {
10087    pub fn glVertexP4ui(type_: GLenum, value: GLuint);
10088}
10089extern "C" {
10090    pub fn glVertexP4uiv(type_: GLenum, value: *const GLuint);
10091}
10092extern "C" {
10093    pub fn glTexCoordP1ui(type_: GLenum, coords: GLuint);
10094}
10095extern "C" {
10096    pub fn glTexCoordP1uiv(type_: GLenum, coords: *const GLuint);
10097}
10098extern "C" {
10099    pub fn glTexCoordP2ui(type_: GLenum, coords: GLuint);
10100}
10101extern "C" {
10102    pub fn glTexCoordP2uiv(type_: GLenum, coords: *const GLuint);
10103}
10104extern "C" {
10105    pub fn glTexCoordP3ui(type_: GLenum, coords: GLuint);
10106}
10107extern "C" {
10108    pub fn glTexCoordP3uiv(type_: GLenum, coords: *const GLuint);
10109}
10110extern "C" {
10111    pub fn glTexCoordP4ui(type_: GLenum, coords: GLuint);
10112}
10113extern "C" {
10114    pub fn glTexCoordP4uiv(type_: GLenum, coords: *const GLuint);
10115}
10116extern "C" {
10117    pub fn glMultiTexCoordP1ui(texture: GLenum, type_: GLenum, coords: GLuint);
10118}
10119extern "C" {
10120    pub fn glMultiTexCoordP1uiv(texture: GLenum, type_: GLenum, coords: *const GLuint);
10121}
10122extern "C" {
10123    pub fn glMultiTexCoordP2ui(texture: GLenum, type_: GLenum, coords: GLuint);
10124}
10125extern "C" {
10126    pub fn glMultiTexCoordP2uiv(texture: GLenum, type_: GLenum, coords: *const GLuint);
10127}
10128extern "C" {
10129    pub fn glMultiTexCoordP3ui(texture: GLenum, type_: GLenum, coords: GLuint);
10130}
10131extern "C" {
10132    pub fn glMultiTexCoordP3uiv(texture: GLenum, type_: GLenum, coords: *const GLuint);
10133}
10134extern "C" {
10135    pub fn glMultiTexCoordP4ui(texture: GLenum, type_: GLenum, coords: GLuint);
10136}
10137extern "C" {
10138    pub fn glMultiTexCoordP4uiv(texture: GLenum, type_: GLenum, coords: *const GLuint);
10139}
10140extern "C" {
10141    pub fn glNormalP3ui(type_: GLenum, coords: GLuint);
10142}
10143extern "C" {
10144    pub fn glNormalP3uiv(type_: GLenum, coords: *const GLuint);
10145}
10146extern "C" {
10147    pub fn glColorP3ui(type_: GLenum, color: GLuint);
10148}
10149extern "C" {
10150    pub fn glColorP3uiv(type_: GLenum, color: *const GLuint);
10151}
10152extern "C" {
10153    pub fn glColorP4ui(type_: GLenum, color: GLuint);
10154}
10155extern "C" {
10156    pub fn glColorP4uiv(type_: GLenum, color: *const GLuint);
10157}
10158extern "C" {
10159    pub fn glSecondaryColorP3ui(type_: GLenum, color: GLuint);
10160}
10161extern "C" {
10162    pub fn glSecondaryColorP3uiv(type_: GLenum, color: *const GLuint);
10163}
10164pub type PFNGLMINSAMPLESHADINGPROC = ::std::option::Option<unsafe extern "C" fn(value: GLfloat)>;
10165pub type PFNGLBLENDEQUATIONIPROC =
10166    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, mode: GLenum)>;
10167pub type PFNGLBLENDEQUATIONSEPARATEIPROC =
10168    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum)>;
10169pub type PFNGLBLENDFUNCIPROC =
10170    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, src: GLenum, dst: GLenum)>;
10171pub type PFNGLBLENDFUNCSEPARATEIPROC = ::std::option::Option<
10172    unsafe extern "C" fn(
10173        buf: GLuint,
10174        srcRGB: GLenum,
10175        dstRGB: GLenum,
10176        srcAlpha: GLenum,
10177        dstAlpha: GLenum,
10178    ),
10179>;
10180pub type PFNGLDRAWARRAYSINDIRECTPROC = ::std::option::Option<
10181    unsafe extern "C" fn(mode: GLenum, indirect: *const ::std::os::raw::c_void),
10182>;
10183pub type PFNGLDRAWELEMENTSINDIRECTPROC = ::std::option::Option<
10184    unsafe extern "C" fn(mode: GLenum, type_: GLenum, indirect: *const ::std::os::raw::c_void),
10185>;
10186pub type PFNGLUNIFORM1DPROC =
10187    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLdouble)>;
10188pub type PFNGLUNIFORM2DPROC =
10189    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLdouble, y: GLdouble)>;
10190pub type PFNGLUNIFORM3DPROC = ::std::option::Option<
10191    unsafe extern "C" fn(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble),
10192>;
10193pub type PFNGLUNIFORM4DPROC = ::std::option::Option<
10194    unsafe extern "C" fn(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble),
10195>;
10196pub type PFNGLUNIFORM1DVPROC = ::std::option::Option<
10197    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLdouble),
10198>;
10199pub type PFNGLUNIFORM2DVPROC = ::std::option::Option<
10200    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLdouble),
10201>;
10202pub type PFNGLUNIFORM3DVPROC = ::std::option::Option<
10203    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLdouble),
10204>;
10205pub type PFNGLUNIFORM4DVPROC = ::std::option::Option<
10206    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLdouble),
10207>;
10208pub type PFNGLUNIFORMMATRIX2DVPROC = ::std::option::Option<
10209    unsafe extern "C" fn(
10210        location: GLint,
10211        count: GLsizei,
10212        transpose: GLboolean,
10213        value: *const GLdouble,
10214    ),
10215>;
10216pub type PFNGLUNIFORMMATRIX3DVPROC = ::std::option::Option<
10217    unsafe extern "C" fn(
10218        location: GLint,
10219        count: GLsizei,
10220        transpose: GLboolean,
10221        value: *const GLdouble,
10222    ),
10223>;
10224pub type PFNGLUNIFORMMATRIX4DVPROC = ::std::option::Option<
10225    unsafe extern "C" fn(
10226        location: GLint,
10227        count: GLsizei,
10228        transpose: GLboolean,
10229        value: *const GLdouble,
10230    ),
10231>;
10232pub type PFNGLUNIFORMMATRIX2X3DVPROC = ::std::option::Option<
10233    unsafe extern "C" fn(
10234        location: GLint,
10235        count: GLsizei,
10236        transpose: GLboolean,
10237        value: *const GLdouble,
10238    ),
10239>;
10240pub type PFNGLUNIFORMMATRIX2X4DVPROC = ::std::option::Option<
10241    unsafe extern "C" fn(
10242        location: GLint,
10243        count: GLsizei,
10244        transpose: GLboolean,
10245        value: *const GLdouble,
10246    ),
10247>;
10248pub type PFNGLUNIFORMMATRIX3X2DVPROC = ::std::option::Option<
10249    unsafe extern "C" fn(
10250        location: GLint,
10251        count: GLsizei,
10252        transpose: GLboolean,
10253        value: *const GLdouble,
10254    ),
10255>;
10256pub type PFNGLUNIFORMMATRIX3X4DVPROC = ::std::option::Option<
10257    unsafe extern "C" fn(
10258        location: GLint,
10259        count: GLsizei,
10260        transpose: GLboolean,
10261        value: *const GLdouble,
10262    ),
10263>;
10264pub type PFNGLUNIFORMMATRIX4X2DVPROC = ::std::option::Option<
10265    unsafe extern "C" fn(
10266        location: GLint,
10267        count: GLsizei,
10268        transpose: GLboolean,
10269        value: *const GLdouble,
10270    ),
10271>;
10272pub type PFNGLUNIFORMMATRIX4X3DVPROC = ::std::option::Option<
10273    unsafe extern "C" fn(
10274        location: GLint,
10275        count: GLsizei,
10276        transpose: GLboolean,
10277        value: *const GLdouble,
10278    ),
10279>;
10280pub type PFNGLGETUNIFORMDVPROC = ::std::option::Option<
10281    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLdouble),
10282>;
10283pub type PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC = ::std::option::Option<
10284    unsafe extern "C" fn(program: GLuint, shadertype: GLenum, name: *const GLchar) -> GLint,
10285>;
10286pub type PFNGLGETSUBROUTINEINDEXPROC = ::std::option::Option<
10287    unsafe extern "C" fn(program: GLuint, shadertype: GLenum, name: *const GLchar) -> GLuint,
10288>;
10289pub type PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC = ::std::option::Option<
10290    unsafe extern "C" fn(
10291        program: GLuint,
10292        shadertype: GLenum,
10293        index: GLuint,
10294        pname: GLenum,
10295        values: *mut GLint,
10296    ),
10297>;
10298pub type PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC = ::std::option::Option<
10299    unsafe extern "C" fn(
10300        program: GLuint,
10301        shadertype: GLenum,
10302        index: GLuint,
10303        bufsize: GLsizei,
10304        length: *mut GLsizei,
10305        name: *mut GLchar,
10306    ),
10307>;
10308pub type PFNGLGETACTIVESUBROUTINENAMEPROC = ::std::option::Option<
10309    unsafe extern "C" fn(
10310        program: GLuint,
10311        shadertype: GLenum,
10312        index: GLuint,
10313        bufsize: GLsizei,
10314        length: *mut GLsizei,
10315        name: *mut GLchar,
10316    ),
10317>;
10318pub type PFNGLUNIFORMSUBROUTINESUIVPROC = ::std::option::Option<
10319    unsafe extern "C" fn(shadertype: GLenum, count: GLsizei, indices: *const GLuint),
10320>;
10321pub type PFNGLGETUNIFORMSUBROUTINEUIVPROC = ::std::option::Option<
10322    unsafe extern "C" fn(shadertype: GLenum, location: GLint, params: *mut GLuint),
10323>;
10324pub type PFNGLGETPROGRAMSTAGEIVPROC = ::std::option::Option<
10325    unsafe extern "C" fn(program: GLuint, shadertype: GLenum, pname: GLenum, values: *mut GLint),
10326>;
10327pub type PFNGLPATCHPARAMETERIPROC =
10328    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, value: GLint)>;
10329pub type PFNGLPATCHPARAMETERFVPROC =
10330    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, values: *const GLfloat)>;
10331pub type PFNGLBINDTRANSFORMFEEDBACKPROC =
10332    ::std::option::Option<unsafe extern "C" fn(target: GLenum, id: GLuint)>;
10333pub type PFNGLDELETETRANSFORMFEEDBACKSPROC =
10334    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *const GLuint)>;
10335pub type PFNGLGENTRANSFORMFEEDBACKSPROC =
10336    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *mut GLuint)>;
10337pub type PFNGLISTRANSFORMFEEDBACKPROC =
10338    ::std::option::Option<unsafe extern "C" fn(id: GLuint) -> GLboolean>;
10339pub type PFNGLPAUSETRANSFORMFEEDBACKPROC = ::std::option::Option<unsafe extern "C" fn()>;
10340pub type PFNGLRESUMETRANSFORMFEEDBACKPROC = ::std::option::Option<unsafe extern "C" fn()>;
10341pub type PFNGLDRAWTRANSFORMFEEDBACKPROC =
10342    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, id: GLuint)>;
10343pub type PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC =
10344    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, id: GLuint, stream: GLuint)>;
10345pub type PFNGLBEGINQUERYINDEXEDPROC =
10346    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, id: GLuint)>;
10347pub type PFNGLENDQUERYINDEXEDPROC =
10348    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint)>;
10349pub type PFNGLGETQUERYINDEXEDIVPROC = ::std::option::Option<
10350    unsafe extern "C" fn(target: GLenum, index: GLuint, pname: GLenum, params: *mut GLint),
10351>;
10352extern "C" {
10353    pub fn glMinSampleShading(value: GLfloat);
10354}
10355extern "C" {
10356    pub fn glBlendEquationi(buf: GLuint, mode: GLenum);
10357}
10358extern "C" {
10359    pub fn glBlendEquationSeparatei(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum);
10360}
10361extern "C" {
10362    pub fn glBlendFunci(buf: GLuint, src: GLenum, dst: GLenum);
10363}
10364extern "C" {
10365    pub fn glBlendFuncSeparatei(
10366        buf: GLuint,
10367        srcRGB: GLenum,
10368        dstRGB: GLenum,
10369        srcAlpha: GLenum,
10370        dstAlpha: GLenum,
10371    );
10372}
10373extern "C" {
10374    pub fn glDrawArraysIndirect(mode: GLenum, indirect: *const ::std::os::raw::c_void);
10375}
10376extern "C" {
10377    pub fn glDrawElementsIndirect(
10378        mode: GLenum,
10379        type_: GLenum,
10380        indirect: *const ::std::os::raw::c_void,
10381    );
10382}
10383extern "C" {
10384    pub fn glUniform1d(location: GLint, x: GLdouble);
10385}
10386extern "C" {
10387    pub fn glUniform2d(location: GLint, x: GLdouble, y: GLdouble);
10388}
10389extern "C" {
10390    pub fn glUniform3d(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble);
10391}
10392extern "C" {
10393    pub fn glUniform4d(location: GLint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
10394}
10395extern "C" {
10396    pub fn glUniform1dv(location: GLint, count: GLsizei, value: *const GLdouble);
10397}
10398extern "C" {
10399    pub fn glUniform2dv(location: GLint, count: GLsizei, value: *const GLdouble);
10400}
10401extern "C" {
10402    pub fn glUniform3dv(location: GLint, count: GLsizei, value: *const GLdouble);
10403}
10404extern "C" {
10405    pub fn glUniform4dv(location: GLint, count: GLsizei, value: *const GLdouble);
10406}
10407extern "C" {
10408    pub fn glUniformMatrix2dv(
10409        location: GLint,
10410        count: GLsizei,
10411        transpose: GLboolean,
10412        value: *const GLdouble,
10413    );
10414}
10415extern "C" {
10416    pub fn glUniformMatrix3dv(
10417        location: GLint,
10418        count: GLsizei,
10419        transpose: GLboolean,
10420        value: *const GLdouble,
10421    );
10422}
10423extern "C" {
10424    pub fn glUniformMatrix4dv(
10425        location: GLint,
10426        count: GLsizei,
10427        transpose: GLboolean,
10428        value: *const GLdouble,
10429    );
10430}
10431extern "C" {
10432    pub fn glUniformMatrix2x3dv(
10433        location: GLint,
10434        count: GLsizei,
10435        transpose: GLboolean,
10436        value: *const GLdouble,
10437    );
10438}
10439extern "C" {
10440    pub fn glUniformMatrix2x4dv(
10441        location: GLint,
10442        count: GLsizei,
10443        transpose: GLboolean,
10444        value: *const GLdouble,
10445    );
10446}
10447extern "C" {
10448    pub fn glUniformMatrix3x2dv(
10449        location: GLint,
10450        count: GLsizei,
10451        transpose: GLboolean,
10452        value: *const GLdouble,
10453    );
10454}
10455extern "C" {
10456    pub fn glUniformMatrix3x4dv(
10457        location: GLint,
10458        count: GLsizei,
10459        transpose: GLboolean,
10460        value: *const GLdouble,
10461    );
10462}
10463extern "C" {
10464    pub fn glUniformMatrix4x2dv(
10465        location: GLint,
10466        count: GLsizei,
10467        transpose: GLboolean,
10468        value: *const GLdouble,
10469    );
10470}
10471extern "C" {
10472    pub fn glUniformMatrix4x3dv(
10473        location: GLint,
10474        count: GLsizei,
10475        transpose: GLboolean,
10476        value: *const GLdouble,
10477    );
10478}
10479extern "C" {
10480    pub fn glGetUniformdv(program: GLuint, location: GLint, params: *mut GLdouble);
10481}
10482extern "C" {
10483    pub fn glGetSubroutineUniformLocation(
10484        program: GLuint,
10485        shadertype: GLenum,
10486        name: *const GLchar,
10487    ) -> GLint;
10488}
10489extern "C" {
10490    pub fn glGetSubroutineIndex(program: GLuint, shadertype: GLenum, name: *const GLchar)
10491        -> GLuint;
10492}
10493extern "C" {
10494    pub fn glGetActiveSubroutineUniformiv(
10495        program: GLuint,
10496        shadertype: GLenum,
10497        index: GLuint,
10498        pname: GLenum,
10499        values: *mut GLint,
10500    );
10501}
10502extern "C" {
10503    pub fn glGetActiveSubroutineUniformName(
10504        program: GLuint,
10505        shadertype: GLenum,
10506        index: GLuint,
10507        bufsize: GLsizei,
10508        length: *mut GLsizei,
10509        name: *mut GLchar,
10510    );
10511}
10512extern "C" {
10513    pub fn glGetActiveSubroutineName(
10514        program: GLuint,
10515        shadertype: GLenum,
10516        index: GLuint,
10517        bufsize: GLsizei,
10518        length: *mut GLsizei,
10519        name: *mut GLchar,
10520    );
10521}
10522extern "C" {
10523    pub fn glUniformSubroutinesuiv(shadertype: GLenum, count: GLsizei, indices: *const GLuint);
10524}
10525extern "C" {
10526    pub fn glGetUniformSubroutineuiv(shadertype: GLenum, location: GLint, params: *mut GLuint);
10527}
10528extern "C" {
10529    pub fn glGetProgramStageiv(
10530        program: GLuint,
10531        shadertype: GLenum,
10532        pname: GLenum,
10533        values: *mut GLint,
10534    );
10535}
10536extern "C" {
10537    pub fn glPatchParameteri(pname: GLenum, value: GLint);
10538}
10539extern "C" {
10540    pub fn glPatchParameterfv(pname: GLenum, values: *const GLfloat);
10541}
10542extern "C" {
10543    pub fn glBindTransformFeedback(target: GLenum, id: GLuint);
10544}
10545extern "C" {
10546    pub fn glDeleteTransformFeedbacks(n: GLsizei, ids: *const GLuint);
10547}
10548extern "C" {
10549    pub fn glGenTransformFeedbacks(n: GLsizei, ids: *mut GLuint);
10550}
10551extern "C" {
10552    pub fn glIsTransformFeedback(id: GLuint) -> GLboolean;
10553}
10554extern "C" {
10555    pub fn glPauseTransformFeedback();
10556}
10557extern "C" {
10558    pub fn glResumeTransformFeedback();
10559}
10560extern "C" {
10561    pub fn glDrawTransformFeedback(mode: GLenum, id: GLuint);
10562}
10563extern "C" {
10564    pub fn glDrawTransformFeedbackStream(mode: GLenum, id: GLuint, stream: GLuint);
10565}
10566extern "C" {
10567    pub fn glBeginQueryIndexed(target: GLenum, index: GLuint, id: GLuint);
10568}
10569extern "C" {
10570    pub fn glEndQueryIndexed(target: GLenum, index: GLuint);
10571}
10572extern "C" {
10573    pub fn glGetQueryIndexediv(target: GLenum, index: GLuint, pname: GLenum, params: *mut GLint);
10574}
10575pub type PFNGLRELEASESHADERCOMPILERPROC = ::std::option::Option<unsafe extern "C" fn()>;
10576pub type PFNGLSHADERBINARYPROC = ::std::option::Option<
10577    unsafe extern "C" fn(
10578        count: GLsizei,
10579        shaders: *const GLuint,
10580        binaryformat: GLenum,
10581        binary: *const ::std::os::raw::c_void,
10582        length: GLsizei,
10583    ),
10584>;
10585pub type PFNGLGETSHADERPRECISIONFORMATPROC = ::std::option::Option<
10586    unsafe extern "C" fn(
10587        shadertype: GLenum,
10588        precisiontype: GLenum,
10589        range: *mut GLint,
10590        precision: *mut GLint,
10591    ),
10592>;
10593pub type PFNGLDEPTHRANGEFPROC = ::std::option::Option<unsafe extern "C" fn(n: GLfloat, f: GLfloat)>;
10594pub type PFNGLCLEARDEPTHFPROC = ::std::option::Option<unsafe extern "C" fn(d: GLfloat)>;
10595pub type PFNGLGETPROGRAMBINARYPROC = ::std::option::Option<
10596    unsafe extern "C" fn(
10597        program: GLuint,
10598        bufSize: GLsizei,
10599        length: *mut GLsizei,
10600        binaryFormat: *mut GLenum,
10601        binary: *mut ::std::os::raw::c_void,
10602    ),
10603>;
10604pub type PFNGLPROGRAMBINARYPROC = ::std::option::Option<
10605    unsafe extern "C" fn(
10606        program: GLuint,
10607        binaryFormat: GLenum,
10608        binary: *const ::std::os::raw::c_void,
10609        length: GLsizei,
10610    ),
10611>;
10612pub type PFNGLPROGRAMPARAMETERIPROC =
10613    ::std::option::Option<unsafe extern "C" fn(program: GLuint, pname: GLenum, value: GLint)>;
10614pub type PFNGLUSEPROGRAMSTAGESPROC = ::std::option::Option<
10615    unsafe extern "C" fn(pipeline: GLuint, stages: GLbitfield, program: GLuint),
10616>;
10617pub type PFNGLACTIVESHADERPROGRAMPROC =
10618    ::std::option::Option<unsafe extern "C" fn(pipeline: GLuint, program: GLuint)>;
10619pub type PFNGLCREATESHADERPROGRAMVPROC = ::std::option::Option<
10620    unsafe extern "C" fn(type_: GLenum, count: GLsizei, strings: *const *const GLchar) -> GLuint,
10621>;
10622pub type PFNGLBINDPROGRAMPIPELINEPROC =
10623    ::std::option::Option<unsafe extern "C" fn(pipeline: GLuint)>;
10624pub type PFNGLDELETEPROGRAMPIPELINESPROC =
10625    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, pipelines: *const GLuint)>;
10626pub type PFNGLGENPROGRAMPIPELINESPROC =
10627    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, pipelines: *mut GLuint)>;
10628pub type PFNGLISPROGRAMPIPELINEPROC =
10629    ::std::option::Option<unsafe extern "C" fn(pipeline: GLuint) -> GLboolean>;
10630pub type PFNGLGETPROGRAMPIPELINEIVPROC = ::std::option::Option<
10631    unsafe extern "C" fn(pipeline: GLuint, pname: GLenum, params: *mut GLint),
10632>;
10633pub type PFNGLPROGRAMUNIFORM1IPROC =
10634    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLint)>;
10635pub type PFNGLPROGRAMUNIFORM1IVPROC = ::std::option::Option<
10636    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
10637>;
10638pub type PFNGLPROGRAMUNIFORM1FPROC =
10639    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLfloat)>;
10640pub type PFNGLPROGRAMUNIFORM1FVPROC = ::std::option::Option<
10641    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
10642>;
10643pub type PFNGLPROGRAMUNIFORM1DPROC =
10644    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLdouble)>;
10645pub type PFNGLPROGRAMUNIFORM1DVPROC = ::std::option::Option<
10646    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
10647>;
10648pub type PFNGLPROGRAMUNIFORM1UIPROC =
10649    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLuint)>;
10650pub type PFNGLPROGRAMUNIFORM1UIVPROC = ::std::option::Option<
10651    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
10652>;
10653pub type PFNGLPROGRAMUNIFORM2IPROC = ::std::option::Option<
10654    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLint, v1: GLint),
10655>;
10656pub type PFNGLPROGRAMUNIFORM2IVPROC = ::std::option::Option<
10657    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
10658>;
10659pub type PFNGLPROGRAMUNIFORM2FPROC = ::std::option::Option<
10660    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat),
10661>;
10662pub type PFNGLPROGRAMUNIFORM2FVPROC = ::std::option::Option<
10663    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
10664>;
10665pub type PFNGLPROGRAMUNIFORM2DPROC = ::std::option::Option<
10666    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble),
10667>;
10668pub type PFNGLPROGRAMUNIFORM2DVPROC = ::std::option::Option<
10669    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
10670>;
10671pub type PFNGLPROGRAMUNIFORM2UIPROC = ::std::option::Option<
10672    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLuint, v1: GLuint),
10673>;
10674pub type PFNGLPROGRAMUNIFORM2UIVPROC = ::std::option::Option<
10675    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
10676>;
10677pub type PFNGLPROGRAMUNIFORM3IPROC = ::std::option::Option<
10678    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint),
10679>;
10680pub type PFNGLPROGRAMUNIFORM3IVPROC = ::std::option::Option<
10681    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
10682>;
10683pub type PFNGLPROGRAMUNIFORM3FPROC = ::std::option::Option<
10684    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat),
10685>;
10686pub type PFNGLPROGRAMUNIFORM3FVPROC = ::std::option::Option<
10687    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
10688>;
10689pub type PFNGLPROGRAMUNIFORM3DPROC = ::std::option::Option<
10690    unsafe extern "C" fn(
10691        program: GLuint,
10692        location: GLint,
10693        v0: GLdouble,
10694        v1: GLdouble,
10695        v2: GLdouble,
10696    ),
10697>;
10698pub type PFNGLPROGRAMUNIFORM3DVPROC = ::std::option::Option<
10699    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
10700>;
10701pub type PFNGLPROGRAMUNIFORM3UIPROC = ::std::option::Option<
10702    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLuint, v1: GLuint, v2: GLuint),
10703>;
10704pub type PFNGLPROGRAMUNIFORM3UIVPROC = ::std::option::Option<
10705    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
10706>;
10707pub type PFNGLPROGRAMUNIFORM4IPROC = ::std::option::Option<
10708    unsafe extern "C" fn(
10709        program: GLuint,
10710        location: GLint,
10711        v0: GLint,
10712        v1: GLint,
10713        v2: GLint,
10714        v3: GLint,
10715    ),
10716>;
10717pub type PFNGLPROGRAMUNIFORM4IVPROC = ::std::option::Option<
10718    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
10719>;
10720pub type PFNGLPROGRAMUNIFORM4FPROC = ::std::option::Option<
10721    unsafe extern "C" fn(
10722        program: GLuint,
10723        location: GLint,
10724        v0: GLfloat,
10725        v1: GLfloat,
10726        v2: GLfloat,
10727        v3: GLfloat,
10728    ),
10729>;
10730pub type PFNGLPROGRAMUNIFORM4FVPROC = ::std::option::Option<
10731    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
10732>;
10733pub type PFNGLPROGRAMUNIFORM4DPROC = ::std::option::Option<
10734    unsafe extern "C" fn(
10735        program: GLuint,
10736        location: GLint,
10737        v0: GLdouble,
10738        v1: GLdouble,
10739        v2: GLdouble,
10740        v3: GLdouble,
10741    ),
10742>;
10743pub type PFNGLPROGRAMUNIFORM4DVPROC = ::std::option::Option<
10744    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
10745>;
10746pub type PFNGLPROGRAMUNIFORM4UIPROC = ::std::option::Option<
10747    unsafe extern "C" fn(
10748        program: GLuint,
10749        location: GLint,
10750        v0: GLuint,
10751        v1: GLuint,
10752        v2: GLuint,
10753        v3: GLuint,
10754    ),
10755>;
10756pub type PFNGLPROGRAMUNIFORM4UIVPROC = ::std::option::Option<
10757    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
10758>;
10759pub type PFNGLPROGRAMUNIFORMMATRIX2FVPROC = ::std::option::Option<
10760    unsafe extern "C" fn(
10761        program: GLuint,
10762        location: GLint,
10763        count: GLsizei,
10764        transpose: GLboolean,
10765        value: *const GLfloat,
10766    ),
10767>;
10768pub type PFNGLPROGRAMUNIFORMMATRIX3FVPROC = ::std::option::Option<
10769    unsafe extern "C" fn(
10770        program: GLuint,
10771        location: GLint,
10772        count: GLsizei,
10773        transpose: GLboolean,
10774        value: *const GLfloat,
10775    ),
10776>;
10777pub type PFNGLPROGRAMUNIFORMMATRIX4FVPROC = ::std::option::Option<
10778    unsafe extern "C" fn(
10779        program: GLuint,
10780        location: GLint,
10781        count: GLsizei,
10782        transpose: GLboolean,
10783        value: *const GLfloat,
10784    ),
10785>;
10786pub type PFNGLPROGRAMUNIFORMMATRIX2DVPROC = ::std::option::Option<
10787    unsafe extern "C" fn(
10788        program: GLuint,
10789        location: GLint,
10790        count: GLsizei,
10791        transpose: GLboolean,
10792        value: *const GLdouble,
10793    ),
10794>;
10795pub type PFNGLPROGRAMUNIFORMMATRIX3DVPROC = ::std::option::Option<
10796    unsafe extern "C" fn(
10797        program: GLuint,
10798        location: GLint,
10799        count: GLsizei,
10800        transpose: GLboolean,
10801        value: *const GLdouble,
10802    ),
10803>;
10804pub type PFNGLPROGRAMUNIFORMMATRIX4DVPROC = ::std::option::Option<
10805    unsafe extern "C" fn(
10806        program: GLuint,
10807        location: GLint,
10808        count: GLsizei,
10809        transpose: GLboolean,
10810        value: *const GLdouble,
10811    ),
10812>;
10813pub type PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC = ::std::option::Option<
10814    unsafe extern "C" fn(
10815        program: GLuint,
10816        location: GLint,
10817        count: GLsizei,
10818        transpose: GLboolean,
10819        value: *const GLfloat,
10820    ),
10821>;
10822pub type PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC = ::std::option::Option<
10823    unsafe extern "C" fn(
10824        program: GLuint,
10825        location: GLint,
10826        count: GLsizei,
10827        transpose: GLboolean,
10828        value: *const GLfloat,
10829    ),
10830>;
10831pub type PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC = ::std::option::Option<
10832    unsafe extern "C" fn(
10833        program: GLuint,
10834        location: GLint,
10835        count: GLsizei,
10836        transpose: GLboolean,
10837        value: *const GLfloat,
10838    ),
10839>;
10840pub type PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC = ::std::option::Option<
10841    unsafe extern "C" fn(
10842        program: GLuint,
10843        location: GLint,
10844        count: GLsizei,
10845        transpose: GLboolean,
10846        value: *const GLfloat,
10847    ),
10848>;
10849pub type PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC = ::std::option::Option<
10850    unsafe extern "C" fn(
10851        program: GLuint,
10852        location: GLint,
10853        count: GLsizei,
10854        transpose: GLboolean,
10855        value: *const GLfloat,
10856    ),
10857>;
10858pub type PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC = ::std::option::Option<
10859    unsafe extern "C" fn(
10860        program: GLuint,
10861        location: GLint,
10862        count: GLsizei,
10863        transpose: GLboolean,
10864        value: *const GLfloat,
10865    ),
10866>;
10867pub type PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC = ::std::option::Option<
10868    unsafe extern "C" fn(
10869        program: GLuint,
10870        location: GLint,
10871        count: GLsizei,
10872        transpose: GLboolean,
10873        value: *const GLdouble,
10874    ),
10875>;
10876pub type PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC = ::std::option::Option<
10877    unsafe extern "C" fn(
10878        program: GLuint,
10879        location: GLint,
10880        count: GLsizei,
10881        transpose: GLboolean,
10882        value: *const GLdouble,
10883    ),
10884>;
10885pub type PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC = ::std::option::Option<
10886    unsafe extern "C" fn(
10887        program: GLuint,
10888        location: GLint,
10889        count: GLsizei,
10890        transpose: GLboolean,
10891        value: *const GLdouble,
10892    ),
10893>;
10894pub type PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC = ::std::option::Option<
10895    unsafe extern "C" fn(
10896        program: GLuint,
10897        location: GLint,
10898        count: GLsizei,
10899        transpose: GLboolean,
10900        value: *const GLdouble,
10901    ),
10902>;
10903pub type PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC = ::std::option::Option<
10904    unsafe extern "C" fn(
10905        program: GLuint,
10906        location: GLint,
10907        count: GLsizei,
10908        transpose: GLboolean,
10909        value: *const GLdouble,
10910    ),
10911>;
10912pub type PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC = ::std::option::Option<
10913    unsafe extern "C" fn(
10914        program: GLuint,
10915        location: GLint,
10916        count: GLsizei,
10917        transpose: GLboolean,
10918        value: *const GLdouble,
10919    ),
10920>;
10921pub type PFNGLVALIDATEPROGRAMPIPELINEPROC =
10922    ::std::option::Option<unsafe extern "C" fn(pipeline: GLuint)>;
10923pub type PFNGLGETPROGRAMPIPELINEINFOLOGPROC = ::std::option::Option<
10924    unsafe extern "C" fn(
10925        pipeline: GLuint,
10926        bufSize: GLsizei,
10927        length: *mut GLsizei,
10928        infoLog: *mut GLchar,
10929    ),
10930>;
10931pub type PFNGLVERTEXATTRIBL1DPROC =
10932    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble)>;
10933pub type PFNGLVERTEXATTRIBL2DPROC =
10934    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble)>;
10935pub type PFNGLVERTEXATTRIBL3DPROC = ::std::option::Option<
10936    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble),
10937>;
10938pub type PFNGLVERTEXATTRIBL4DPROC = ::std::option::Option<
10939    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble),
10940>;
10941pub type PFNGLVERTEXATTRIBL1DVPROC =
10942    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
10943pub type PFNGLVERTEXATTRIBL2DVPROC =
10944    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
10945pub type PFNGLVERTEXATTRIBL3DVPROC =
10946    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
10947pub type PFNGLVERTEXATTRIBL4DVPROC =
10948    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
10949pub type PFNGLVERTEXATTRIBLPOINTERPROC = ::std::option::Option<
10950    unsafe extern "C" fn(
10951        index: GLuint,
10952        size: GLint,
10953        type_: GLenum,
10954        stride: GLsizei,
10955        pointer: *const ::std::os::raw::c_void,
10956    ),
10957>;
10958pub type PFNGLGETVERTEXATTRIBLDVPROC = ::std::option::Option<
10959    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLdouble),
10960>;
10961pub type PFNGLVIEWPORTARRAYVPROC =
10962    ::std::option::Option<unsafe extern "C" fn(first: GLuint, count: GLsizei, v: *const GLfloat)>;
10963pub type PFNGLVIEWPORTINDEXEDFPROC = ::std::option::Option<
10964    unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat, w: GLfloat, h: GLfloat),
10965>;
10966pub type PFNGLVIEWPORTINDEXEDFVPROC =
10967    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
10968pub type PFNGLSCISSORARRAYVPROC =
10969    ::std::option::Option<unsafe extern "C" fn(first: GLuint, count: GLsizei, v: *const GLint)>;
10970pub type PFNGLSCISSORINDEXEDPROC = ::std::option::Option<
10971    unsafe extern "C" fn(
10972        index: GLuint,
10973        left: GLint,
10974        bottom: GLint,
10975        width: GLsizei,
10976        height: GLsizei,
10977    ),
10978>;
10979pub type PFNGLSCISSORINDEXEDVPROC =
10980    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
10981pub type PFNGLDEPTHRANGEARRAYVPROC =
10982    ::std::option::Option<unsafe extern "C" fn(first: GLuint, count: GLsizei, v: *const GLdouble)>;
10983pub type PFNGLDEPTHRANGEINDEXEDPROC =
10984    ::std::option::Option<unsafe extern "C" fn(index: GLuint, n: GLdouble, f: GLdouble)>;
10985pub type PFNGLGETFLOATI_VPROC =
10986    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLfloat)>;
10987pub type PFNGLGETDOUBLEI_VPROC =
10988    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLdouble)>;
10989extern "C" {
10990    pub fn glReleaseShaderCompiler();
10991}
10992extern "C" {
10993    pub fn glShaderBinary(
10994        count: GLsizei,
10995        shaders: *const GLuint,
10996        binaryformat: GLenum,
10997        binary: *const ::std::os::raw::c_void,
10998        length: GLsizei,
10999    );
11000}
11001extern "C" {
11002    pub fn glGetShaderPrecisionFormat(
11003        shadertype: GLenum,
11004        precisiontype: GLenum,
11005        range: *mut GLint,
11006        precision: *mut GLint,
11007    );
11008}
11009extern "C" {
11010    pub fn glDepthRangef(n: GLfloat, f: GLfloat);
11011}
11012extern "C" {
11013    pub fn glClearDepthf(d: GLfloat);
11014}
11015extern "C" {
11016    pub fn glGetProgramBinary(
11017        program: GLuint,
11018        bufSize: GLsizei,
11019        length: *mut GLsizei,
11020        binaryFormat: *mut GLenum,
11021        binary: *mut ::std::os::raw::c_void,
11022    );
11023}
11024extern "C" {
11025    pub fn glProgramBinary(
11026        program: GLuint,
11027        binaryFormat: GLenum,
11028        binary: *const ::std::os::raw::c_void,
11029        length: GLsizei,
11030    );
11031}
11032extern "C" {
11033    pub fn glProgramParameteri(program: GLuint, pname: GLenum, value: GLint);
11034}
11035extern "C" {
11036    pub fn glUseProgramStages(pipeline: GLuint, stages: GLbitfield, program: GLuint);
11037}
11038extern "C" {
11039    pub fn glActiveShaderProgram(pipeline: GLuint, program: GLuint);
11040}
11041extern "C" {
11042    pub fn glCreateShaderProgramv(
11043        type_: GLenum,
11044        count: GLsizei,
11045        strings: *const *const GLchar,
11046    ) -> GLuint;
11047}
11048extern "C" {
11049    pub fn glBindProgramPipeline(pipeline: GLuint);
11050}
11051extern "C" {
11052    pub fn glDeleteProgramPipelines(n: GLsizei, pipelines: *const GLuint);
11053}
11054extern "C" {
11055    pub fn glGenProgramPipelines(n: GLsizei, pipelines: *mut GLuint);
11056}
11057extern "C" {
11058    pub fn glIsProgramPipeline(pipeline: GLuint) -> GLboolean;
11059}
11060extern "C" {
11061    pub fn glGetProgramPipelineiv(pipeline: GLuint, pname: GLenum, params: *mut GLint);
11062}
11063extern "C" {
11064    pub fn glProgramUniform1i(program: GLuint, location: GLint, v0: GLint);
11065}
11066extern "C" {
11067    pub fn glProgramUniform1iv(
11068        program: GLuint,
11069        location: GLint,
11070        count: GLsizei,
11071        value: *const GLint,
11072    );
11073}
11074extern "C" {
11075    pub fn glProgramUniform1f(program: GLuint, location: GLint, v0: GLfloat);
11076}
11077extern "C" {
11078    pub fn glProgramUniform1fv(
11079        program: GLuint,
11080        location: GLint,
11081        count: GLsizei,
11082        value: *const GLfloat,
11083    );
11084}
11085extern "C" {
11086    pub fn glProgramUniform1d(program: GLuint, location: GLint, v0: GLdouble);
11087}
11088extern "C" {
11089    pub fn glProgramUniform1dv(
11090        program: GLuint,
11091        location: GLint,
11092        count: GLsizei,
11093        value: *const GLdouble,
11094    );
11095}
11096extern "C" {
11097    pub fn glProgramUniform1ui(program: GLuint, location: GLint, v0: GLuint);
11098}
11099extern "C" {
11100    pub fn glProgramUniform1uiv(
11101        program: GLuint,
11102        location: GLint,
11103        count: GLsizei,
11104        value: *const GLuint,
11105    );
11106}
11107extern "C" {
11108    pub fn glProgramUniform2i(program: GLuint, location: GLint, v0: GLint, v1: GLint);
11109}
11110extern "C" {
11111    pub fn glProgramUniform2iv(
11112        program: GLuint,
11113        location: GLint,
11114        count: GLsizei,
11115        value: *const GLint,
11116    );
11117}
11118extern "C" {
11119    pub fn glProgramUniform2f(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat);
11120}
11121extern "C" {
11122    pub fn glProgramUniform2fv(
11123        program: GLuint,
11124        location: GLint,
11125        count: GLsizei,
11126        value: *const GLfloat,
11127    );
11128}
11129extern "C" {
11130    pub fn glProgramUniform2d(program: GLuint, location: GLint, v0: GLdouble, v1: GLdouble);
11131}
11132extern "C" {
11133    pub fn glProgramUniform2dv(
11134        program: GLuint,
11135        location: GLint,
11136        count: GLsizei,
11137        value: *const GLdouble,
11138    );
11139}
11140extern "C" {
11141    pub fn glProgramUniform2ui(program: GLuint, location: GLint, v0: GLuint, v1: GLuint);
11142}
11143extern "C" {
11144    pub fn glProgramUniform2uiv(
11145        program: GLuint,
11146        location: GLint,
11147        count: GLsizei,
11148        value: *const GLuint,
11149    );
11150}
11151extern "C" {
11152    pub fn glProgramUniform3i(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint);
11153}
11154extern "C" {
11155    pub fn glProgramUniform3iv(
11156        program: GLuint,
11157        location: GLint,
11158        count: GLsizei,
11159        value: *const GLint,
11160    );
11161}
11162extern "C" {
11163    pub fn glProgramUniform3f(
11164        program: GLuint,
11165        location: GLint,
11166        v0: GLfloat,
11167        v1: GLfloat,
11168        v2: GLfloat,
11169    );
11170}
11171extern "C" {
11172    pub fn glProgramUniform3fv(
11173        program: GLuint,
11174        location: GLint,
11175        count: GLsizei,
11176        value: *const GLfloat,
11177    );
11178}
11179extern "C" {
11180    pub fn glProgramUniform3d(
11181        program: GLuint,
11182        location: GLint,
11183        v0: GLdouble,
11184        v1: GLdouble,
11185        v2: GLdouble,
11186    );
11187}
11188extern "C" {
11189    pub fn glProgramUniform3dv(
11190        program: GLuint,
11191        location: GLint,
11192        count: GLsizei,
11193        value: *const GLdouble,
11194    );
11195}
11196extern "C" {
11197    pub fn glProgramUniform3ui(
11198        program: GLuint,
11199        location: GLint,
11200        v0: GLuint,
11201        v1: GLuint,
11202        v2: GLuint,
11203    );
11204}
11205extern "C" {
11206    pub fn glProgramUniform3uiv(
11207        program: GLuint,
11208        location: GLint,
11209        count: GLsizei,
11210        value: *const GLuint,
11211    );
11212}
11213extern "C" {
11214    pub fn glProgramUniform4i(
11215        program: GLuint,
11216        location: GLint,
11217        v0: GLint,
11218        v1: GLint,
11219        v2: GLint,
11220        v3: GLint,
11221    );
11222}
11223extern "C" {
11224    pub fn glProgramUniform4iv(
11225        program: GLuint,
11226        location: GLint,
11227        count: GLsizei,
11228        value: *const GLint,
11229    );
11230}
11231extern "C" {
11232    pub fn glProgramUniform4f(
11233        program: GLuint,
11234        location: GLint,
11235        v0: GLfloat,
11236        v1: GLfloat,
11237        v2: GLfloat,
11238        v3: GLfloat,
11239    );
11240}
11241extern "C" {
11242    pub fn glProgramUniform4fv(
11243        program: GLuint,
11244        location: GLint,
11245        count: GLsizei,
11246        value: *const GLfloat,
11247    );
11248}
11249extern "C" {
11250    pub fn glProgramUniform4d(
11251        program: GLuint,
11252        location: GLint,
11253        v0: GLdouble,
11254        v1: GLdouble,
11255        v2: GLdouble,
11256        v3: GLdouble,
11257    );
11258}
11259extern "C" {
11260    pub fn glProgramUniform4dv(
11261        program: GLuint,
11262        location: GLint,
11263        count: GLsizei,
11264        value: *const GLdouble,
11265    );
11266}
11267extern "C" {
11268    pub fn glProgramUniform4ui(
11269        program: GLuint,
11270        location: GLint,
11271        v0: GLuint,
11272        v1: GLuint,
11273        v2: GLuint,
11274        v3: GLuint,
11275    );
11276}
11277extern "C" {
11278    pub fn glProgramUniform4uiv(
11279        program: GLuint,
11280        location: GLint,
11281        count: GLsizei,
11282        value: *const GLuint,
11283    );
11284}
11285extern "C" {
11286    pub fn glProgramUniformMatrix2fv(
11287        program: GLuint,
11288        location: GLint,
11289        count: GLsizei,
11290        transpose: GLboolean,
11291        value: *const GLfloat,
11292    );
11293}
11294extern "C" {
11295    pub fn glProgramUniformMatrix3fv(
11296        program: GLuint,
11297        location: GLint,
11298        count: GLsizei,
11299        transpose: GLboolean,
11300        value: *const GLfloat,
11301    );
11302}
11303extern "C" {
11304    pub fn glProgramUniformMatrix4fv(
11305        program: GLuint,
11306        location: GLint,
11307        count: GLsizei,
11308        transpose: GLboolean,
11309        value: *const GLfloat,
11310    );
11311}
11312extern "C" {
11313    pub fn glProgramUniformMatrix2dv(
11314        program: GLuint,
11315        location: GLint,
11316        count: GLsizei,
11317        transpose: GLboolean,
11318        value: *const GLdouble,
11319    );
11320}
11321extern "C" {
11322    pub fn glProgramUniformMatrix3dv(
11323        program: GLuint,
11324        location: GLint,
11325        count: GLsizei,
11326        transpose: GLboolean,
11327        value: *const GLdouble,
11328    );
11329}
11330extern "C" {
11331    pub fn glProgramUniformMatrix4dv(
11332        program: GLuint,
11333        location: GLint,
11334        count: GLsizei,
11335        transpose: GLboolean,
11336        value: *const GLdouble,
11337    );
11338}
11339extern "C" {
11340    pub fn glProgramUniformMatrix2x3fv(
11341        program: GLuint,
11342        location: GLint,
11343        count: GLsizei,
11344        transpose: GLboolean,
11345        value: *const GLfloat,
11346    );
11347}
11348extern "C" {
11349    pub fn glProgramUniformMatrix3x2fv(
11350        program: GLuint,
11351        location: GLint,
11352        count: GLsizei,
11353        transpose: GLboolean,
11354        value: *const GLfloat,
11355    );
11356}
11357extern "C" {
11358    pub fn glProgramUniformMatrix2x4fv(
11359        program: GLuint,
11360        location: GLint,
11361        count: GLsizei,
11362        transpose: GLboolean,
11363        value: *const GLfloat,
11364    );
11365}
11366extern "C" {
11367    pub fn glProgramUniformMatrix4x2fv(
11368        program: GLuint,
11369        location: GLint,
11370        count: GLsizei,
11371        transpose: GLboolean,
11372        value: *const GLfloat,
11373    );
11374}
11375extern "C" {
11376    pub fn glProgramUniformMatrix3x4fv(
11377        program: GLuint,
11378        location: GLint,
11379        count: GLsizei,
11380        transpose: GLboolean,
11381        value: *const GLfloat,
11382    );
11383}
11384extern "C" {
11385    pub fn glProgramUniformMatrix4x3fv(
11386        program: GLuint,
11387        location: GLint,
11388        count: GLsizei,
11389        transpose: GLboolean,
11390        value: *const GLfloat,
11391    );
11392}
11393extern "C" {
11394    pub fn glProgramUniformMatrix2x3dv(
11395        program: GLuint,
11396        location: GLint,
11397        count: GLsizei,
11398        transpose: GLboolean,
11399        value: *const GLdouble,
11400    );
11401}
11402extern "C" {
11403    pub fn glProgramUniformMatrix3x2dv(
11404        program: GLuint,
11405        location: GLint,
11406        count: GLsizei,
11407        transpose: GLboolean,
11408        value: *const GLdouble,
11409    );
11410}
11411extern "C" {
11412    pub fn glProgramUniformMatrix2x4dv(
11413        program: GLuint,
11414        location: GLint,
11415        count: GLsizei,
11416        transpose: GLboolean,
11417        value: *const GLdouble,
11418    );
11419}
11420extern "C" {
11421    pub fn glProgramUniformMatrix4x2dv(
11422        program: GLuint,
11423        location: GLint,
11424        count: GLsizei,
11425        transpose: GLboolean,
11426        value: *const GLdouble,
11427    );
11428}
11429extern "C" {
11430    pub fn glProgramUniformMatrix3x4dv(
11431        program: GLuint,
11432        location: GLint,
11433        count: GLsizei,
11434        transpose: GLboolean,
11435        value: *const GLdouble,
11436    );
11437}
11438extern "C" {
11439    pub fn glProgramUniformMatrix4x3dv(
11440        program: GLuint,
11441        location: GLint,
11442        count: GLsizei,
11443        transpose: GLboolean,
11444        value: *const GLdouble,
11445    );
11446}
11447extern "C" {
11448    pub fn glValidateProgramPipeline(pipeline: GLuint);
11449}
11450extern "C" {
11451    pub fn glGetProgramPipelineInfoLog(
11452        pipeline: GLuint,
11453        bufSize: GLsizei,
11454        length: *mut GLsizei,
11455        infoLog: *mut GLchar,
11456    );
11457}
11458extern "C" {
11459    pub fn glVertexAttribL1d(index: GLuint, x: GLdouble);
11460}
11461extern "C" {
11462    pub fn glVertexAttribL2d(index: GLuint, x: GLdouble, y: GLdouble);
11463}
11464extern "C" {
11465    pub fn glVertexAttribL3d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble);
11466}
11467extern "C" {
11468    pub fn glVertexAttribL4d(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
11469}
11470extern "C" {
11471    pub fn glVertexAttribL1dv(index: GLuint, v: *const GLdouble);
11472}
11473extern "C" {
11474    pub fn glVertexAttribL2dv(index: GLuint, v: *const GLdouble);
11475}
11476extern "C" {
11477    pub fn glVertexAttribL3dv(index: GLuint, v: *const GLdouble);
11478}
11479extern "C" {
11480    pub fn glVertexAttribL4dv(index: GLuint, v: *const GLdouble);
11481}
11482extern "C" {
11483    pub fn glVertexAttribLPointer(
11484        index: GLuint,
11485        size: GLint,
11486        type_: GLenum,
11487        stride: GLsizei,
11488        pointer: *const ::std::os::raw::c_void,
11489    );
11490}
11491extern "C" {
11492    pub fn glGetVertexAttribLdv(index: GLuint, pname: GLenum, params: *mut GLdouble);
11493}
11494extern "C" {
11495    pub fn glViewportArrayv(first: GLuint, count: GLsizei, v: *const GLfloat);
11496}
11497extern "C" {
11498    pub fn glViewportIndexedf(index: GLuint, x: GLfloat, y: GLfloat, w: GLfloat, h: GLfloat);
11499}
11500extern "C" {
11501    pub fn glViewportIndexedfv(index: GLuint, v: *const GLfloat);
11502}
11503extern "C" {
11504    pub fn glScissorArrayv(first: GLuint, count: GLsizei, v: *const GLint);
11505}
11506extern "C" {
11507    pub fn glScissorIndexed(
11508        index: GLuint,
11509        left: GLint,
11510        bottom: GLint,
11511        width: GLsizei,
11512        height: GLsizei,
11513    );
11514}
11515extern "C" {
11516    pub fn glScissorIndexedv(index: GLuint, v: *const GLint);
11517}
11518extern "C" {
11519    pub fn glDepthRangeArrayv(first: GLuint, count: GLsizei, v: *const GLdouble);
11520}
11521extern "C" {
11522    pub fn glDepthRangeIndexed(index: GLuint, n: GLdouble, f: GLdouble);
11523}
11524extern "C" {
11525    pub fn glGetFloati_v(target: GLenum, index: GLuint, data: *mut GLfloat);
11526}
11527extern "C" {
11528    pub fn glGetDoublei_v(target: GLenum, index: GLuint, data: *mut GLdouble);
11529}
11530pub type PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC = ::std::option::Option<
11531    unsafe extern "C" fn(
11532        mode: GLenum,
11533        first: GLint,
11534        count: GLsizei,
11535        instancecount: GLsizei,
11536        baseinstance: GLuint,
11537    ),
11538>;
11539pub type PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC = ::std::option::Option<
11540    unsafe extern "C" fn(
11541        mode: GLenum,
11542        count: GLsizei,
11543        type_: GLenum,
11544        indices: *const ::std::os::raw::c_void,
11545        instancecount: GLsizei,
11546        baseinstance: GLuint,
11547    ),
11548>;
11549pub type PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC = ::std::option::Option<
11550    unsafe extern "C" fn(
11551        mode: GLenum,
11552        count: GLsizei,
11553        type_: GLenum,
11554        indices: *const ::std::os::raw::c_void,
11555        instancecount: GLsizei,
11556        basevertex: GLint,
11557        baseinstance: GLuint,
11558    ),
11559>;
11560pub type PFNGLGETINTERNALFORMATIVPROC = ::std::option::Option<
11561    unsafe extern "C" fn(
11562        target: GLenum,
11563        internalformat: GLenum,
11564        pname: GLenum,
11565        bufSize: GLsizei,
11566        params: *mut GLint,
11567    ),
11568>;
11569pub type PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC = ::std::option::Option<
11570    unsafe extern "C" fn(program: GLuint, bufferIndex: GLuint, pname: GLenum, params: *mut GLint),
11571>;
11572pub type PFNGLBINDIMAGETEXTUREPROC = ::std::option::Option<
11573    unsafe extern "C" fn(
11574        unit: GLuint,
11575        texture: GLuint,
11576        level: GLint,
11577        layered: GLboolean,
11578        layer: GLint,
11579        access: GLenum,
11580        format: GLenum,
11581    ),
11582>;
11583pub type PFNGLMEMORYBARRIERPROC = ::std::option::Option<unsafe extern "C" fn(barriers: GLbitfield)>;
11584pub type PFNGLTEXSTORAGE1DPROC = ::std::option::Option<
11585    unsafe extern "C" fn(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei),
11586>;
11587pub type PFNGLTEXSTORAGE2DPROC = ::std::option::Option<
11588    unsafe extern "C" fn(
11589        target: GLenum,
11590        levels: GLsizei,
11591        internalformat: GLenum,
11592        width: GLsizei,
11593        height: GLsizei,
11594    ),
11595>;
11596pub type PFNGLTEXSTORAGE3DPROC = ::std::option::Option<
11597    unsafe extern "C" fn(
11598        target: GLenum,
11599        levels: GLsizei,
11600        internalformat: GLenum,
11601        width: GLsizei,
11602        height: GLsizei,
11603        depth: GLsizei,
11604    ),
11605>;
11606pub type PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC =
11607    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, id: GLuint, instancecount: GLsizei)>;
11608pub type PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC = ::std::option::Option<
11609    unsafe extern "C" fn(mode: GLenum, id: GLuint, stream: GLuint, instancecount: GLsizei),
11610>;
11611extern "C" {
11612    pub fn glDrawArraysInstancedBaseInstance(
11613        mode: GLenum,
11614        first: GLint,
11615        count: GLsizei,
11616        instancecount: GLsizei,
11617        baseinstance: GLuint,
11618    );
11619}
11620extern "C" {
11621    pub fn glDrawElementsInstancedBaseInstance(
11622        mode: GLenum,
11623        count: GLsizei,
11624        type_: GLenum,
11625        indices: *const ::std::os::raw::c_void,
11626        instancecount: GLsizei,
11627        baseinstance: GLuint,
11628    );
11629}
11630extern "C" {
11631    pub fn glDrawElementsInstancedBaseVertexBaseInstance(
11632        mode: GLenum,
11633        count: GLsizei,
11634        type_: GLenum,
11635        indices: *const ::std::os::raw::c_void,
11636        instancecount: GLsizei,
11637        basevertex: GLint,
11638        baseinstance: GLuint,
11639    );
11640}
11641extern "C" {
11642    pub fn glGetInternalformativ(
11643        target: GLenum,
11644        internalformat: GLenum,
11645        pname: GLenum,
11646        bufSize: GLsizei,
11647        params: *mut GLint,
11648    );
11649}
11650extern "C" {
11651    pub fn glGetActiveAtomicCounterBufferiv(
11652        program: GLuint,
11653        bufferIndex: GLuint,
11654        pname: GLenum,
11655        params: *mut GLint,
11656    );
11657}
11658extern "C" {
11659    pub fn glBindImageTexture(
11660        unit: GLuint,
11661        texture: GLuint,
11662        level: GLint,
11663        layered: GLboolean,
11664        layer: GLint,
11665        access: GLenum,
11666        format: GLenum,
11667    );
11668}
11669extern "C" {
11670    pub fn glMemoryBarrier(barriers: GLbitfield);
11671}
11672extern "C" {
11673    pub fn glTexStorage1D(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei);
11674}
11675extern "C" {
11676    pub fn glTexStorage2D(
11677        target: GLenum,
11678        levels: GLsizei,
11679        internalformat: GLenum,
11680        width: GLsizei,
11681        height: GLsizei,
11682    );
11683}
11684extern "C" {
11685    pub fn glTexStorage3D(
11686        target: GLenum,
11687        levels: GLsizei,
11688        internalformat: GLenum,
11689        width: GLsizei,
11690        height: GLsizei,
11691        depth: GLsizei,
11692    );
11693}
11694extern "C" {
11695    pub fn glDrawTransformFeedbackInstanced(mode: GLenum, id: GLuint, instancecount: GLsizei);
11696}
11697extern "C" {
11698    pub fn glDrawTransformFeedbackStreamInstanced(
11699        mode: GLenum,
11700        id: GLuint,
11701        stream: GLuint,
11702        instancecount: GLsizei,
11703    );
11704}
11705pub type GLDEBUGPROC = ::std::option::Option<
11706    unsafe extern "C" fn(
11707        source: GLenum,
11708        type_: GLenum,
11709        id: GLuint,
11710        severity: GLenum,
11711        length: GLsizei,
11712        message: *const GLchar,
11713        userParam: *const ::std::os::raw::c_void,
11714    ),
11715>;
11716pub type PFNGLCLEARBUFFERDATAPROC = ::std::option::Option<
11717    unsafe extern "C" fn(
11718        target: GLenum,
11719        internalformat: GLenum,
11720        format: GLenum,
11721        type_: GLenum,
11722        data: *const ::std::os::raw::c_void,
11723    ),
11724>;
11725pub type PFNGLCLEARBUFFERSUBDATAPROC = ::std::option::Option<
11726    unsafe extern "C" fn(
11727        target: GLenum,
11728        internalformat: GLenum,
11729        offset: GLintptr,
11730        size: GLsizeiptr,
11731        format: GLenum,
11732        type_: GLenum,
11733        data: *const ::std::os::raw::c_void,
11734    ),
11735>;
11736pub type PFNGLDISPATCHCOMPUTEPROC = ::std::option::Option<
11737    unsafe extern "C" fn(num_groups_x: GLuint, num_groups_y: GLuint, num_groups_z: GLuint),
11738>;
11739pub type PFNGLDISPATCHCOMPUTEINDIRECTPROC =
11740    ::std::option::Option<unsafe extern "C" fn(indirect: GLintptr)>;
11741pub type PFNGLCOPYIMAGESUBDATAPROC = ::std::option::Option<
11742    unsafe extern "C" fn(
11743        srcName: GLuint,
11744        srcTarget: GLenum,
11745        srcLevel: GLint,
11746        srcX: GLint,
11747        srcY: GLint,
11748        srcZ: GLint,
11749        dstName: GLuint,
11750        dstTarget: GLenum,
11751        dstLevel: GLint,
11752        dstX: GLint,
11753        dstY: GLint,
11754        dstZ: GLint,
11755        srcWidth: GLsizei,
11756        srcHeight: GLsizei,
11757        srcDepth: GLsizei,
11758    ),
11759>;
11760pub type PFNGLFRAMEBUFFERPARAMETERIPROC =
11761    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLint)>;
11762pub type PFNGLGETFRAMEBUFFERPARAMETERIVPROC =
11763    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
11764pub type PFNGLGETINTERNALFORMATI64VPROC = ::std::option::Option<
11765    unsafe extern "C" fn(
11766        target: GLenum,
11767        internalformat: GLenum,
11768        pname: GLenum,
11769        bufSize: GLsizei,
11770        params: *mut GLint64,
11771    ),
11772>;
11773pub type PFNGLINVALIDATETEXSUBIMAGEPROC = ::std::option::Option<
11774    unsafe extern "C" fn(
11775        texture: GLuint,
11776        level: GLint,
11777        xoffset: GLint,
11778        yoffset: GLint,
11779        zoffset: GLint,
11780        width: GLsizei,
11781        height: GLsizei,
11782        depth: GLsizei,
11783    ),
11784>;
11785pub type PFNGLINVALIDATETEXIMAGEPROC =
11786    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, level: GLint)>;
11787pub type PFNGLINVALIDATEBUFFERSUBDATAPROC = ::std::option::Option<
11788    unsafe extern "C" fn(buffer: GLuint, offset: GLintptr, length: GLsizeiptr),
11789>;
11790pub type PFNGLINVALIDATEBUFFERDATAPROC =
11791    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint)>;
11792pub type PFNGLINVALIDATEFRAMEBUFFERPROC = ::std::option::Option<
11793    unsafe extern "C" fn(target: GLenum, numAttachments: GLsizei, attachments: *const GLenum),
11794>;
11795pub type PFNGLINVALIDATESUBFRAMEBUFFERPROC = ::std::option::Option<
11796    unsafe extern "C" fn(
11797        target: GLenum,
11798        numAttachments: GLsizei,
11799        attachments: *const GLenum,
11800        x: GLint,
11801        y: GLint,
11802        width: GLsizei,
11803        height: GLsizei,
11804    ),
11805>;
11806pub type PFNGLMULTIDRAWARRAYSINDIRECTPROC = ::std::option::Option<
11807    unsafe extern "C" fn(
11808        mode: GLenum,
11809        indirect: *const ::std::os::raw::c_void,
11810        drawcount: GLsizei,
11811        stride: GLsizei,
11812    ),
11813>;
11814pub type PFNGLMULTIDRAWELEMENTSINDIRECTPROC = ::std::option::Option<
11815    unsafe extern "C" fn(
11816        mode: GLenum,
11817        type_: GLenum,
11818        indirect: *const ::std::os::raw::c_void,
11819        drawcount: GLsizei,
11820        stride: GLsizei,
11821    ),
11822>;
11823pub type PFNGLGETPROGRAMINTERFACEIVPROC = ::std::option::Option<
11824    unsafe extern "C" fn(
11825        program: GLuint,
11826        programInterface: GLenum,
11827        pname: GLenum,
11828        params: *mut GLint,
11829    ),
11830>;
11831pub type PFNGLGETPROGRAMRESOURCEINDEXPROC = ::std::option::Option<
11832    unsafe extern "C" fn(program: GLuint, programInterface: GLenum, name: *const GLchar) -> GLuint,
11833>;
11834pub type PFNGLGETPROGRAMRESOURCENAMEPROC = ::std::option::Option<
11835    unsafe extern "C" fn(
11836        program: GLuint,
11837        programInterface: GLenum,
11838        index: GLuint,
11839        bufSize: GLsizei,
11840        length: *mut GLsizei,
11841        name: *mut GLchar,
11842    ),
11843>;
11844pub type PFNGLGETPROGRAMRESOURCEIVPROC = ::std::option::Option<
11845    unsafe extern "C" fn(
11846        program: GLuint,
11847        programInterface: GLenum,
11848        index: GLuint,
11849        propCount: GLsizei,
11850        props: *const GLenum,
11851        bufSize: GLsizei,
11852        length: *mut GLsizei,
11853        params: *mut GLint,
11854    ),
11855>;
11856pub type PFNGLGETPROGRAMRESOURCELOCATIONPROC = ::std::option::Option<
11857    unsafe extern "C" fn(program: GLuint, programInterface: GLenum, name: *const GLchar) -> GLint,
11858>;
11859pub type PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC = ::std::option::Option<
11860    unsafe extern "C" fn(program: GLuint, programInterface: GLenum, name: *const GLchar) -> GLint,
11861>;
11862pub type PFNGLSHADERSTORAGEBLOCKBINDINGPROC = ::std::option::Option<
11863    unsafe extern "C" fn(program: GLuint, storageBlockIndex: GLuint, storageBlockBinding: GLuint),
11864>;
11865pub type PFNGLTEXBUFFERRANGEPROC = ::std::option::Option<
11866    unsafe extern "C" fn(
11867        target: GLenum,
11868        internalformat: GLenum,
11869        buffer: GLuint,
11870        offset: GLintptr,
11871        size: GLsizeiptr,
11872    ),
11873>;
11874pub type PFNGLTEXSTORAGE2DMULTISAMPLEPROC = ::std::option::Option<
11875    unsafe extern "C" fn(
11876        target: GLenum,
11877        samples: GLsizei,
11878        internalformat: GLenum,
11879        width: GLsizei,
11880        height: GLsizei,
11881        fixedsamplelocations: GLboolean,
11882    ),
11883>;
11884pub type PFNGLTEXSTORAGE3DMULTISAMPLEPROC = ::std::option::Option<
11885    unsafe extern "C" fn(
11886        target: GLenum,
11887        samples: GLsizei,
11888        internalformat: GLenum,
11889        width: GLsizei,
11890        height: GLsizei,
11891        depth: GLsizei,
11892        fixedsamplelocations: GLboolean,
11893    ),
11894>;
11895pub type PFNGLTEXTUREVIEWPROC = ::std::option::Option<
11896    unsafe extern "C" fn(
11897        texture: GLuint,
11898        target: GLenum,
11899        origtexture: GLuint,
11900        internalformat: GLenum,
11901        minlevel: GLuint,
11902        numlevels: GLuint,
11903        minlayer: GLuint,
11904        numlayers: GLuint,
11905    ),
11906>;
11907pub type PFNGLBINDVERTEXBUFFERPROC = ::std::option::Option<
11908    unsafe extern "C" fn(bindingindex: GLuint, buffer: GLuint, offset: GLintptr, stride: GLsizei),
11909>;
11910pub type PFNGLVERTEXATTRIBFORMATPROC = ::std::option::Option<
11911    unsafe extern "C" fn(
11912        attribindex: GLuint,
11913        size: GLint,
11914        type_: GLenum,
11915        normalized: GLboolean,
11916        relativeoffset: GLuint,
11917    ),
11918>;
11919pub type PFNGLVERTEXATTRIBIFORMATPROC = ::std::option::Option<
11920    unsafe extern "C" fn(attribindex: GLuint, size: GLint, type_: GLenum, relativeoffset: GLuint),
11921>;
11922pub type PFNGLVERTEXATTRIBLFORMATPROC = ::std::option::Option<
11923    unsafe extern "C" fn(attribindex: GLuint, size: GLint, type_: GLenum, relativeoffset: GLuint),
11924>;
11925pub type PFNGLVERTEXATTRIBBINDINGPROC =
11926    ::std::option::Option<unsafe extern "C" fn(attribindex: GLuint, bindingindex: GLuint)>;
11927pub type PFNGLVERTEXBINDINGDIVISORPROC =
11928    ::std::option::Option<unsafe extern "C" fn(bindingindex: GLuint, divisor: GLuint)>;
11929pub type PFNGLDEBUGMESSAGECONTROLPROC = ::std::option::Option<
11930    unsafe extern "C" fn(
11931        source: GLenum,
11932        type_: GLenum,
11933        severity: GLenum,
11934        count: GLsizei,
11935        ids: *const GLuint,
11936        enabled: GLboolean,
11937    ),
11938>;
11939pub type PFNGLDEBUGMESSAGEINSERTPROC = ::std::option::Option<
11940    unsafe extern "C" fn(
11941        source: GLenum,
11942        type_: GLenum,
11943        id: GLuint,
11944        severity: GLenum,
11945        length: GLsizei,
11946        buf: *const GLchar,
11947    ),
11948>;
11949pub type PFNGLDEBUGMESSAGECALLBACKPROC = ::std::option::Option<
11950    unsafe extern "C" fn(callback: GLDEBUGPROC, userParam: *const ::std::os::raw::c_void),
11951>;
11952pub type PFNGLGETDEBUGMESSAGELOGPROC = ::std::option::Option<
11953    unsafe extern "C" fn(
11954        count: GLuint,
11955        bufSize: GLsizei,
11956        sources: *mut GLenum,
11957        types: *mut GLenum,
11958        ids: *mut GLuint,
11959        severities: *mut GLenum,
11960        lengths: *mut GLsizei,
11961        messageLog: *mut GLchar,
11962    ) -> GLuint,
11963>;
11964pub type PFNGLPUSHDEBUGGROUPPROC = ::std::option::Option<
11965    unsafe extern "C" fn(source: GLenum, id: GLuint, length: GLsizei, message: *const GLchar),
11966>;
11967pub type PFNGLPOPDEBUGGROUPPROC = ::std::option::Option<unsafe extern "C" fn()>;
11968pub type PFNGLOBJECTLABELPROC = ::std::option::Option<
11969    unsafe extern "C" fn(identifier: GLenum, name: GLuint, length: GLsizei, label: *const GLchar),
11970>;
11971pub type PFNGLGETOBJECTLABELPROC = ::std::option::Option<
11972    unsafe extern "C" fn(
11973        identifier: GLenum,
11974        name: GLuint,
11975        bufSize: GLsizei,
11976        length: *mut GLsizei,
11977        label: *mut GLchar,
11978    ),
11979>;
11980pub type PFNGLOBJECTPTRLABELPROC = ::std::option::Option<
11981    unsafe extern "C" fn(ptr: *const ::std::os::raw::c_void, length: GLsizei, label: *const GLchar),
11982>;
11983pub type PFNGLGETOBJECTPTRLABELPROC = ::std::option::Option<
11984    unsafe extern "C" fn(
11985        ptr: *const ::std::os::raw::c_void,
11986        bufSize: GLsizei,
11987        length: *mut GLsizei,
11988        label: *mut GLchar,
11989    ),
11990>;
11991extern "C" {
11992    pub fn glClearBufferData(
11993        target: GLenum,
11994        internalformat: GLenum,
11995        format: GLenum,
11996        type_: GLenum,
11997        data: *const ::std::os::raw::c_void,
11998    );
11999}
12000extern "C" {
12001    pub fn glClearBufferSubData(
12002        target: GLenum,
12003        internalformat: GLenum,
12004        offset: GLintptr,
12005        size: GLsizeiptr,
12006        format: GLenum,
12007        type_: GLenum,
12008        data: *const ::std::os::raw::c_void,
12009    );
12010}
12011extern "C" {
12012    pub fn glDispatchCompute(num_groups_x: GLuint, num_groups_y: GLuint, num_groups_z: GLuint);
12013}
12014extern "C" {
12015    pub fn glDispatchComputeIndirect(indirect: GLintptr);
12016}
12017extern "C" {
12018    pub fn glCopyImageSubData(
12019        srcName: GLuint,
12020        srcTarget: GLenum,
12021        srcLevel: GLint,
12022        srcX: GLint,
12023        srcY: GLint,
12024        srcZ: GLint,
12025        dstName: GLuint,
12026        dstTarget: GLenum,
12027        dstLevel: GLint,
12028        dstX: GLint,
12029        dstY: GLint,
12030        dstZ: GLint,
12031        srcWidth: GLsizei,
12032        srcHeight: GLsizei,
12033        srcDepth: GLsizei,
12034    );
12035}
12036extern "C" {
12037    pub fn glFramebufferParameteri(target: GLenum, pname: GLenum, param: GLint);
12038}
12039extern "C" {
12040    pub fn glGetFramebufferParameteriv(target: GLenum, pname: GLenum, params: *mut GLint);
12041}
12042extern "C" {
12043    pub fn glGetInternalformati64v(
12044        target: GLenum,
12045        internalformat: GLenum,
12046        pname: GLenum,
12047        bufSize: GLsizei,
12048        params: *mut GLint64,
12049    );
12050}
12051extern "C" {
12052    pub fn glInvalidateTexSubImage(
12053        texture: GLuint,
12054        level: GLint,
12055        xoffset: GLint,
12056        yoffset: GLint,
12057        zoffset: GLint,
12058        width: GLsizei,
12059        height: GLsizei,
12060        depth: GLsizei,
12061    );
12062}
12063extern "C" {
12064    pub fn glInvalidateTexImage(texture: GLuint, level: GLint);
12065}
12066extern "C" {
12067    pub fn glInvalidateBufferSubData(buffer: GLuint, offset: GLintptr, length: GLsizeiptr);
12068}
12069extern "C" {
12070    pub fn glInvalidateBufferData(buffer: GLuint);
12071}
12072extern "C" {
12073    pub fn glInvalidateFramebuffer(
12074        target: GLenum,
12075        numAttachments: GLsizei,
12076        attachments: *const GLenum,
12077    );
12078}
12079extern "C" {
12080    pub fn glInvalidateSubFramebuffer(
12081        target: GLenum,
12082        numAttachments: GLsizei,
12083        attachments: *const GLenum,
12084        x: GLint,
12085        y: GLint,
12086        width: GLsizei,
12087        height: GLsizei,
12088    );
12089}
12090extern "C" {
12091    pub fn glMultiDrawArraysIndirect(
12092        mode: GLenum,
12093        indirect: *const ::std::os::raw::c_void,
12094        drawcount: GLsizei,
12095        stride: GLsizei,
12096    );
12097}
12098extern "C" {
12099    pub fn glMultiDrawElementsIndirect(
12100        mode: GLenum,
12101        type_: GLenum,
12102        indirect: *const ::std::os::raw::c_void,
12103        drawcount: GLsizei,
12104        stride: GLsizei,
12105    );
12106}
12107extern "C" {
12108    pub fn glGetProgramInterfaceiv(
12109        program: GLuint,
12110        programInterface: GLenum,
12111        pname: GLenum,
12112        params: *mut GLint,
12113    );
12114}
12115extern "C" {
12116    pub fn glGetProgramResourceIndex(
12117        program: GLuint,
12118        programInterface: GLenum,
12119        name: *const GLchar,
12120    ) -> GLuint;
12121}
12122extern "C" {
12123    pub fn glGetProgramResourceName(
12124        program: GLuint,
12125        programInterface: GLenum,
12126        index: GLuint,
12127        bufSize: GLsizei,
12128        length: *mut GLsizei,
12129        name: *mut GLchar,
12130    );
12131}
12132extern "C" {
12133    pub fn glGetProgramResourceiv(
12134        program: GLuint,
12135        programInterface: GLenum,
12136        index: GLuint,
12137        propCount: GLsizei,
12138        props: *const GLenum,
12139        bufSize: GLsizei,
12140        length: *mut GLsizei,
12141        params: *mut GLint,
12142    );
12143}
12144extern "C" {
12145    pub fn glGetProgramResourceLocation(
12146        program: GLuint,
12147        programInterface: GLenum,
12148        name: *const GLchar,
12149    ) -> GLint;
12150}
12151extern "C" {
12152    pub fn glGetProgramResourceLocationIndex(
12153        program: GLuint,
12154        programInterface: GLenum,
12155        name: *const GLchar,
12156    ) -> GLint;
12157}
12158extern "C" {
12159    pub fn glShaderStorageBlockBinding(
12160        program: GLuint,
12161        storageBlockIndex: GLuint,
12162        storageBlockBinding: GLuint,
12163    );
12164}
12165extern "C" {
12166    pub fn glTexBufferRange(
12167        target: GLenum,
12168        internalformat: GLenum,
12169        buffer: GLuint,
12170        offset: GLintptr,
12171        size: GLsizeiptr,
12172    );
12173}
12174extern "C" {
12175    pub fn glTexStorage2DMultisample(
12176        target: GLenum,
12177        samples: GLsizei,
12178        internalformat: GLenum,
12179        width: GLsizei,
12180        height: GLsizei,
12181        fixedsamplelocations: GLboolean,
12182    );
12183}
12184extern "C" {
12185    pub fn glTexStorage3DMultisample(
12186        target: GLenum,
12187        samples: GLsizei,
12188        internalformat: GLenum,
12189        width: GLsizei,
12190        height: GLsizei,
12191        depth: GLsizei,
12192        fixedsamplelocations: GLboolean,
12193    );
12194}
12195extern "C" {
12196    pub fn glTextureView(
12197        texture: GLuint,
12198        target: GLenum,
12199        origtexture: GLuint,
12200        internalformat: GLenum,
12201        minlevel: GLuint,
12202        numlevels: GLuint,
12203        minlayer: GLuint,
12204        numlayers: GLuint,
12205    );
12206}
12207extern "C" {
12208    pub fn glBindVertexBuffer(
12209        bindingindex: GLuint,
12210        buffer: GLuint,
12211        offset: GLintptr,
12212        stride: GLsizei,
12213    );
12214}
12215extern "C" {
12216    pub fn glVertexAttribFormat(
12217        attribindex: GLuint,
12218        size: GLint,
12219        type_: GLenum,
12220        normalized: GLboolean,
12221        relativeoffset: GLuint,
12222    );
12223}
12224extern "C" {
12225    pub fn glVertexAttribIFormat(
12226        attribindex: GLuint,
12227        size: GLint,
12228        type_: GLenum,
12229        relativeoffset: GLuint,
12230    );
12231}
12232extern "C" {
12233    pub fn glVertexAttribLFormat(
12234        attribindex: GLuint,
12235        size: GLint,
12236        type_: GLenum,
12237        relativeoffset: GLuint,
12238    );
12239}
12240extern "C" {
12241    pub fn glVertexAttribBinding(attribindex: GLuint, bindingindex: GLuint);
12242}
12243extern "C" {
12244    pub fn glVertexBindingDivisor(bindingindex: GLuint, divisor: GLuint);
12245}
12246extern "C" {
12247    pub fn glDebugMessageControl(
12248        source: GLenum,
12249        type_: GLenum,
12250        severity: GLenum,
12251        count: GLsizei,
12252        ids: *const GLuint,
12253        enabled: GLboolean,
12254    );
12255}
12256extern "C" {
12257    pub fn glDebugMessageInsert(
12258        source: GLenum,
12259        type_: GLenum,
12260        id: GLuint,
12261        severity: GLenum,
12262        length: GLsizei,
12263        buf: *const GLchar,
12264    );
12265}
12266extern "C" {
12267    pub fn glDebugMessageCallback(callback: GLDEBUGPROC, userParam: *const ::std::os::raw::c_void);
12268}
12269extern "C" {
12270    pub fn glGetDebugMessageLog(
12271        count: GLuint,
12272        bufSize: GLsizei,
12273        sources: *mut GLenum,
12274        types: *mut GLenum,
12275        ids: *mut GLuint,
12276        severities: *mut GLenum,
12277        lengths: *mut GLsizei,
12278        messageLog: *mut GLchar,
12279    ) -> GLuint;
12280}
12281extern "C" {
12282    pub fn glPushDebugGroup(source: GLenum, id: GLuint, length: GLsizei, message: *const GLchar);
12283}
12284extern "C" {
12285    pub fn glPopDebugGroup();
12286}
12287extern "C" {
12288    pub fn glObjectLabel(identifier: GLenum, name: GLuint, length: GLsizei, label: *const GLchar);
12289}
12290extern "C" {
12291    pub fn glGetObjectLabel(
12292        identifier: GLenum,
12293        name: GLuint,
12294        bufSize: GLsizei,
12295        length: *mut GLsizei,
12296        label: *mut GLchar,
12297    );
12298}
12299extern "C" {
12300    pub fn glObjectPtrLabel(
12301        ptr: *const ::std::os::raw::c_void,
12302        length: GLsizei,
12303        label: *const GLchar,
12304    );
12305}
12306extern "C" {
12307    pub fn glGetObjectPtrLabel(
12308        ptr: *const ::std::os::raw::c_void,
12309        bufSize: GLsizei,
12310        length: *mut GLsizei,
12311        label: *mut GLchar,
12312    );
12313}
12314pub type PFNGLBUFFERSTORAGEPROC = ::std::option::Option<
12315    unsafe extern "C" fn(
12316        target: GLenum,
12317        size: GLsizeiptr,
12318        data: *const ::std::os::raw::c_void,
12319        flags: GLbitfield,
12320    ),
12321>;
12322pub type PFNGLCLEARTEXIMAGEPROC = ::std::option::Option<
12323    unsafe extern "C" fn(
12324        texture: GLuint,
12325        level: GLint,
12326        format: GLenum,
12327        type_: GLenum,
12328        data: *const ::std::os::raw::c_void,
12329    ),
12330>;
12331pub type PFNGLCLEARTEXSUBIMAGEPROC = ::std::option::Option<
12332    unsafe extern "C" fn(
12333        texture: GLuint,
12334        level: GLint,
12335        xoffset: GLint,
12336        yoffset: GLint,
12337        zoffset: GLint,
12338        width: GLsizei,
12339        height: GLsizei,
12340        depth: GLsizei,
12341        format: GLenum,
12342        type_: GLenum,
12343        data: *const ::std::os::raw::c_void,
12344    ),
12345>;
12346pub type PFNGLBINDBUFFERSBASEPROC = ::std::option::Option<
12347    unsafe extern "C" fn(target: GLenum, first: GLuint, count: GLsizei, buffers: *const GLuint),
12348>;
12349pub type PFNGLBINDBUFFERSRANGEPROC = ::std::option::Option<
12350    unsafe extern "C" fn(
12351        target: GLenum,
12352        first: GLuint,
12353        count: GLsizei,
12354        buffers: *const GLuint,
12355        offsets: *const GLintptr,
12356        sizes: *const GLsizeiptr,
12357    ),
12358>;
12359pub type PFNGLBINDTEXTURESPROC = ::std::option::Option<
12360    unsafe extern "C" fn(first: GLuint, count: GLsizei, textures: *const GLuint),
12361>;
12362pub type PFNGLBINDSAMPLERSPROC = ::std::option::Option<
12363    unsafe extern "C" fn(first: GLuint, count: GLsizei, samplers: *const GLuint),
12364>;
12365pub type PFNGLBINDIMAGETEXTURESPROC = ::std::option::Option<
12366    unsafe extern "C" fn(first: GLuint, count: GLsizei, textures: *const GLuint),
12367>;
12368pub type PFNGLBINDVERTEXBUFFERSPROC = ::std::option::Option<
12369    unsafe extern "C" fn(
12370        first: GLuint,
12371        count: GLsizei,
12372        buffers: *const GLuint,
12373        offsets: *const GLintptr,
12374        strides: *const GLsizei,
12375    ),
12376>;
12377extern "C" {
12378    pub fn glBufferStorage(
12379        target: GLenum,
12380        size: GLsizeiptr,
12381        data: *const ::std::os::raw::c_void,
12382        flags: GLbitfield,
12383    );
12384}
12385extern "C" {
12386    pub fn glClearTexImage(
12387        texture: GLuint,
12388        level: GLint,
12389        format: GLenum,
12390        type_: GLenum,
12391        data: *const ::std::os::raw::c_void,
12392    );
12393}
12394extern "C" {
12395    pub fn glClearTexSubImage(
12396        texture: GLuint,
12397        level: GLint,
12398        xoffset: GLint,
12399        yoffset: GLint,
12400        zoffset: GLint,
12401        width: GLsizei,
12402        height: GLsizei,
12403        depth: GLsizei,
12404        format: GLenum,
12405        type_: GLenum,
12406        data: *const ::std::os::raw::c_void,
12407    );
12408}
12409extern "C" {
12410    pub fn glBindBuffersBase(target: GLenum, first: GLuint, count: GLsizei, buffers: *const GLuint);
12411}
12412extern "C" {
12413    pub fn glBindBuffersRange(
12414        target: GLenum,
12415        first: GLuint,
12416        count: GLsizei,
12417        buffers: *const GLuint,
12418        offsets: *const GLintptr,
12419        sizes: *const GLsizeiptr,
12420    );
12421}
12422extern "C" {
12423    pub fn glBindTextures(first: GLuint, count: GLsizei, textures: *const GLuint);
12424}
12425extern "C" {
12426    pub fn glBindSamplers(first: GLuint, count: GLsizei, samplers: *const GLuint);
12427}
12428extern "C" {
12429    pub fn glBindImageTextures(first: GLuint, count: GLsizei, textures: *const GLuint);
12430}
12431extern "C" {
12432    pub fn glBindVertexBuffers(
12433        first: GLuint,
12434        count: GLsizei,
12435        buffers: *const GLuint,
12436        offsets: *const GLintptr,
12437        strides: *const GLsizei,
12438    );
12439}
12440pub type PFNGLCLIPCONTROLPROC =
12441    ::std::option::Option<unsafe extern "C" fn(origin: GLenum, depth: GLenum)>;
12442pub type PFNGLCREATETRANSFORMFEEDBACKSPROC =
12443    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *mut GLuint)>;
12444pub type PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC =
12445    ::std::option::Option<unsafe extern "C" fn(xfb: GLuint, index: GLuint, buffer: GLuint)>;
12446pub type PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC = ::std::option::Option<
12447    unsafe extern "C" fn(
12448        xfb: GLuint,
12449        index: GLuint,
12450        buffer: GLuint,
12451        offset: GLintptr,
12452        size: GLsizeiptr,
12453    ),
12454>;
12455pub type PFNGLGETTRANSFORMFEEDBACKIVPROC =
12456    ::std::option::Option<unsafe extern "C" fn(xfb: GLuint, pname: GLenum, param: *mut GLint)>;
12457pub type PFNGLGETTRANSFORMFEEDBACKI_VPROC = ::std::option::Option<
12458    unsafe extern "C" fn(xfb: GLuint, pname: GLenum, index: GLuint, param: *mut GLint),
12459>;
12460pub type PFNGLGETTRANSFORMFEEDBACKI64_VPROC = ::std::option::Option<
12461    unsafe extern "C" fn(xfb: GLuint, pname: GLenum, index: GLuint, param: *mut GLint64),
12462>;
12463pub type PFNGLCREATEBUFFERSPROC =
12464    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, buffers: *mut GLuint)>;
12465pub type PFNGLNAMEDBUFFERSTORAGEPROC = ::std::option::Option<
12466    unsafe extern "C" fn(
12467        buffer: GLuint,
12468        size: GLsizeiptr,
12469        data: *const ::std::os::raw::c_void,
12470        flags: GLbitfield,
12471    ),
12472>;
12473pub type PFNGLNAMEDBUFFERDATAPROC = ::std::option::Option<
12474    unsafe extern "C" fn(
12475        buffer: GLuint,
12476        size: GLsizeiptr,
12477        data: *const ::std::os::raw::c_void,
12478        usage: GLenum,
12479    ),
12480>;
12481pub type PFNGLNAMEDBUFFERSUBDATAPROC = ::std::option::Option<
12482    unsafe extern "C" fn(
12483        buffer: GLuint,
12484        offset: GLintptr,
12485        size: GLsizeiptr,
12486        data: *const ::std::os::raw::c_void,
12487    ),
12488>;
12489pub type PFNGLCOPYNAMEDBUFFERSUBDATAPROC = ::std::option::Option<
12490    unsafe extern "C" fn(
12491        readBuffer: GLuint,
12492        writeBuffer: GLuint,
12493        readOffset: GLintptr,
12494        writeOffset: GLintptr,
12495        size: GLsizeiptr,
12496    ),
12497>;
12498pub type PFNGLCLEARNAMEDBUFFERDATAPROC = ::std::option::Option<
12499    unsafe extern "C" fn(
12500        buffer: GLuint,
12501        internalformat: GLenum,
12502        format: GLenum,
12503        type_: GLenum,
12504        data: *const ::std::os::raw::c_void,
12505    ),
12506>;
12507pub type PFNGLCLEARNAMEDBUFFERSUBDATAPROC = ::std::option::Option<
12508    unsafe extern "C" fn(
12509        buffer: GLuint,
12510        internalformat: GLenum,
12511        offset: GLintptr,
12512        size: GLsizeiptr,
12513        format: GLenum,
12514        type_: GLenum,
12515        data: *const ::std::os::raw::c_void,
12516    ),
12517>;
12518pub type PFNGLMAPNAMEDBUFFERPROC = ::std::option::Option<
12519    unsafe extern "C" fn(buffer: GLuint, access: GLenum) -> *mut ::std::os::raw::c_void,
12520>;
12521pub type PFNGLMAPNAMEDBUFFERRANGEPROC = ::std::option::Option<
12522    unsafe extern "C" fn(
12523        buffer: GLuint,
12524        offset: GLintptr,
12525        length: GLsizeiptr,
12526        access: GLbitfield,
12527    ) -> *mut ::std::os::raw::c_void,
12528>;
12529pub type PFNGLUNMAPNAMEDBUFFERPROC =
12530    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint) -> GLboolean>;
12531pub type PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC = ::std::option::Option<
12532    unsafe extern "C" fn(buffer: GLuint, offset: GLintptr, length: GLsizeiptr),
12533>;
12534pub type PFNGLGETNAMEDBUFFERPARAMETERIVPROC =
12535    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut GLint)>;
12536pub type PFNGLGETNAMEDBUFFERPARAMETERI64VPROC = ::std::option::Option<
12537    unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut GLint64),
12538>;
12539pub type PFNGLGETNAMEDBUFFERPOINTERVPROC = ::std::option::Option<
12540    unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut *mut ::std::os::raw::c_void),
12541>;
12542pub type PFNGLGETNAMEDBUFFERSUBDATAPROC = ::std::option::Option<
12543    unsafe extern "C" fn(
12544        buffer: GLuint,
12545        offset: GLintptr,
12546        size: GLsizeiptr,
12547        data: *mut ::std::os::raw::c_void,
12548    ),
12549>;
12550pub type PFNGLCREATEFRAMEBUFFERSPROC =
12551    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, framebuffers: *mut GLuint)>;
12552pub type PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC = ::std::option::Option<
12553    unsafe extern "C" fn(
12554        framebuffer: GLuint,
12555        attachment: GLenum,
12556        renderbuffertarget: GLenum,
12557        renderbuffer: GLuint,
12558    ),
12559>;
12560pub type PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC =
12561    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, pname: GLenum, param: GLint)>;
12562pub type PFNGLNAMEDFRAMEBUFFERTEXTUREPROC = ::std::option::Option<
12563    unsafe extern "C" fn(framebuffer: GLuint, attachment: GLenum, texture: GLuint, level: GLint),
12564>;
12565pub type PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC = ::std::option::Option<
12566    unsafe extern "C" fn(
12567        framebuffer: GLuint,
12568        attachment: GLenum,
12569        texture: GLuint,
12570        level: GLint,
12571        layer: GLint,
12572    ),
12573>;
12574pub type PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC =
12575    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, buf: GLenum)>;
12576pub type PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC = ::std::option::Option<
12577    unsafe extern "C" fn(framebuffer: GLuint, n: GLsizei, bufs: *const GLenum),
12578>;
12579pub type PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC =
12580    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, src: GLenum)>;
12581pub type PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC = ::std::option::Option<
12582    unsafe extern "C" fn(framebuffer: GLuint, numAttachments: GLsizei, attachments: *const GLenum),
12583>;
12584pub type PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC = ::std::option::Option<
12585    unsafe extern "C" fn(
12586        framebuffer: GLuint,
12587        numAttachments: GLsizei,
12588        attachments: *const GLenum,
12589        x: GLint,
12590        y: GLint,
12591        width: GLsizei,
12592        height: GLsizei,
12593    ),
12594>;
12595pub type PFNGLCLEARNAMEDFRAMEBUFFERIVPROC = ::std::option::Option<
12596    unsafe extern "C" fn(
12597        framebuffer: GLuint,
12598        buffer: GLenum,
12599        drawbuffer: GLint,
12600        value: *const GLint,
12601    ),
12602>;
12603pub type PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC = ::std::option::Option<
12604    unsafe extern "C" fn(
12605        framebuffer: GLuint,
12606        buffer: GLenum,
12607        drawbuffer: GLint,
12608        value: *const GLuint,
12609    ),
12610>;
12611pub type PFNGLCLEARNAMEDFRAMEBUFFERFVPROC = ::std::option::Option<
12612    unsafe extern "C" fn(
12613        framebuffer: GLuint,
12614        buffer: GLenum,
12615        drawbuffer: GLint,
12616        value: *const GLfloat,
12617    ),
12618>;
12619pub type PFNGLCLEARNAMEDFRAMEBUFFERFIPROC = ::std::option::Option<
12620    unsafe extern "C" fn(
12621        framebuffer: GLuint,
12622        buffer: GLenum,
12623        drawbuffer: GLint,
12624        depth: GLfloat,
12625        stencil: GLint,
12626    ),
12627>;
12628pub type PFNGLBLITNAMEDFRAMEBUFFERPROC = ::std::option::Option<
12629    unsafe extern "C" fn(
12630        readFramebuffer: GLuint,
12631        drawFramebuffer: GLuint,
12632        srcX0: GLint,
12633        srcY0: GLint,
12634        srcX1: GLint,
12635        srcY1: GLint,
12636        dstX0: GLint,
12637        dstY0: GLint,
12638        dstX1: GLint,
12639        dstY1: GLint,
12640        mask: GLbitfield,
12641        filter: GLenum,
12642    ),
12643>;
12644pub type PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC =
12645    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, target: GLenum) -> GLenum>;
12646pub type PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC = ::std::option::Option<
12647    unsafe extern "C" fn(framebuffer: GLuint, pname: GLenum, param: *mut GLint),
12648>;
12649pub type PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC = ::std::option::Option<
12650    unsafe extern "C" fn(
12651        framebuffer: GLuint,
12652        attachment: GLenum,
12653        pname: GLenum,
12654        params: *mut GLint,
12655    ),
12656>;
12657pub type PFNGLCREATERENDERBUFFERSPROC =
12658    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, renderbuffers: *mut GLuint)>;
12659pub type PFNGLNAMEDRENDERBUFFERSTORAGEPROC = ::std::option::Option<
12660    unsafe extern "C" fn(
12661        renderbuffer: GLuint,
12662        internalformat: GLenum,
12663        width: GLsizei,
12664        height: GLsizei,
12665    ),
12666>;
12667pub type PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC = ::std::option::Option<
12668    unsafe extern "C" fn(
12669        renderbuffer: GLuint,
12670        samples: GLsizei,
12671        internalformat: GLenum,
12672        width: GLsizei,
12673        height: GLsizei,
12674    ),
12675>;
12676pub type PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC = ::std::option::Option<
12677    unsafe extern "C" fn(renderbuffer: GLuint, pname: GLenum, params: *mut GLint),
12678>;
12679pub type PFNGLCREATETEXTURESPROC =
12680    ::std::option::Option<unsafe extern "C" fn(target: GLenum, n: GLsizei, textures: *mut GLuint)>;
12681pub type PFNGLTEXTUREBUFFERPROC = ::std::option::Option<
12682    unsafe extern "C" fn(texture: GLuint, internalformat: GLenum, buffer: GLuint),
12683>;
12684pub type PFNGLTEXTUREBUFFERRANGEPROC = ::std::option::Option<
12685    unsafe extern "C" fn(
12686        texture: GLuint,
12687        internalformat: GLenum,
12688        buffer: GLuint,
12689        offset: GLintptr,
12690        size: GLsizeiptr,
12691    ),
12692>;
12693pub type PFNGLTEXTURESTORAGE1DPROC = ::std::option::Option<
12694    unsafe extern "C" fn(texture: GLuint, levels: GLsizei, internalformat: GLenum, width: GLsizei),
12695>;
12696pub type PFNGLTEXTURESTORAGE2DPROC = ::std::option::Option<
12697    unsafe extern "C" fn(
12698        texture: GLuint,
12699        levels: GLsizei,
12700        internalformat: GLenum,
12701        width: GLsizei,
12702        height: GLsizei,
12703    ),
12704>;
12705pub type PFNGLTEXTURESTORAGE3DPROC = ::std::option::Option<
12706    unsafe extern "C" fn(
12707        texture: GLuint,
12708        levels: GLsizei,
12709        internalformat: GLenum,
12710        width: GLsizei,
12711        height: GLsizei,
12712        depth: GLsizei,
12713    ),
12714>;
12715pub type PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC = ::std::option::Option<
12716    unsafe extern "C" fn(
12717        texture: GLuint,
12718        samples: GLsizei,
12719        internalformat: GLenum,
12720        width: GLsizei,
12721        height: GLsizei,
12722        fixedsamplelocations: GLboolean,
12723    ),
12724>;
12725pub type PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC = ::std::option::Option<
12726    unsafe extern "C" fn(
12727        texture: GLuint,
12728        samples: GLsizei,
12729        internalformat: GLenum,
12730        width: GLsizei,
12731        height: GLsizei,
12732        depth: GLsizei,
12733        fixedsamplelocations: GLboolean,
12734    ),
12735>;
12736pub type PFNGLTEXTURESUBIMAGE1DPROC = ::std::option::Option<
12737    unsafe extern "C" fn(
12738        texture: GLuint,
12739        level: GLint,
12740        xoffset: GLint,
12741        width: GLsizei,
12742        format: GLenum,
12743        type_: GLenum,
12744        pixels: *const ::std::os::raw::c_void,
12745    ),
12746>;
12747pub type PFNGLTEXTURESUBIMAGE2DPROC = ::std::option::Option<
12748    unsafe extern "C" fn(
12749        texture: GLuint,
12750        level: GLint,
12751        xoffset: GLint,
12752        yoffset: GLint,
12753        width: GLsizei,
12754        height: GLsizei,
12755        format: GLenum,
12756        type_: GLenum,
12757        pixels: *const ::std::os::raw::c_void,
12758    ),
12759>;
12760pub type PFNGLTEXTURESUBIMAGE3DPROC = ::std::option::Option<
12761    unsafe extern "C" fn(
12762        texture: GLuint,
12763        level: GLint,
12764        xoffset: GLint,
12765        yoffset: GLint,
12766        zoffset: GLint,
12767        width: GLsizei,
12768        height: GLsizei,
12769        depth: GLsizei,
12770        format: GLenum,
12771        type_: GLenum,
12772        pixels: *const ::std::os::raw::c_void,
12773    ),
12774>;
12775pub type PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC = ::std::option::Option<
12776    unsafe extern "C" fn(
12777        texture: GLuint,
12778        level: GLint,
12779        xoffset: GLint,
12780        width: GLsizei,
12781        format: GLenum,
12782        imageSize: GLsizei,
12783        data: *const ::std::os::raw::c_void,
12784    ),
12785>;
12786pub type PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC = ::std::option::Option<
12787    unsafe extern "C" fn(
12788        texture: GLuint,
12789        level: GLint,
12790        xoffset: GLint,
12791        yoffset: GLint,
12792        width: GLsizei,
12793        height: GLsizei,
12794        format: GLenum,
12795        imageSize: GLsizei,
12796        data: *const ::std::os::raw::c_void,
12797    ),
12798>;
12799pub type PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC = ::std::option::Option<
12800    unsafe extern "C" fn(
12801        texture: GLuint,
12802        level: GLint,
12803        xoffset: GLint,
12804        yoffset: GLint,
12805        zoffset: GLint,
12806        width: GLsizei,
12807        height: GLsizei,
12808        depth: GLsizei,
12809        format: GLenum,
12810        imageSize: GLsizei,
12811        data: *const ::std::os::raw::c_void,
12812    ),
12813>;
12814pub type PFNGLCOPYTEXTURESUBIMAGE1DPROC = ::std::option::Option<
12815    unsafe extern "C" fn(
12816        texture: GLuint,
12817        level: GLint,
12818        xoffset: GLint,
12819        x: GLint,
12820        y: GLint,
12821        width: GLsizei,
12822    ),
12823>;
12824pub type PFNGLCOPYTEXTURESUBIMAGE2DPROC = ::std::option::Option<
12825    unsafe extern "C" fn(
12826        texture: GLuint,
12827        level: GLint,
12828        xoffset: GLint,
12829        yoffset: GLint,
12830        x: GLint,
12831        y: GLint,
12832        width: GLsizei,
12833        height: GLsizei,
12834    ),
12835>;
12836pub type PFNGLCOPYTEXTURESUBIMAGE3DPROC = ::std::option::Option<
12837    unsafe extern "C" fn(
12838        texture: GLuint,
12839        level: GLint,
12840        xoffset: GLint,
12841        yoffset: GLint,
12842        zoffset: GLint,
12843        x: GLint,
12844        y: GLint,
12845        width: GLsizei,
12846        height: GLsizei,
12847    ),
12848>;
12849pub type PFNGLTEXTUREPARAMETERFPROC =
12850    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, pname: GLenum, param: GLfloat)>;
12851pub type PFNGLTEXTUREPARAMETERFVPROC = ::std::option::Option<
12852    unsafe extern "C" fn(texture: GLuint, pname: GLenum, param: *const GLfloat),
12853>;
12854pub type PFNGLTEXTUREPARAMETERIPROC =
12855    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, pname: GLenum, param: GLint)>;
12856pub type PFNGLTEXTUREPARAMETERIIVPROC = ::std::option::Option<
12857    unsafe extern "C" fn(texture: GLuint, pname: GLenum, params: *const GLint),
12858>;
12859pub type PFNGLTEXTUREPARAMETERIUIVPROC = ::std::option::Option<
12860    unsafe extern "C" fn(texture: GLuint, pname: GLenum, params: *const GLuint),
12861>;
12862pub type PFNGLTEXTUREPARAMETERIVPROC = ::std::option::Option<
12863    unsafe extern "C" fn(texture: GLuint, pname: GLenum, param: *const GLint),
12864>;
12865pub type PFNGLGENERATETEXTUREMIPMAPPROC =
12866    ::std::option::Option<unsafe extern "C" fn(texture: GLuint)>;
12867pub type PFNGLBINDTEXTUREUNITPROC =
12868    ::std::option::Option<unsafe extern "C" fn(unit: GLuint, texture: GLuint)>;
12869pub type PFNGLGETTEXTUREIMAGEPROC = ::std::option::Option<
12870    unsafe extern "C" fn(
12871        texture: GLuint,
12872        level: GLint,
12873        format: GLenum,
12874        type_: GLenum,
12875        bufSize: GLsizei,
12876        pixels: *mut ::std::os::raw::c_void,
12877    ),
12878>;
12879pub type PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC = ::std::option::Option<
12880    unsafe extern "C" fn(
12881        texture: GLuint,
12882        level: GLint,
12883        bufSize: GLsizei,
12884        pixels: *mut ::std::os::raw::c_void,
12885    ),
12886>;
12887pub type PFNGLGETTEXTURELEVELPARAMETERFVPROC = ::std::option::Option<
12888    unsafe extern "C" fn(texture: GLuint, level: GLint, pname: GLenum, params: *mut GLfloat),
12889>;
12890pub type PFNGLGETTEXTURELEVELPARAMETERIVPROC = ::std::option::Option<
12891    unsafe extern "C" fn(texture: GLuint, level: GLint, pname: GLenum, params: *mut GLint),
12892>;
12893pub type PFNGLGETTEXTUREPARAMETERFVPROC = ::std::option::Option<
12894    unsafe extern "C" fn(texture: GLuint, pname: GLenum, params: *mut GLfloat),
12895>;
12896pub type PFNGLGETTEXTUREPARAMETERIIVPROC =
12897    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, pname: GLenum, params: *mut GLint)>;
12898pub type PFNGLGETTEXTUREPARAMETERIUIVPROC = ::std::option::Option<
12899    unsafe extern "C" fn(texture: GLuint, pname: GLenum, params: *mut GLuint),
12900>;
12901pub type PFNGLGETTEXTUREPARAMETERIVPROC =
12902    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, pname: GLenum, params: *mut GLint)>;
12903pub type PFNGLCREATEVERTEXARRAYSPROC =
12904    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, arrays: *mut GLuint)>;
12905pub type PFNGLDISABLEVERTEXARRAYATTRIBPROC =
12906    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, index: GLuint)>;
12907pub type PFNGLENABLEVERTEXARRAYATTRIBPROC =
12908    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, index: GLuint)>;
12909pub type PFNGLVERTEXARRAYELEMENTBUFFERPROC =
12910    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, buffer: GLuint)>;
12911pub type PFNGLVERTEXARRAYVERTEXBUFFERPROC = ::std::option::Option<
12912    unsafe extern "C" fn(
12913        vaobj: GLuint,
12914        bindingindex: GLuint,
12915        buffer: GLuint,
12916        offset: GLintptr,
12917        stride: GLsizei,
12918    ),
12919>;
12920pub type PFNGLVERTEXARRAYVERTEXBUFFERSPROC = ::std::option::Option<
12921    unsafe extern "C" fn(
12922        vaobj: GLuint,
12923        first: GLuint,
12924        count: GLsizei,
12925        buffers: *const GLuint,
12926        offsets: *const GLintptr,
12927        strides: *const GLsizei,
12928    ),
12929>;
12930pub type PFNGLVERTEXARRAYATTRIBBINDINGPROC = ::std::option::Option<
12931    unsafe extern "C" fn(vaobj: GLuint, attribindex: GLuint, bindingindex: GLuint),
12932>;
12933pub type PFNGLVERTEXARRAYATTRIBFORMATPROC = ::std::option::Option<
12934    unsafe extern "C" fn(
12935        vaobj: GLuint,
12936        attribindex: GLuint,
12937        size: GLint,
12938        type_: GLenum,
12939        normalized: GLboolean,
12940        relativeoffset: GLuint,
12941    ),
12942>;
12943pub type PFNGLVERTEXARRAYATTRIBIFORMATPROC = ::std::option::Option<
12944    unsafe extern "C" fn(
12945        vaobj: GLuint,
12946        attribindex: GLuint,
12947        size: GLint,
12948        type_: GLenum,
12949        relativeoffset: GLuint,
12950    ),
12951>;
12952pub type PFNGLVERTEXARRAYATTRIBLFORMATPROC = ::std::option::Option<
12953    unsafe extern "C" fn(
12954        vaobj: GLuint,
12955        attribindex: GLuint,
12956        size: GLint,
12957        type_: GLenum,
12958        relativeoffset: GLuint,
12959    ),
12960>;
12961pub type PFNGLVERTEXARRAYBINDINGDIVISORPROC = ::std::option::Option<
12962    unsafe extern "C" fn(vaobj: GLuint, bindingindex: GLuint, divisor: GLuint),
12963>;
12964pub type PFNGLGETVERTEXARRAYIVPROC =
12965    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, pname: GLenum, param: *mut GLint)>;
12966pub type PFNGLGETVERTEXARRAYINDEXEDIVPROC = ::std::option::Option<
12967    unsafe extern "C" fn(vaobj: GLuint, index: GLuint, pname: GLenum, param: *mut GLint),
12968>;
12969pub type PFNGLGETVERTEXARRAYINDEXED64IVPROC = ::std::option::Option<
12970    unsafe extern "C" fn(vaobj: GLuint, index: GLuint, pname: GLenum, param: *mut GLint64),
12971>;
12972pub type PFNGLCREATESAMPLERSPROC =
12973    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, samplers: *mut GLuint)>;
12974pub type PFNGLCREATEPROGRAMPIPELINESPROC =
12975    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, pipelines: *mut GLuint)>;
12976pub type PFNGLCREATEQUERIESPROC =
12977    ::std::option::Option<unsafe extern "C" fn(target: GLenum, n: GLsizei, ids: *mut GLuint)>;
12978pub type PFNGLGETQUERYBUFFEROBJECTI64VPROC = ::std::option::Option<
12979    unsafe extern "C" fn(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr),
12980>;
12981pub type PFNGLGETQUERYBUFFEROBJECTIVPROC = ::std::option::Option<
12982    unsafe extern "C" fn(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr),
12983>;
12984pub type PFNGLGETQUERYBUFFEROBJECTUI64VPROC = ::std::option::Option<
12985    unsafe extern "C" fn(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr),
12986>;
12987pub type PFNGLGETQUERYBUFFEROBJECTUIVPROC = ::std::option::Option<
12988    unsafe extern "C" fn(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr),
12989>;
12990pub type PFNGLMEMORYBARRIERBYREGIONPROC =
12991    ::std::option::Option<unsafe extern "C" fn(barriers: GLbitfield)>;
12992pub type PFNGLGETTEXTURESUBIMAGEPROC = ::std::option::Option<
12993    unsafe extern "C" fn(
12994        texture: GLuint,
12995        level: GLint,
12996        xoffset: GLint,
12997        yoffset: GLint,
12998        zoffset: GLint,
12999        width: GLsizei,
13000        height: GLsizei,
13001        depth: GLsizei,
13002        format: GLenum,
13003        type_: GLenum,
13004        bufSize: GLsizei,
13005        pixels: *mut ::std::os::raw::c_void,
13006    ),
13007>;
13008pub type PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC = ::std::option::Option<
13009    unsafe extern "C" fn(
13010        texture: GLuint,
13011        level: GLint,
13012        xoffset: GLint,
13013        yoffset: GLint,
13014        zoffset: GLint,
13015        width: GLsizei,
13016        height: GLsizei,
13017        depth: GLsizei,
13018        bufSize: GLsizei,
13019        pixels: *mut ::std::os::raw::c_void,
13020    ),
13021>;
13022pub type PFNGLGETGRAPHICSRESETSTATUSPROC = ::std::option::Option<unsafe extern "C" fn() -> GLenum>;
13023pub type PFNGLGETNCOMPRESSEDTEXIMAGEPROC = ::std::option::Option<
13024    unsafe extern "C" fn(
13025        target: GLenum,
13026        lod: GLint,
13027        bufSize: GLsizei,
13028        pixels: *mut ::std::os::raw::c_void,
13029    ),
13030>;
13031pub type PFNGLGETNTEXIMAGEPROC = ::std::option::Option<
13032    unsafe extern "C" fn(
13033        target: GLenum,
13034        level: GLint,
13035        format: GLenum,
13036        type_: GLenum,
13037        bufSize: GLsizei,
13038        pixels: *mut ::std::os::raw::c_void,
13039    ),
13040>;
13041pub type PFNGLGETNUNIFORMDVPROC = ::std::option::Option<
13042    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLdouble),
13043>;
13044pub type PFNGLGETNUNIFORMFVPROC = ::std::option::Option<
13045    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLfloat),
13046>;
13047pub type PFNGLGETNUNIFORMIVPROC = ::std::option::Option<
13048    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLint),
13049>;
13050pub type PFNGLGETNUNIFORMUIVPROC = ::std::option::Option<
13051    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLuint),
13052>;
13053pub type PFNGLREADNPIXELSPROC = ::std::option::Option<
13054    unsafe extern "C" fn(
13055        x: GLint,
13056        y: GLint,
13057        width: GLsizei,
13058        height: GLsizei,
13059        format: GLenum,
13060        type_: GLenum,
13061        bufSize: GLsizei,
13062        data: *mut ::std::os::raw::c_void,
13063    ),
13064>;
13065pub type PFNGLGETNMAPDVPROC = ::std::option::Option<
13066    unsafe extern "C" fn(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLdouble),
13067>;
13068pub type PFNGLGETNMAPFVPROC = ::std::option::Option<
13069    unsafe extern "C" fn(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLfloat),
13070>;
13071pub type PFNGLGETNMAPIVPROC = ::std::option::Option<
13072    unsafe extern "C" fn(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLint),
13073>;
13074pub type PFNGLGETNPIXELMAPFVPROC = ::std::option::Option<
13075    unsafe extern "C" fn(map: GLenum, bufSize: GLsizei, values: *mut GLfloat),
13076>;
13077pub type PFNGLGETNPIXELMAPUIVPROC =
13078    ::std::option::Option<unsafe extern "C" fn(map: GLenum, bufSize: GLsizei, values: *mut GLuint)>;
13079pub type PFNGLGETNPIXELMAPUSVPROC = ::std::option::Option<
13080    unsafe extern "C" fn(map: GLenum, bufSize: GLsizei, values: *mut GLushort),
13081>;
13082pub type PFNGLGETNPOLYGONSTIPPLEPROC =
13083    ::std::option::Option<unsafe extern "C" fn(bufSize: GLsizei, pattern: *mut GLubyte)>;
13084pub type PFNGLGETNCOLORTABLEPROC = ::std::option::Option<
13085    unsafe extern "C" fn(
13086        target: GLenum,
13087        format: GLenum,
13088        type_: GLenum,
13089        bufSize: GLsizei,
13090        table: *mut ::std::os::raw::c_void,
13091    ),
13092>;
13093pub type PFNGLGETNCONVOLUTIONFILTERPROC = ::std::option::Option<
13094    unsafe extern "C" fn(
13095        target: GLenum,
13096        format: GLenum,
13097        type_: GLenum,
13098        bufSize: GLsizei,
13099        image: *mut ::std::os::raw::c_void,
13100    ),
13101>;
13102pub type PFNGLGETNSEPARABLEFILTERPROC = ::std::option::Option<
13103    unsafe extern "C" fn(
13104        target: GLenum,
13105        format: GLenum,
13106        type_: GLenum,
13107        rowBufSize: GLsizei,
13108        row: *mut ::std::os::raw::c_void,
13109        columnBufSize: GLsizei,
13110        column: *mut ::std::os::raw::c_void,
13111        span: *mut ::std::os::raw::c_void,
13112    ),
13113>;
13114pub type PFNGLGETNHISTOGRAMPROC = ::std::option::Option<
13115    unsafe extern "C" fn(
13116        target: GLenum,
13117        reset: GLboolean,
13118        format: GLenum,
13119        type_: GLenum,
13120        bufSize: GLsizei,
13121        values: *mut ::std::os::raw::c_void,
13122    ),
13123>;
13124pub type PFNGLGETNMINMAXPROC = ::std::option::Option<
13125    unsafe extern "C" fn(
13126        target: GLenum,
13127        reset: GLboolean,
13128        format: GLenum,
13129        type_: GLenum,
13130        bufSize: GLsizei,
13131        values: *mut ::std::os::raw::c_void,
13132    ),
13133>;
13134pub type PFNGLTEXTUREBARRIERPROC = ::std::option::Option<unsafe extern "C" fn()>;
13135extern "C" {
13136    pub fn glClipControl(origin: GLenum, depth: GLenum);
13137}
13138extern "C" {
13139    pub fn glCreateTransformFeedbacks(n: GLsizei, ids: *mut GLuint);
13140}
13141extern "C" {
13142    pub fn glTransformFeedbackBufferBase(xfb: GLuint, index: GLuint, buffer: GLuint);
13143}
13144extern "C" {
13145    pub fn glTransformFeedbackBufferRange(
13146        xfb: GLuint,
13147        index: GLuint,
13148        buffer: GLuint,
13149        offset: GLintptr,
13150        size: GLsizeiptr,
13151    );
13152}
13153extern "C" {
13154    pub fn glGetTransformFeedbackiv(xfb: GLuint, pname: GLenum, param: *mut GLint);
13155}
13156extern "C" {
13157    pub fn glGetTransformFeedbacki_v(xfb: GLuint, pname: GLenum, index: GLuint, param: *mut GLint);
13158}
13159extern "C" {
13160    pub fn glGetTransformFeedbacki64_v(
13161        xfb: GLuint,
13162        pname: GLenum,
13163        index: GLuint,
13164        param: *mut GLint64,
13165    );
13166}
13167extern "C" {
13168    pub fn glCreateBuffers(n: GLsizei, buffers: *mut GLuint);
13169}
13170extern "C" {
13171    pub fn glNamedBufferStorage(
13172        buffer: GLuint,
13173        size: GLsizeiptr,
13174        data: *const ::std::os::raw::c_void,
13175        flags: GLbitfield,
13176    );
13177}
13178extern "C" {
13179    pub fn glNamedBufferData(
13180        buffer: GLuint,
13181        size: GLsizeiptr,
13182        data: *const ::std::os::raw::c_void,
13183        usage: GLenum,
13184    );
13185}
13186extern "C" {
13187    pub fn glNamedBufferSubData(
13188        buffer: GLuint,
13189        offset: GLintptr,
13190        size: GLsizeiptr,
13191        data: *const ::std::os::raw::c_void,
13192    );
13193}
13194extern "C" {
13195    pub fn glCopyNamedBufferSubData(
13196        readBuffer: GLuint,
13197        writeBuffer: GLuint,
13198        readOffset: GLintptr,
13199        writeOffset: GLintptr,
13200        size: GLsizeiptr,
13201    );
13202}
13203extern "C" {
13204    pub fn glClearNamedBufferData(
13205        buffer: GLuint,
13206        internalformat: GLenum,
13207        format: GLenum,
13208        type_: GLenum,
13209        data: *const ::std::os::raw::c_void,
13210    );
13211}
13212extern "C" {
13213    pub fn glClearNamedBufferSubData(
13214        buffer: GLuint,
13215        internalformat: GLenum,
13216        offset: GLintptr,
13217        size: GLsizeiptr,
13218        format: GLenum,
13219        type_: GLenum,
13220        data: *const ::std::os::raw::c_void,
13221    );
13222}
13223extern "C" {
13224    pub fn glMapNamedBuffer(buffer: GLuint, access: GLenum) -> *mut ::std::os::raw::c_void;
13225}
13226extern "C" {
13227    pub fn glMapNamedBufferRange(
13228        buffer: GLuint,
13229        offset: GLintptr,
13230        length: GLsizeiptr,
13231        access: GLbitfield,
13232    ) -> *mut ::std::os::raw::c_void;
13233}
13234extern "C" {
13235    pub fn glUnmapNamedBuffer(buffer: GLuint) -> GLboolean;
13236}
13237extern "C" {
13238    pub fn glFlushMappedNamedBufferRange(buffer: GLuint, offset: GLintptr, length: GLsizeiptr);
13239}
13240extern "C" {
13241    pub fn glGetNamedBufferParameteriv(buffer: GLuint, pname: GLenum, params: *mut GLint);
13242}
13243extern "C" {
13244    pub fn glGetNamedBufferParameteri64v(buffer: GLuint, pname: GLenum, params: *mut GLint64);
13245}
13246extern "C" {
13247    pub fn glGetNamedBufferPointerv(
13248        buffer: GLuint,
13249        pname: GLenum,
13250        params: *mut *mut ::std::os::raw::c_void,
13251    );
13252}
13253extern "C" {
13254    pub fn glGetNamedBufferSubData(
13255        buffer: GLuint,
13256        offset: GLintptr,
13257        size: GLsizeiptr,
13258        data: *mut ::std::os::raw::c_void,
13259    );
13260}
13261extern "C" {
13262    pub fn glCreateFramebuffers(n: GLsizei, framebuffers: *mut GLuint);
13263}
13264extern "C" {
13265    pub fn glNamedFramebufferRenderbuffer(
13266        framebuffer: GLuint,
13267        attachment: GLenum,
13268        renderbuffertarget: GLenum,
13269        renderbuffer: GLuint,
13270    );
13271}
13272extern "C" {
13273    pub fn glNamedFramebufferParameteri(framebuffer: GLuint, pname: GLenum, param: GLint);
13274}
13275extern "C" {
13276    pub fn glNamedFramebufferTexture(
13277        framebuffer: GLuint,
13278        attachment: GLenum,
13279        texture: GLuint,
13280        level: GLint,
13281    );
13282}
13283extern "C" {
13284    pub fn glNamedFramebufferTextureLayer(
13285        framebuffer: GLuint,
13286        attachment: GLenum,
13287        texture: GLuint,
13288        level: GLint,
13289        layer: GLint,
13290    );
13291}
13292extern "C" {
13293    pub fn glNamedFramebufferDrawBuffer(framebuffer: GLuint, buf: GLenum);
13294}
13295extern "C" {
13296    pub fn glNamedFramebufferDrawBuffers(framebuffer: GLuint, n: GLsizei, bufs: *const GLenum);
13297}
13298extern "C" {
13299    pub fn glNamedFramebufferReadBuffer(framebuffer: GLuint, src: GLenum);
13300}
13301extern "C" {
13302    pub fn glInvalidateNamedFramebufferData(
13303        framebuffer: GLuint,
13304        numAttachments: GLsizei,
13305        attachments: *const GLenum,
13306    );
13307}
13308extern "C" {
13309    pub fn glInvalidateNamedFramebufferSubData(
13310        framebuffer: GLuint,
13311        numAttachments: GLsizei,
13312        attachments: *const GLenum,
13313        x: GLint,
13314        y: GLint,
13315        width: GLsizei,
13316        height: GLsizei,
13317    );
13318}
13319extern "C" {
13320    pub fn glClearNamedFramebufferiv(
13321        framebuffer: GLuint,
13322        buffer: GLenum,
13323        drawbuffer: GLint,
13324        value: *const GLint,
13325    );
13326}
13327extern "C" {
13328    pub fn glClearNamedFramebufferuiv(
13329        framebuffer: GLuint,
13330        buffer: GLenum,
13331        drawbuffer: GLint,
13332        value: *const GLuint,
13333    );
13334}
13335extern "C" {
13336    pub fn glClearNamedFramebufferfv(
13337        framebuffer: GLuint,
13338        buffer: GLenum,
13339        drawbuffer: GLint,
13340        value: *const GLfloat,
13341    );
13342}
13343extern "C" {
13344    pub fn glClearNamedFramebufferfi(
13345        framebuffer: GLuint,
13346        buffer: GLenum,
13347        drawbuffer: GLint,
13348        depth: GLfloat,
13349        stencil: GLint,
13350    );
13351}
13352extern "C" {
13353    pub fn glBlitNamedFramebuffer(
13354        readFramebuffer: GLuint,
13355        drawFramebuffer: GLuint,
13356        srcX0: GLint,
13357        srcY0: GLint,
13358        srcX1: GLint,
13359        srcY1: GLint,
13360        dstX0: GLint,
13361        dstY0: GLint,
13362        dstX1: GLint,
13363        dstY1: GLint,
13364        mask: GLbitfield,
13365        filter: GLenum,
13366    );
13367}
13368extern "C" {
13369    pub fn glCheckNamedFramebufferStatus(framebuffer: GLuint, target: GLenum) -> GLenum;
13370}
13371extern "C" {
13372    pub fn glGetNamedFramebufferParameteriv(framebuffer: GLuint, pname: GLenum, param: *mut GLint);
13373}
13374extern "C" {
13375    pub fn glGetNamedFramebufferAttachmentParameteriv(
13376        framebuffer: GLuint,
13377        attachment: GLenum,
13378        pname: GLenum,
13379        params: *mut GLint,
13380    );
13381}
13382extern "C" {
13383    pub fn glCreateRenderbuffers(n: GLsizei, renderbuffers: *mut GLuint);
13384}
13385extern "C" {
13386    pub fn glNamedRenderbufferStorage(
13387        renderbuffer: GLuint,
13388        internalformat: GLenum,
13389        width: GLsizei,
13390        height: GLsizei,
13391    );
13392}
13393extern "C" {
13394    pub fn glNamedRenderbufferStorageMultisample(
13395        renderbuffer: GLuint,
13396        samples: GLsizei,
13397        internalformat: GLenum,
13398        width: GLsizei,
13399        height: GLsizei,
13400    );
13401}
13402extern "C" {
13403    pub fn glGetNamedRenderbufferParameteriv(
13404        renderbuffer: GLuint,
13405        pname: GLenum,
13406        params: *mut GLint,
13407    );
13408}
13409extern "C" {
13410    pub fn glCreateTextures(target: GLenum, n: GLsizei, textures: *mut GLuint);
13411}
13412extern "C" {
13413    pub fn glTextureBuffer(texture: GLuint, internalformat: GLenum, buffer: GLuint);
13414}
13415extern "C" {
13416    pub fn glTextureBufferRange(
13417        texture: GLuint,
13418        internalformat: GLenum,
13419        buffer: GLuint,
13420        offset: GLintptr,
13421        size: GLsizeiptr,
13422    );
13423}
13424extern "C" {
13425    pub fn glTextureStorage1D(
13426        texture: GLuint,
13427        levels: GLsizei,
13428        internalformat: GLenum,
13429        width: GLsizei,
13430    );
13431}
13432extern "C" {
13433    pub fn glTextureStorage2D(
13434        texture: GLuint,
13435        levels: GLsizei,
13436        internalformat: GLenum,
13437        width: GLsizei,
13438        height: GLsizei,
13439    );
13440}
13441extern "C" {
13442    pub fn glTextureStorage3D(
13443        texture: GLuint,
13444        levels: GLsizei,
13445        internalformat: GLenum,
13446        width: GLsizei,
13447        height: GLsizei,
13448        depth: GLsizei,
13449    );
13450}
13451extern "C" {
13452    pub fn glTextureStorage2DMultisample(
13453        texture: GLuint,
13454        samples: GLsizei,
13455        internalformat: GLenum,
13456        width: GLsizei,
13457        height: GLsizei,
13458        fixedsamplelocations: GLboolean,
13459    );
13460}
13461extern "C" {
13462    pub fn glTextureStorage3DMultisample(
13463        texture: GLuint,
13464        samples: GLsizei,
13465        internalformat: GLenum,
13466        width: GLsizei,
13467        height: GLsizei,
13468        depth: GLsizei,
13469        fixedsamplelocations: GLboolean,
13470    );
13471}
13472extern "C" {
13473    pub fn glTextureSubImage1D(
13474        texture: GLuint,
13475        level: GLint,
13476        xoffset: GLint,
13477        width: GLsizei,
13478        format: GLenum,
13479        type_: GLenum,
13480        pixels: *const ::std::os::raw::c_void,
13481    );
13482}
13483extern "C" {
13484    pub fn glTextureSubImage2D(
13485        texture: GLuint,
13486        level: GLint,
13487        xoffset: GLint,
13488        yoffset: GLint,
13489        width: GLsizei,
13490        height: GLsizei,
13491        format: GLenum,
13492        type_: GLenum,
13493        pixels: *const ::std::os::raw::c_void,
13494    );
13495}
13496extern "C" {
13497    pub fn glTextureSubImage3D(
13498        texture: GLuint,
13499        level: GLint,
13500        xoffset: GLint,
13501        yoffset: GLint,
13502        zoffset: GLint,
13503        width: GLsizei,
13504        height: GLsizei,
13505        depth: GLsizei,
13506        format: GLenum,
13507        type_: GLenum,
13508        pixels: *const ::std::os::raw::c_void,
13509    );
13510}
13511extern "C" {
13512    pub fn glCompressedTextureSubImage1D(
13513        texture: GLuint,
13514        level: GLint,
13515        xoffset: GLint,
13516        width: GLsizei,
13517        format: GLenum,
13518        imageSize: GLsizei,
13519        data: *const ::std::os::raw::c_void,
13520    );
13521}
13522extern "C" {
13523    pub fn glCompressedTextureSubImage2D(
13524        texture: GLuint,
13525        level: GLint,
13526        xoffset: GLint,
13527        yoffset: GLint,
13528        width: GLsizei,
13529        height: GLsizei,
13530        format: GLenum,
13531        imageSize: GLsizei,
13532        data: *const ::std::os::raw::c_void,
13533    );
13534}
13535extern "C" {
13536    pub fn glCompressedTextureSubImage3D(
13537        texture: GLuint,
13538        level: GLint,
13539        xoffset: GLint,
13540        yoffset: GLint,
13541        zoffset: GLint,
13542        width: GLsizei,
13543        height: GLsizei,
13544        depth: GLsizei,
13545        format: GLenum,
13546        imageSize: GLsizei,
13547        data: *const ::std::os::raw::c_void,
13548    );
13549}
13550extern "C" {
13551    pub fn glCopyTextureSubImage1D(
13552        texture: GLuint,
13553        level: GLint,
13554        xoffset: GLint,
13555        x: GLint,
13556        y: GLint,
13557        width: GLsizei,
13558    );
13559}
13560extern "C" {
13561    pub fn glCopyTextureSubImage2D(
13562        texture: GLuint,
13563        level: GLint,
13564        xoffset: GLint,
13565        yoffset: GLint,
13566        x: GLint,
13567        y: GLint,
13568        width: GLsizei,
13569        height: GLsizei,
13570    );
13571}
13572extern "C" {
13573    pub fn glCopyTextureSubImage3D(
13574        texture: GLuint,
13575        level: GLint,
13576        xoffset: GLint,
13577        yoffset: GLint,
13578        zoffset: GLint,
13579        x: GLint,
13580        y: GLint,
13581        width: GLsizei,
13582        height: GLsizei,
13583    );
13584}
13585extern "C" {
13586    pub fn glTextureParameterf(texture: GLuint, pname: GLenum, param: GLfloat);
13587}
13588extern "C" {
13589    pub fn glTextureParameterfv(texture: GLuint, pname: GLenum, param: *const GLfloat);
13590}
13591extern "C" {
13592    pub fn glTextureParameteri(texture: GLuint, pname: GLenum, param: GLint);
13593}
13594extern "C" {
13595    pub fn glTextureParameterIiv(texture: GLuint, pname: GLenum, params: *const GLint);
13596}
13597extern "C" {
13598    pub fn glTextureParameterIuiv(texture: GLuint, pname: GLenum, params: *const GLuint);
13599}
13600extern "C" {
13601    pub fn glTextureParameteriv(texture: GLuint, pname: GLenum, param: *const GLint);
13602}
13603extern "C" {
13604    pub fn glGenerateTextureMipmap(texture: GLuint);
13605}
13606extern "C" {
13607    pub fn glBindTextureUnit(unit: GLuint, texture: GLuint);
13608}
13609extern "C" {
13610    pub fn glGetTextureImage(
13611        texture: GLuint,
13612        level: GLint,
13613        format: GLenum,
13614        type_: GLenum,
13615        bufSize: GLsizei,
13616        pixels: *mut ::std::os::raw::c_void,
13617    );
13618}
13619extern "C" {
13620    pub fn glGetCompressedTextureImage(
13621        texture: GLuint,
13622        level: GLint,
13623        bufSize: GLsizei,
13624        pixels: *mut ::std::os::raw::c_void,
13625    );
13626}
13627extern "C" {
13628    pub fn glGetTextureLevelParameterfv(
13629        texture: GLuint,
13630        level: GLint,
13631        pname: GLenum,
13632        params: *mut GLfloat,
13633    );
13634}
13635extern "C" {
13636    pub fn glGetTextureLevelParameteriv(
13637        texture: GLuint,
13638        level: GLint,
13639        pname: GLenum,
13640        params: *mut GLint,
13641    );
13642}
13643extern "C" {
13644    pub fn glGetTextureParameterfv(texture: GLuint, pname: GLenum, params: *mut GLfloat);
13645}
13646extern "C" {
13647    pub fn glGetTextureParameterIiv(texture: GLuint, pname: GLenum, params: *mut GLint);
13648}
13649extern "C" {
13650    pub fn glGetTextureParameterIuiv(texture: GLuint, pname: GLenum, params: *mut GLuint);
13651}
13652extern "C" {
13653    pub fn glGetTextureParameteriv(texture: GLuint, pname: GLenum, params: *mut GLint);
13654}
13655extern "C" {
13656    pub fn glCreateVertexArrays(n: GLsizei, arrays: *mut GLuint);
13657}
13658extern "C" {
13659    pub fn glDisableVertexArrayAttrib(vaobj: GLuint, index: GLuint);
13660}
13661extern "C" {
13662    pub fn glEnableVertexArrayAttrib(vaobj: GLuint, index: GLuint);
13663}
13664extern "C" {
13665    pub fn glVertexArrayElementBuffer(vaobj: GLuint, buffer: GLuint);
13666}
13667extern "C" {
13668    pub fn glVertexArrayVertexBuffer(
13669        vaobj: GLuint,
13670        bindingindex: GLuint,
13671        buffer: GLuint,
13672        offset: GLintptr,
13673        stride: GLsizei,
13674    );
13675}
13676extern "C" {
13677    pub fn glVertexArrayVertexBuffers(
13678        vaobj: GLuint,
13679        first: GLuint,
13680        count: GLsizei,
13681        buffers: *const GLuint,
13682        offsets: *const GLintptr,
13683        strides: *const GLsizei,
13684    );
13685}
13686extern "C" {
13687    pub fn glVertexArrayAttribBinding(vaobj: GLuint, attribindex: GLuint, bindingindex: GLuint);
13688}
13689extern "C" {
13690    pub fn glVertexArrayAttribFormat(
13691        vaobj: GLuint,
13692        attribindex: GLuint,
13693        size: GLint,
13694        type_: GLenum,
13695        normalized: GLboolean,
13696        relativeoffset: GLuint,
13697    );
13698}
13699extern "C" {
13700    pub fn glVertexArrayAttribIFormat(
13701        vaobj: GLuint,
13702        attribindex: GLuint,
13703        size: GLint,
13704        type_: GLenum,
13705        relativeoffset: GLuint,
13706    );
13707}
13708extern "C" {
13709    pub fn glVertexArrayAttribLFormat(
13710        vaobj: GLuint,
13711        attribindex: GLuint,
13712        size: GLint,
13713        type_: GLenum,
13714        relativeoffset: GLuint,
13715    );
13716}
13717extern "C" {
13718    pub fn glVertexArrayBindingDivisor(vaobj: GLuint, bindingindex: GLuint, divisor: GLuint);
13719}
13720extern "C" {
13721    pub fn glGetVertexArrayiv(vaobj: GLuint, pname: GLenum, param: *mut GLint);
13722}
13723extern "C" {
13724    pub fn glGetVertexArrayIndexediv(
13725        vaobj: GLuint,
13726        index: GLuint,
13727        pname: GLenum,
13728        param: *mut GLint,
13729    );
13730}
13731extern "C" {
13732    pub fn glGetVertexArrayIndexed64iv(
13733        vaobj: GLuint,
13734        index: GLuint,
13735        pname: GLenum,
13736        param: *mut GLint64,
13737    );
13738}
13739extern "C" {
13740    pub fn glCreateSamplers(n: GLsizei, samplers: *mut GLuint);
13741}
13742extern "C" {
13743    pub fn glCreateProgramPipelines(n: GLsizei, pipelines: *mut GLuint);
13744}
13745extern "C" {
13746    pub fn glCreateQueries(target: GLenum, n: GLsizei, ids: *mut GLuint);
13747}
13748extern "C" {
13749    pub fn glGetQueryBufferObjecti64v(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr);
13750}
13751extern "C" {
13752    pub fn glGetQueryBufferObjectiv(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr);
13753}
13754extern "C" {
13755    pub fn glGetQueryBufferObjectui64v(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr);
13756}
13757extern "C" {
13758    pub fn glGetQueryBufferObjectuiv(id: GLuint, buffer: GLuint, pname: GLenum, offset: GLintptr);
13759}
13760extern "C" {
13761    pub fn glMemoryBarrierByRegion(barriers: GLbitfield);
13762}
13763extern "C" {
13764    pub fn glGetTextureSubImage(
13765        texture: GLuint,
13766        level: GLint,
13767        xoffset: GLint,
13768        yoffset: GLint,
13769        zoffset: GLint,
13770        width: GLsizei,
13771        height: GLsizei,
13772        depth: GLsizei,
13773        format: GLenum,
13774        type_: GLenum,
13775        bufSize: GLsizei,
13776        pixels: *mut ::std::os::raw::c_void,
13777    );
13778}
13779extern "C" {
13780    pub fn glGetCompressedTextureSubImage(
13781        texture: GLuint,
13782        level: GLint,
13783        xoffset: GLint,
13784        yoffset: GLint,
13785        zoffset: GLint,
13786        width: GLsizei,
13787        height: GLsizei,
13788        depth: GLsizei,
13789        bufSize: GLsizei,
13790        pixels: *mut ::std::os::raw::c_void,
13791    );
13792}
13793extern "C" {
13794    pub fn glGetGraphicsResetStatus() -> GLenum;
13795}
13796extern "C" {
13797    pub fn glGetnCompressedTexImage(
13798        target: GLenum,
13799        lod: GLint,
13800        bufSize: GLsizei,
13801        pixels: *mut ::std::os::raw::c_void,
13802    );
13803}
13804extern "C" {
13805    pub fn glGetnTexImage(
13806        target: GLenum,
13807        level: GLint,
13808        format: GLenum,
13809        type_: GLenum,
13810        bufSize: GLsizei,
13811        pixels: *mut ::std::os::raw::c_void,
13812    );
13813}
13814extern "C" {
13815    pub fn glGetnUniformdv(
13816        program: GLuint,
13817        location: GLint,
13818        bufSize: GLsizei,
13819        params: *mut GLdouble,
13820    );
13821}
13822extern "C" {
13823    pub fn glGetnUniformfv(
13824        program: GLuint,
13825        location: GLint,
13826        bufSize: GLsizei,
13827        params: *mut GLfloat,
13828    );
13829}
13830extern "C" {
13831    pub fn glGetnUniformiv(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLint);
13832}
13833extern "C" {
13834    pub fn glGetnUniformuiv(
13835        program: GLuint,
13836        location: GLint,
13837        bufSize: GLsizei,
13838        params: *mut GLuint,
13839    );
13840}
13841extern "C" {
13842    pub fn glReadnPixels(
13843        x: GLint,
13844        y: GLint,
13845        width: GLsizei,
13846        height: GLsizei,
13847        format: GLenum,
13848        type_: GLenum,
13849        bufSize: GLsizei,
13850        data: *mut ::std::os::raw::c_void,
13851    );
13852}
13853extern "C" {
13854    pub fn glGetnMapdv(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLdouble);
13855}
13856extern "C" {
13857    pub fn glGetnMapfv(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLfloat);
13858}
13859extern "C" {
13860    pub fn glGetnMapiv(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLint);
13861}
13862extern "C" {
13863    pub fn glGetnPixelMapfv(map: GLenum, bufSize: GLsizei, values: *mut GLfloat);
13864}
13865extern "C" {
13866    pub fn glGetnPixelMapuiv(map: GLenum, bufSize: GLsizei, values: *mut GLuint);
13867}
13868extern "C" {
13869    pub fn glGetnPixelMapusv(map: GLenum, bufSize: GLsizei, values: *mut GLushort);
13870}
13871extern "C" {
13872    pub fn glGetnPolygonStipple(bufSize: GLsizei, pattern: *mut GLubyte);
13873}
13874extern "C" {
13875    pub fn glGetnColorTable(
13876        target: GLenum,
13877        format: GLenum,
13878        type_: GLenum,
13879        bufSize: GLsizei,
13880        table: *mut ::std::os::raw::c_void,
13881    );
13882}
13883extern "C" {
13884    pub fn glGetnConvolutionFilter(
13885        target: GLenum,
13886        format: GLenum,
13887        type_: GLenum,
13888        bufSize: GLsizei,
13889        image: *mut ::std::os::raw::c_void,
13890    );
13891}
13892extern "C" {
13893    pub fn glGetnSeparableFilter(
13894        target: GLenum,
13895        format: GLenum,
13896        type_: GLenum,
13897        rowBufSize: GLsizei,
13898        row: *mut ::std::os::raw::c_void,
13899        columnBufSize: GLsizei,
13900        column: *mut ::std::os::raw::c_void,
13901        span: *mut ::std::os::raw::c_void,
13902    );
13903}
13904extern "C" {
13905    pub fn glGetnHistogram(
13906        target: GLenum,
13907        reset: GLboolean,
13908        format: GLenum,
13909        type_: GLenum,
13910        bufSize: GLsizei,
13911        values: *mut ::std::os::raw::c_void,
13912    );
13913}
13914extern "C" {
13915    pub fn glGetnMinmax(
13916        target: GLenum,
13917        reset: GLboolean,
13918        format: GLenum,
13919        type_: GLenum,
13920        bufSize: GLsizei,
13921        values: *mut ::std::os::raw::c_void,
13922    );
13923}
13924extern "C" {
13925    pub fn glTextureBarrier();
13926}
13927pub type PFNGLSPECIALIZESHADERPROC = ::std::option::Option<
13928    unsafe extern "C" fn(
13929        shader: GLuint,
13930        pEntryPoint: *const GLchar,
13931        numSpecializationConstants: GLuint,
13932        pConstantIndex: *const GLuint,
13933        pConstantValue: *const GLuint,
13934    ),
13935>;
13936pub type PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC = ::std::option::Option<
13937    unsafe extern "C" fn(
13938        mode: GLenum,
13939        indirect: *const ::std::os::raw::c_void,
13940        drawcount: GLintptr,
13941        maxdrawcount: GLsizei,
13942        stride: GLsizei,
13943    ),
13944>;
13945pub type PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC = ::std::option::Option<
13946    unsafe extern "C" fn(
13947        mode: GLenum,
13948        type_: GLenum,
13949        indirect: *const ::std::os::raw::c_void,
13950        drawcount: GLintptr,
13951        maxdrawcount: GLsizei,
13952        stride: GLsizei,
13953    ),
13954>;
13955pub type PFNGLPOLYGONOFFSETCLAMPPROC =
13956    ::std::option::Option<unsafe extern "C" fn(factor: GLfloat, units: GLfloat, clamp: GLfloat)>;
13957extern "C" {
13958    pub fn glSpecializeShader(
13959        shader: GLuint,
13960        pEntryPoint: *const GLchar,
13961        numSpecializationConstants: GLuint,
13962        pConstantIndex: *const GLuint,
13963        pConstantValue: *const GLuint,
13964    );
13965}
13966extern "C" {
13967    pub fn glMultiDrawArraysIndirectCount(
13968        mode: GLenum,
13969        indirect: *const ::std::os::raw::c_void,
13970        drawcount: GLintptr,
13971        maxdrawcount: GLsizei,
13972        stride: GLsizei,
13973    );
13974}
13975extern "C" {
13976    pub fn glMultiDrawElementsIndirectCount(
13977        mode: GLenum,
13978        type_: GLenum,
13979        indirect: *const ::std::os::raw::c_void,
13980        drawcount: GLintptr,
13981        maxdrawcount: GLsizei,
13982        stride: GLsizei,
13983    );
13984}
13985extern "C" {
13986    pub fn glPolygonOffsetClamp(factor: GLfloat, units: GLfloat, clamp: GLfloat);
13987}
13988pub type PFNGLPRIMITIVEBOUNDINGBOXARBPROC = ::std::option::Option<
13989    unsafe extern "C" fn(
13990        minX: GLfloat,
13991        minY: GLfloat,
13992        minZ: GLfloat,
13993        minW: GLfloat,
13994        maxX: GLfloat,
13995        maxY: GLfloat,
13996        maxZ: GLfloat,
13997        maxW: GLfloat,
13998    ),
13999>;
14000extern "C" {
14001    pub fn glPrimitiveBoundingBoxARB(
14002        minX: GLfloat,
14003        minY: GLfloat,
14004        minZ: GLfloat,
14005        minW: GLfloat,
14006        maxX: GLfloat,
14007        maxY: GLfloat,
14008        maxZ: GLfloat,
14009        maxW: GLfloat,
14010    );
14011}
14012pub type GLuint64EXT = khronos_uint64_t;
14013pub type PFNGLGETTEXTUREHANDLEARBPROC =
14014    ::std::option::Option<unsafe extern "C" fn(texture: GLuint) -> GLuint64>;
14015pub type PFNGLGETTEXTURESAMPLERHANDLEARBPROC =
14016    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, sampler: GLuint) -> GLuint64>;
14017pub type PFNGLMAKETEXTUREHANDLERESIDENTARBPROC =
14018    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64)>;
14019pub type PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC =
14020    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64)>;
14021pub type PFNGLGETIMAGEHANDLEARBPROC = ::std::option::Option<
14022    unsafe extern "C" fn(
14023        texture: GLuint,
14024        level: GLint,
14025        layered: GLboolean,
14026        layer: GLint,
14027        format: GLenum,
14028    ) -> GLuint64,
14029>;
14030pub type PFNGLMAKEIMAGEHANDLERESIDENTARBPROC =
14031    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64, access: GLenum)>;
14032pub type PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC =
14033    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64)>;
14034pub type PFNGLUNIFORMHANDLEUI64ARBPROC =
14035    ::std::option::Option<unsafe extern "C" fn(location: GLint, value: GLuint64)>;
14036pub type PFNGLUNIFORMHANDLEUI64VARBPROC = ::std::option::Option<
14037    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64),
14038>;
14039pub type PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC =
14040    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, value: GLuint64)>;
14041pub type PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC = ::std::option::Option<
14042    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, values: *const GLuint64),
14043>;
14044pub type PFNGLISTEXTUREHANDLERESIDENTARBPROC =
14045    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64) -> GLboolean>;
14046pub type PFNGLISIMAGEHANDLERESIDENTARBPROC =
14047    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64) -> GLboolean>;
14048pub type PFNGLVERTEXATTRIBL1UI64ARBPROC =
14049    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint64EXT)>;
14050pub type PFNGLVERTEXATTRIBL1UI64VARBPROC =
14051    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint64EXT)>;
14052pub type PFNGLGETVERTEXATTRIBLUI64VARBPROC = ::std::option::Option<
14053    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLuint64EXT),
14054>;
14055extern "C" {
14056    pub fn glGetTextureHandleARB(texture: GLuint) -> GLuint64;
14057}
14058extern "C" {
14059    pub fn glGetTextureSamplerHandleARB(texture: GLuint, sampler: GLuint) -> GLuint64;
14060}
14061extern "C" {
14062    pub fn glMakeTextureHandleResidentARB(handle: GLuint64);
14063}
14064extern "C" {
14065    pub fn glMakeTextureHandleNonResidentARB(handle: GLuint64);
14066}
14067extern "C" {
14068    pub fn glGetImageHandleARB(
14069        texture: GLuint,
14070        level: GLint,
14071        layered: GLboolean,
14072        layer: GLint,
14073        format: GLenum,
14074    ) -> GLuint64;
14075}
14076extern "C" {
14077    pub fn glMakeImageHandleResidentARB(handle: GLuint64, access: GLenum);
14078}
14079extern "C" {
14080    pub fn glMakeImageHandleNonResidentARB(handle: GLuint64);
14081}
14082extern "C" {
14083    pub fn glUniformHandleui64ARB(location: GLint, value: GLuint64);
14084}
14085extern "C" {
14086    pub fn glUniformHandleui64vARB(location: GLint, count: GLsizei, value: *const GLuint64);
14087}
14088extern "C" {
14089    pub fn glProgramUniformHandleui64ARB(program: GLuint, location: GLint, value: GLuint64);
14090}
14091extern "C" {
14092    pub fn glProgramUniformHandleui64vARB(
14093        program: GLuint,
14094        location: GLint,
14095        count: GLsizei,
14096        values: *const GLuint64,
14097    );
14098}
14099extern "C" {
14100    pub fn glIsTextureHandleResidentARB(handle: GLuint64) -> GLboolean;
14101}
14102extern "C" {
14103    pub fn glIsImageHandleResidentARB(handle: GLuint64) -> GLboolean;
14104}
14105extern "C" {
14106    pub fn glVertexAttribL1ui64ARB(index: GLuint, x: GLuint64EXT);
14107}
14108extern "C" {
14109    pub fn glVertexAttribL1ui64vARB(index: GLuint, v: *const GLuint64EXT);
14110}
14111extern "C" {
14112    pub fn glGetVertexAttribLui64vARB(index: GLuint, pname: GLenum, params: *mut GLuint64EXT);
14113}
14114#[repr(C)]
14115#[derive(Debug, Copy, Clone)]
14116pub struct _cl_context {
14117    _unused: [u8; 0],
14118}
14119#[repr(C)]
14120#[derive(Debug, Copy, Clone)]
14121pub struct _cl_event {
14122    _unused: [u8; 0],
14123}
14124pub type PFNGLCREATESYNCFROMCLEVENTARBPROC = ::std::option::Option<
14125    unsafe extern "C" fn(
14126        context: *mut _cl_context,
14127        event: *mut _cl_event,
14128        flags: GLbitfield,
14129    ) -> GLsync,
14130>;
14131extern "C" {
14132    pub fn glCreateSyncFromCLeventARB(
14133        context: *mut _cl_context,
14134        event: *mut _cl_event,
14135        flags: GLbitfield,
14136    ) -> GLsync;
14137}
14138pub type PFNGLCLAMPCOLORARBPROC =
14139    ::std::option::Option<unsafe extern "C" fn(target: GLenum, clamp: GLenum)>;
14140extern "C" {
14141    pub fn glClampColorARB(target: GLenum, clamp: GLenum);
14142}
14143pub type PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC = ::std::option::Option<
14144    unsafe extern "C" fn(
14145        num_groups_x: GLuint,
14146        num_groups_y: GLuint,
14147        num_groups_z: GLuint,
14148        group_size_x: GLuint,
14149        group_size_y: GLuint,
14150        group_size_z: GLuint,
14151    ),
14152>;
14153extern "C" {
14154    pub fn glDispatchComputeGroupSizeARB(
14155        num_groups_x: GLuint,
14156        num_groups_y: GLuint,
14157        num_groups_z: GLuint,
14158        group_size_x: GLuint,
14159        group_size_y: GLuint,
14160        group_size_z: GLuint,
14161    );
14162}
14163pub type GLDEBUGPROCARB = ::std::option::Option<
14164    unsafe extern "C" fn(
14165        source: GLenum,
14166        type_: GLenum,
14167        id: GLuint,
14168        severity: GLenum,
14169        length: GLsizei,
14170        message: *const GLchar,
14171        userParam: *const ::std::os::raw::c_void,
14172    ),
14173>;
14174pub type PFNGLDEBUGMESSAGECONTROLARBPROC = ::std::option::Option<
14175    unsafe extern "C" fn(
14176        source: GLenum,
14177        type_: GLenum,
14178        severity: GLenum,
14179        count: GLsizei,
14180        ids: *const GLuint,
14181        enabled: GLboolean,
14182    ),
14183>;
14184pub type PFNGLDEBUGMESSAGEINSERTARBPROC = ::std::option::Option<
14185    unsafe extern "C" fn(
14186        source: GLenum,
14187        type_: GLenum,
14188        id: GLuint,
14189        severity: GLenum,
14190        length: GLsizei,
14191        buf: *const GLchar,
14192    ),
14193>;
14194pub type PFNGLDEBUGMESSAGECALLBACKARBPROC = ::std::option::Option<
14195    unsafe extern "C" fn(callback: GLDEBUGPROCARB, userParam: *const ::std::os::raw::c_void),
14196>;
14197pub type PFNGLGETDEBUGMESSAGELOGARBPROC = ::std::option::Option<
14198    unsafe extern "C" fn(
14199        count: GLuint,
14200        bufSize: GLsizei,
14201        sources: *mut GLenum,
14202        types: *mut GLenum,
14203        ids: *mut GLuint,
14204        severities: *mut GLenum,
14205        lengths: *mut GLsizei,
14206        messageLog: *mut GLchar,
14207    ) -> GLuint,
14208>;
14209extern "C" {
14210    pub fn glDebugMessageControlARB(
14211        source: GLenum,
14212        type_: GLenum,
14213        severity: GLenum,
14214        count: GLsizei,
14215        ids: *const GLuint,
14216        enabled: GLboolean,
14217    );
14218}
14219extern "C" {
14220    pub fn glDebugMessageInsertARB(
14221        source: GLenum,
14222        type_: GLenum,
14223        id: GLuint,
14224        severity: GLenum,
14225        length: GLsizei,
14226        buf: *const GLchar,
14227    );
14228}
14229extern "C" {
14230    pub fn glDebugMessageCallbackARB(
14231        callback: GLDEBUGPROCARB,
14232        userParam: *const ::std::os::raw::c_void,
14233    );
14234}
14235extern "C" {
14236    pub fn glGetDebugMessageLogARB(
14237        count: GLuint,
14238        bufSize: GLsizei,
14239        sources: *mut GLenum,
14240        types: *mut GLenum,
14241        ids: *mut GLuint,
14242        severities: *mut GLenum,
14243        lengths: *mut GLsizei,
14244        messageLog: *mut GLchar,
14245    ) -> GLuint;
14246}
14247pub type PFNGLDRAWBUFFERSARBPROC =
14248    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, bufs: *const GLenum)>;
14249extern "C" {
14250    pub fn glDrawBuffersARB(n: GLsizei, bufs: *const GLenum);
14251}
14252pub type PFNGLBLENDEQUATIONIARBPROC =
14253    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, mode: GLenum)>;
14254pub type PFNGLBLENDEQUATIONSEPARATEIARBPROC =
14255    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum)>;
14256pub type PFNGLBLENDFUNCIARBPROC =
14257    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, src: GLenum, dst: GLenum)>;
14258pub type PFNGLBLENDFUNCSEPARATEIARBPROC = ::std::option::Option<
14259    unsafe extern "C" fn(
14260        buf: GLuint,
14261        srcRGB: GLenum,
14262        dstRGB: GLenum,
14263        srcAlpha: GLenum,
14264        dstAlpha: GLenum,
14265    ),
14266>;
14267extern "C" {
14268    pub fn glBlendEquationiARB(buf: GLuint, mode: GLenum);
14269}
14270extern "C" {
14271    pub fn glBlendEquationSeparateiARB(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum);
14272}
14273extern "C" {
14274    pub fn glBlendFunciARB(buf: GLuint, src: GLenum, dst: GLenum);
14275}
14276extern "C" {
14277    pub fn glBlendFuncSeparateiARB(
14278        buf: GLuint,
14279        srcRGB: GLenum,
14280        dstRGB: GLenum,
14281        srcAlpha: GLenum,
14282        dstAlpha: GLenum,
14283    );
14284}
14285pub type PFNGLDRAWARRAYSINSTANCEDARBPROC = ::std::option::Option<
14286    unsafe extern "C" fn(mode: GLenum, first: GLint, count: GLsizei, primcount: GLsizei),
14287>;
14288pub type PFNGLDRAWELEMENTSINSTANCEDARBPROC = ::std::option::Option<
14289    unsafe extern "C" fn(
14290        mode: GLenum,
14291        count: GLsizei,
14292        type_: GLenum,
14293        indices: *const ::std::os::raw::c_void,
14294        primcount: GLsizei,
14295    ),
14296>;
14297extern "C" {
14298    pub fn glDrawArraysInstancedARB(mode: GLenum, first: GLint, count: GLsizei, primcount: GLsizei);
14299}
14300extern "C" {
14301    pub fn glDrawElementsInstancedARB(
14302        mode: GLenum,
14303        count: GLsizei,
14304        type_: GLenum,
14305        indices: *const ::std::os::raw::c_void,
14306        primcount: GLsizei,
14307    );
14308}
14309pub type PFNGLPROGRAMSTRINGARBPROC = ::std::option::Option<
14310    unsafe extern "C" fn(
14311        target: GLenum,
14312        format: GLenum,
14313        len: GLsizei,
14314        string: *const ::std::os::raw::c_void,
14315    ),
14316>;
14317pub type PFNGLBINDPROGRAMARBPROC =
14318    ::std::option::Option<unsafe extern "C" fn(target: GLenum, program: GLuint)>;
14319pub type PFNGLDELETEPROGRAMSARBPROC =
14320    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, programs: *const GLuint)>;
14321pub type PFNGLGENPROGRAMSARBPROC =
14322    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, programs: *mut GLuint)>;
14323pub type PFNGLPROGRAMENVPARAMETER4DARBPROC = ::std::option::Option<
14324    unsafe extern "C" fn(
14325        target: GLenum,
14326        index: GLuint,
14327        x: GLdouble,
14328        y: GLdouble,
14329        z: GLdouble,
14330        w: GLdouble,
14331    ),
14332>;
14333pub type PFNGLPROGRAMENVPARAMETER4DVARBPROC = ::std::option::Option<
14334    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLdouble),
14335>;
14336pub type PFNGLPROGRAMENVPARAMETER4FARBPROC = ::std::option::Option<
14337    unsafe extern "C" fn(
14338        target: GLenum,
14339        index: GLuint,
14340        x: GLfloat,
14341        y: GLfloat,
14342        z: GLfloat,
14343        w: GLfloat,
14344    ),
14345>;
14346pub type PFNGLPROGRAMENVPARAMETER4FVARBPROC = ::std::option::Option<
14347    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLfloat),
14348>;
14349pub type PFNGLPROGRAMLOCALPARAMETER4DARBPROC = ::std::option::Option<
14350    unsafe extern "C" fn(
14351        target: GLenum,
14352        index: GLuint,
14353        x: GLdouble,
14354        y: GLdouble,
14355        z: GLdouble,
14356        w: GLdouble,
14357    ),
14358>;
14359pub type PFNGLPROGRAMLOCALPARAMETER4DVARBPROC = ::std::option::Option<
14360    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLdouble),
14361>;
14362pub type PFNGLPROGRAMLOCALPARAMETER4FARBPROC = ::std::option::Option<
14363    unsafe extern "C" fn(
14364        target: GLenum,
14365        index: GLuint,
14366        x: GLfloat,
14367        y: GLfloat,
14368        z: GLfloat,
14369        w: GLfloat,
14370    ),
14371>;
14372pub type PFNGLPROGRAMLOCALPARAMETER4FVARBPROC = ::std::option::Option<
14373    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLfloat),
14374>;
14375pub type PFNGLGETPROGRAMENVPARAMETERDVARBPROC = ::std::option::Option<
14376    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLdouble),
14377>;
14378pub type PFNGLGETPROGRAMENVPARAMETERFVARBPROC = ::std::option::Option<
14379    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLfloat),
14380>;
14381pub type PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC = ::std::option::Option<
14382    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLdouble),
14383>;
14384pub type PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC = ::std::option::Option<
14385    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLfloat),
14386>;
14387pub type PFNGLGETPROGRAMIVARBPROC =
14388    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
14389pub type PFNGLGETPROGRAMSTRINGARBPROC = ::std::option::Option<
14390    unsafe extern "C" fn(target: GLenum, pname: GLenum, string: *mut ::std::os::raw::c_void),
14391>;
14392pub type PFNGLISPROGRAMARBPROC =
14393    ::std::option::Option<unsafe extern "C" fn(program: GLuint) -> GLboolean>;
14394extern "C" {
14395    pub fn glProgramStringARB(
14396        target: GLenum,
14397        format: GLenum,
14398        len: GLsizei,
14399        string: *const ::std::os::raw::c_void,
14400    );
14401}
14402extern "C" {
14403    pub fn glBindProgramARB(target: GLenum, program: GLuint);
14404}
14405extern "C" {
14406    pub fn glDeleteProgramsARB(n: GLsizei, programs: *const GLuint);
14407}
14408extern "C" {
14409    pub fn glGenProgramsARB(n: GLsizei, programs: *mut GLuint);
14410}
14411extern "C" {
14412    pub fn glProgramEnvParameter4dARB(
14413        target: GLenum,
14414        index: GLuint,
14415        x: GLdouble,
14416        y: GLdouble,
14417        z: GLdouble,
14418        w: GLdouble,
14419    );
14420}
14421extern "C" {
14422    pub fn glProgramEnvParameter4dvARB(target: GLenum, index: GLuint, params: *const GLdouble);
14423}
14424extern "C" {
14425    pub fn glProgramEnvParameter4fARB(
14426        target: GLenum,
14427        index: GLuint,
14428        x: GLfloat,
14429        y: GLfloat,
14430        z: GLfloat,
14431        w: GLfloat,
14432    );
14433}
14434extern "C" {
14435    pub fn glProgramEnvParameter4fvARB(target: GLenum, index: GLuint, params: *const GLfloat);
14436}
14437extern "C" {
14438    pub fn glProgramLocalParameter4dARB(
14439        target: GLenum,
14440        index: GLuint,
14441        x: GLdouble,
14442        y: GLdouble,
14443        z: GLdouble,
14444        w: GLdouble,
14445    );
14446}
14447extern "C" {
14448    pub fn glProgramLocalParameter4dvARB(target: GLenum, index: GLuint, params: *const GLdouble);
14449}
14450extern "C" {
14451    pub fn glProgramLocalParameter4fARB(
14452        target: GLenum,
14453        index: GLuint,
14454        x: GLfloat,
14455        y: GLfloat,
14456        z: GLfloat,
14457        w: GLfloat,
14458    );
14459}
14460extern "C" {
14461    pub fn glProgramLocalParameter4fvARB(target: GLenum, index: GLuint, params: *const GLfloat);
14462}
14463extern "C" {
14464    pub fn glGetProgramEnvParameterdvARB(target: GLenum, index: GLuint, params: *mut GLdouble);
14465}
14466extern "C" {
14467    pub fn glGetProgramEnvParameterfvARB(target: GLenum, index: GLuint, params: *mut GLfloat);
14468}
14469extern "C" {
14470    pub fn glGetProgramLocalParameterdvARB(target: GLenum, index: GLuint, params: *mut GLdouble);
14471}
14472extern "C" {
14473    pub fn glGetProgramLocalParameterfvARB(target: GLenum, index: GLuint, params: *mut GLfloat);
14474}
14475extern "C" {
14476    pub fn glGetProgramivARB(target: GLenum, pname: GLenum, params: *mut GLint);
14477}
14478extern "C" {
14479    pub fn glGetProgramStringARB(
14480        target: GLenum,
14481        pname: GLenum,
14482        string: *mut ::std::os::raw::c_void,
14483    );
14484}
14485extern "C" {
14486    pub fn glIsProgramARB(program: GLuint) -> GLboolean;
14487}
14488pub type PFNGLPROGRAMPARAMETERIARBPROC =
14489    ::std::option::Option<unsafe extern "C" fn(program: GLuint, pname: GLenum, value: GLint)>;
14490pub type PFNGLFRAMEBUFFERTEXTUREARBPROC = ::std::option::Option<
14491    unsafe extern "C" fn(target: GLenum, attachment: GLenum, texture: GLuint, level: GLint),
14492>;
14493pub type PFNGLFRAMEBUFFERTEXTURELAYERARBPROC = ::std::option::Option<
14494    unsafe extern "C" fn(
14495        target: GLenum,
14496        attachment: GLenum,
14497        texture: GLuint,
14498        level: GLint,
14499        layer: GLint,
14500    ),
14501>;
14502pub type PFNGLFRAMEBUFFERTEXTUREFACEARBPROC = ::std::option::Option<
14503    unsafe extern "C" fn(
14504        target: GLenum,
14505        attachment: GLenum,
14506        texture: GLuint,
14507        level: GLint,
14508        face: GLenum,
14509    ),
14510>;
14511extern "C" {
14512    pub fn glProgramParameteriARB(program: GLuint, pname: GLenum, value: GLint);
14513}
14514extern "C" {
14515    pub fn glFramebufferTextureARB(
14516        target: GLenum,
14517        attachment: GLenum,
14518        texture: GLuint,
14519        level: GLint,
14520    );
14521}
14522extern "C" {
14523    pub fn glFramebufferTextureLayerARB(
14524        target: GLenum,
14525        attachment: GLenum,
14526        texture: GLuint,
14527        level: GLint,
14528        layer: GLint,
14529    );
14530}
14531extern "C" {
14532    pub fn glFramebufferTextureFaceARB(
14533        target: GLenum,
14534        attachment: GLenum,
14535        texture: GLuint,
14536        level: GLint,
14537        face: GLenum,
14538    );
14539}
14540pub type PFNGLSPECIALIZESHADERARBPROC = ::std::option::Option<
14541    unsafe extern "C" fn(
14542        shader: GLuint,
14543        pEntryPoint: *const GLchar,
14544        numSpecializationConstants: GLuint,
14545        pConstantIndex: *const GLuint,
14546        pConstantValue: *const GLuint,
14547    ),
14548>;
14549extern "C" {
14550    pub fn glSpecializeShaderARB(
14551        shader: GLuint,
14552        pEntryPoint: *const GLchar,
14553        numSpecializationConstants: GLuint,
14554        pConstantIndex: *const GLuint,
14555        pConstantValue: *const GLuint,
14556    );
14557}
14558pub type PFNGLUNIFORM1I64ARBPROC =
14559    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLint64)>;
14560pub type PFNGLUNIFORM2I64ARBPROC =
14561    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLint64, y: GLint64)>;
14562pub type PFNGLUNIFORM3I64ARBPROC = ::std::option::Option<
14563    unsafe extern "C" fn(location: GLint, x: GLint64, y: GLint64, z: GLint64),
14564>;
14565pub type PFNGLUNIFORM4I64ARBPROC = ::std::option::Option<
14566    unsafe extern "C" fn(location: GLint, x: GLint64, y: GLint64, z: GLint64, w: GLint64),
14567>;
14568pub type PFNGLUNIFORM1I64VARBPROC = ::std::option::Option<
14569    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64),
14570>;
14571pub type PFNGLUNIFORM2I64VARBPROC = ::std::option::Option<
14572    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64),
14573>;
14574pub type PFNGLUNIFORM3I64VARBPROC = ::std::option::Option<
14575    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64),
14576>;
14577pub type PFNGLUNIFORM4I64VARBPROC = ::std::option::Option<
14578    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64),
14579>;
14580pub type PFNGLUNIFORM1UI64ARBPROC =
14581    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLuint64)>;
14582pub type PFNGLUNIFORM2UI64ARBPROC =
14583    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLuint64, y: GLuint64)>;
14584pub type PFNGLUNIFORM3UI64ARBPROC = ::std::option::Option<
14585    unsafe extern "C" fn(location: GLint, x: GLuint64, y: GLuint64, z: GLuint64),
14586>;
14587pub type PFNGLUNIFORM4UI64ARBPROC = ::std::option::Option<
14588    unsafe extern "C" fn(location: GLint, x: GLuint64, y: GLuint64, z: GLuint64, w: GLuint64),
14589>;
14590pub type PFNGLUNIFORM1UI64VARBPROC = ::std::option::Option<
14591    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64),
14592>;
14593pub type PFNGLUNIFORM2UI64VARBPROC = ::std::option::Option<
14594    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64),
14595>;
14596pub type PFNGLUNIFORM3UI64VARBPROC = ::std::option::Option<
14597    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64),
14598>;
14599pub type PFNGLUNIFORM4UI64VARBPROC = ::std::option::Option<
14600    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64),
14601>;
14602pub type PFNGLGETUNIFORMI64VARBPROC = ::std::option::Option<
14603    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLint64),
14604>;
14605pub type PFNGLGETUNIFORMUI64VARBPROC = ::std::option::Option<
14606    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLuint64),
14607>;
14608pub type PFNGLGETNUNIFORMI64VARBPROC = ::std::option::Option<
14609    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLint64),
14610>;
14611pub type PFNGLGETNUNIFORMUI64VARBPROC = ::std::option::Option<
14612    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLuint64),
14613>;
14614pub type PFNGLPROGRAMUNIFORM1I64ARBPROC =
14615    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, x: GLint64)>;
14616pub type PFNGLPROGRAMUNIFORM2I64ARBPROC = ::std::option::Option<
14617    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLint64, y: GLint64),
14618>;
14619pub type PFNGLPROGRAMUNIFORM3I64ARBPROC = ::std::option::Option<
14620    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLint64, y: GLint64, z: GLint64),
14621>;
14622pub type PFNGLPROGRAMUNIFORM4I64ARBPROC = ::std::option::Option<
14623    unsafe extern "C" fn(
14624        program: GLuint,
14625        location: GLint,
14626        x: GLint64,
14627        y: GLint64,
14628        z: GLint64,
14629        w: GLint64,
14630    ),
14631>;
14632pub type PFNGLPROGRAMUNIFORM1I64VARBPROC = ::std::option::Option<
14633    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint64),
14634>;
14635pub type PFNGLPROGRAMUNIFORM2I64VARBPROC = ::std::option::Option<
14636    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint64),
14637>;
14638pub type PFNGLPROGRAMUNIFORM3I64VARBPROC = ::std::option::Option<
14639    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint64),
14640>;
14641pub type PFNGLPROGRAMUNIFORM4I64VARBPROC = ::std::option::Option<
14642    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint64),
14643>;
14644pub type PFNGLPROGRAMUNIFORM1UI64ARBPROC =
14645    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, x: GLuint64)>;
14646pub type PFNGLPROGRAMUNIFORM2UI64ARBPROC = ::std::option::Option<
14647    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLuint64, y: GLuint64),
14648>;
14649pub type PFNGLPROGRAMUNIFORM3UI64ARBPROC = ::std::option::Option<
14650    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLuint64, y: GLuint64, z: GLuint64),
14651>;
14652pub type PFNGLPROGRAMUNIFORM4UI64ARBPROC = ::std::option::Option<
14653    unsafe extern "C" fn(
14654        program: GLuint,
14655        location: GLint,
14656        x: GLuint64,
14657        y: GLuint64,
14658        z: GLuint64,
14659        w: GLuint64,
14660    ),
14661>;
14662pub type PFNGLPROGRAMUNIFORM1UI64VARBPROC = ::std::option::Option<
14663    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint64),
14664>;
14665pub type PFNGLPROGRAMUNIFORM2UI64VARBPROC = ::std::option::Option<
14666    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint64),
14667>;
14668pub type PFNGLPROGRAMUNIFORM3UI64VARBPROC = ::std::option::Option<
14669    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint64),
14670>;
14671pub type PFNGLPROGRAMUNIFORM4UI64VARBPROC = ::std::option::Option<
14672    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint64),
14673>;
14674extern "C" {
14675    pub fn glUniform1i64ARB(location: GLint, x: GLint64);
14676}
14677extern "C" {
14678    pub fn glUniform2i64ARB(location: GLint, x: GLint64, y: GLint64);
14679}
14680extern "C" {
14681    pub fn glUniform3i64ARB(location: GLint, x: GLint64, y: GLint64, z: GLint64);
14682}
14683extern "C" {
14684    pub fn glUniform4i64ARB(location: GLint, x: GLint64, y: GLint64, z: GLint64, w: GLint64);
14685}
14686extern "C" {
14687    pub fn glUniform1i64vARB(location: GLint, count: GLsizei, value: *const GLint64);
14688}
14689extern "C" {
14690    pub fn glUniform2i64vARB(location: GLint, count: GLsizei, value: *const GLint64);
14691}
14692extern "C" {
14693    pub fn glUniform3i64vARB(location: GLint, count: GLsizei, value: *const GLint64);
14694}
14695extern "C" {
14696    pub fn glUniform4i64vARB(location: GLint, count: GLsizei, value: *const GLint64);
14697}
14698extern "C" {
14699    pub fn glUniform1ui64ARB(location: GLint, x: GLuint64);
14700}
14701extern "C" {
14702    pub fn glUniform2ui64ARB(location: GLint, x: GLuint64, y: GLuint64);
14703}
14704extern "C" {
14705    pub fn glUniform3ui64ARB(location: GLint, x: GLuint64, y: GLuint64, z: GLuint64);
14706}
14707extern "C" {
14708    pub fn glUniform4ui64ARB(location: GLint, x: GLuint64, y: GLuint64, z: GLuint64, w: GLuint64);
14709}
14710extern "C" {
14711    pub fn glUniform1ui64vARB(location: GLint, count: GLsizei, value: *const GLuint64);
14712}
14713extern "C" {
14714    pub fn glUniform2ui64vARB(location: GLint, count: GLsizei, value: *const GLuint64);
14715}
14716extern "C" {
14717    pub fn glUniform3ui64vARB(location: GLint, count: GLsizei, value: *const GLuint64);
14718}
14719extern "C" {
14720    pub fn glUniform4ui64vARB(location: GLint, count: GLsizei, value: *const GLuint64);
14721}
14722extern "C" {
14723    pub fn glGetUniformi64vARB(program: GLuint, location: GLint, params: *mut GLint64);
14724}
14725extern "C" {
14726    pub fn glGetUniformui64vARB(program: GLuint, location: GLint, params: *mut GLuint64);
14727}
14728extern "C" {
14729    pub fn glGetnUniformi64vARB(
14730        program: GLuint,
14731        location: GLint,
14732        bufSize: GLsizei,
14733        params: *mut GLint64,
14734    );
14735}
14736extern "C" {
14737    pub fn glGetnUniformui64vARB(
14738        program: GLuint,
14739        location: GLint,
14740        bufSize: GLsizei,
14741        params: *mut GLuint64,
14742    );
14743}
14744extern "C" {
14745    pub fn glProgramUniform1i64ARB(program: GLuint, location: GLint, x: GLint64);
14746}
14747extern "C" {
14748    pub fn glProgramUniform2i64ARB(program: GLuint, location: GLint, x: GLint64, y: GLint64);
14749}
14750extern "C" {
14751    pub fn glProgramUniform3i64ARB(
14752        program: GLuint,
14753        location: GLint,
14754        x: GLint64,
14755        y: GLint64,
14756        z: GLint64,
14757    );
14758}
14759extern "C" {
14760    pub fn glProgramUniform4i64ARB(
14761        program: GLuint,
14762        location: GLint,
14763        x: GLint64,
14764        y: GLint64,
14765        z: GLint64,
14766        w: GLint64,
14767    );
14768}
14769extern "C" {
14770    pub fn glProgramUniform1i64vARB(
14771        program: GLuint,
14772        location: GLint,
14773        count: GLsizei,
14774        value: *const GLint64,
14775    );
14776}
14777extern "C" {
14778    pub fn glProgramUniform2i64vARB(
14779        program: GLuint,
14780        location: GLint,
14781        count: GLsizei,
14782        value: *const GLint64,
14783    );
14784}
14785extern "C" {
14786    pub fn glProgramUniform3i64vARB(
14787        program: GLuint,
14788        location: GLint,
14789        count: GLsizei,
14790        value: *const GLint64,
14791    );
14792}
14793extern "C" {
14794    pub fn glProgramUniform4i64vARB(
14795        program: GLuint,
14796        location: GLint,
14797        count: GLsizei,
14798        value: *const GLint64,
14799    );
14800}
14801extern "C" {
14802    pub fn glProgramUniform1ui64ARB(program: GLuint, location: GLint, x: GLuint64);
14803}
14804extern "C" {
14805    pub fn glProgramUniform2ui64ARB(program: GLuint, location: GLint, x: GLuint64, y: GLuint64);
14806}
14807extern "C" {
14808    pub fn glProgramUniform3ui64ARB(
14809        program: GLuint,
14810        location: GLint,
14811        x: GLuint64,
14812        y: GLuint64,
14813        z: GLuint64,
14814    );
14815}
14816extern "C" {
14817    pub fn glProgramUniform4ui64ARB(
14818        program: GLuint,
14819        location: GLint,
14820        x: GLuint64,
14821        y: GLuint64,
14822        z: GLuint64,
14823        w: GLuint64,
14824    );
14825}
14826extern "C" {
14827    pub fn glProgramUniform1ui64vARB(
14828        program: GLuint,
14829        location: GLint,
14830        count: GLsizei,
14831        value: *const GLuint64,
14832    );
14833}
14834extern "C" {
14835    pub fn glProgramUniform2ui64vARB(
14836        program: GLuint,
14837        location: GLint,
14838        count: GLsizei,
14839        value: *const GLuint64,
14840    );
14841}
14842extern "C" {
14843    pub fn glProgramUniform3ui64vARB(
14844        program: GLuint,
14845        location: GLint,
14846        count: GLsizei,
14847        value: *const GLuint64,
14848    );
14849}
14850extern "C" {
14851    pub fn glProgramUniform4ui64vARB(
14852        program: GLuint,
14853        location: GLint,
14854        count: GLsizei,
14855        value: *const GLuint64,
14856    );
14857}
14858pub type GLhalfARB = khronos_uint16_t;
14859pub type PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC = ::std::option::Option<
14860    unsafe extern "C" fn(
14861        mode: GLenum,
14862        indirect: *const ::std::os::raw::c_void,
14863        drawcount: GLintptr,
14864        maxdrawcount: GLsizei,
14865        stride: GLsizei,
14866    ),
14867>;
14868pub type PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC = ::std::option::Option<
14869    unsafe extern "C" fn(
14870        mode: GLenum,
14871        type_: GLenum,
14872        indirect: *const ::std::os::raw::c_void,
14873        drawcount: GLintptr,
14874        maxdrawcount: GLsizei,
14875        stride: GLsizei,
14876    ),
14877>;
14878extern "C" {
14879    pub fn glMultiDrawArraysIndirectCountARB(
14880        mode: GLenum,
14881        indirect: *const ::std::os::raw::c_void,
14882        drawcount: GLintptr,
14883        maxdrawcount: GLsizei,
14884        stride: GLsizei,
14885    );
14886}
14887extern "C" {
14888    pub fn glMultiDrawElementsIndirectCountARB(
14889        mode: GLenum,
14890        type_: GLenum,
14891        indirect: *const ::std::os::raw::c_void,
14892        drawcount: GLintptr,
14893        maxdrawcount: GLsizei,
14894        stride: GLsizei,
14895    );
14896}
14897pub type PFNGLVERTEXATTRIBDIVISORARBPROC =
14898    ::std::option::Option<unsafe extern "C" fn(index: GLuint, divisor: GLuint)>;
14899extern "C" {
14900    pub fn glVertexAttribDivisorARB(index: GLuint, divisor: GLuint);
14901}
14902pub type PFNGLCURRENTPALETTEMATRIXARBPROC =
14903    ::std::option::Option<unsafe extern "C" fn(index: GLint)>;
14904pub type PFNGLMATRIXINDEXUBVARBPROC =
14905    ::std::option::Option<unsafe extern "C" fn(size: GLint, indices: *const GLubyte)>;
14906pub type PFNGLMATRIXINDEXUSVARBPROC =
14907    ::std::option::Option<unsafe extern "C" fn(size: GLint, indices: *const GLushort)>;
14908pub type PFNGLMATRIXINDEXUIVARBPROC =
14909    ::std::option::Option<unsafe extern "C" fn(size: GLint, indices: *const GLuint)>;
14910pub type PFNGLMATRIXINDEXPOINTERARBPROC = ::std::option::Option<
14911    unsafe extern "C" fn(
14912        size: GLint,
14913        type_: GLenum,
14914        stride: GLsizei,
14915        pointer: *const ::std::os::raw::c_void,
14916    ),
14917>;
14918extern "C" {
14919    pub fn glCurrentPaletteMatrixARB(index: GLint);
14920}
14921extern "C" {
14922    pub fn glMatrixIndexubvARB(size: GLint, indices: *const GLubyte);
14923}
14924extern "C" {
14925    pub fn glMatrixIndexusvARB(size: GLint, indices: *const GLushort);
14926}
14927extern "C" {
14928    pub fn glMatrixIndexuivARB(size: GLint, indices: *const GLuint);
14929}
14930extern "C" {
14931    pub fn glMatrixIndexPointerARB(
14932        size: GLint,
14933        type_: GLenum,
14934        stride: GLsizei,
14935        pointer: *const ::std::os::raw::c_void,
14936    );
14937}
14938pub type PFNGLSAMPLECOVERAGEARBPROC =
14939    ::std::option::Option<unsafe extern "C" fn(value: GLfloat, invert: GLboolean)>;
14940extern "C" {
14941    pub fn glSampleCoverageARB(value: GLfloat, invert: GLboolean);
14942}
14943pub type PFNGLGENQUERIESARBPROC =
14944    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *mut GLuint)>;
14945pub type PFNGLDELETEQUERIESARBPROC =
14946    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *const GLuint)>;
14947pub type PFNGLISQUERYARBPROC = ::std::option::Option<unsafe extern "C" fn(id: GLuint) -> GLboolean>;
14948pub type PFNGLBEGINQUERYARBPROC =
14949    ::std::option::Option<unsafe extern "C" fn(target: GLenum, id: GLuint)>;
14950pub type PFNGLENDQUERYARBPROC = ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
14951pub type PFNGLGETQUERYIVARBPROC =
14952    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
14953pub type PFNGLGETQUERYOBJECTIVARBPROC =
14954    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLint)>;
14955pub type PFNGLGETQUERYOBJECTUIVARBPROC =
14956    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLuint)>;
14957extern "C" {
14958    pub fn glGenQueriesARB(n: GLsizei, ids: *mut GLuint);
14959}
14960extern "C" {
14961    pub fn glDeleteQueriesARB(n: GLsizei, ids: *const GLuint);
14962}
14963extern "C" {
14964    pub fn glIsQueryARB(id: GLuint) -> GLboolean;
14965}
14966extern "C" {
14967    pub fn glBeginQueryARB(target: GLenum, id: GLuint);
14968}
14969extern "C" {
14970    pub fn glEndQueryARB(target: GLenum);
14971}
14972extern "C" {
14973    pub fn glGetQueryivARB(target: GLenum, pname: GLenum, params: *mut GLint);
14974}
14975extern "C" {
14976    pub fn glGetQueryObjectivARB(id: GLuint, pname: GLenum, params: *mut GLint);
14977}
14978extern "C" {
14979    pub fn glGetQueryObjectuivARB(id: GLuint, pname: GLenum, params: *mut GLuint);
14980}
14981pub type PFNGLMAXSHADERCOMPILERTHREADSARBPROC =
14982    ::std::option::Option<unsafe extern "C" fn(count: GLuint)>;
14983extern "C" {
14984    pub fn glMaxShaderCompilerThreadsARB(count: GLuint);
14985}
14986pub type PFNGLPOINTPARAMETERFARBPROC =
14987    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
14988pub type PFNGLPOINTPARAMETERFVARBPROC =
14989    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
14990extern "C" {
14991    pub fn glPointParameterfARB(pname: GLenum, param: GLfloat);
14992}
14993extern "C" {
14994    pub fn glPointParameterfvARB(pname: GLenum, params: *const GLfloat);
14995}
14996pub type PFNGLGETGRAPHICSRESETSTATUSARBPROC =
14997    ::std::option::Option<unsafe extern "C" fn() -> GLenum>;
14998pub type PFNGLGETNTEXIMAGEARBPROC = ::std::option::Option<
14999    unsafe extern "C" fn(
15000        target: GLenum,
15001        level: GLint,
15002        format: GLenum,
15003        type_: GLenum,
15004        bufSize: GLsizei,
15005        img: *mut ::std::os::raw::c_void,
15006    ),
15007>;
15008pub type PFNGLREADNPIXELSARBPROC = ::std::option::Option<
15009    unsafe extern "C" fn(
15010        x: GLint,
15011        y: GLint,
15012        width: GLsizei,
15013        height: GLsizei,
15014        format: GLenum,
15015        type_: GLenum,
15016        bufSize: GLsizei,
15017        data: *mut ::std::os::raw::c_void,
15018    ),
15019>;
15020pub type PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC = ::std::option::Option<
15021    unsafe extern "C" fn(
15022        target: GLenum,
15023        lod: GLint,
15024        bufSize: GLsizei,
15025        img: *mut ::std::os::raw::c_void,
15026    ),
15027>;
15028pub type PFNGLGETNUNIFORMFVARBPROC = ::std::option::Option<
15029    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLfloat),
15030>;
15031pub type PFNGLGETNUNIFORMIVARBPROC = ::std::option::Option<
15032    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLint),
15033>;
15034pub type PFNGLGETNUNIFORMUIVARBPROC = ::std::option::Option<
15035    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLuint),
15036>;
15037pub type PFNGLGETNUNIFORMDVARBPROC = ::std::option::Option<
15038    unsafe extern "C" fn(program: GLuint, location: GLint, bufSize: GLsizei, params: *mut GLdouble),
15039>;
15040pub type PFNGLGETNMAPDVARBPROC = ::std::option::Option<
15041    unsafe extern "C" fn(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLdouble),
15042>;
15043pub type PFNGLGETNMAPFVARBPROC = ::std::option::Option<
15044    unsafe extern "C" fn(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLfloat),
15045>;
15046pub type PFNGLGETNMAPIVARBPROC = ::std::option::Option<
15047    unsafe extern "C" fn(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLint),
15048>;
15049pub type PFNGLGETNPIXELMAPFVARBPROC = ::std::option::Option<
15050    unsafe extern "C" fn(map: GLenum, bufSize: GLsizei, values: *mut GLfloat),
15051>;
15052pub type PFNGLGETNPIXELMAPUIVARBPROC =
15053    ::std::option::Option<unsafe extern "C" fn(map: GLenum, bufSize: GLsizei, values: *mut GLuint)>;
15054pub type PFNGLGETNPIXELMAPUSVARBPROC = ::std::option::Option<
15055    unsafe extern "C" fn(map: GLenum, bufSize: GLsizei, values: *mut GLushort),
15056>;
15057pub type PFNGLGETNPOLYGONSTIPPLEARBPROC =
15058    ::std::option::Option<unsafe extern "C" fn(bufSize: GLsizei, pattern: *mut GLubyte)>;
15059pub type PFNGLGETNCOLORTABLEARBPROC = ::std::option::Option<
15060    unsafe extern "C" fn(
15061        target: GLenum,
15062        format: GLenum,
15063        type_: GLenum,
15064        bufSize: GLsizei,
15065        table: *mut ::std::os::raw::c_void,
15066    ),
15067>;
15068pub type PFNGLGETNCONVOLUTIONFILTERARBPROC = ::std::option::Option<
15069    unsafe extern "C" fn(
15070        target: GLenum,
15071        format: GLenum,
15072        type_: GLenum,
15073        bufSize: GLsizei,
15074        image: *mut ::std::os::raw::c_void,
15075    ),
15076>;
15077pub type PFNGLGETNSEPARABLEFILTERARBPROC = ::std::option::Option<
15078    unsafe extern "C" fn(
15079        target: GLenum,
15080        format: GLenum,
15081        type_: GLenum,
15082        rowBufSize: GLsizei,
15083        row: *mut ::std::os::raw::c_void,
15084        columnBufSize: GLsizei,
15085        column: *mut ::std::os::raw::c_void,
15086        span: *mut ::std::os::raw::c_void,
15087    ),
15088>;
15089pub type PFNGLGETNHISTOGRAMARBPROC = ::std::option::Option<
15090    unsafe extern "C" fn(
15091        target: GLenum,
15092        reset: GLboolean,
15093        format: GLenum,
15094        type_: GLenum,
15095        bufSize: GLsizei,
15096        values: *mut ::std::os::raw::c_void,
15097    ),
15098>;
15099pub type PFNGLGETNMINMAXARBPROC = ::std::option::Option<
15100    unsafe extern "C" fn(
15101        target: GLenum,
15102        reset: GLboolean,
15103        format: GLenum,
15104        type_: GLenum,
15105        bufSize: GLsizei,
15106        values: *mut ::std::os::raw::c_void,
15107    ),
15108>;
15109extern "C" {
15110    pub fn glGetGraphicsResetStatusARB() -> GLenum;
15111}
15112extern "C" {
15113    pub fn glGetnTexImageARB(
15114        target: GLenum,
15115        level: GLint,
15116        format: GLenum,
15117        type_: GLenum,
15118        bufSize: GLsizei,
15119        img: *mut ::std::os::raw::c_void,
15120    );
15121}
15122extern "C" {
15123    pub fn glReadnPixelsARB(
15124        x: GLint,
15125        y: GLint,
15126        width: GLsizei,
15127        height: GLsizei,
15128        format: GLenum,
15129        type_: GLenum,
15130        bufSize: GLsizei,
15131        data: *mut ::std::os::raw::c_void,
15132    );
15133}
15134extern "C" {
15135    pub fn glGetnCompressedTexImageARB(
15136        target: GLenum,
15137        lod: GLint,
15138        bufSize: GLsizei,
15139        img: *mut ::std::os::raw::c_void,
15140    );
15141}
15142extern "C" {
15143    pub fn glGetnUniformfvARB(
15144        program: GLuint,
15145        location: GLint,
15146        bufSize: GLsizei,
15147        params: *mut GLfloat,
15148    );
15149}
15150extern "C" {
15151    pub fn glGetnUniformivARB(
15152        program: GLuint,
15153        location: GLint,
15154        bufSize: GLsizei,
15155        params: *mut GLint,
15156    );
15157}
15158extern "C" {
15159    pub fn glGetnUniformuivARB(
15160        program: GLuint,
15161        location: GLint,
15162        bufSize: GLsizei,
15163        params: *mut GLuint,
15164    );
15165}
15166extern "C" {
15167    pub fn glGetnUniformdvARB(
15168        program: GLuint,
15169        location: GLint,
15170        bufSize: GLsizei,
15171        params: *mut GLdouble,
15172    );
15173}
15174extern "C" {
15175    pub fn glGetnMapdvARB(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLdouble);
15176}
15177extern "C" {
15178    pub fn glGetnMapfvARB(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLfloat);
15179}
15180extern "C" {
15181    pub fn glGetnMapivARB(target: GLenum, query: GLenum, bufSize: GLsizei, v: *mut GLint);
15182}
15183extern "C" {
15184    pub fn glGetnPixelMapfvARB(map: GLenum, bufSize: GLsizei, values: *mut GLfloat);
15185}
15186extern "C" {
15187    pub fn glGetnPixelMapuivARB(map: GLenum, bufSize: GLsizei, values: *mut GLuint);
15188}
15189extern "C" {
15190    pub fn glGetnPixelMapusvARB(map: GLenum, bufSize: GLsizei, values: *mut GLushort);
15191}
15192extern "C" {
15193    pub fn glGetnPolygonStippleARB(bufSize: GLsizei, pattern: *mut GLubyte);
15194}
15195extern "C" {
15196    pub fn glGetnColorTableARB(
15197        target: GLenum,
15198        format: GLenum,
15199        type_: GLenum,
15200        bufSize: GLsizei,
15201        table: *mut ::std::os::raw::c_void,
15202    );
15203}
15204extern "C" {
15205    pub fn glGetnConvolutionFilterARB(
15206        target: GLenum,
15207        format: GLenum,
15208        type_: GLenum,
15209        bufSize: GLsizei,
15210        image: *mut ::std::os::raw::c_void,
15211    );
15212}
15213extern "C" {
15214    pub fn glGetnSeparableFilterARB(
15215        target: GLenum,
15216        format: GLenum,
15217        type_: GLenum,
15218        rowBufSize: GLsizei,
15219        row: *mut ::std::os::raw::c_void,
15220        columnBufSize: GLsizei,
15221        column: *mut ::std::os::raw::c_void,
15222        span: *mut ::std::os::raw::c_void,
15223    );
15224}
15225extern "C" {
15226    pub fn glGetnHistogramARB(
15227        target: GLenum,
15228        reset: GLboolean,
15229        format: GLenum,
15230        type_: GLenum,
15231        bufSize: GLsizei,
15232        values: *mut ::std::os::raw::c_void,
15233    );
15234}
15235extern "C" {
15236    pub fn glGetnMinmaxARB(
15237        target: GLenum,
15238        reset: GLboolean,
15239        format: GLenum,
15240        type_: GLenum,
15241        bufSize: GLsizei,
15242        values: *mut ::std::os::raw::c_void,
15243    );
15244}
15245pub type PFNGLFRAMEBUFFERSAMPLELOCATIONSFVARBPROC = ::std::option::Option<
15246    unsafe extern "C" fn(target: GLenum, start: GLuint, count: GLsizei, v: *const GLfloat),
15247>;
15248pub type PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVARBPROC = ::std::option::Option<
15249    unsafe extern "C" fn(framebuffer: GLuint, start: GLuint, count: GLsizei, v: *const GLfloat),
15250>;
15251pub type PFNGLEVALUATEDEPTHVALUESARBPROC = ::std::option::Option<unsafe extern "C" fn()>;
15252extern "C" {
15253    pub fn glFramebufferSampleLocationsfvARB(
15254        target: GLenum,
15255        start: GLuint,
15256        count: GLsizei,
15257        v: *const GLfloat,
15258    );
15259}
15260extern "C" {
15261    pub fn glNamedFramebufferSampleLocationsfvARB(
15262        framebuffer: GLuint,
15263        start: GLuint,
15264        count: GLsizei,
15265        v: *const GLfloat,
15266    );
15267}
15268extern "C" {
15269    pub fn glEvaluateDepthValuesARB();
15270}
15271pub type PFNGLMINSAMPLESHADINGARBPROC = ::std::option::Option<unsafe extern "C" fn(value: GLfloat)>;
15272extern "C" {
15273    pub fn glMinSampleShadingARB(value: GLfloat);
15274}
15275pub type GLhandleARB = ::std::os::raw::c_uint;
15276pub type GLcharARB = ::std::os::raw::c_char;
15277pub type PFNGLDELETEOBJECTARBPROC = ::std::option::Option<unsafe extern "C" fn(obj: GLhandleARB)>;
15278pub type PFNGLGETHANDLEARBPROC =
15279    ::std::option::Option<unsafe extern "C" fn(pname: GLenum) -> GLhandleARB>;
15280pub type PFNGLDETACHOBJECTARBPROC = ::std::option::Option<
15281    unsafe extern "C" fn(containerObj: GLhandleARB, attachedObj: GLhandleARB),
15282>;
15283pub type PFNGLCREATESHADEROBJECTARBPROC =
15284    ::std::option::Option<unsafe extern "C" fn(shaderType: GLenum) -> GLhandleARB>;
15285pub type PFNGLSHADERSOURCEARBPROC = ::std::option::Option<
15286    unsafe extern "C" fn(
15287        shaderObj: GLhandleARB,
15288        count: GLsizei,
15289        string: *mut *const GLcharARB,
15290        length: *const GLint,
15291    ),
15292>;
15293pub type PFNGLCOMPILESHADERARBPROC =
15294    ::std::option::Option<unsafe extern "C" fn(shaderObj: GLhandleARB)>;
15295pub type PFNGLCREATEPROGRAMOBJECTARBPROC =
15296    ::std::option::Option<unsafe extern "C" fn() -> GLhandleARB>;
15297pub type PFNGLATTACHOBJECTARBPROC =
15298    ::std::option::Option<unsafe extern "C" fn(containerObj: GLhandleARB, obj: GLhandleARB)>;
15299pub type PFNGLLINKPROGRAMARBPROC =
15300    ::std::option::Option<unsafe extern "C" fn(programObj: GLhandleARB)>;
15301pub type PFNGLUSEPROGRAMOBJECTARBPROC =
15302    ::std::option::Option<unsafe extern "C" fn(programObj: GLhandleARB)>;
15303pub type PFNGLVALIDATEPROGRAMARBPROC =
15304    ::std::option::Option<unsafe extern "C" fn(programObj: GLhandleARB)>;
15305pub type PFNGLUNIFORM1FARBPROC =
15306    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLfloat)>;
15307pub type PFNGLUNIFORM2FARBPROC =
15308    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLfloat, v1: GLfloat)>;
15309pub type PFNGLUNIFORM3FARBPROC = ::std::option::Option<
15310    unsafe extern "C" fn(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat),
15311>;
15312pub type PFNGLUNIFORM4FARBPROC = ::std::option::Option<
15313    unsafe extern "C" fn(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat),
15314>;
15315pub type PFNGLUNIFORM1IARBPROC =
15316    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLint)>;
15317pub type PFNGLUNIFORM2IARBPROC =
15318    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLint, v1: GLint)>;
15319pub type PFNGLUNIFORM3IARBPROC =
15320    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLint, v1: GLint, v2: GLint)>;
15321pub type PFNGLUNIFORM4IARBPROC = ::std::option::Option<
15322    unsafe extern "C" fn(location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint),
15323>;
15324pub type PFNGLUNIFORM1FVARBPROC = ::std::option::Option<
15325    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
15326>;
15327pub type PFNGLUNIFORM2FVARBPROC = ::std::option::Option<
15328    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
15329>;
15330pub type PFNGLUNIFORM3FVARBPROC = ::std::option::Option<
15331    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
15332>;
15333pub type PFNGLUNIFORM4FVARBPROC = ::std::option::Option<
15334    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLfloat),
15335>;
15336pub type PFNGLUNIFORM1IVARBPROC = ::std::option::Option<
15337    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
15338>;
15339pub type PFNGLUNIFORM2IVARBPROC = ::std::option::Option<
15340    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
15341>;
15342pub type PFNGLUNIFORM3IVARBPROC = ::std::option::Option<
15343    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
15344>;
15345pub type PFNGLUNIFORM4IVARBPROC = ::std::option::Option<
15346    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint),
15347>;
15348pub type PFNGLUNIFORMMATRIX2FVARBPROC = ::std::option::Option<
15349    unsafe extern "C" fn(
15350        location: GLint,
15351        count: GLsizei,
15352        transpose: GLboolean,
15353        value: *const GLfloat,
15354    ),
15355>;
15356pub type PFNGLUNIFORMMATRIX3FVARBPROC = ::std::option::Option<
15357    unsafe extern "C" fn(
15358        location: GLint,
15359        count: GLsizei,
15360        transpose: GLboolean,
15361        value: *const GLfloat,
15362    ),
15363>;
15364pub type PFNGLUNIFORMMATRIX4FVARBPROC = ::std::option::Option<
15365    unsafe extern "C" fn(
15366        location: GLint,
15367        count: GLsizei,
15368        transpose: GLboolean,
15369        value: *const GLfloat,
15370    ),
15371>;
15372pub type PFNGLGETOBJECTPARAMETERFVARBPROC = ::std::option::Option<
15373    unsafe extern "C" fn(obj: GLhandleARB, pname: GLenum, params: *mut GLfloat),
15374>;
15375pub type PFNGLGETOBJECTPARAMETERIVARBPROC = ::std::option::Option<
15376    unsafe extern "C" fn(obj: GLhandleARB, pname: GLenum, params: *mut GLint),
15377>;
15378pub type PFNGLGETINFOLOGARBPROC = ::std::option::Option<
15379    unsafe extern "C" fn(
15380        obj: GLhandleARB,
15381        maxLength: GLsizei,
15382        length: *mut GLsizei,
15383        infoLog: *mut GLcharARB,
15384    ),
15385>;
15386pub type PFNGLGETATTACHEDOBJECTSARBPROC = ::std::option::Option<
15387    unsafe extern "C" fn(
15388        containerObj: GLhandleARB,
15389        maxCount: GLsizei,
15390        count: *mut GLsizei,
15391        obj: *mut GLhandleARB,
15392    ),
15393>;
15394pub type PFNGLGETUNIFORMLOCATIONARBPROC = ::std::option::Option<
15395    unsafe extern "C" fn(programObj: GLhandleARB, name: *const GLcharARB) -> GLint,
15396>;
15397pub type PFNGLGETACTIVEUNIFORMARBPROC = ::std::option::Option<
15398    unsafe extern "C" fn(
15399        programObj: GLhandleARB,
15400        index: GLuint,
15401        maxLength: GLsizei,
15402        length: *mut GLsizei,
15403        size: *mut GLint,
15404        type_: *mut GLenum,
15405        name: *mut GLcharARB,
15406    ),
15407>;
15408pub type PFNGLGETUNIFORMFVARBPROC = ::std::option::Option<
15409    unsafe extern "C" fn(programObj: GLhandleARB, location: GLint, params: *mut GLfloat),
15410>;
15411pub type PFNGLGETUNIFORMIVARBPROC = ::std::option::Option<
15412    unsafe extern "C" fn(programObj: GLhandleARB, location: GLint, params: *mut GLint),
15413>;
15414pub type PFNGLGETSHADERSOURCEARBPROC = ::std::option::Option<
15415    unsafe extern "C" fn(
15416        obj: GLhandleARB,
15417        maxLength: GLsizei,
15418        length: *mut GLsizei,
15419        source: *mut GLcharARB,
15420    ),
15421>;
15422extern "C" {
15423    pub fn glDeleteObjectARB(obj: GLhandleARB);
15424}
15425extern "C" {
15426    pub fn glGetHandleARB(pname: GLenum) -> GLhandleARB;
15427}
15428extern "C" {
15429    pub fn glDetachObjectARB(containerObj: GLhandleARB, attachedObj: GLhandleARB);
15430}
15431extern "C" {
15432    pub fn glCreateShaderObjectARB(shaderType: GLenum) -> GLhandleARB;
15433}
15434extern "C" {
15435    pub fn glShaderSourceARB(
15436        shaderObj: GLhandleARB,
15437        count: GLsizei,
15438        string: *mut *const GLcharARB,
15439        length: *const GLint,
15440    );
15441}
15442extern "C" {
15443    pub fn glCompileShaderARB(shaderObj: GLhandleARB);
15444}
15445extern "C" {
15446    pub fn glCreateProgramObjectARB() -> GLhandleARB;
15447}
15448extern "C" {
15449    pub fn glAttachObjectARB(containerObj: GLhandleARB, obj: GLhandleARB);
15450}
15451extern "C" {
15452    pub fn glLinkProgramARB(programObj: GLhandleARB);
15453}
15454extern "C" {
15455    pub fn glUseProgramObjectARB(programObj: GLhandleARB);
15456}
15457extern "C" {
15458    pub fn glValidateProgramARB(programObj: GLhandleARB);
15459}
15460extern "C" {
15461    pub fn glUniform1fARB(location: GLint, v0: GLfloat);
15462}
15463extern "C" {
15464    pub fn glUniform2fARB(location: GLint, v0: GLfloat, v1: GLfloat);
15465}
15466extern "C" {
15467    pub fn glUniform3fARB(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat);
15468}
15469extern "C" {
15470    pub fn glUniform4fARB(location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat, v3: GLfloat);
15471}
15472extern "C" {
15473    pub fn glUniform1iARB(location: GLint, v0: GLint);
15474}
15475extern "C" {
15476    pub fn glUniform2iARB(location: GLint, v0: GLint, v1: GLint);
15477}
15478extern "C" {
15479    pub fn glUniform3iARB(location: GLint, v0: GLint, v1: GLint, v2: GLint);
15480}
15481extern "C" {
15482    pub fn glUniform4iARB(location: GLint, v0: GLint, v1: GLint, v2: GLint, v3: GLint);
15483}
15484extern "C" {
15485    pub fn glUniform1fvARB(location: GLint, count: GLsizei, value: *const GLfloat);
15486}
15487extern "C" {
15488    pub fn glUniform2fvARB(location: GLint, count: GLsizei, value: *const GLfloat);
15489}
15490extern "C" {
15491    pub fn glUniform3fvARB(location: GLint, count: GLsizei, value: *const GLfloat);
15492}
15493extern "C" {
15494    pub fn glUniform4fvARB(location: GLint, count: GLsizei, value: *const GLfloat);
15495}
15496extern "C" {
15497    pub fn glUniform1ivARB(location: GLint, count: GLsizei, value: *const GLint);
15498}
15499extern "C" {
15500    pub fn glUniform2ivARB(location: GLint, count: GLsizei, value: *const GLint);
15501}
15502extern "C" {
15503    pub fn glUniform3ivARB(location: GLint, count: GLsizei, value: *const GLint);
15504}
15505extern "C" {
15506    pub fn glUniform4ivARB(location: GLint, count: GLsizei, value: *const GLint);
15507}
15508extern "C" {
15509    pub fn glUniformMatrix2fvARB(
15510        location: GLint,
15511        count: GLsizei,
15512        transpose: GLboolean,
15513        value: *const GLfloat,
15514    );
15515}
15516extern "C" {
15517    pub fn glUniformMatrix3fvARB(
15518        location: GLint,
15519        count: GLsizei,
15520        transpose: GLboolean,
15521        value: *const GLfloat,
15522    );
15523}
15524extern "C" {
15525    pub fn glUniformMatrix4fvARB(
15526        location: GLint,
15527        count: GLsizei,
15528        transpose: GLboolean,
15529        value: *const GLfloat,
15530    );
15531}
15532extern "C" {
15533    pub fn glGetObjectParameterfvARB(obj: GLhandleARB, pname: GLenum, params: *mut GLfloat);
15534}
15535extern "C" {
15536    pub fn glGetObjectParameterivARB(obj: GLhandleARB, pname: GLenum, params: *mut GLint);
15537}
15538extern "C" {
15539    pub fn glGetInfoLogARB(
15540        obj: GLhandleARB,
15541        maxLength: GLsizei,
15542        length: *mut GLsizei,
15543        infoLog: *mut GLcharARB,
15544    );
15545}
15546extern "C" {
15547    pub fn glGetAttachedObjectsARB(
15548        containerObj: GLhandleARB,
15549        maxCount: GLsizei,
15550        count: *mut GLsizei,
15551        obj: *mut GLhandleARB,
15552    );
15553}
15554extern "C" {
15555    pub fn glGetUniformLocationARB(programObj: GLhandleARB, name: *const GLcharARB) -> GLint;
15556}
15557extern "C" {
15558    pub fn glGetActiveUniformARB(
15559        programObj: GLhandleARB,
15560        index: GLuint,
15561        maxLength: GLsizei,
15562        length: *mut GLsizei,
15563        size: *mut GLint,
15564        type_: *mut GLenum,
15565        name: *mut GLcharARB,
15566    );
15567}
15568extern "C" {
15569    pub fn glGetUniformfvARB(programObj: GLhandleARB, location: GLint, params: *mut GLfloat);
15570}
15571extern "C" {
15572    pub fn glGetUniformivARB(programObj: GLhandleARB, location: GLint, params: *mut GLint);
15573}
15574extern "C" {
15575    pub fn glGetShaderSourceARB(
15576        obj: GLhandleARB,
15577        maxLength: GLsizei,
15578        length: *mut GLsizei,
15579        source: *mut GLcharARB,
15580    );
15581}
15582pub type PFNGLNAMEDSTRINGARBPROC = ::std::option::Option<
15583    unsafe extern "C" fn(
15584        type_: GLenum,
15585        namelen: GLint,
15586        name: *const GLchar,
15587        stringlen: GLint,
15588        string: *const GLchar,
15589    ),
15590>;
15591pub type PFNGLDELETENAMEDSTRINGARBPROC =
15592    ::std::option::Option<unsafe extern "C" fn(namelen: GLint, name: *const GLchar)>;
15593pub type PFNGLCOMPILESHADERINCLUDEARBPROC = ::std::option::Option<
15594    unsafe extern "C" fn(
15595        shader: GLuint,
15596        count: GLsizei,
15597        path: *const *const GLchar,
15598        length: *const GLint,
15599    ),
15600>;
15601pub type PFNGLISNAMEDSTRINGARBPROC =
15602    ::std::option::Option<unsafe extern "C" fn(namelen: GLint, name: *const GLchar) -> GLboolean>;
15603pub type PFNGLGETNAMEDSTRINGARBPROC = ::std::option::Option<
15604    unsafe extern "C" fn(
15605        namelen: GLint,
15606        name: *const GLchar,
15607        bufSize: GLsizei,
15608        stringlen: *mut GLint,
15609        string: *mut GLchar,
15610    ),
15611>;
15612pub type PFNGLGETNAMEDSTRINGIVARBPROC = ::std::option::Option<
15613    unsafe extern "C" fn(namelen: GLint, name: *const GLchar, pname: GLenum, params: *mut GLint),
15614>;
15615extern "C" {
15616    pub fn glNamedStringARB(
15617        type_: GLenum,
15618        namelen: GLint,
15619        name: *const GLchar,
15620        stringlen: GLint,
15621        string: *const GLchar,
15622    );
15623}
15624extern "C" {
15625    pub fn glDeleteNamedStringARB(namelen: GLint, name: *const GLchar);
15626}
15627extern "C" {
15628    pub fn glCompileShaderIncludeARB(
15629        shader: GLuint,
15630        count: GLsizei,
15631        path: *const *const GLchar,
15632        length: *const GLint,
15633    );
15634}
15635extern "C" {
15636    pub fn glIsNamedStringARB(namelen: GLint, name: *const GLchar) -> GLboolean;
15637}
15638extern "C" {
15639    pub fn glGetNamedStringARB(
15640        namelen: GLint,
15641        name: *const GLchar,
15642        bufSize: GLsizei,
15643        stringlen: *mut GLint,
15644        string: *mut GLchar,
15645    );
15646}
15647extern "C" {
15648    pub fn glGetNamedStringivARB(
15649        namelen: GLint,
15650        name: *const GLchar,
15651        pname: GLenum,
15652        params: *mut GLint,
15653    );
15654}
15655pub type PFNGLBUFFERPAGECOMMITMENTARBPROC = ::std::option::Option<
15656    unsafe extern "C" fn(target: GLenum, offset: GLintptr, size: GLsizeiptr, commit: GLboolean),
15657>;
15658pub type PFNGLNAMEDBUFFERPAGECOMMITMENTEXTPROC = ::std::option::Option<
15659    unsafe extern "C" fn(buffer: GLuint, offset: GLintptr, size: GLsizeiptr, commit: GLboolean),
15660>;
15661pub type PFNGLNAMEDBUFFERPAGECOMMITMENTARBPROC = ::std::option::Option<
15662    unsafe extern "C" fn(buffer: GLuint, offset: GLintptr, size: GLsizeiptr, commit: GLboolean),
15663>;
15664extern "C" {
15665    pub fn glBufferPageCommitmentARB(
15666        target: GLenum,
15667        offset: GLintptr,
15668        size: GLsizeiptr,
15669        commit: GLboolean,
15670    );
15671}
15672extern "C" {
15673    pub fn glNamedBufferPageCommitmentEXT(
15674        buffer: GLuint,
15675        offset: GLintptr,
15676        size: GLsizeiptr,
15677        commit: GLboolean,
15678    );
15679}
15680extern "C" {
15681    pub fn glNamedBufferPageCommitmentARB(
15682        buffer: GLuint,
15683        offset: GLintptr,
15684        size: GLsizeiptr,
15685        commit: GLboolean,
15686    );
15687}
15688pub type PFNGLTEXPAGECOMMITMENTARBPROC = ::std::option::Option<
15689    unsafe extern "C" fn(
15690        target: GLenum,
15691        level: GLint,
15692        xoffset: GLint,
15693        yoffset: GLint,
15694        zoffset: GLint,
15695        width: GLsizei,
15696        height: GLsizei,
15697        depth: GLsizei,
15698        commit: GLboolean,
15699    ),
15700>;
15701extern "C" {
15702    pub fn glTexPageCommitmentARB(
15703        target: GLenum,
15704        level: GLint,
15705        xoffset: GLint,
15706        yoffset: GLint,
15707        zoffset: GLint,
15708        width: GLsizei,
15709        height: GLsizei,
15710        depth: GLsizei,
15711        commit: GLboolean,
15712    );
15713}
15714pub type PFNGLTEXBUFFERARBPROC = ::std::option::Option<
15715    unsafe extern "C" fn(target: GLenum, internalformat: GLenum, buffer: GLuint),
15716>;
15717extern "C" {
15718    pub fn glTexBufferARB(target: GLenum, internalformat: GLenum, buffer: GLuint);
15719}
15720pub type PFNGLCOMPRESSEDTEXIMAGE3DARBPROC = ::std::option::Option<
15721    unsafe extern "C" fn(
15722        target: GLenum,
15723        level: GLint,
15724        internalformat: GLenum,
15725        width: GLsizei,
15726        height: GLsizei,
15727        depth: GLsizei,
15728        border: GLint,
15729        imageSize: GLsizei,
15730        data: *const ::std::os::raw::c_void,
15731    ),
15732>;
15733pub type PFNGLCOMPRESSEDTEXIMAGE2DARBPROC = ::std::option::Option<
15734    unsafe extern "C" fn(
15735        target: GLenum,
15736        level: GLint,
15737        internalformat: GLenum,
15738        width: GLsizei,
15739        height: GLsizei,
15740        border: GLint,
15741        imageSize: GLsizei,
15742        data: *const ::std::os::raw::c_void,
15743    ),
15744>;
15745pub type PFNGLCOMPRESSEDTEXIMAGE1DARBPROC = ::std::option::Option<
15746    unsafe extern "C" fn(
15747        target: GLenum,
15748        level: GLint,
15749        internalformat: GLenum,
15750        width: GLsizei,
15751        border: GLint,
15752        imageSize: GLsizei,
15753        data: *const ::std::os::raw::c_void,
15754    ),
15755>;
15756pub type PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC = ::std::option::Option<
15757    unsafe extern "C" fn(
15758        target: GLenum,
15759        level: GLint,
15760        xoffset: GLint,
15761        yoffset: GLint,
15762        zoffset: GLint,
15763        width: GLsizei,
15764        height: GLsizei,
15765        depth: GLsizei,
15766        format: GLenum,
15767        imageSize: GLsizei,
15768        data: *const ::std::os::raw::c_void,
15769    ),
15770>;
15771pub type PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC = ::std::option::Option<
15772    unsafe extern "C" fn(
15773        target: GLenum,
15774        level: GLint,
15775        xoffset: GLint,
15776        yoffset: GLint,
15777        width: GLsizei,
15778        height: GLsizei,
15779        format: GLenum,
15780        imageSize: GLsizei,
15781        data: *const ::std::os::raw::c_void,
15782    ),
15783>;
15784pub type PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC = ::std::option::Option<
15785    unsafe extern "C" fn(
15786        target: GLenum,
15787        level: GLint,
15788        xoffset: GLint,
15789        width: GLsizei,
15790        format: GLenum,
15791        imageSize: GLsizei,
15792        data: *const ::std::os::raw::c_void,
15793    ),
15794>;
15795pub type PFNGLGETCOMPRESSEDTEXIMAGEARBPROC = ::std::option::Option<
15796    unsafe extern "C" fn(target: GLenum, level: GLint, img: *mut ::std::os::raw::c_void),
15797>;
15798extern "C" {
15799    pub fn glCompressedTexImage3DARB(
15800        target: GLenum,
15801        level: GLint,
15802        internalformat: GLenum,
15803        width: GLsizei,
15804        height: GLsizei,
15805        depth: GLsizei,
15806        border: GLint,
15807        imageSize: GLsizei,
15808        data: *const ::std::os::raw::c_void,
15809    );
15810}
15811extern "C" {
15812    pub fn glCompressedTexImage2DARB(
15813        target: GLenum,
15814        level: GLint,
15815        internalformat: GLenum,
15816        width: GLsizei,
15817        height: GLsizei,
15818        border: GLint,
15819        imageSize: GLsizei,
15820        data: *const ::std::os::raw::c_void,
15821    );
15822}
15823extern "C" {
15824    pub fn glCompressedTexImage1DARB(
15825        target: GLenum,
15826        level: GLint,
15827        internalformat: GLenum,
15828        width: GLsizei,
15829        border: GLint,
15830        imageSize: GLsizei,
15831        data: *const ::std::os::raw::c_void,
15832    );
15833}
15834extern "C" {
15835    pub fn glCompressedTexSubImage3DARB(
15836        target: GLenum,
15837        level: GLint,
15838        xoffset: GLint,
15839        yoffset: GLint,
15840        zoffset: GLint,
15841        width: GLsizei,
15842        height: GLsizei,
15843        depth: GLsizei,
15844        format: GLenum,
15845        imageSize: GLsizei,
15846        data: *const ::std::os::raw::c_void,
15847    );
15848}
15849extern "C" {
15850    pub fn glCompressedTexSubImage2DARB(
15851        target: GLenum,
15852        level: GLint,
15853        xoffset: GLint,
15854        yoffset: GLint,
15855        width: GLsizei,
15856        height: GLsizei,
15857        format: GLenum,
15858        imageSize: GLsizei,
15859        data: *const ::std::os::raw::c_void,
15860    );
15861}
15862extern "C" {
15863    pub fn glCompressedTexSubImage1DARB(
15864        target: GLenum,
15865        level: GLint,
15866        xoffset: GLint,
15867        width: GLsizei,
15868        format: GLenum,
15869        imageSize: GLsizei,
15870        data: *const ::std::os::raw::c_void,
15871    );
15872}
15873extern "C" {
15874    pub fn glGetCompressedTexImageARB(
15875        target: GLenum,
15876        level: GLint,
15877        img: *mut ::std::os::raw::c_void,
15878    );
15879}
15880pub type PFNGLLOADTRANSPOSEMATRIXFARBPROC =
15881    ::std::option::Option<unsafe extern "C" fn(m: *const GLfloat)>;
15882pub type PFNGLLOADTRANSPOSEMATRIXDARBPROC =
15883    ::std::option::Option<unsafe extern "C" fn(m: *const GLdouble)>;
15884pub type PFNGLMULTTRANSPOSEMATRIXFARBPROC =
15885    ::std::option::Option<unsafe extern "C" fn(m: *const GLfloat)>;
15886pub type PFNGLMULTTRANSPOSEMATRIXDARBPROC =
15887    ::std::option::Option<unsafe extern "C" fn(m: *const GLdouble)>;
15888extern "C" {
15889    pub fn glLoadTransposeMatrixfARB(m: *const GLfloat);
15890}
15891extern "C" {
15892    pub fn glLoadTransposeMatrixdARB(m: *const GLdouble);
15893}
15894extern "C" {
15895    pub fn glMultTransposeMatrixfARB(m: *const GLfloat);
15896}
15897extern "C" {
15898    pub fn glMultTransposeMatrixdARB(m: *const GLdouble);
15899}
15900pub type PFNGLWEIGHTBVARBPROC =
15901    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLbyte)>;
15902pub type PFNGLWEIGHTSVARBPROC =
15903    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLshort)>;
15904pub type PFNGLWEIGHTIVARBPROC =
15905    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLint)>;
15906pub type PFNGLWEIGHTFVARBPROC =
15907    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLfloat)>;
15908pub type PFNGLWEIGHTDVARBPROC =
15909    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLdouble)>;
15910pub type PFNGLWEIGHTUBVARBPROC =
15911    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLubyte)>;
15912pub type PFNGLWEIGHTUSVARBPROC =
15913    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLushort)>;
15914pub type PFNGLWEIGHTUIVARBPROC =
15915    ::std::option::Option<unsafe extern "C" fn(size: GLint, weights: *const GLuint)>;
15916pub type PFNGLWEIGHTPOINTERARBPROC = ::std::option::Option<
15917    unsafe extern "C" fn(
15918        size: GLint,
15919        type_: GLenum,
15920        stride: GLsizei,
15921        pointer: *const ::std::os::raw::c_void,
15922    ),
15923>;
15924pub type PFNGLVERTEXBLENDARBPROC = ::std::option::Option<unsafe extern "C" fn(count: GLint)>;
15925extern "C" {
15926    pub fn glWeightbvARB(size: GLint, weights: *const GLbyte);
15927}
15928extern "C" {
15929    pub fn glWeightsvARB(size: GLint, weights: *const GLshort);
15930}
15931extern "C" {
15932    pub fn glWeightivARB(size: GLint, weights: *const GLint);
15933}
15934extern "C" {
15935    pub fn glWeightfvARB(size: GLint, weights: *const GLfloat);
15936}
15937extern "C" {
15938    pub fn glWeightdvARB(size: GLint, weights: *const GLdouble);
15939}
15940extern "C" {
15941    pub fn glWeightubvARB(size: GLint, weights: *const GLubyte);
15942}
15943extern "C" {
15944    pub fn glWeightusvARB(size: GLint, weights: *const GLushort);
15945}
15946extern "C" {
15947    pub fn glWeightuivARB(size: GLint, weights: *const GLuint);
15948}
15949extern "C" {
15950    pub fn glWeightPointerARB(
15951        size: GLint,
15952        type_: GLenum,
15953        stride: GLsizei,
15954        pointer: *const ::std::os::raw::c_void,
15955    );
15956}
15957extern "C" {
15958    pub fn glVertexBlendARB(count: GLint);
15959}
15960pub type GLsizeiptrARB = khronos_ssize_t;
15961pub type GLintptrARB = khronos_intptr_t;
15962pub type PFNGLBINDBUFFERARBPROC =
15963    ::std::option::Option<unsafe extern "C" fn(target: GLenum, buffer: GLuint)>;
15964pub type PFNGLDELETEBUFFERSARBPROC =
15965    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, buffers: *const GLuint)>;
15966pub type PFNGLGENBUFFERSARBPROC =
15967    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, buffers: *mut GLuint)>;
15968pub type PFNGLISBUFFERARBPROC =
15969    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint) -> GLboolean>;
15970pub type PFNGLBUFFERDATAARBPROC = ::std::option::Option<
15971    unsafe extern "C" fn(
15972        target: GLenum,
15973        size: GLsizeiptrARB,
15974        data: *const ::std::os::raw::c_void,
15975        usage: GLenum,
15976    ),
15977>;
15978pub type PFNGLBUFFERSUBDATAARBPROC = ::std::option::Option<
15979    unsafe extern "C" fn(
15980        target: GLenum,
15981        offset: GLintptrARB,
15982        size: GLsizeiptrARB,
15983        data: *const ::std::os::raw::c_void,
15984    ),
15985>;
15986pub type PFNGLGETBUFFERSUBDATAARBPROC = ::std::option::Option<
15987    unsafe extern "C" fn(
15988        target: GLenum,
15989        offset: GLintptrARB,
15990        size: GLsizeiptrARB,
15991        data: *mut ::std::os::raw::c_void,
15992    ),
15993>;
15994pub type PFNGLMAPBUFFERARBPROC = ::std::option::Option<
15995    unsafe extern "C" fn(target: GLenum, access: GLenum) -> *mut ::std::os::raw::c_void,
15996>;
15997pub type PFNGLUNMAPBUFFERARBPROC =
15998    ::std::option::Option<unsafe extern "C" fn(target: GLenum) -> GLboolean>;
15999pub type PFNGLGETBUFFERPARAMETERIVARBPROC =
16000    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
16001pub type PFNGLGETBUFFERPOINTERVARBPROC = ::std::option::Option<
16002    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut *mut ::std::os::raw::c_void),
16003>;
16004extern "C" {
16005    pub fn glBindBufferARB(target: GLenum, buffer: GLuint);
16006}
16007extern "C" {
16008    pub fn glDeleteBuffersARB(n: GLsizei, buffers: *const GLuint);
16009}
16010extern "C" {
16011    pub fn glGenBuffersARB(n: GLsizei, buffers: *mut GLuint);
16012}
16013extern "C" {
16014    pub fn glIsBufferARB(buffer: GLuint) -> GLboolean;
16015}
16016extern "C" {
16017    pub fn glBufferDataARB(
16018        target: GLenum,
16019        size: GLsizeiptrARB,
16020        data: *const ::std::os::raw::c_void,
16021        usage: GLenum,
16022    );
16023}
16024extern "C" {
16025    pub fn glBufferSubDataARB(
16026        target: GLenum,
16027        offset: GLintptrARB,
16028        size: GLsizeiptrARB,
16029        data: *const ::std::os::raw::c_void,
16030    );
16031}
16032extern "C" {
16033    pub fn glGetBufferSubDataARB(
16034        target: GLenum,
16035        offset: GLintptrARB,
16036        size: GLsizeiptrARB,
16037        data: *mut ::std::os::raw::c_void,
16038    );
16039}
16040extern "C" {
16041    pub fn glMapBufferARB(target: GLenum, access: GLenum) -> *mut ::std::os::raw::c_void;
16042}
16043extern "C" {
16044    pub fn glUnmapBufferARB(target: GLenum) -> GLboolean;
16045}
16046extern "C" {
16047    pub fn glGetBufferParameterivARB(target: GLenum, pname: GLenum, params: *mut GLint);
16048}
16049extern "C" {
16050    pub fn glGetBufferPointervARB(
16051        target: GLenum,
16052        pname: GLenum,
16053        params: *mut *mut ::std::os::raw::c_void,
16054    );
16055}
16056pub type PFNGLVERTEXATTRIB1DARBPROC =
16057    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble)>;
16058pub type PFNGLVERTEXATTRIB1DVARBPROC =
16059    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
16060pub type PFNGLVERTEXATTRIB1FARBPROC =
16061    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat)>;
16062pub type PFNGLVERTEXATTRIB1FVARBPROC =
16063    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
16064pub type PFNGLVERTEXATTRIB1SARBPROC =
16065    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort)>;
16066pub type PFNGLVERTEXATTRIB1SVARBPROC =
16067    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
16068pub type PFNGLVERTEXATTRIB2DARBPROC =
16069    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble)>;
16070pub type PFNGLVERTEXATTRIB2DVARBPROC =
16071    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
16072pub type PFNGLVERTEXATTRIB2FARBPROC =
16073    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat)>;
16074pub type PFNGLVERTEXATTRIB2FVARBPROC =
16075    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
16076pub type PFNGLVERTEXATTRIB2SARBPROC =
16077    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort)>;
16078pub type PFNGLVERTEXATTRIB2SVARBPROC =
16079    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
16080pub type PFNGLVERTEXATTRIB3DARBPROC = ::std::option::Option<
16081    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble),
16082>;
16083pub type PFNGLVERTEXATTRIB3DVARBPROC =
16084    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
16085pub type PFNGLVERTEXATTRIB3FARBPROC =
16086    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat)>;
16087pub type PFNGLVERTEXATTRIB3FVARBPROC =
16088    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
16089pub type PFNGLVERTEXATTRIB3SARBPROC =
16090    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort, z: GLshort)>;
16091pub type PFNGLVERTEXATTRIB3SVARBPROC =
16092    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
16093pub type PFNGLVERTEXATTRIB4NBVARBPROC =
16094    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLbyte)>;
16095pub type PFNGLVERTEXATTRIB4NIVARBPROC =
16096    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
16097pub type PFNGLVERTEXATTRIB4NSVARBPROC =
16098    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
16099pub type PFNGLVERTEXATTRIB4NUBARBPROC = ::std::option::Option<
16100    unsafe extern "C" fn(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte),
16101>;
16102pub type PFNGLVERTEXATTRIB4NUBVARBPROC =
16103    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLubyte)>;
16104pub type PFNGLVERTEXATTRIB4NUIVARBPROC =
16105    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
16106pub type PFNGLVERTEXATTRIB4NUSVARBPROC =
16107    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLushort)>;
16108pub type PFNGLVERTEXATTRIB4BVARBPROC =
16109    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLbyte)>;
16110pub type PFNGLVERTEXATTRIB4DARBPROC = ::std::option::Option<
16111    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble),
16112>;
16113pub type PFNGLVERTEXATTRIB4DVARBPROC =
16114    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
16115pub type PFNGLVERTEXATTRIB4FARBPROC = ::std::option::Option<
16116    unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat),
16117>;
16118pub type PFNGLVERTEXATTRIB4FVARBPROC =
16119    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
16120pub type PFNGLVERTEXATTRIB4IVARBPROC =
16121    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
16122pub type PFNGLVERTEXATTRIB4SARBPROC = ::std::option::Option<
16123    unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort),
16124>;
16125pub type PFNGLVERTEXATTRIB4SVARBPROC =
16126    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
16127pub type PFNGLVERTEXATTRIB4UBVARBPROC =
16128    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLubyte)>;
16129pub type PFNGLVERTEXATTRIB4UIVARBPROC =
16130    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
16131pub type PFNGLVERTEXATTRIB4USVARBPROC =
16132    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLushort)>;
16133pub type PFNGLVERTEXATTRIBPOINTERARBPROC = ::std::option::Option<
16134    unsafe extern "C" fn(
16135        index: GLuint,
16136        size: GLint,
16137        type_: GLenum,
16138        normalized: GLboolean,
16139        stride: GLsizei,
16140        pointer: *const ::std::os::raw::c_void,
16141    ),
16142>;
16143pub type PFNGLENABLEVERTEXATTRIBARRAYARBPROC =
16144    ::std::option::Option<unsafe extern "C" fn(index: GLuint)>;
16145pub type PFNGLDISABLEVERTEXATTRIBARRAYARBPROC =
16146    ::std::option::Option<unsafe extern "C" fn(index: GLuint)>;
16147pub type PFNGLGETVERTEXATTRIBDVARBPROC = ::std::option::Option<
16148    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLdouble),
16149>;
16150pub type PFNGLGETVERTEXATTRIBFVARBPROC =
16151    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLfloat)>;
16152pub type PFNGLGETVERTEXATTRIBIVARBPROC =
16153    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLint)>;
16154pub type PFNGLGETVERTEXATTRIBPOINTERVARBPROC = ::std::option::Option<
16155    unsafe extern "C" fn(index: GLuint, pname: GLenum, pointer: *mut *mut ::std::os::raw::c_void),
16156>;
16157extern "C" {
16158    pub fn glVertexAttrib1dARB(index: GLuint, x: GLdouble);
16159}
16160extern "C" {
16161    pub fn glVertexAttrib1dvARB(index: GLuint, v: *const GLdouble);
16162}
16163extern "C" {
16164    pub fn glVertexAttrib1fARB(index: GLuint, x: GLfloat);
16165}
16166extern "C" {
16167    pub fn glVertexAttrib1fvARB(index: GLuint, v: *const GLfloat);
16168}
16169extern "C" {
16170    pub fn glVertexAttrib1sARB(index: GLuint, x: GLshort);
16171}
16172extern "C" {
16173    pub fn glVertexAttrib1svARB(index: GLuint, v: *const GLshort);
16174}
16175extern "C" {
16176    pub fn glVertexAttrib2dARB(index: GLuint, x: GLdouble, y: GLdouble);
16177}
16178extern "C" {
16179    pub fn glVertexAttrib2dvARB(index: GLuint, v: *const GLdouble);
16180}
16181extern "C" {
16182    pub fn glVertexAttrib2fARB(index: GLuint, x: GLfloat, y: GLfloat);
16183}
16184extern "C" {
16185    pub fn glVertexAttrib2fvARB(index: GLuint, v: *const GLfloat);
16186}
16187extern "C" {
16188    pub fn glVertexAttrib2sARB(index: GLuint, x: GLshort, y: GLshort);
16189}
16190extern "C" {
16191    pub fn glVertexAttrib2svARB(index: GLuint, v: *const GLshort);
16192}
16193extern "C" {
16194    pub fn glVertexAttrib3dARB(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble);
16195}
16196extern "C" {
16197    pub fn glVertexAttrib3dvARB(index: GLuint, v: *const GLdouble);
16198}
16199extern "C" {
16200    pub fn glVertexAttrib3fARB(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat);
16201}
16202extern "C" {
16203    pub fn glVertexAttrib3fvARB(index: GLuint, v: *const GLfloat);
16204}
16205extern "C" {
16206    pub fn glVertexAttrib3sARB(index: GLuint, x: GLshort, y: GLshort, z: GLshort);
16207}
16208extern "C" {
16209    pub fn glVertexAttrib3svARB(index: GLuint, v: *const GLshort);
16210}
16211extern "C" {
16212    pub fn glVertexAttrib4NbvARB(index: GLuint, v: *const GLbyte);
16213}
16214extern "C" {
16215    pub fn glVertexAttrib4NivARB(index: GLuint, v: *const GLint);
16216}
16217extern "C" {
16218    pub fn glVertexAttrib4NsvARB(index: GLuint, v: *const GLshort);
16219}
16220extern "C" {
16221    pub fn glVertexAttrib4NubARB(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte);
16222}
16223extern "C" {
16224    pub fn glVertexAttrib4NubvARB(index: GLuint, v: *const GLubyte);
16225}
16226extern "C" {
16227    pub fn glVertexAttrib4NuivARB(index: GLuint, v: *const GLuint);
16228}
16229extern "C" {
16230    pub fn glVertexAttrib4NusvARB(index: GLuint, v: *const GLushort);
16231}
16232extern "C" {
16233    pub fn glVertexAttrib4bvARB(index: GLuint, v: *const GLbyte);
16234}
16235extern "C" {
16236    pub fn glVertexAttrib4dARB(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
16237}
16238extern "C" {
16239    pub fn glVertexAttrib4dvARB(index: GLuint, v: *const GLdouble);
16240}
16241extern "C" {
16242    pub fn glVertexAttrib4fARB(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat);
16243}
16244extern "C" {
16245    pub fn glVertexAttrib4fvARB(index: GLuint, v: *const GLfloat);
16246}
16247extern "C" {
16248    pub fn glVertexAttrib4ivARB(index: GLuint, v: *const GLint);
16249}
16250extern "C" {
16251    pub fn glVertexAttrib4sARB(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort);
16252}
16253extern "C" {
16254    pub fn glVertexAttrib4svARB(index: GLuint, v: *const GLshort);
16255}
16256extern "C" {
16257    pub fn glVertexAttrib4ubvARB(index: GLuint, v: *const GLubyte);
16258}
16259extern "C" {
16260    pub fn glVertexAttrib4uivARB(index: GLuint, v: *const GLuint);
16261}
16262extern "C" {
16263    pub fn glVertexAttrib4usvARB(index: GLuint, v: *const GLushort);
16264}
16265extern "C" {
16266    pub fn glVertexAttribPointerARB(
16267        index: GLuint,
16268        size: GLint,
16269        type_: GLenum,
16270        normalized: GLboolean,
16271        stride: GLsizei,
16272        pointer: *const ::std::os::raw::c_void,
16273    );
16274}
16275extern "C" {
16276    pub fn glEnableVertexAttribArrayARB(index: GLuint);
16277}
16278extern "C" {
16279    pub fn glDisableVertexAttribArrayARB(index: GLuint);
16280}
16281extern "C" {
16282    pub fn glGetVertexAttribdvARB(index: GLuint, pname: GLenum, params: *mut GLdouble);
16283}
16284extern "C" {
16285    pub fn glGetVertexAttribfvARB(index: GLuint, pname: GLenum, params: *mut GLfloat);
16286}
16287extern "C" {
16288    pub fn glGetVertexAttribivARB(index: GLuint, pname: GLenum, params: *mut GLint);
16289}
16290extern "C" {
16291    pub fn glGetVertexAttribPointervARB(
16292        index: GLuint,
16293        pname: GLenum,
16294        pointer: *mut *mut ::std::os::raw::c_void,
16295    );
16296}
16297pub type PFNGLBINDATTRIBLOCATIONARBPROC = ::std::option::Option<
16298    unsafe extern "C" fn(programObj: GLhandleARB, index: GLuint, name: *const GLcharARB),
16299>;
16300pub type PFNGLGETACTIVEATTRIBARBPROC = ::std::option::Option<
16301    unsafe extern "C" fn(
16302        programObj: GLhandleARB,
16303        index: GLuint,
16304        maxLength: GLsizei,
16305        length: *mut GLsizei,
16306        size: *mut GLint,
16307        type_: *mut GLenum,
16308        name: *mut GLcharARB,
16309    ),
16310>;
16311pub type PFNGLGETATTRIBLOCATIONARBPROC = ::std::option::Option<
16312    unsafe extern "C" fn(programObj: GLhandleARB, name: *const GLcharARB) -> GLint,
16313>;
16314extern "C" {
16315    pub fn glBindAttribLocationARB(programObj: GLhandleARB, index: GLuint, name: *const GLcharARB);
16316}
16317extern "C" {
16318    pub fn glGetActiveAttribARB(
16319        programObj: GLhandleARB,
16320        index: GLuint,
16321        maxLength: GLsizei,
16322        length: *mut GLsizei,
16323        size: *mut GLint,
16324        type_: *mut GLenum,
16325        name: *mut GLcharARB,
16326    );
16327}
16328extern "C" {
16329    pub fn glGetAttribLocationARB(programObj: GLhandleARB, name: *const GLcharARB) -> GLint;
16330}
16331pub type PFNGLWINDOWPOS2DARBPROC =
16332    ::std::option::Option<unsafe extern "C" fn(x: GLdouble, y: GLdouble)>;
16333pub type PFNGLWINDOWPOS2DVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
16334pub type PFNGLWINDOWPOS2FARBPROC =
16335    ::std::option::Option<unsafe extern "C" fn(x: GLfloat, y: GLfloat)>;
16336pub type PFNGLWINDOWPOS2FVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
16337pub type PFNGLWINDOWPOS2IARBPROC = ::std::option::Option<unsafe extern "C" fn(x: GLint, y: GLint)>;
16338pub type PFNGLWINDOWPOS2IVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
16339pub type PFNGLWINDOWPOS2SARBPROC =
16340    ::std::option::Option<unsafe extern "C" fn(x: GLshort, y: GLshort)>;
16341pub type PFNGLWINDOWPOS2SVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
16342pub type PFNGLWINDOWPOS3DARBPROC =
16343    ::std::option::Option<unsafe extern "C" fn(x: GLdouble, y: GLdouble, z: GLdouble)>;
16344pub type PFNGLWINDOWPOS3DVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
16345pub type PFNGLWINDOWPOS3FARBPROC =
16346    ::std::option::Option<unsafe extern "C" fn(x: GLfloat, y: GLfloat, z: GLfloat)>;
16347pub type PFNGLWINDOWPOS3FVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
16348pub type PFNGLWINDOWPOS3IARBPROC =
16349    ::std::option::Option<unsafe extern "C" fn(x: GLint, y: GLint, z: GLint)>;
16350pub type PFNGLWINDOWPOS3IVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
16351pub type PFNGLWINDOWPOS3SARBPROC =
16352    ::std::option::Option<unsafe extern "C" fn(x: GLshort, y: GLshort, z: GLshort)>;
16353pub type PFNGLWINDOWPOS3SVARBPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
16354extern "C" {
16355    pub fn glWindowPos2dARB(x: GLdouble, y: GLdouble);
16356}
16357extern "C" {
16358    pub fn glWindowPos2dvARB(v: *const GLdouble);
16359}
16360extern "C" {
16361    pub fn glWindowPos2fARB(x: GLfloat, y: GLfloat);
16362}
16363extern "C" {
16364    pub fn glWindowPos2fvARB(v: *const GLfloat);
16365}
16366extern "C" {
16367    pub fn glWindowPos2iARB(x: GLint, y: GLint);
16368}
16369extern "C" {
16370    pub fn glWindowPos2ivARB(v: *const GLint);
16371}
16372extern "C" {
16373    pub fn glWindowPos2sARB(x: GLshort, y: GLshort);
16374}
16375extern "C" {
16376    pub fn glWindowPos2svARB(v: *const GLshort);
16377}
16378extern "C" {
16379    pub fn glWindowPos3dARB(x: GLdouble, y: GLdouble, z: GLdouble);
16380}
16381extern "C" {
16382    pub fn glWindowPos3dvARB(v: *const GLdouble);
16383}
16384extern "C" {
16385    pub fn glWindowPos3fARB(x: GLfloat, y: GLfloat, z: GLfloat);
16386}
16387extern "C" {
16388    pub fn glWindowPos3fvARB(v: *const GLfloat);
16389}
16390extern "C" {
16391    pub fn glWindowPos3iARB(x: GLint, y: GLint, z: GLint);
16392}
16393extern "C" {
16394    pub fn glWindowPos3ivARB(v: *const GLint);
16395}
16396extern "C" {
16397    pub fn glWindowPos3sARB(x: GLshort, y: GLshort, z: GLshort);
16398}
16399extern "C" {
16400    pub fn glWindowPos3svARB(v: *const GLshort);
16401}
16402pub type PFNGLBLENDBARRIERKHRPROC = ::std::option::Option<unsafe extern "C" fn()>;
16403extern "C" {
16404    pub fn glBlendBarrierKHR();
16405}
16406pub type PFNGLMAXSHADERCOMPILERTHREADSKHRPROC =
16407    ::std::option::Option<unsafe extern "C" fn(count: GLuint)>;
16408extern "C" {
16409    pub fn glMaxShaderCompilerThreadsKHR(count: GLuint);
16410}
16411pub type PFNGLMULTITEXCOORD1BOESPROC =
16412    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, s: GLbyte)>;
16413pub type PFNGLMULTITEXCOORD1BVOESPROC =
16414    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLbyte)>;
16415pub type PFNGLMULTITEXCOORD2BOESPROC =
16416    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, s: GLbyte, t: GLbyte)>;
16417pub type PFNGLMULTITEXCOORD2BVOESPROC =
16418    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLbyte)>;
16419pub type PFNGLMULTITEXCOORD3BOESPROC =
16420    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, s: GLbyte, t: GLbyte, r: GLbyte)>;
16421pub type PFNGLMULTITEXCOORD3BVOESPROC =
16422    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLbyte)>;
16423pub type PFNGLMULTITEXCOORD4BOESPROC = ::std::option::Option<
16424    unsafe extern "C" fn(texture: GLenum, s: GLbyte, t: GLbyte, r: GLbyte, q: GLbyte),
16425>;
16426pub type PFNGLMULTITEXCOORD4BVOESPROC =
16427    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLbyte)>;
16428pub type PFNGLTEXCOORD1BOESPROC = ::std::option::Option<unsafe extern "C" fn(s: GLbyte)>;
16429pub type PFNGLTEXCOORD1BVOESPROC =
16430    ::std::option::Option<unsafe extern "C" fn(coords: *const GLbyte)>;
16431pub type PFNGLTEXCOORD2BOESPROC = ::std::option::Option<unsafe extern "C" fn(s: GLbyte, t: GLbyte)>;
16432pub type PFNGLTEXCOORD2BVOESPROC =
16433    ::std::option::Option<unsafe extern "C" fn(coords: *const GLbyte)>;
16434pub type PFNGLTEXCOORD3BOESPROC =
16435    ::std::option::Option<unsafe extern "C" fn(s: GLbyte, t: GLbyte, r: GLbyte)>;
16436pub type PFNGLTEXCOORD3BVOESPROC =
16437    ::std::option::Option<unsafe extern "C" fn(coords: *const GLbyte)>;
16438pub type PFNGLTEXCOORD4BOESPROC =
16439    ::std::option::Option<unsafe extern "C" fn(s: GLbyte, t: GLbyte, r: GLbyte, q: GLbyte)>;
16440pub type PFNGLTEXCOORD4BVOESPROC =
16441    ::std::option::Option<unsafe extern "C" fn(coords: *const GLbyte)>;
16442pub type PFNGLVERTEX2BOESPROC = ::std::option::Option<unsafe extern "C" fn(x: GLbyte, y: GLbyte)>;
16443pub type PFNGLVERTEX2BVOESPROC = ::std::option::Option<unsafe extern "C" fn(coords: *const GLbyte)>;
16444pub type PFNGLVERTEX3BOESPROC =
16445    ::std::option::Option<unsafe extern "C" fn(x: GLbyte, y: GLbyte, z: GLbyte)>;
16446pub type PFNGLVERTEX3BVOESPROC = ::std::option::Option<unsafe extern "C" fn(coords: *const GLbyte)>;
16447pub type PFNGLVERTEX4BOESPROC =
16448    ::std::option::Option<unsafe extern "C" fn(x: GLbyte, y: GLbyte, z: GLbyte, w: GLbyte)>;
16449pub type PFNGLVERTEX4BVOESPROC = ::std::option::Option<unsafe extern "C" fn(coords: *const GLbyte)>;
16450extern "C" {
16451    pub fn glMultiTexCoord1bOES(texture: GLenum, s: GLbyte);
16452}
16453extern "C" {
16454    pub fn glMultiTexCoord1bvOES(texture: GLenum, coords: *const GLbyte);
16455}
16456extern "C" {
16457    pub fn glMultiTexCoord2bOES(texture: GLenum, s: GLbyte, t: GLbyte);
16458}
16459extern "C" {
16460    pub fn glMultiTexCoord2bvOES(texture: GLenum, coords: *const GLbyte);
16461}
16462extern "C" {
16463    pub fn glMultiTexCoord3bOES(texture: GLenum, s: GLbyte, t: GLbyte, r: GLbyte);
16464}
16465extern "C" {
16466    pub fn glMultiTexCoord3bvOES(texture: GLenum, coords: *const GLbyte);
16467}
16468extern "C" {
16469    pub fn glMultiTexCoord4bOES(texture: GLenum, s: GLbyte, t: GLbyte, r: GLbyte, q: GLbyte);
16470}
16471extern "C" {
16472    pub fn glMultiTexCoord4bvOES(texture: GLenum, coords: *const GLbyte);
16473}
16474extern "C" {
16475    pub fn glTexCoord1bOES(s: GLbyte);
16476}
16477extern "C" {
16478    pub fn glTexCoord1bvOES(coords: *const GLbyte);
16479}
16480extern "C" {
16481    pub fn glTexCoord2bOES(s: GLbyte, t: GLbyte);
16482}
16483extern "C" {
16484    pub fn glTexCoord2bvOES(coords: *const GLbyte);
16485}
16486extern "C" {
16487    pub fn glTexCoord3bOES(s: GLbyte, t: GLbyte, r: GLbyte);
16488}
16489extern "C" {
16490    pub fn glTexCoord3bvOES(coords: *const GLbyte);
16491}
16492extern "C" {
16493    pub fn glTexCoord4bOES(s: GLbyte, t: GLbyte, r: GLbyte, q: GLbyte);
16494}
16495extern "C" {
16496    pub fn glTexCoord4bvOES(coords: *const GLbyte);
16497}
16498extern "C" {
16499    pub fn glVertex2bOES(x: GLbyte, y: GLbyte);
16500}
16501extern "C" {
16502    pub fn glVertex2bvOES(coords: *const GLbyte);
16503}
16504extern "C" {
16505    pub fn glVertex3bOES(x: GLbyte, y: GLbyte, z: GLbyte);
16506}
16507extern "C" {
16508    pub fn glVertex3bvOES(coords: *const GLbyte);
16509}
16510extern "C" {
16511    pub fn glVertex4bOES(x: GLbyte, y: GLbyte, z: GLbyte, w: GLbyte);
16512}
16513extern "C" {
16514    pub fn glVertex4bvOES(coords: *const GLbyte);
16515}
16516pub type GLfixed = khronos_int32_t;
16517pub type PFNGLALPHAFUNCXOESPROC =
16518    ::std::option::Option<unsafe extern "C" fn(func: GLenum, ref_: GLfixed)>;
16519pub type PFNGLCLEARCOLORXOESPROC = ::std::option::Option<
16520    unsafe extern "C" fn(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed),
16521>;
16522pub type PFNGLCLEARDEPTHXOESPROC = ::std::option::Option<unsafe extern "C" fn(depth: GLfixed)>;
16523pub type PFNGLCLIPPLANEXOESPROC =
16524    ::std::option::Option<unsafe extern "C" fn(plane: GLenum, equation: *const GLfixed)>;
16525pub type PFNGLCOLOR4XOESPROC = ::std::option::Option<
16526    unsafe extern "C" fn(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed),
16527>;
16528pub type PFNGLDEPTHRANGEXOESPROC =
16529    ::std::option::Option<unsafe extern "C" fn(n: GLfixed, f: GLfixed)>;
16530pub type PFNGLFOGXOESPROC =
16531    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfixed)>;
16532pub type PFNGLFOGXVOESPROC =
16533    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: *const GLfixed)>;
16534pub type PFNGLFRUSTUMXOESPROC = ::std::option::Option<
16535    unsafe extern "C" fn(l: GLfixed, r: GLfixed, b: GLfixed, t: GLfixed, n: GLfixed, f: GLfixed),
16536>;
16537pub type PFNGLGETCLIPPLANEXOESPROC =
16538    ::std::option::Option<unsafe extern "C" fn(plane: GLenum, equation: *mut GLfixed)>;
16539pub type PFNGLGETFIXEDVOESPROC =
16540    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *mut GLfixed)>;
16541pub type PFNGLGETTEXENVXVOESPROC = ::std::option::Option<
16542    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfixed),
16543>;
16544pub type PFNGLGETTEXPARAMETERXVOESPROC = ::std::option::Option<
16545    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfixed),
16546>;
16547pub type PFNGLLIGHTMODELXOESPROC =
16548    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfixed)>;
16549pub type PFNGLLIGHTMODELXVOESPROC =
16550    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: *const GLfixed)>;
16551pub type PFNGLLIGHTXOESPROC =
16552    ::std::option::Option<unsafe extern "C" fn(light: GLenum, pname: GLenum, param: GLfixed)>;
16553pub type PFNGLLIGHTXVOESPROC = ::std::option::Option<
16554    unsafe extern "C" fn(light: GLenum, pname: GLenum, params: *const GLfixed),
16555>;
16556pub type PFNGLLINEWIDTHXOESPROC = ::std::option::Option<unsafe extern "C" fn(width: GLfixed)>;
16557pub type PFNGLLOADMATRIXXOESPROC = ::std::option::Option<unsafe extern "C" fn(m: *const GLfixed)>;
16558pub type PFNGLMATERIALXOESPROC =
16559    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, param: GLfixed)>;
16560pub type PFNGLMATERIALXVOESPROC =
16561    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, param: *const GLfixed)>;
16562pub type PFNGLMULTMATRIXXOESPROC = ::std::option::Option<unsafe extern "C" fn(m: *const GLfixed)>;
16563pub type PFNGLMULTITEXCOORD4XOESPROC = ::std::option::Option<
16564    unsafe extern "C" fn(texture: GLenum, s: GLfixed, t: GLfixed, r: GLfixed, q: GLfixed),
16565>;
16566pub type PFNGLNORMAL3XOESPROC =
16567    ::std::option::Option<unsafe extern "C" fn(nx: GLfixed, ny: GLfixed, nz: GLfixed)>;
16568pub type PFNGLORTHOXOESPROC = ::std::option::Option<
16569    unsafe extern "C" fn(l: GLfixed, r: GLfixed, b: GLfixed, t: GLfixed, n: GLfixed, f: GLfixed),
16570>;
16571pub type PFNGLPOINTPARAMETERXVOESPROC =
16572    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfixed)>;
16573pub type PFNGLPOINTSIZEXOESPROC = ::std::option::Option<unsafe extern "C" fn(size: GLfixed)>;
16574pub type PFNGLPOLYGONOFFSETXOESPROC =
16575    ::std::option::Option<unsafe extern "C" fn(factor: GLfixed, units: GLfixed)>;
16576pub type PFNGLROTATEXOESPROC =
16577    ::std::option::Option<unsafe extern "C" fn(angle: GLfixed, x: GLfixed, y: GLfixed, z: GLfixed)>;
16578pub type PFNGLSCALEXOESPROC =
16579    ::std::option::Option<unsafe extern "C" fn(x: GLfixed, y: GLfixed, z: GLfixed)>;
16580pub type PFNGLTEXENVXOESPROC =
16581    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLfixed)>;
16582pub type PFNGLTEXENVXVOESPROC = ::std::option::Option<
16583    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfixed),
16584>;
16585pub type PFNGLTEXPARAMETERXOESPROC =
16586    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLfixed)>;
16587pub type PFNGLTEXPARAMETERXVOESPROC = ::std::option::Option<
16588    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfixed),
16589>;
16590pub type PFNGLTRANSLATEXOESPROC =
16591    ::std::option::Option<unsafe extern "C" fn(x: GLfixed, y: GLfixed, z: GLfixed)>;
16592pub type PFNGLACCUMXOESPROC =
16593    ::std::option::Option<unsafe extern "C" fn(op: GLenum, value: GLfixed)>;
16594pub type PFNGLBITMAPXOESPROC = ::std::option::Option<
16595    unsafe extern "C" fn(
16596        width: GLsizei,
16597        height: GLsizei,
16598        xorig: GLfixed,
16599        yorig: GLfixed,
16600        xmove: GLfixed,
16601        ymove: GLfixed,
16602        bitmap: *const GLubyte,
16603    ),
16604>;
16605pub type PFNGLBLENDCOLORXOESPROC = ::std::option::Option<
16606    unsafe extern "C" fn(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed),
16607>;
16608pub type PFNGLCLEARACCUMXOESPROC = ::std::option::Option<
16609    unsafe extern "C" fn(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed),
16610>;
16611pub type PFNGLCOLOR3XOESPROC =
16612    ::std::option::Option<unsafe extern "C" fn(red: GLfixed, green: GLfixed, blue: GLfixed)>;
16613pub type PFNGLCOLOR3XVOESPROC =
16614    ::std::option::Option<unsafe extern "C" fn(components: *const GLfixed)>;
16615pub type PFNGLCOLOR4XVOESPROC =
16616    ::std::option::Option<unsafe extern "C" fn(components: *const GLfixed)>;
16617pub type PFNGLCONVOLUTIONPARAMETERXOESPROC =
16618    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLfixed)>;
16619pub type PFNGLCONVOLUTIONPARAMETERXVOESPROC = ::std::option::Option<
16620    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfixed),
16621>;
16622pub type PFNGLEVALCOORD1XOESPROC = ::std::option::Option<unsafe extern "C" fn(u: GLfixed)>;
16623pub type PFNGLEVALCOORD1XVOESPROC =
16624    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16625pub type PFNGLEVALCOORD2XOESPROC =
16626    ::std::option::Option<unsafe extern "C" fn(u: GLfixed, v: GLfixed)>;
16627pub type PFNGLEVALCOORD2XVOESPROC =
16628    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16629pub type PFNGLFEEDBACKBUFFERXOESPROC =
16630    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, type_: GLenum, buffer: *const GLfixed)>;
16631pub type PFNGLGETCONVOLUTIONPARAMETERXVOESPROC = ::std::option::Option<
16632    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfixed),
16633>;
16634pub type PFNGLGETHISTOGRAMPARAMETERXVOESPROC = ::std::option::Option<
16635    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfixed),
16636>;
16637pub type PFNGLGETLIGHTXOESPROC =
16638    ::std::option::Option<unsafe extern "C" fn(light: GLenum, pname: GLenum, params: *mut GLfixed)>;
16639pub type PFNGLGETMAPXVOESPROC =
16640    ::std::option::Option<unsafe extern "C" fn(target: GLenum, query: GLenum, v: *mut GLfixed)>;
16641pub type PFNGLGETMATERIALXOESPROC =
16642    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, param: GLfixed)>;
16643pub type PFNGLGETPIXELMAPXVPROC =
16644    ::std::option::Option<unsafe extern "C" fn(map: GLenum, size: GLint, values: *mut GLfixed)>;
16645pub type PFNGLGETTEXGENXVOESPROC =
16646    ::std::option::Option<unsafe extern "C" fn(coord: GLenum, pname: GLenum, params: *mut GLfixed)>;
16647pub type PFNGLGETTEXLEVELPARAMETERXVOESPROC = ::std::option::Option<
16648    unsafe extern "C" fn(target: GLenum, level: GLint, pname: GLenum, params: *mut GLfixed),
16649>;
16650pub type PFNGLINDEXXOESPROC = ::std::option::Option<unsafe extern "C" fn(component: GLfixed)>;
16651pub type PFNGLINDEXXVOESPROC =
16652    ::std::option::Option<unsafe extern "C" fn(component: *const GLfixed)>;
16653pub type PFNGLLOADTRANSPOSEMATRIXXOESPROC =
16654    ::std::option::Option<unsafe extern "C" fn(m: *const GLfixed)>;
16655pub type PFNGLMAP1XOESPROC = ::std::option::Option<
16656    unsafe extern "C" fn(
16657        target: GLenum,
16658        u1: GLfixed,
16659        u2: GLfixed,
16660        stride: GLint,
16661        order: GLint,
16662        points: GLfixed,
16663    ),
16664>;
16665pub type PFNGLMAP2XOESPROC = ::std::option::Option<
16666    unsafe extern "C" fn(
16667        target: GLenum,
16668        u1: GLfixed,
16669        u2: GLfixed,
16670        ustride: GLint,
16671        uorder: GLint,
16672        v1: GLfixed,
16673        v2: GLfixed,
16674        vstride: GLint,
16675        vorder: GLint,
16676        points: GLfixed,
16677    ),
16678>;
16679pub type PFNGLMAPGRID1XOESPROC =
16680    ::std::option::Option<unsafe extern "C" fn(n: GLint, u1: GLfixed, u2: GLfixed)>;
16681pub type PFNGLMAPGRID2XOESPROC = ::std::option::Option<
16682    unsafe extern "C" fn(n: GLint, u1: GLfixed, u2: GLfixed, v1: GLfixed, v2: GLfixed),
16683>;
16684pub type PFNGLMULTTRANSPOSEMATRIXXOESPROC =
16685    ::std::option::Option<unsafe extern "C" fn(m: *const GLfixed)>;
16686pub type PFNGLMULTITEXCOORD1XOESPROC =
16687    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, s: GLfixed)>;
16688pub type PFNGLMULTITEXCOORD1XVOESPROC =
16689    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLfixed)>;
16690pub type PFNGLMULTITEXCOORD2XOESPROC =
16691    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, s: GLfixed, t: GLfixed)>;
16692pub type PFNGLMULTITEXCOORD2XVOESPROC =
16693    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLfixed)>;
16694pub type PFNGLMULTITEXCOORD3XOESPROC = ::std::option::Option<
16695    unsafe extern "C" fn(texture: GLenum, s: GLfixed, t: GLfixed, r: GLfixed),
16696>;
16697pub type PFNGLMULTITEXCOORD3XVOESPROC =
16698    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLfixed)>;
16699pub type PFNGLMULTITEXCOORD4XVOESPROC =
16700    ::std::option::Option<unsafe extern "C" fn(texture: GLenum, coords: *const GLfixed)>;
16701pub type PFNGLNORMAL3XVOESPROC =
16702    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16703pub type PFNGLPASSTHROUGHXOESPROC = ::std::option::Option<unsafe extern "C" fn(token: GLfixed)>;
16704pub type PFNGLPIXELMAPXPROC =
16705    ::std::option::Option<unsafe extern "C" fn(map: GLenum, size: GLint, values: *const GLfixed)>;
16706pub type PFNGLPIXELSTOREXPROC =
16707    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfixed)>;
16708pub type PFNGLPIXELTRANSFERXOESPROC =
16709    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfixed)>;
16710pub type PFNGLPIXELZOOMXOESPROC =
16711    ::std::option::Option<unsafe extern "C" fn(xfactor: GLfixed, yfactor: GLfixed)>;
16712pub type PFNGLPRIORITIZETEXTURESXOESPROC = ::std::option::Option<
16713    unsafe extern "C" fn(n: GLsizei, textures: *const GLuint, priorities: *const GLfixed),
16714>;
16715pub type PFNGLRASTERPOS2XOESPROC =
16716    ::std::option::Option<unsafe extern "C" fn(x: GLfixed, y: GLfixed)>;
16717pub type PFNGLRASTERPOS2XVOESPROC =
16718    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16719pub type PFNGLRASTERPOS3XOESPROC =
16720    ::std::option::Option<unsafe extern "C" fn(x: GLfixed, y: GLfixed, z: GLfixed)>;
16721pub type PFNGLRASTERPOS3XVOESPROC =
16722    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16723pub type PFNGLRASTERPOS4XOESPROC =
16724    ::std::option::Option<unsafe extern "C" fn(x: GLfixed, y: GLfixed, z: GLfixed, w: GLfixed)>;
16725pub type PFNGLRASTERPOS4XVOESPROC =
16726    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16727pub type PFNGLRECTXOESPROC =
16728    ::std::option::Option<unsafe extern "C" fn(x1: GLfixed, y1: GLfixed, x2: GLfixed, y2: GLfixed)>;
16729pub type PFNGLRECTXVOESPROC =
16730    ::std::option::Option<unsafe extern "C" fn(v1: *const GLfixed, v2: *const GLfixed)>;
16731pub type PFNGLTEXCOORD1XOESPROC = ::std::option::Option<unsafe extern "C" fn(s: GLfixed)>;
16732pub type PFNGLTEXCOORD1XVOESPROC =
16733    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16734pub type PFNGLTEXCOORD2XOESPROC =
16735    ::std::option::Option<unsafe extern "C" fn(s: GLfixed, t: GLfixed)>;
16736pub type PFNGLTEXCOORD2XVOESPROC =
16737    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16738pub type PFNGLTEXCOORD3XOESPROC =
16739    ::std::option::Option<unsafe extern "C" fn(s: GLfixed, t: GLfixed, r: GLfixed)>;
16740pub type PFNGLTEXCOORD3XVOESPROC =
16741    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16742pub type PFNGLTEXCOORD4XOESPROC =
16743    ::std::option::Option<unsafe extern "C" fn(s: GLfixed, t: GLfixed, r: GLfixed, q: GLfixed)>;
16744pub type PFNGLTEXCOORD4XVOESPROC =
16745    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16746pub type PFNGLTEXGENXOESPROC =
16747    ::std::option::Option<unsafe extern "C" fn(coord: GLenum, pname: GLenum, param: GLfixed)>;
16748pub type PFNGLTEXGENXVOESPROC = ::std::option::Option<
16749    unsafe extern "C" fn(coord: GLenum, pname: GLenum, params: *const GLfixed),
16750>;
16751pub type PFNGLVERTEX2XOESPROC = ::std::option::Option<unsafe extern "C" fn(x: GLfixed)>;
16752pub type PFNGLVERTEX2XVOESPROC =
16753    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16754pub type PFNGLVERTEX3XOESPROC = ::std::option::Option<unsafe extern "C" fn(x: GLfixed, y: GLfixed)>;
16755pub type PFNGLVERTEX3XVOESPROC =
16756    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16757pub type PFNGLVERTEX4XOESPROC =
16758    ::std::option::Option<unsafe extern "C" fn(x: GLfixed, y: GLfixed, z: GLfixed)>;
16759pub type PFNGLVERTEX4XVOESPROC =
16760    ::std::option::Option<unsafe extern "C" fn(coords: *const GLfixed)>;
16761extern "C" {
16762    pub fn glAlphaFuncxOES(func: GLenum, ref_: GLfixed);
16763}
16764extern "C" {
16765    pub fn glClearColorxOES(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed);
16766}
16767extern "C" {
16768    pub fn glClearDepthxOES(depth: GLfixed);
16769}
16770extern "C" {
16771    pub fn glClipPlanexOES(plane: GLenum, equation: *const GLfixed);
16772}
16773extern "C" {
16774    pub fn glColor4xOES(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed);
16775}
16776extern "C" {
16777    pub fn glDepthRangexOES(n: GLfixed, f: GLfixed);
16778}
16779extern "C" {
16780    pub fn glFogxOES(pname: GLenum, param: GLfixed);
16781}
16782extern "C" {
16783    pub fn glFogxvOES(pname: GLenum, param: *const GLfixed);
16784}
16785extern "C" {
16786    pub fn glFrustumxOES(l: GLfixed, r: GLfixed, b: GLfixed, t: GLfixed, n: GLfixed, f: GLfixed);
16787}
16788extern "C" {
16789    pub fn glGetClipPlanexOES(plane: GLenum, equation: *mut GLfixed);
16790}
16791extern "C" {
16792    pub fn glGetFixedvOES(pname: GLenum, params: *mut GLfixed);
16793}
16794extern "C" {
16795    pub fn glGetTexEnvxvOES(target: GLenum, pname: GLenum, params: *mut GLfixed);
16796}
16797extern "C" {
16798    pub fn glGetTexParameterxvOES(target: GLenum, pname: GLenum, params: *mut GLfixed);
16799}
16800extern "C" {
16801    pub fn glLightModelxOES(pname: GLenum, param: GLfixed);
16802}
16803extern "C" {
16804    pub fn glLightModelxvOES(pname: GLenum, param: *const GLfixed);
16805}
16806extern "C" {
16807    pub fn glLightxOES(light: GLenum, pname: GLenum, param: GLfixed);
16808}
16809extern "C" {
16810    pub fn glLightxvOES(light: GLenum, pname: GLenum, params: *const GLfixed);
16811}
16812extern "C" {
16813    pub fn glLineWidthxOES(width: GLfixed);
16814}
16815extern "C" {
16816    pub fn glLoadMatrixxOES(m: *const GLfixed);
16817}
16818extern "C" {
16819    pub fn glMaterialxOES(face: GLenum, pname: GLenum, param: GLfixed);
16820}
16821extern "C" {
16822    pub fn glMaterialxvOES(face: GLenum, pname: GLenum, param: *const GLfixed);
16823}
16824extern "C" {
16825    pub fn glMultMatrixxOES(m: *const GLfixed);
16826}
16827extern "C" {
16828    pub fn glMultiTexCoord4xOES(texture: GLenum, s: GLfixed, t: GLfixed, r: GLfixed, q: GLfixed);
16829}
16830extern "C" {
16831    pub fn glNormal3xOES(nx: GLfixed, ny: GLfixed, nz: GLfixed);
16832}
16833extern "C" {
16834    pub fn glOrthoxOES(l: GLfixed, r: GLfixed, b: GLfixed, t: GLfixed, n: GLfixed, f: GLfixed);
16835}
16836extern "C" {
16837    pub fn glPointParameterxvOES(pname: GLenum, params: *const GLfixed);
16838}
16839extern "C" {
16840    pub fn glPointSizexOES(size: GLfixed);
16841}
16842extern "C" {
16843    pub fn glPolygonOffsetxOES(factor: GLfixed, units: GLfixed);
16844}
16845extern "C" {
16846    pub fn glRotatexOES(angle: GLfixed, x: GLfixed, y: GLfixed, z: GLfixed);
16847}
16848extern "C" {
16849    pub fn glScalexOES(x: GLfixed, y: GLfixed, z: GLfixed);
16850}
16851extern "C" {
16852    pub fn glTexEnvxOES(target: GLenum, pname: GLenum, param: GLfixed);
16853}
16854extern "C" {
16855    pub fn glTexEnvxvOES(target: GLenum, pname: GLenum, params: *const GLfixed);
16856}
16857extern "C" {
16858    pub fn glTexParameterxOES(target: GLenum, pname: GLenum, param: GLfixed);
16859}
16860extern "C" {
16861    pub fn glTexParameterxvOES(target: GLenum, pname: GLenum, params: *const GLfixed);
16862}
16863extern "C" {
16864    pub fn glTranslatexOES(x: GLfixed, y: GLfixed, z: GLfixed);
16865}
16866extern "C" {
16867    pub fn glAccumxOES(op: GLenum, value: GLfixed);
16868}
16869extern "C" {
16870    pub fn glBitmapxOES(
16871        width: GLsizei,
16872        height: GLsizei,
16873        xorig: GLfixed,
16874        yorig: GLfixed,
16875        xmove: GLfixed,
16876        ymove: GLfixed,
16877        bitmap: *const GLubyte,
16878    );
16879}
16880extern "C" {
16881    pub fn glBlendColorxOES(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed);
16882}
16883extern "C" {
16884    pub fn glClearAccumxOES(red: GLfixed, green: GLfixed, blue: GLfixed, alpha: GLfixed);
16885}
16886extern "C" {
16887    pub fn glColor3xOES(red: GLfixed, green: GLfixed, blue: GLfixed);
16888}
16889extern "C" {
16890    pub fn glColor3xvOES(components: *const GLfixed);
16891}
16892extern "C" {
16893    pub fn glColor4xvOES(components: *const GLfixed);
16894}
16895extern "C" {
16896    pub fn glConvolutionParameterxOES(target: GLenum, pname: GLenum, param: GLfixed);
16897}
16898extern "C" {
16899    pub fn glConvolutionParameterxvOES(target: GLenum, pname: GLenum, params: *const GLfixed);
16900}
16901extern "C" {
16902    pub fn glEvalCoord1xOES(u: GLfixed);
16903}
16904extern "C" {
16905    pub fn glEvalCoord1xvOES(coords: *const GLfixed);
16906}
16907extern "C" {
16908    pub fn glEvalCoord2xOES(u: GLfixed, v: GLfixed);
16909}
16910extern "C" {
16911    pub fn glEvalCoord2xvOES(coords: *const GLfixed);
16912}
16913extern "C" {
16914    pub fn glFeedbackBufferxOES(n: GLsizei, type_: GLenum, buffer: *const GLfixed);
16915}
16916extern "C" {
16917    pub fn glGetConvolutionParameterxvOES(target: GLenum, pname: GLenum, params: *mut GLfixed);
16918}
16919extern "C" {
16920    pub fn glGetHistogramParameterxvOES(target: GLenum, pname: GLenum, params: *mut GLfixed);
16921}
16922extern "C" {
16923    pub fn glGetLightxOES(light: GLenum, pname: GLenum, params: *mut GLfixed);
16924}
16925extern "C" {
16926    pub fn glGetMapxvOES(target: GLenum, query: GLenum, v: *mut GLfixed);
16927}
16928extern "C" {
16929    pub fn glGetMaterialxOES(face: GLenum, pname: GLenum, param: GLfixed);
16930}
16931extern "C" {
16932    pub fn glGetPixelMapxv(map: GLenum, size: GLint, values: *mut GLfixed);
16933}
16934extern "C" {
16935    pub fn glGetTexGenxvOES(coord: GLenum, pname: GLenum, params: *mut GLfixed);
16936}
16937extern "C" {
16938    pub fn glGetTexLevelParameterxvOES(
16939        target: GLenum,
16940        level: GLint,
16941        pname: GLenum,
16942        params: *mut GLfixed,
16943    );
16944}
16945extern "C" {
16946    pub fn glIndexxOES(component: GLfixed);
16947}
16948extern "C" {
16949    pub fn glIndexxvOES(component: *const GLfixed);
16950}
16951extern "C" {
16952    pub fn glLoadTransposeMatrixxOES(m: *const GLfixed);
16953}
16954extern "C" {
16955    pub fn glMap1xOES(
16956        target: GLenum,
16957        u1: GLfixed,
16958        u2: GLfixed,
16959        stride: GLint,
16960        order: GLint,
16961        points: GLfixed,
16962    );
16963}
16964extern "C" {
16965    pub fn glMap2xOES(
16966        target: GLenum,
16967        u1: GLfixed,
16968        u2: GLfixed,
16969        ustride: GLint,
16970        uorder: GLint,
16971        v1: GLfixed,
16972        v2: GLfixed,
16973        vstride: GLint,
16974        vorder: GLint,
16975        points: GLfixed,
16976    );
16977}
16978extern "C" {
16979    pub fn glMapGrid1xOES(n: GLint, u1: GLfixed, u2: GLfixed);
16980}
16981extern "C" {
16982    pub fn glMapGrid2xOES(n: GLint, u1: GLfixed, u2: GLfixed, v1: GLfixed, v2: GLfixed);
16983}
16984extern "C" {
16985    pub fn glMultTransposeMatrixxOES(m: *const GLfixed);
16986}
16987extern "C" {
16988    pub fn glMultiTexCoord1xOES(texture: GLenum, s: GLfixed);
16989}
16990extern "C" {
16991    pub fn glMultiTexCoord1xvOES(texture: GLenum, coords: *const GLfixed);
16992}
16993extern "C" {
16994    pub fn glMultiTexCoord2xOES(texture: GLenum, s: GLfixed, t: GLfixed);
16995}
16996extern "C" {
16997    pub fn glMultiTexCoord2xvOES(texture: GLenum, coords: *const GLfixed);
16998}
16999extern "C" {
17000    pub fn glMultiTexCoord3xOES(texture: GLenum, s: GLfixed, t: GLfixed, r: GLfixed);
17001}
17002extern "C" {
17003    pub fn glMultiTexCoord3xvOES(texture: GLenum, coords: *const GLfixed);
17004}
17005extern "C" {
17006    pub fn glMultiTexCoord4xvOES(texture: GLenum, coords: *const GLfixed);
17007}
17008extern "C" {
17009    pub fn glNormal3xvOES(coords: *const GLfixed);
17010}
17011extern "C" {
17012    pub fn glPassThroughxOES(token: GLfixed);
17013}
17014extern "C" {
17015    pub fn glPixelMapx(map: GLenum, size: GLint, values: *const GLfixed);
17016}
17017extern "C" {
17018    pub fn glPixelStorex(pname: GLenum, param: GLfixed);
17019}
17020extern "C" {
17021    pub fn glPixelTransferxOES(pname: GLenum, param: GLfixed);
17022}
17023extern "C" {
17024    pub fn glPixelZoomxOES(xfactor: GLfixed, yfactor: GLfixed);
17025}
17026extern "C" {
17027    pub fn glPrioritizeTexturesxOES(
17028        n: GLsizei,
17029        textures: *const GLuint,
17030        priorities: *const GLfixed,
17031    );
17032}
17033extern "C" {
17034    pub fn glRasterPos2xOES(x: GLfixed, y: GLfixed);
17035}
17036extern "C" {
17037    pub fn glRasterPos2xvOES(coords: *const GLfixed);
17038}
17039extern "C" {
17040    pub fn glRasterPos3xOES(x: GLfixed, y: GLfixed, z: GLfixed);
17041}
17042extern "C" {
17043    pub fn glRasterPos3xvOES(coords: *const GLfixed);
17044}
17045extern "C" {
17046    pub fn glRasterPos4xOES(x: GLfixed, y: GLfixed, z: GLfixed, w: GLfixed);
17047}
17048extern "C" {
17049    pub fn glRasterPos4xvOES(coords: *const GLfixed);
17050}
17051extern "C" {
17052    pub fn glRectxOES(x1: GLfixed, y1: GLfixed, x2: GLfixed, y2: GLfixed);
17053}
17054extern "C" {
17055    pub fn glRectxvOES(v1: *const GLfixed, v2: *const GLfixed);
17056}
17057extern "C" {
17058    pub fn glTexCoord1xOES(s: GLfixed);
17059}
17060extern "C" {
17061    pub fn glTexCoord1xvOES(coords: *const GLfixed);
17062}
17063extern "C" {
17064    pub fn glTexCoord2xOES(s: GLfixed, t: GLfixed);
17065}
17066extern "C" {
17067    pub fn glTexCoord2xvOES(coords: *const GLfixed);
17068}
17069extern "C" {
17070    pub fn glTexCoord3xOES(s: GLfixed, t: GLfixed, r: GLfixed);
17071}
17072extern "C" {
17073    pub fn glTexCoord3xvOES(coords: *const GLfixed);
17074}
17075extern "C" {
17076    pub fn glTexCoord4xOES(s: GLfixed, t: GLfixed, r: GLfixed, q: GLfixed);
17077}
17078extern "C" {
17079    pub fn glTexCoord4xvOES(coords: *const GLfixed);
17080}
17081extern "C" {
17082    pub fn glTexGenxOES(coord: GLenum, pname: GLenum, param: GLfixed);
17083}
17084extern "C" {
17085    pub fn glTexGenxvOES(coord: GLenum, pname: GLenum, params: *const GLfixed);
17086}
17087extern "C" {
17088    pub fn glVertex2xOES(x: GLfixed);
17089}
17090extern "C" {
17091    pub fn glVertex2xvOES(coords: *const GLfixed);
17092}
17093extern "C" {
17094    pub fn glVertex3xOES(x: GLfixed, y: GLfixed);
17095}
17096extern "C" {
17097    pub fn glVertex3xvOES(coords: *const GLfixed);
17098}
17099extern "C" {
17100    pub fn glVertex4xOES(x: GLfixed, y: GLfixed, z: GLfixed);
17101}
17102extern "C" {
17103    pub fn glVertex4xvOES(coords: *const GLfixed);
17104}
17105pub type PFNGLQUERYMATRIXXOESPROC = ::std::option::Option<
17106    unsafe extern "C" fn(mantissa: *mut GLfixed, exponent: *mut GLint) -> GLbitfield,
17107>;
17108extern "C" {
17109    pub fn glQueryMatrixxOES(mantissa: *mut GLfixed, exponent: *mut GLint) -> GLbitfield;
17110}
17111pub type PFNGLCLEARDEPTHFOESPROC = ::std::option::Option<unsafe extern "C" fn(depth: GLclampf)>;
17112pub type PFNGLCLIPPLANEFOESPROC =
17113    ::std::option::Option<unsafe extern "C" fn(plane: GLenum, equation: *const GLfloat)>;
17114pub type PFNGLDEPTHRANGEFOESPROC =
17115    ::std::option::Option<unsafe extern "C" fn(n: GLclampf, f: GLclampf)>;
17116pub type PFNGLFRUSTUMFOESPROC = ::std::option::Option<
17117    unsafe extern "C" fn(l: GLfloat, r: GLfloat, b: GLfloat, t: GLfloat, n: GLfloat, f: GLfloat),
17118>;
17119pub type PFNGLGETCLIPPLANEFOESPROC =
17120    ::std::option::Option<unsafe extern "C" fn(plane: GLenum, equation: *mut GLfloat)>;
17121pub type PFNGLORTHOFOESPROC = ::std::option::Option<
17122    unsafe extern "C" fn(l: GLfloat, r: GLfloat, b: GLfloat, t: GLfloat, n: GLfloat, f: GLfloat),
17123>;
17124extern "C" {
17125    pub fn glClearDepthfOES(depth: GLclampf);
17126}
17127extern "C" {
17128    pub fn glClipPlanefOES(plane: GLenum, equation: *const GLfloat);
17129}
17130extern "C" {
17131    pub fn glDepthRangefOES(n: GLclampf, f: GLclampf);
17132}
17133extern "C" {
17134    pub fn glFrustumfOES(l: GLfloat, r: GLfloat, b: GLfloat, t: GLfloat, n: GLfloat, f: GLfloat);
17135}
17136extern "C" {
17137    pub fn glGetClipPlanefOES(plane: GLenum, equation: *mut GLfloat);
17138}
17139extern "C" {
17140    pub fn glOrthofOES(l: GLfloat, r: GLfloat, b: GLfloat, t: GLfloat, n: GLfloat, f: GLfloat);
17141}
17142pub type PFNGLTBUFFERMASK3DFXPROC = ::std::option::Option<unsafe extern "C" fn(mask: GLuint)>;
17143extern "C" {
17144    pub fn glTbufferMask3DFX(mask: GLuint);
17145}
17146pub type GLDEBUGPROCAMD = ::std::option::Option<
17147    unsafe extern "C" fn(
17148        id: GLuint,
17149        category: GLenum,
17150        severity: GLenum,
17151        length: GLsizei,
17152        message: *const GLchar,
17153        userParam: *mut ::std::os::raw::c_void,
17154    ),
17155>;
17156pub type PFNGLDEBUGMESSAGEENABLEAMDPROC = ::std::option::Option<
17157    unsafe extern "C" fn(
17158        category: GLenum,
17159        severity: GLenum,
17160        count: GLsizei,
17161        ids: *const GLuint,
17162        enabled: GLboolean,
17163    ),
17164>;
17165pub type PFNGLDEBUGMESSAGEINSERTAMDPROC = ::std::option::Option<
17166    unsafe extern "C" fn(
17167        category: GLenum,
17168        severity: GLenum,
17169        id: GLuint,
17170        length: GLsizei,
17171        buf: *const GLchar,
17172    ),
17173>;
17174pub type PFNGLDEBUGMESSAGECALLBACKAMDPROC = ::std::option::Option<
17175    unsafe extern "C" fn(callback: GLDEBUGPROCAMD, userParam: *mut ::std::os::raw::c_void),
17176>;
17177pub type PFNGLGETDEBUGMESSAGELOGAMDPROC = ::std::option::Option<
17178    unsafe extern "C" fn(
17179        count: GLuint,
17180        bufsize: GLsizei,
17181        categories: *mut GLenum,
17182        severities: *mut GLuint,
17183        ids: *mut GLuint,
17184        lengths: *mut GLsizei,
17185        message: *mut GLchar,
17186    ) -> GLuint,
17187>;
17188extern "C" {
17189    pub fn glDebugMessageEnableAMD(
17190        category: GLenum,
17191        severity: GLenum,
17192        count: GLsizei,
17193        ids: *const GLuint,
17194        enabled: GLboolean,
17195    );
17196}
17197extern "C" {
17198    pub fn glDebugMessageInsertAMD(
17199        category: GLenum,
17200        severity: GLenum,
17201        id: GLuint,
17202        length: GLsizei,
17203        buf: *const GLchar,
17204    );
17205}
17206extern "C" {
17207    pub fn glDebugMessageCallbackAMD(
17208        callback: GLDEBUGPROCAMD,
17209        userParam: *mut ::std::os::raw::c_void,
17210    );
17211}
17212extern "C" {
17213    pub fn glGetDebugMessageLogAMD(
17214        count: GLuint,
17215        bufsize: GLsizei,
17216        categories: *mut GLenum,
17217        severities: *mut GLuint,
17218        ids: *mut GLuint,
17219        lengths: *mut GLsizei,
17220        message: *mut GLchar,
17221    ) -> GLuint;
17222}
17223pub type PFNGLBLENDFUNCINDEXEDAMDPROC =
17224    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, src: GLenum, dst: GLenum)>;
17225pub type PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC = ::std::option::Option<
17226    unsafe extern "C" fn(
17227        buf: GLuint,
17228        srcRGB: GLenum,
17229        dstRGB: GLenum,
17230        srcAlpha: GLenum,
17231        dstAlpha: GLenum,
17232    ),
17233>;
17234pub type PFNGLBLENDEQUATIONINDEXEDAMDPROC =
17235    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, mode: GLenum)>;
17236pub type PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC =
17237    ::std::option::Option<unsafe extern "C" fn(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum)>;
17238extern "C" {
17239    pub fn glBlendFuncIndexedAMD(buf: GLuint, src: GLenum, dst: GLenum);
17240}
17241extern "C" {
17242    pub fn glBlendFuncSeparateIndexedAMD(
17243        buf: GLuint,
17244        srcRGB: GLenum,
17245        dstRGB: GLenum,
17246        srcAlpha: GLenum,
17247        dstAlpha: GLenum,
17248    );
17249}
17250extern "C" {
17251    pub fn glBlendEquationIndexedAMD(buf: GLuint, mode: GLenum);
17252}
17253extern "C" {
17254    pub fn glBlendEquationSeparateIndexedAMD(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum);
17255}
17256pub type PFNGLRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC = ::std::option::Option<
17257    unsafe extern "C" fn(
17258        target: GLenum,
17259        samples: GLsizei,
17260        storageSamples: GLsizei,
17261        internalformat: GLenum,
17262        width: GLsizei,
17263        height: GLsizei,
17264    ),
17265>;
17266pub type PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC = ::std::option::Option<
17267    unsafe extern "C" fn(
17268        renderbuffer: GLuint,
17269        samples: GLsizei,
17270        storageSamples: GLsizei,
17271        internalformat: GLenum,
17272        width: GLsizei,
17273        height: GLsizei,
17274    ),
17275>;
17276extern "C" {
17277    pub fn glRenderbufferStorageMultisampleAdvancedAMD(
17278        target: GLenum,
17279        samples: GLsizei,
17280        storageSamples: GLsizei,
17281        internalformat: GLenum,
17282        width: GLsizei,
17283        height: GLsizei,
17284    );
17285}
17286extern "C" {
17287    pub fn glNamedRenderbufferStorageMultisampleAdvancedAMD(
17288        renderbuffer: GLuint,
17289        samples: GLsizei,
17290        storageSamples: GLsizei,
17291        internalformat: GLenum,
17292        width: GLsizei,
17293        height: GLsizei,
17294    );
17295}
17296pub type PFNGLFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC = ::std::option::Option<
17297    unsafe extern "C" fn(
17298        target: GLenum,
17299        numsamples: GLuint,
17300        pixelindex: GLuint,
17301        values: *const GLfloat,
17302    ),
17303>;
17304pub type PFNGLNAMEDFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC = ::std::option::Option<
17305    unsafe extern "C" fn(
17306        framebuffer: GLuint,
17307        numsamples: GLuint,
17308        pixelindex: GLuint,
17309        values: *const GLfloat,
17310    ),
17311>;
17312pub type PFNGLGETFRAMEBUFFERPARAMETERFVAMDPROC = ::std::option::Option<
17313    unsafe extern "C" fn(
17314        target: GLenum,
17315        pname: GLenum,
17316        numsamples: GLuint,
17317        pixelindex: GLuint,
17318        size: GLsizei,
17319        values: *mut GLfloat,
17320    ),
17321>;
17322pub type PFNGLGETNAMEDFRAMEBUFFERPARAMETERFVAMDPROC = ::std::option::Option<
17323    unsafe extern "C" fn(
17324        framebuffer: GLuint,
17325        pname: GLenum,
17326        numsamples: GLuint,
17327        pixelindex: GLuint,
17328        size: GLsizei,
17329        values: *mut GLfloat,
17330    ),
17331>;
17332extern "C" {
17333    pub fn glFramebufferSamplePositionsfvAMD(
17334        target: GLenum,
17335        numsamples: GLuint,
17336        pixelindex: GLuint,
17337        values: *const GLfloat,
17338    );
17339}
17340extern "C" {
17341    pub fn glNamedFramebufferSamplePositionsfvAMD(
17342        framebuffer: GLuint,
17343        numsamples: GLuint,
17344        pixelindex: GLuint,
17345        values: *const GLfloat,
17346    );
17347}
17348extern "C" {
17349    pub fn glGetFramebufferParameterfvAMD(
17350        target: GLenum,
17351        pname: GLenum,
17352        numsamples: GLuint,
17353        pixelindex: GLuint,
17354        size: GLsizei,
17355        values: *mut GLfloat,
17356    );
17357}
17358extern "C" {
17359    pub fn glGetNamedFramebufferParameterfvAMD(
17360        framebuffer: GLuint,
17361        pname: GLenum,
17362        numsamples: GLuint,
17363        pixelindex: GLuint,
17364        size: GLsizei,
17365        values: *mut GLfloat,
17366    );
17367}
17368pub type GLint64EXT = khronos_int64_t;
17369pub type PFNGLUNIFORM1I64NVPROC =
17370    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLint64EXT)>;
17371pub type PFNGLUNIFORM2I64NVPROC =
17372    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLint64EXT, y: GLint64EXT)>;
17373pub type PFNGLUNIFORM3I64NVPROC = ::std::option::Option<
17374    unsafe extern "C" fn(location: GLint, x: GLint64EXT, y: GLint64EXT, z: GLint64EXT),
17375>;
17376pub type PFNGLUNIFORM4I64NVPROC = ::std::option::Option<
17377    unsafe extern "C" fn(
17378        location: GLint,
17379        x: GLint64EXT,
17380        y: GLint64EXT,
17381        z: GLint64EXT,
17382        w: GLint64EXT,
17383    ),
17384>;
17385pub type PFNGLUNIFORM1I64VNVPROC = ::std::option::Option<
17386    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64EXT),
17387>;
17388pub type PFNGLUNIFORM2I64VNVPROC = ::std::option::Option<
17389    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64EXT),
17390>;
17391pub type PFNGLUNIFORM3I64VNVPROC = ::std::option::Option<
17392    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64EXT),
17393>;
17394pub type PFNGLUNIFORM4I64VNVPROC = ::std::option::Option<
17395    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLint64EXT),
17396>;
17397pub type PFNGLUNIFORM1UI64NVPROC =
17398    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLuint64EXT)>;
17399pub type PFNGLUNIFORM2UI64NVPROC =
17400    ::std::option::Option<unsafe extern "C" fn(location: GLint, x: GLuint64EXT, y: GLuint64EXT)>;
17401pub type PFNGLUNIFORM3UI64NVPROC = ::std::option::Option<
17402    unsafe extern "C" fn(location: GLint, x: GLuint64EXT, y: GLuint64EXT, z: GLuint64EXT),
17403>;
17404pub type PFNGLUNIFORM4UI64NVPROC = ::std::option::Option<
17405    unsafe extern "C" fn(
17406        location: GLint,
17407        x: GLuint64EXT,
17408        y: GLuint64EXT,
17409        z: GLuint64EXT,
17410        w: GLuint64EXT,
17411    ),
17412>;
17413pub type PFNGLUNIFORM1UI64VNVPROC = ::std::option::Option<
17414    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64EXT),
17415>;
17416pub type PFNGLUNIFORM2UI64VNVPROC = ::std::option::Option<
17417    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64EXT),
17418>;
17419pub type PFNGLUNIFORM3UI64VNVPROC = ::std::option::Option<
17420    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64EXT),
17421>;
17422pub type PFNGLUNIFORM4UI64VNVPROC = ::std::option::Option<
17423    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64EXT),
17424>;
17425pub type PFNGLGETUNIFORMI64VNVPROC = ::std::option::Option<
17426    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLint64EXT),
17427>;
17428pub type PFNGLGETUNIFORMUI64VNVPROC = ::std::option::Option<
17429    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLuint64EXT),
17430>;
17431pub type PFNGLPROGRAMUNIFORM1I64NVPROC =
17432    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, x: GLint64EXT)>;
17433pub type PFNGLPROGRAMUNIFORM2I64NVPROC = ::std::option::Option<
17434    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLint64EXT, y: GLint64EXT),
17435>;
17436pub type PFNGLPROGRAMUNIFORM3I64NVPROC = ::std::option::Option<
17437    unsafe extern "C" fn(
17438        program: GLuint,
17439        location: GLint,
17440        x: GLint64EXT,
17441        y: GLint64EXT,
17442        z: GLint64EXT,
17443    ),
17444>;
17445pub type PFNGLPROGRAMUNIFORM4I64NVPROC = ::std::option::Option<
17446    unsafe extern "C" fn(
17447        program: GLuint,
17448        location: GLint,
17449        x: GLint64EXT,
17450        y: GLint64EXT,
17451        z: GLint64EXT,
17452        w: GLint64EXT,
17453    ),
17454>;
17455pub type PFNGLPROGRAMUNIFORM1I64VNVPROC = ::std::option::Option<
17456    unsafe extern "C" fn(
17457        program: GLuint,
17458        location: GLint,
17459        count: GLsizei,
17460        value: *const GLint64EXT,
17461    ),
17462>;
17463pub type PFNGLPROGRAMUNIFORM2I64VNVPROC = ::std::option::Option<
17464    unsafe extern "C" fn(
17465        program: GLuint,
17466        location: GLint,
17467        count: GLsizei,
17468        value: *const GLint64EXT,
17469    ),
17470>;
17471pub type PFNGLPROGRAMUNIFORM3I64VNVPROC = ::std::option::Option<
17472    unsafe extern "C" fn(
17473        program: GLuint,
17474        location: GLint,
17475        count: GLsizei,
17476        value: *const GLint64EXT,
17477    ),
17478>;
17479pub type PFNGLPROGRAMUNIFORM4I64VNVPROC = ::std::option::Option<
17480    unsafe extern "C" fn(
17481        program: GLuint,
17482        location: GLint,
17483        count: GLsizei,
17484        value: *const GLint64EXT,
17485    ),
17486>;
17487pub type PFNGLPROGRAMUNIFORM1UI64NVPROC =
17488    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, x: GLuint64EXT)>;
17489pub type PFNGLPROGRAMUNIFORM2UI64NVPROC = ::std::option::Option<
17490    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLuint64EXT, y: GLuint64EXT),
17491>;
17492pub type PFNGLPROGRAMUNIFORM3UI64NVPROC = ::std::option::Option<
17493    unsafe extern "C" fn(
17494        program: GLuint,
17495        location: GLint,
17496        x: GLuint64EXT,
17497        y: GLuint64EXT,
17498        z: GLuint64EXT,
17499    ),
17500>;
17501pub type PFNGLPROGRAMUNIFORM4UI64NVPROC = ::std::option::Option<
17502    unsafe extern "C" fn(
17503        program: GLuint,
17504        location: GLint,
17505        x: GLuint64EXT,
17506        y: GLuint64EXT,
17507        z: GLuint64EXT,
17508        w: GLuint64EXT,
17509    ),
17510>;
17511pub type PFNGLPROGRAMUNIFORM1UI64VNVPROC = ::std::option::Option<
17512    unsafe extern "C" fn(
17513        program: GLuint,
17514        location: GLint,
17515        count: GLsizei,
17516        value: *const GLuint64EXT,
17517    ),
17518>;
17519pub type PFNGLPROGRAMUNIFORM2UI64VNVPROC = ::std::option::Option<
17520    unsafe extern "C" fn(
17521        program: GLuint,
17522        location: GLint,
17523        count: GLsizei,
17524        value: *const GLuint64EXT,
17525    ),
17526>;
17527pub type PFNGLPROGRAMUNIFORM3UI64VNVPROC = ::std::option::Option<
17528    unsafe extern "C" fn(
17529        program: GLuint,
17530        location: GLint,
17531        count: GLsizei,
17532        value: *const GLuint64EXT,
17533    ),
17534>;
17535pub type PFNGLPROGRAMUNIFORM4UI64VNVPROC = ::std::option::Option<
17536    unsafe extern "C" fn(
17537        program: GLuint,
17538        location: GLint,
17539        count: GLsizei,
17540        value: *const GLuint64EXT,
17541    ),
17542>;
17543extern "C" {
17544    pub fn glUniform1i64NV(location: GLint, x: GLint64EXT);
17545}
17546extern "C" {
17547    pub fn glUniform2i64NV(location: GLint, x: GLint64EXT, y: GLint64EXT);
17548}
17549extern "C" {
17550    pub fn glUniform3i64NV(location: GLint, x: GLint64EXT, y: GLint64EXT, z: GLint64EXT);
17551}
17552extern "C" {
17553    pub fn glUniform4i64NV(
17554        location: GLint,
17555        x: GLint64EXT,
17556        y: GLint64EXT,
17557        z: GLint64EXT,
17558        w: GLint64EXT,
17559    );
17560}
17561extern "C" {
17562    pub fn glUniform1i64vNV(location: GLint, count: GLsizei, value: *const GLint64EXT);
17563}
17564extern "C" {
17565    pub fn glUniform2i64vNV(location: GLint, count: GLsizei, value: *const GLint64EXT);
17566}
17567extern "C" {
17568    pub fn glUniform3i64vNV(location: GLint, count: GLsizei, value: *const GLint64EXT);
17569}
17570extern "C" {
17571    pub fn glUniform4i64vNV(location: GLint, count: GLsizei, value: *const GLint64EXT);
17572}
17573extern "C" {
17574    pub fn glUniform1ui64NV(location: GLint, x: GLuint64EXT);
17575}
17576extern "C" {
17577    pub fn glUniform2ui64NV(location: GLint, x: GLuint64EXT, y: GLuint64EXT);
17578}
17579extern "C" {
17580    pub fn glUniform3ui64NV(location: GLint, x: GLuint64EXT, y: GLuint64EXT, z: GLuint64EXT);
17581}
17582extern "C" {
17583    pub fn glUniform4ui64NV(
17584        location: GLint,
17585        x: GLuint64EXT,
17586        y: GLuint64EXT,
17587        z: GLuint64EXT,
17588        w: GLuint64EXT,
17589    );
17590}
17591extern "C" {
17592    pub fn glUniform1ui64vNV(location: GLint, count: GLsizei, value: *const GLuint64EXT);
17593}
17594extern "C" {
17595    pub fn glUniform2ui64vNV(location: GLint, count: GLsizei, value: *const GLuint64EXT);
17596}
17597extern "C" {
17598    pub fn glUniform3ui64vNV(location: GLint, count: GLsizei, value: *const GLuint64EXT);
17599}
17600extern "C" {
17601    pub fn glUniform4ui64vNV(location: GLint, count: GLsizei, value: *const GLuint64EXT);
17602}
17603extern "C" {
17604    pub fn glGetUniformi64vNV(program: GLuint, location: GLint, params: *mut GLint64EXT);
17605}
17606extern "C" {
17607    pub fn glGetUniformui64vNV(program: GLuint, location: GLint, params: *mut GLuint64EXT);
17608}
17609extern "C" {
17610    pub fn glProgramUniform1i64NV(program: GLuint, location: GLint, x: GLint64EXT);
17611}
17612extern "C" {
17613    pub fn glProgramUniform2i64NV(program: GLuint, location: GLint, x: GLint64EXT, y: GLint64EXT);
17614}
17615extern "C" {
17616    pub fn glProgramUniform3i64NV(
17617        program: GLuint,
17618        location: GLint,
17619        x: GLint64EXT,
17620        y: GLint64EXT,
17621        z: GLint64EXT,
17622    );
17623}
17624extern "C" {
17625    pub fn glProgramUniform4i64NV(
17626        program: GLuint,
17627        location: GLint,
17628        x: GLint64EXT,
17629        y: GLint64EXT,
17630        z: GLint64EXT,
17631        w: GLint64EXT,
17632    );
17633}
17634extern "C" {
17635    pub fn glProgramUniform1i64vNV(
17636        program: GLuint,
17637        location: GLint,
17638        count: GLsizei,
17639        value: *const GLint64EXT,
17640    );
17641}
17642extern "C" {
17643    pub fn glProgramUniform2i64vNV(
17644        program: GLuint,
17645        location: GLint,
17646        count: GLsizei,
17647        value: *const GLint64EXT,
17648    );
17649}
17650extern "C" {
17651    pub fn glProgramUniform3i64vNV(
17652        program: GLuint,
17653        location: GLint,
17654        count: GLsizei,
17655        value: *const GLint64EXT,
17656    );
17657}
17658extern "C" {
17659    pub fn glProgramUniform4i64vNV(
17660        program: GLuint,
17661        location: GLint,
17662        count: GLsizei,
17663        value: *const GLint64EXT,
17664    );
17665}
17666extern "C" {
17667    pub fn glProgramUniform1ui64NV(program: GLuint, location: GLint, x: GLuint64EXT);
17668}
17669extern "C" {
17670    pub fn glProgramUniform2ui64NV(
17671        program: GLuint,
17672        location: GLint,
17673        x: GLuint64EXT,
17674        y: GLuint64EXT,
17675    );
17676}
17677extern "C" {
17678    pub fn glProgramUniform3ui64NV(
17679        program: GLuint,
17680        location: GLint,
17681        x: GLuint64EXT,
17682        y: GLuint64EXT,
17683        z: GLuint64EXT,
17684    );
17685}
17686extern "C" {
17687    pub fn glProgramUniform4ui64NV(
17688        program: GLuint,
17689        location: GLint,
17690        x: GLuint64EXT,
17691        y: GLuint64EXT,
17692        z: GLuint64EXT,
17693        w: GLuint64EXT,
17694    );
17695}
17696extern "C" {
17697    pub fn glProgramUniform1ui64vNV(
17698        program: GLuint,
17699        location: GLint,
17700        count: GLsizei,
17701        value: *const GLuint64EXT,
17702    );
17703}
17704extern "C" {
17705    pub fn glProgramUniform2ui64vNV(
17706        program: GLuint,
17707        location: GLint,
17708        count: GLsizei,
17709        value: *const GLuint64EXT,
17710    );
17711}
17712extern "C" {
17713    pub fn glProgramUniform3ui64vNV(
17714        program: GLuint,
17715        location: GLint,
17716        count: GLsizei,
17717        value: *const GLuint64EXT,
17718    );
17719}
17720extern "C" {
17721    pub fn glProgramUniform4ui64vNV(
17722        program: GLuint,
17723        location: GLint,
17724        count: GLsizei,
17725        value: *const GLuint64EXT,
17726    );
17727}
17728pub type PFNGLVERTEXATTRIBPARAMETERIAMDPROC =
17729    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, param: GLint)>;
17730extern "C" {
17731    pub fn glVertexAttribParameteriAMD(index: GLuint, pname: GLenum, param: GLint);
17732}
17733pub type PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC = ::std::option::Option<
17734    unsafe extern "C" fn(
17735        mode: GLenum,
17736        indirect: *const ::std::os::raw::c_void,
17737        primcount: GLsizei,
17738        stride: GLsizei,
17739    ),
17740>;
17741pub type PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC = ::std::option::Option<
17742    unsafe extern "C" fn(
17743        mode: GLenum,
17744        type_: GLenum,
17745        indirect: *const ::std::os::raw::c_void,
17746        primcount: GLsizei,
17747        stride: GLsizei,
17748    ),
17749>;
17750extern "C" {
17751    pub fn glMultiDrawArraysIndirectAMD(
17752        mode: GLenum,
17753        indirect: *const ::std::os::raw::c_void,
17754        primcount: GLsizei,
17755        stride: GLsizei,
17756    );
17757}
17758extern "C" {
17759    pub fn glMultiDrawElementsIndirectAMD(
17760        mode: GLenum,
17761        type_: GLenum,
17762        indirect: *const ::std::os::raw::c_void,
17763        primcount: GLsizei,
17764        stride: GLsizei,
17765    );
17766}
17767pub type PFNGLGENNAMESAMDPROC = ::std::option::Option<
17768    unsafe extern "C" fn(identifier: GLenum, num: GLuint, names: *mut GLuint),
17769>;
17770pub type PFNGLDELETENAMESAMDPROC = ::std::option::Option<
17771    unsafe extern "C" fn(identifier: GLenum, num: GLuint, names: *const GLuint),
17772>;
17773pub type PFNGLISNAMEAMDPROC =
17774    ::std::option::Option<unsafe extern "C" fn(identifier: GLenum, name: GLuint) -> GLboolean>;
17775extern "C" {
17776    pub fn glGenNamesAMD(identifier: GLenum, num: GLuint, names: *mut GLuint);
17777}
17778extern "C" {
17779    pub fn glDeleteNamesAMD(identifier: GLenum, num: GLuint, names: *const GLuint);
17780}
17781extern "C" {
17782    pub fn glIsNameAMD(identifier: GLenum, name: GLuint) -> GLboolean;
17783}
17784pub type PFNGLQUERYOBJECTPARAMETERUIAMDPROC = ::std::option::Option<
17785    unsafe extern "C" fn(target: GLenum, id: GLuint, pname: GLenum, param: GLuint),
17786>;
17787extern "C" {
17788    pub fn glQueryObjectParameteruiAMD(target: GLenum, id: GLuint, pname: GLenum, param: GLuint);
17789}
17790pub type PFNGLGETPERFMONITORGROUPSAMDPROC = ::std::option::Option<
17791    unsafe extern "C" fn(numGroups: *mut GLint, groupsSize: GLsizei, groups: *mut GLuint),
17792>;
17793pub type PFNGLGETPERFMONITORCOUNTERSAMDPROC = ::std::option::Option<
17794    unsafe extern "C" fn(
17795        group: GLuint,
17796        numCounters: *mut GLint,
17797        maxActiveCounters: *mut GLint,
17798        counterSize: GLsizei,
17799        counters: *mut GLuint,
17800    ),
17801>;
17802pub type PFNGLGETPERFMONITORGROUPSTRINGAMDPROC = ::std::option::Option<
17803    unsafe extern "C" fn(
17804        group: GLuint,
17805        bufSize: GLsizei,
17806        length: *mut GLsizei,
17807        groupString: *mut GLchar,
17808    ),
17809>;
17810pub type PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC = ::std::option::Option<
17811    unsafe extern "C" fn(
17812        group: GLuint,
17813        counter: GLuint,
17814        bufSize: GLsizei,
17815        length: *mut GLsizei,
17816        counterString: *mut GLchar,
17817    ),
17818>;
17819pub type PFNGLGETPERFMONITORCOUNTERINFOAMDPROC = ::std::option::Option<
17820    unsafe extern "C" fn(
17821        group: GLuint,
17822        counter: GLuint,
17823        pname: GLenum,
17824        data: *mut ::std::os::raw::c_void,
17825    ),
17826>;
17827pub type PFNGLGENPERFMONITORSAMDPROC =
17828    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, monitors: *mut GLuint)>;
17829pub type PFNGLDELETEPERFMONITORSAMDPROC =
17830    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, monitors: *mut GLuint)>;
17831pub type PFNGLSELECTPERFMONITORCOUNTERSAMDPROC = ::std::option::Option<
17832    unsafe extern "C" fn(
17833        monitor: GLuint,
17834        enable: GLboolean,
17835        group: GLuint,
17836        numCounters: GLint,
17837        counterList: *mut GLuint,
17838    ),
17839>;
17840pub type PFNGLBEGINPERFMONITORAMDPROC =
17841    ::std::option::Option<unsafe extern "C" fn(monitor: GLuint)>;
17842pub type PFNGLENDPERFMONITORAMDPROC = ::std::option::Option<unsafe extern "C" fn(monitor: GLuint)>;
17843pub type PFNGLGETPERFMONITORCOUNTERDATAAMDPROC = ::std::option::Option<
17844    unsafe extern "C" fn(
17845        monitor: GLuint,
17846        pname: GLenum,
17847        dataSize: GLsizei,
17848        data: *mut GLuint,
17849        bytesWritten: *mut GLint,
17850    ),
17851>;
17852extern "C" {
17853    pub fn glGetPerfMonitorGroupsAMD(
17854        numGroups: *mut GLint,
17855        groupsSize: GLsizei,
17856        groups: *mut GLuint,
17857    );
17858}
17859extern "C" {
17860    pub fn glGetPerfMonitorCountersAMD(
17861        group: GLuint,
17862        numCounters: *mut GLint,
17863        maxActiveCounters: *mut GLint,
17864        counterSize: GLsizei,
17865        counters: *mut GLuint,
17866    );
17867}
17868extern "C" {
17869    pub fn glGetPerfMonitorGroupStringAMD(
17870        group: GLuint,
17871        bufSize: GLsizei,
17872        length: *mut GLsizei,
17873        groupString: *mut GLchar,
17874    );
17875}
17876extern "C" {
17877    pub fn glGetPerfMonitorCounterStringAMD(
17878        group: GLuint,
17879        counter: GLuint,
17880        bufSize: GLsizei,
17881        length: *mut GLsizei,
17882        counterString: *mut GLchar,
17883    );
17884}
17885extern "C" {
17886    pub fn glGetPerfMonitorCounterInfoAMD(
17887        group: GLuint,
17888        counter: GLuint,
17889        pname: GLenum,
17890        data: *mut ::std::os::raw::c_void,
17891    );
17892}
17893extern "C" {
17894    pub fn glGenPerfMonitorsAMD(n: GLsizei, monitors: *mut GLuint);
17895}
17896extern "C" {
17897    pub fn glDeletePerfMonitorsAMD(n: GLsizei, monitors: *mut GLuint);
17898}
17899extern "C" {
17900    pub fn glSelectPerfMonitorCountersAMD(
17901        monitor: GLuint,
17902        enable: GLboolean,
17903        group: GLuint,
17904        numCounters: GLint,
17905        counterList: *mut GLuint,
17906    );
17907}
17908extern "C" {
17909    pub fn glBeginPerfMonitorAMD(monitor: GLuint);
17910}
17911extern "C" {
17912    pub fn glEndPerfMonitorAMD(monitor: GLuint);
17913}
17914extern "C" {
17915    pub fn glGetPerfMonitorCounterDataAMD(
17916        monitor: GLuint,
17917        pname: GLenum,
17918        dataSize: GLsizei,
17919        data: *mut GLuint,
17920        bytesWritten: *mut GLint,
17921    );
17922}
17923pub type PFNGLSETMULTISAMPLEFVAMDPROC =
17924    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, index: GLuint, val: *const GLfloat)>;
17925extern "C" {
17926    pub fn glSetMultisamplefvAMD(pname: GLenum, index: GLuint, val: *const GLfloat);
17927}
17928pub type PFNGLTEXSTORAGESPARSEAMDPROC = ::std::option::Option<
17929    unsafe extern "C" fn(
17930        target: GLenum,
17931        internalFormat: GLenum,
17932        width: GLsizei,
17933        height: GLsizei,
17934        depth: GLsizei,
17935        layers: GLsizei,
17936        flags: GLbitfield,
17937    ),
17938>;
17939pub type PFNGLTEXTURESTORAGESPARSEAMDPROC = ::std::option::Option<
17940    unsafe extern "C" fn(
17941        texture: GLuint,
17942        target: GLenum,
17943        internalFormat: GLenum,
17944        width: GLsizei,
17945        height: GLsizei,
17946        depth: GLsizei,
17947        layers: GLsizei,
17948        flags: GLbitfield,
17949    ),
17950>;
17951extern "C" {
17952    pub fn glTexStorageSparseAMD(
17953        target: GLenum,
17954        internalFormat: GLenum,
17955        width: GLsizei,
17956        height: GLsizei,
17957        depth: GLsizei,
17958        layers: GLsizei,
17959        flags: GLbitfield,
17960    );
17961}
17962extern "C" {
17963    pub fn glTextureStorageSparseAMD(
17964        texture: GLuint,
17965        target: GLenum,
17966        internalFormat: GLenum,
17967        width: GLsizei,
17968        height: GLsizei,
17969        depth: GLsizei,
17970        layers: GLsizei,
17971        flags: GLbitfield,
17972    );
17973}
17974pub type PFNGLSTENCILOPVALUEAMDPROC =
17975    ::std::option::Option<unsafe extern "C" fn(face: GLenum, value: GLuint)>;
17976extern "C" {
17977    pub fn glStencilOpValueAMD(face: GLenum, value: GLuint);
17978}
17979pub type PFNGLTESSELLATIONFACTORAMDPROC =
17980    ::std::option::Option<unsafe extern "C" fn(factor: GLfloat)>;
17981pub type PFNGLTESSELLATIONMODEAMDPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
17982extern "C" {
17983    pub fn glTessellationFactorAMD(factor: GLfloat);
17984}
17985extern "C" {
17986    pub fn glTessellationModeAMD(mode: GLenum);
17987}
17988pub type PFNGLELEMENTPOINTERAPPLEPROC = ::std::option::Option<
17989    unsafe extern "C" fn(type_: GLenum, pointer: *const ::std::os::raw::c_void),
17990>;
17991pub type PFNGLDRAWELEMENTARRAYAPPLEPROC =
17992    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, first: GLint, count: GLsizei)>;
17993pub type PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC = ::std::option::Option<
17994    unsafe extern "C" fn(mode: GLenum, start: GLuint, end: GLuint, first: GLint, count: GLsizei),
17995>;
17996pub type PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC = ::std::option::Option<
17997    unsafe extern "C" fn(
17998        mode: GLenum,
17999        first: *const GLint,
18000        count: *const GLsizei,
18001        primcount: GLsizei,
18002    ),
18003>;
18004pub type PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC = ::std::option::Option<
18005    unsafe extern "C" fn(
18006        mode: GLenum,
18007        start: GLuint,
18008        end: GLuint,
18009        first: *const GLint,
18010        count: *const GLsizei,
18011        primcount: GLsizei,
18012    ),
18013>;
18014extern "C" {
18015    pub fn glElementPointerAPPLE(type_: GLenum, pointer: *const ::std::os::raw::c_void);
18016}
18017extern "C" {
18018    pub fn glDrawElementArrayAPPLE(mode: GLenum, first: GLint, count: GLsizei);
18019}
18020extern "C" {
18021    pub fn glDrawRangeElementArrayAPPLE(
18022        mode: GLenum,
18023        start: GLuint,
18024        end: GLuint,
18025        first: GLint,
18026        count: GLsizei,
18027    );
18028}
18029extern "C" {
18030    pub fn glMultiDrawElementArrayAPPLE(
18031        mode: GLenum,
18032        first: *const GLint,
18033        count: *const GLsizei,
18034        primcount: GLsizei,
18035    );
18036}
18037extern "C" {
18038    pub fn glMultiDrawRangeElementArrayAPPLE(
18039        mode: GLenum,
18040        start: GLuint,
18041        end: GLuint,
18042        first: *const GLint,
18043        count: *const GLsizei,
18044        primcount: GLsizei,
18045    );
18046}
18047pub type PFNGLGENFENCESAPPLEPROC =
18048    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, fences: *mut GLuint)>;
18049pub type PFNGLDELETEFENCESAPPLEPROC =
18050    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, fences: *const GLuint)>;
18051pub type PFNGLSETFENCEAPPLEPROC = ::std::option::Option<unsafe extern "C" fn(fence: GLuint)>;
18052pub type PFNGLISFENCEAPPLEPROC =
18053    ::std::option::Option<unsafe extern "C" fn(fence: GLuint) -> GLboolean>;
18054pub type PFNGLTESTFENCEAPPLEPROC =
18055    ::std::option::Option<unsafe extern "C" fn(fence: GLuint) -> GLboolean>;
18056pub type PFNGLFINISHFENCEAPPLEPROC = ::std::option::Option<unsafe extern "C" fn(fence: GLuint)>;
18057pub type PFNGLTESTOBJECTAPPLEPROC =
18058    ::std::option::Option<unsafe extern "C" fn(object: GLenum, name: GLuint) -> GLboolean>;
18059pub type PFNGLFINISHOBJECTAPPLEPROC =
18060    ::std::option::Option<unsafe extern "C" fn(object: GLenum, name: GLint)>;
18061extern "C" {
18062    pub fn glGenFencesAPPLE(n: GLsizei, fences: *mut GLuint);
18063}
18064extern "C" {
18065    pub fn glDeleteFencesAPPLE(n: GLsizei, fences: *const GLuint);
18066}
18067extern "C" {
18068    pub fn glSetFenceAPPLE(fence: GLuint);
18069}
18070extern "C" {
18071    pub fn glIsFenceAPPLE(fence: GLuint) -> GLboolean;
18072}
18073extern "C" {
18074    pub fn glTestFenceAPPLE(fence: GLuint) -> GLboolean;
18075}
18076extern "C" {
18077    pub fn glFinishFenceAPPLE(fence: GLuint);
18078}
18079extern "C" {
18080    pub fn glTestObjectAPPLE(object: GLenum, name: GLuint) -> GLboolean;
18081}
18082extern "C" {
18083    pub fn glFinishObjectAPPLE(object: GLenum, name: GLint);
18084}
18085pub type PFNGLBUFFERPARAMETERIAPPLEPROC =
18086    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLint)>;
18087pub type PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC =
18088    ::std::option::Option<unsafe extern "C" fn(target: GLenum, offset: GLintptr, size: GLsizeiptr)>;
18089extern "C" {
18090    pub fn glBufferParameteriAPPLE(target: GLenum, pname: GLenum, param: GLint);
18091}
18092extern "C" {
18093    pub fn glFlushMappedBufferRangeAPPLE(target: GLenum, offset: GLintptr, size: GLsizeiptr);
18094}
18095pub type PFNGLOBJECTPURGEABLEAPPLEPROC = ::std::option::Option<
18096    unsafe extern "C" fn(objectType: GLenum, name: GLuint, option: GLenum) -> GLenum,
18097>;
18098pub type PFNGLOBJECTUNPURGEABLEAPPLEPROC = ::std::option::Option<
18099    unsafe extern "C" fn(objectType: GLenum, name: GLuint, option: GLenum) -> GLenum,
18100>;
18101pub type PFNGLGETOBJECTPARAMETERIVAPPLEPROC = ::std::option::Option<
18102    unsafe extern "C" fn(objectType: GLenum, name: GLuint, pname: GLenum, params: *mut GLint),
18103>;
18104extern "C" {
18105    pub fn glObjectPurgeableAPPLE(objectType: GLenum, name: GLuint, option: GLenum) -> GLenum;
18106}
18107extern "C" {
18108    pub fn glObjectUnpurgeableAPPLE(objectType: GLenum, name: GLuint, option: GLenum) -> GLenum;
18109}
18110extern "C" {
18111    pub fn glGetObjectParameterivAPPLE(
18112        objectType: GLenum,
18113        name: GLuint,
18114        pname: GLenum,
18115        params: *mut GLint,
18116    );
18117}
18118pub type PFNGLTEXTURERANGEAPPLEPROC = ::std::option::Option<
18119    unsafe extern "C" fn(target: GLenum, length: GLsizei, pointer: *const ::std::os::raw::c_void),
18120>;
18121pub type PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC = ::std::option::Option<
18122    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut *mut ::std::os::raw::c_void),
18123>;
18124extern "C" {
18125    pub fn glTextureRangeAPPLE(
18126        target: GLenum,
18127        length: GLsizei,
18128        pointer: *const ::std::os::raw::c_void,
18129    );
18130}
18131extern "C" {
18132    pub fn glGetTexParameterPointervAPPLE(
18133        target: GLenum,
18134        pname: GLenum,
18135        params: *mut *mut ::std::os::raw::c_void,
18136    );
18137}
18138pub type PFNGLBINDVERTEXARRAYAPPLEPROC = ::std::option::Option<unsafe extern "C" fn(array: GLuint)>;
18139pub type PFNGLDELETEVERTEXARRAYSAPPLEPROC =
18140    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, arrays: *const GLuint)>;
18141pub type PFNGLGENVERTEXARRAYSAPPLEPROC =
18142    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, arrays: *mut GLuint)>;
18143pub type PFNGLISVERTEXARRAYAPPLEPROC =
18144    ::std::option::Option<unsafe extern "C" fn(array: GLuint) -> GLboolean>;
18145extern "C" {
18146    pub fn glBindVertexArrayAPPLE(array: GLuint);
18147}
18148extern "C" {
18149    pub fn glDeleteVertexArraysAPPLE(n: GLsizei, arrays: *const GLuint);
18150}
18151extern "C" {
18152    pub fn glGenVertexArraysAPPLE(n: GLsizei, arrays: *mut GLuint);
18153}
18154extern "C" {
18155    pub fn glIsVertexArrayAPPLE(array: GLuint) -> GLboolean;
18156}
18157pub type PFNGLVERTEXARRAYRANGEAPPLEPROC = ::std::option::Option<
18158    unsafe extern "C" fn(length: GLsizei, pointer: *mut ::std::os::raw::c_void),
18159>;
18160pub type PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC = ::std::option::Option<
18161    unsafe extern "C" fn(length: GLsizei, pointer: *mut ::std::os::raw::c_void),
18162>;
18163pub type PFNGLVERTEXARRAYPARAMETERIAPPLEPROC =
18164    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
18165extern "C" {
18166    pub fn glVertexArrayRangeAPPLE(length: GLsizei, pointer: *mut ::std::os::raw::c_void);
18167}
18168extern "C" {
18169    pub fn glFlushVertexArrayRangeAPPLE(length: GLsizei, pointer: *mut ::std::os::raw::c_void);
18170}
18171extern "C" {
18172    pub fn glVertexArrayParameteriAPPLE(pname: GLenum, param: GLint);
18173}
18174pub type PFNGLENABLEVERTEXATTRIBAPPLEPROC =
18175    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum)>;
18176pub type PFNGLDISABLEVERTEXATTRIBAPPLEPROC =
18177    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum)>;
18178pub type PFNGLISVERTEXATTRIBENABLEDAPPLEPROC =
18179    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum) -> GLboolean>;
18180pub type PFNGLMAPVERTEXATTRIB1DAPPLEPROC = ::std::option::Option<
18181    unsafe extern "C" fn(
18182        index: GLuint,
18183        size: GLuint,
18184        u1: GLdouble,
18185        u2: GLdouble,
18186        stride: GLint,
18187        order: GLint,
18188        points: *const GLdouble,
18189    ),
18190>;
18191pub type PFNGLMAPVERTEXATTRIB1FAPPLEPROC = ::std::option::Option<
18192    unsafe extern "C" fn(
18193        index: GLuint,
18194        size: GLuint,
18195        u1: GLfloat,
18196        u2: GLfloat,
18197        stride: GLint,
18198        order: GLint,
18199        points: *const GLfloat,
18200    ),
18201>;
18202pub type PFNGLMAPVERTEXATTRIB2DAPPLEPROC = ::std::option::Option<
18203    unsafe extern "C" fn(
18204        index: GLuint,
18205        size: GLuint,
18206        u1: GLdouble,
18207        u2: GLdouble,
18208        ustride: GLint,
18209        uorder: GLint,
18210        v1: GLdouble,
18211        v2: GLdouble,
18212        vstride: GLint,
18213        vorder: GLint,
18214        points: *const GLdouble,
18215    ),
18216>;
18217pub type PFNGLMAPVERTEXATTRIB2FAPPLEPROC = ::std::option::Option<
18218    unsafe extern "C" fn(
18219        index: GLuint,
18220        size: GLuint,
18221        u1: GLfloat,
18222        u2: GLfloat,
18223        ustride: GLint,
18224        uorder: GLint,
18225        v1: GLfloat,
18226        v2: GLfloat,
18227        vstride: GLint,
18228        vorder: GLint,
18229        points: *const GLfloat,
18230    ),
18231>;
18232extern "C" {
18233    pub fn glEnableVertexAttribAPPLE(index: GLuint, pname: GLenum);
18234}
18235extern "C" {
18236    pub fn glDisableVertexAttribAPPLE(index: GLuint, pname: GLenum);
18237}
18238extern "C" {
18239    pub fn glIsVertexAttribEnabledAPPLE(index: GLuint, pname: GLenum) -> GLboolean;
18240}
18241extern "C" {
18242    pub fn glMapVertexAttrib1dAPPLE(
18243        index: GLuint,
18244        size: GLuint,
18245        u1: GLdouble,
18246        u2: GLdouble,
18247        stride: GLint,
18248        order: GLint,
18249        points: *const GLdouble,
18250    );
18251}
18252extern "C" {
18253    pub fn glMapVertexAttrib1fAPPLE(
18254        index: GLuint,
18255        size: GLuint,
18256        u1: GLfloat,
18257        u2: GLfloat,
18258        stride: GLint,
18259        order: GLint,
18260        points: *const GLfloat,
18261    );
18262}
18263extern "C" {
18264    pub fn glMapVertexAttrib2dAPPLE(
18265        index: GLuint,
18266        size: GLuint,
18267        u1: GLdouble,
18268        u2: GLdouble,
18269        ustride: GLint,
18270        uorder: GLint,
18271        v1: GLdouble,
18272        v2: GLdouble,
18273        vstride: GLint,
18274        vorder: GLint,
18275        points: *const GLdouble,
18276    );
18277}
18278extern "C" {
18279    pub fn glMapVertexAttrib2fAPPLE(
18280        index: GLuint,
18281        size: GLuint,
18282        u1: GLfloat,
18283        u2: GLfloat,
18284        ustride: GLint,
18285        uorder: GLint,
18286        v1: GLfloat,
18287        v2: GLfloat,
18288        vstride: GLint,
18289        vorder: GLint,
18290        points: *const GLfloat,
18291    );
18292}
18293pub type PFNGLDRAWBUFFERSATIPROC =
18294    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, bufs: *const GLenum)>;
18295extern "C" {
18296    pub fn glDrawBuffersATI(n: GLsizei, bufs: *const GLenum);
18297}
18298pub type PFNGLELEMENTPOINTERATIPROC = ::std::option::Option<
18299    unsafe extern "C" fn(type_: GLenum, pointer: *const ::std::os::raw::c_void),
18300>;
18301pub type PFNGLDRAWELEMENTARRAYATIPROC =
18302    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, count: GLsizei)>;
18303pub type PFNGLDRAWRANGEELEMENTARRAYATIPROC = ::std::option::Option<
18304    unsafe extern "C" fn(mode: GLenum, start: GLuint, end: GLuint, count: GLsizei),
18305>;
18306extern "C" {
18307    pub fn glElementPointerATI(type_: GLenum, pointer: *const ::std::os::raw::c_void);
18308}
18309extern "C" {
18310    pub fn glDrawElementArrayATI(mode: GLenum, count: GLsizei);
18311}
18312extern "C" {
18313    pub fn glDrawRangeElementArrayATI(mode: GLenum, start: GLuint, end: GLuint, count: GLsizei);
18314}
18315pub type PFNGLTEXBUMPPARAMETERIVATIPROC =
18316    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: *const GLint)>;
18317pub type PFNGLTEXBUMPPARAMETERFVATIPROC =
18318    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: *const GLfloat)>;
18319pub type PFNGLGETTEXBUMPPARAMETERIVATIPROC =
18320    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: *mut GLint)>;
18321pub type PFNGLGETTEXBUMPPARAMETERFVATIPROC =
18322    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: *mut GLfloat)>;
18323extern "C" {
18324    pub fn glTexBumpParameterivATI(pname: GLenum, param: *const GLint);
18325}
18326extern "C" {
18327    pub fn glTexBumpParameterfvATI(pname: GLenum, param: *const GLfloat);
18328}
18329extern "C" {
18330    pub fn glGetTexBumpParameterivATI(pname: GLenum, param: *mut GLint);
18331}
18332extern "C" {
18333    pub fn glGetTexBumpParameterfvATI(pname: GLenum, param: *mut GLfloat);
18334}
18335pub type PFNGLGENFRAGMENTSHADERSATIPROC =
18336    ::std::option::Option<unsafe extern "C" fn(range: GLuint) -> GLuint>;
18337pub type PFNGLBINDFRAGMENTSHADERATIPROC = ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
18338pub type PFNGLDELETEFRAGMENTSHADERATIPROC = ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
18339pub type PFNGLBEGINFRAGMENTSHADERATIPROC = ::std::option::Option<unsafe extern "C" fn()>;
18340pub type PFNGLENDFRAGMENTSHADERATIPROC = ::std::option::Option<unsafe extern "C" fn()>;
18341pub type PFNGLPASSTEXCOORDATIPROC =
18342    ::std::option::Option<unsafe extern "C" fn(dst: GLuint, coord: GLuint, swizzle: GLenum)>;
18343pub type PFNGLSAMPLEMAPATIPROC =
18344    ::std::option::Option<unsafe extern "C" fn(dst: GLuint, interp: GLuint, swizzle: GLenum)>;
18345pub type PFNGLCOLORFRAGMENTOP1ATIPROC = ::std::option::Option<
18346    unsafe extern "C" fn(
18347        op: GLenum,
18348        dst: GLuint,
18349        dstMask: GLuint,
18350        dstMod: GLuint,
18351        arg1: GLuint,
18352        arg1Rep: GLuint,
18353        arg1Mod: GLuint,
18354    ),
18355>;
18356pub type PFNGLCOLORFRAGMENTOP2ATIPROC = ::std::option::Option<
18357    unsafe extern "C" fn(
18358        op: GLenum,
18359        dst: GLuint,
18360        dstMask: GLuint,
18361        dstMod: GLuint,
18362        arg1: GLuint,
18363        arg1Rep: GLuint,
18364        arg1Mod: GLuint,
18365        arg2: GLuint,
18366        arg2Rep: GLuint,
18367        arg2Mod: GLuint,
18368    ),
18369>;
18370pub type PFNGLCOLORFRAGMENTOP3ATIPROC = ::std::option::Option<
18371    unsafe extern "C" fn(
18372        op: GLenum,
18373        dst: GLuint,
18374        dstMask: GLuint,
18375        dstMod: GLuint,
18376        arg1: GLuint,
18377        arg1Rep: GLuint,
18378        arg1Mod: GLuint,
18379        arg2: GLuint,
18380        arg2Rep: GLuint,
18381        arg2Mod: GLuint,
18382        arg3: GLuint,
18383        arg3Rep: GLuint,
18384        arg3Mod: GLuint,
18385    ),
18386>;
18387pub type PFNGLALPHAFRAGMENTOP1ATIPROC = ::std::option::Option<
18388    unsafe extern "C" fn(
18389        op: GLenum,
18390        dst: GLuint,
18391        dstMod: GLuint,
18392        arg1: GLuint,
18393        arg1Rep: GLuint,
18394        arg1Mod: GLuint,
18395    ),
18396>;
18397pub type PFNGLALPHAFRAGMENTOP2ATIPROC = ::std::option::Option<
18398    unsafe extern "C" fn(
18399        op: GLenum,
18400        dst: GLuint,
18401        dstMod: GLuint,
18402        arg1: GLuint,
18403        arg1Rep: GLuint,
18404        arg1Mod: GLuint,
18405        arg2: GLuint,
18406        arg2Rep: GLuint,
18407        arg2Mod: GLuint,
18408    ),
18409>;
18410pub type PFNGLALPHAFRAGMENTOP3ATIPROC = ::std::option::Option<
18411    unsafe extern "C" fn(
18412        op: GLenum,
18413        dst: GLuint,
18414        dstMod: GLuint,
18415        arg1: GLuint,
18416        arg1Rep: GLuint,
18417        arg1Mod: GLuint,
18418        arg2: GLuint,
18419        arg2Rep: GLuint,
18420        arg2Mod: GLuint,
18421        arg3: GLuint,
18422        arg3Rep: GLuint,
18423        arg3Mod: GLuint,
18424    ),
18425>;
18426pub type PFNGLSETFRAGMENTSHADERCONSTANTATIPROC =
18427    ::std::option::Option<unsafe extern "C" fn(dst: GLuint, value: *const GLfloat)>;
18428extern "C" {
18429    pub fn glGenFragmentShadersATI(range: GLuint) -> GLuint;
18430}
18431extern "C" {
18432    pub fn glBindFragmentShaderATI(id: GLuint);
18433}
18434extern "C" {
18435    pub fn glDeleteFragmentShaderATI(id: GLuint);
18436}
18437extern "C" {
18438    pub fn glBeginFragmentShaderATI();
18439}
18440extern "C" {
18441    pub fn glEndFragmentShaderATI();
18442}
18443extern "C" {
18444    pub fn glPassTexCoordATI(dst: GLuint, coord: GLuint, swizzle: GLenum);
18445}
18446extern "C" {
18447    pub fn glSampleMapATI(dst: GLuint, interp: GLuint, swizzle: GLenum);
18448}
18449extern "C" {
18450    pub fn glColorFragmentOp1ATI(
18451        op: GLenum,
18452        dst: GLuint,
18453        dstMask: GLuint,
18454        dstMod: GLuint,
18455        arg1: GLuint,
18456        arg1Rep: GLuint,
18457        arg1Mod: GLuint,
18458    );
18459}
18460extern "C" {
18461    pub fn glColorFragmentOp2ATI(
18462        op: GLenum,
18463        dst: GLuint,
18464        dstMask: GLuint,
18465        dstMod: GLuint,
18466        arg1: GLuint,
18467        arg1Rep: GLuint,
18468        arg1Mod: GLuint,
18469        arg2: GLuint,
18470        arg2Rep: GLuint,
18471        arg2Mod: GLuint,
18472    );
18473}
18474extern "C" {
18475    pub fn glColorFragmentOp3ATI(
18476        op: GLenum,
18477        dst: GLuint,
18478        dstMask: GLuint,
18479        dstMod: GLuint,
18480        arg1: GLuint,
18481        arg1Rep: GLuint,
18482        arg1Mod: GLuint,
18483        arg2: GLuint,
18484        arg2Rep: GLuint,
18485        arg2Mod: GLuint,
18486        arg3: GLuint,
18487        arg3Rep: GLuint,
18488        arg3Mod: GLuint,
18489    );
18490}
18491extern "C" {
18492    pub fn glAlphaFragmentOp1ATI(
18493        op: GLenum,
18494        dst: GLuint,
18495        dstMod: GLuint,
18496        arg1: GLuint,
18497        arg1Rep: GLuint,
18498        arg1Mod: GLuint,
18499    );
18500}
18501extern "C" {
18502    pub fn glAlphaFragmentOp2ATI(
18503        op: GLenum,
18504        dst: GLuint,
18505        dstMod: GLuint,
18506        arg1: GLuint,
18507        arg1Rep: GLuint,
18508        arg1Mod: GLuint,
18509        arg2: GLuint,
18510        arg2Rep: GLuint,
18511        arg2Mod: GLuint,
18512    );
18513}
18514extern "C" {
18515    pub fn glAlphaFragmentOp3ATI(
18516        op: GLenum,
18517        dst: GLuint,
18518        dstMod: GLuint,
18519        arg1: GLuint,
18520        arg1Rep: GLuint,
18521        arg1Mod: GLuint,
18522        arg2: GLuint,
18523        arg2Rep: GLuint,
18524        arg2Mod: GLuint,
18525        arg3: GLuint,
18526        arg3Rep: GLuint,
18527        arg3Mod: GLuint,
18528    );
18529}
18530extern "C" {
18531    pub fn glSetFragmentShaderConstantATI(dst: GLuint, value: *const GLfloat);
18532}
18533pub type PFNGLMAPOBJECTBUFFERATIPROC =
18534    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint) -> *mut ::std::os::raw::c_void>;
18535pub type PFNGLUNMAPOBJECTBUFFERATIPROC =
18536    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint)>;
18537extern "C" {
18538    pub fn glMapObjectBufferATI(buffer: GLuint) -> *mut ::std::os::raw::c_void;
18539}
18540extern "C" {
18541    pub fn glUnmapObjectBufferATI(buffer: GLuint);
18542}
18543pub type PFNGLPNTRIANGLESIATIPROC =
18544    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
18545pub type PFNGLPNTRIANGLESFATIPROC =
18546    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
18547extern "C" {
18548    pub fn glPNTrianglesiATI(pname: GLenum, param: GLint);
18549}
18550extern "C" {
18551    pub fn glPNTrianglesfATI(pname: GLenum, param: GLfloat);
18552}
18553pub type PFNGLSTENCILOPSEPARATEATIPROC = ::std::option::Option<
18554    unsafe extern "C" fn(face: GLenum, sfail: GLenum, dpfail: GLenum, dppass: GLenum),
18555>;
18556pub type PFNGLSTENCILFUNCSEPARATEATIPROC = ::std::option::Option<
18557    unsafe extern "C" fn(frontfunc: GLenum, backfunc: GLenum, ref_: GLint, mask: GLuint),
18558>;
18559extern "C" {
18560    pub fn glStencilOpSeparateATI(face: GLenum, sfail: GLenum, dpfail: GLenum, dppass: GLenum);
18561}
18562extern "C" {
18563    pub fn glStencilFuncSeparateATI(frontfunc: GLenum, backfunc: GLenum, ref_: GLint, mask: GLuint);
18564}
18565pub type PFNGLNEWOBJECTBUFFERATIPROC = ::std::option::Option<
18566    unsafe extern "C" fn(
18567        size: GLsizei,
18568        pointer: *const ::std::os::raw::c_void,
18569        usage: GLenum,
18570    ) -> GLuint,
18571>;
18572pub type PFNGLISOBJECTBUFFERATIPROC =
18573    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint) -> GLboolean>;
18574pub type PFNGLUPDATEOBJECTBUFFERATIPROC = ::std::option::Option<
18575    unsafe extern "C" fn(
18576        buffer: GLuint,
18577        offset: GLuint,
18578        size: GLsizei,
18579        pointer: *const ::std::os::raw::c_void,
18580        preserve: GLenum,
18581    ),
18582>;
18583pub type PFNGLGETOBJECTBUFFERFVATIPROC = ::std::option::Option<
18584    unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut GLfloat),
18585>;
18586pub type PFNGLGETOBJECTBUFFERIVATIPROC =
18587    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut GLint)>;
18588pub type PFNGLFREEOBJECTBUFFERATIPROC = ::std::option::Option<unsafe extern "C" fn(buffer: GLuint)>;
18589pub type PFNGLARRAYOBJECTATIPROC = ::std::option::Option<
18590    unsafe extern "C" fn(
18591        array: GLenum,
18592        size: GLint,
18593        type_: GLenum,
18594        stride: GLsizei,
18595        buffer: GLuint,
18596        offset: GLuint,
18597    ),
18598>;
18599pub type PFNGLGETARRAYOBJECTFVATIPROC =
18600    ::std::option::Option<unsafe extern "C" fn(array: GLenum, pname: GLenum, params: *mut GLfloat)>;
18601pub type PFNGLGETARRAYOBJECTIVATIPROC =
18602    ::std::option::Option<unsafe extern "C" fn(array: GLenum, pname: GLenum, params: *mut GLint)>;
18603pub type PFNGLVARIANTARRAYOBJECTATIPROC = ::std::option::Option<
18604    unsafe extern "C" fn(
18605        id: GLuint,
18606        type_: GLenum,
18607        stride: GLsizei,
18608        buffer: GLuint,
18609        offset: GLuint,
18610    ),
18611>;
18612pub type PFNGLGETVARIANTARRAYOBJECTFVATIPROC =
18613    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLfloat)>;
18614pub type PFNGLGETVARIANTARRAYOBJECTIVATIPROC =
18615    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLint)>;
18616extern "C" {
18617    pub fn glNewObjectBufferATI(
18618        size: GLsizei,
18619        pointer: *const ::std::os::raw::c_void,
18620        usage: GLenum,
18621    ) -> GLuint;
18622}
18623extern "C" {
18624    pub fn glIsObjectBufferATI(buffer: GLuint) -> GLboolean;
18625}
18626extern "C" {
18627    pub fn glUpdateObjectBufferATI(
18628        buffer: GLuint,
18629        offset: GLuint,
18630        size: GLsizei,
18631        pointer: *const ::std::os::raw::c_void,
18632        preserve: GLenum,
18633    );
18634}
18635extern "C" {
18636    pub fn glGetObjectBufferfvATI(buffer: GLuint, pname: GLenum, params: *mut GLfloat);
18637}
18638extern "C" {
18639    pub fn glGetObjectBufferivATI(buffer: GLuint, pname: GLenum, params: *mut GLint);
18640}
18641extern "C" {
18642    pub fn glFreeObjectBufferATI(buffer: GLuint);
18643}
18644extern "C" {
18645    pub fn glArrayObjectATI(
18646        array: GLenum,
18647        size: GLint,
18648        type_: GLenum,
18649        stride: GLsizei,
18650        buffer: GLuint,
18651        offset: GLuint,
18652    );
18653}
18654extern "C" {
18655    pub fn glGetArrayObjectfvATI(array: GLenum, pname: GLenum, params: *mut GLfloat);
18656}
18657extern "C" {
18658    pub fn glGetArrayObjectivATI(array: GLenum, pname: GLenum, params: *mut GLint);
18659}
18660extern "C" {
18661    pub fn glVariantArrayObjectATI(
18662        id: GLuint,
18663        type_: GLenum,
18664        stride: GLsizei,
18665        buffer: GLuint,
18666        offset: GLuint,
18667    );
18668}
18669extern "C" {
18670    pub fn glGetVariantArrayObjectfvATI(id: GLuint, pname: GLenum, params: *mut GLfloat);
18671}
18672extern "C" {
18673    pub fn glGetVariantArrayObjectivATI(id: GLuint, pname: GLenum, params: *mut GLint);
18674}
18675pub type PFNGLVERTEXATTRIBARRAYOBJECTATIPROC = ::std::option::Option<
18676    unsafe extern "C" fn(
18677        index: GLuint,
18678        size: GLint,
18679        type_: GLenum,
18680        normalized: GLboolean,
18681        stride: GLsizei,
18682        buffer: GLuint,
18683        offset: GLuint,
18684    ),
18685>;
18686pub type PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC =
18687    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLfloat)>;
18688pub type PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC =
18689    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLint)>;
18690extern "C" {
18691    pub fn glVertexAttribArrayObjectATI(
18692        index: GLuint,
18693        size: GLint,
18694        type_: GLenum,
18695        normalized: GLboolean,
18696        stride: GLsizei,
18697        buffer: GLuint,
18698        offset: GLuint,
18699    );
18700}
18701extern "C" {
18702    pub fn glGetVertexAttribArrayObjectfvATI(index: GLuint, pname: GLenum, params: *mut GLfloat);
18703}
18704extern "C" {
18705    pub fn glGetVertexAttribArrayObjectivATI(index: GLuint, pname: GLenum, params: *mut GLint);
18706}
18707pub type PFNGLVERTEXSTREAM1SATIPROC =
18708    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLshort)>;
18709pub type PFNGLVERTEXSTREAM1SVATIPROC =
18710    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLshort)>;
18711pub type PFNGLVERTEXSTREAM1IATIPROC =
18712    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLint)>;
18713pub type PFNGLVERTEXSTREAM1IVATIPROC =
18714    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLint)>;
18715pub type PFNGLVERTEXSTREAM1FATIPROC =
18716    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLfloat)>;
18717pub type PFNGLVERTEXSTREAM1FVATIPROC =
18718    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLfloat)>;
18719pub type PFNGLVERTEXSTREAM1DATIPROC =
18720    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLdouble)>;
18721pub type PFNGLVERTEXSTREAM1DVATIPROC =
18722    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLdouble)>;
18723pub type PFNGLVERTEXSTREAM2SATIPROC =
18724    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLshort, y: GLshort)>;
18725pub type PFNGLVERTEXSTREAM2SVATIPROC =
18726    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLshort)>;
18727pub type PFNGLVERTEXSTREAM2IATIPROC =
18728    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLint, y: GLint)>;
18729pub type PFNGLVERTEXSTREAM2IVATIPROC =
18730    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLint)>;
18731pub type PFNGLVERTEXSTREAM2FATIPROC =
18732    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLfloat, y: GLfloat)>;
18733pub type PFNGLVERTEXSTREAM2FVATIPROC =
18734    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLfloat)>;
18735pub type PFNGLVERTEXSTREAM2DATIPROC =
18736    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLdouble, y: GLdouble)>;
18737pub type PFNGLVERTEXSTREAM2DVATIPROC =
18738    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLdouble)>;
18739pub type PFNGLVERTEXSTREAM3SATIPROC =
18740    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLshort, y: GLshort, z: GLshort)>;
18741pub type PFNGLVERTEXSTREAM3SVATIPROC =
18742    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLshort)>;
18743pub type PFNGLVERTEXSTREAM3IATIPROC =
18744    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLint, y: GLint, z: GLint)>;
18745pub type PFNGLVERTEXSTREAM3IVATIPROC =
18746    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLint)>;
18747pub type PFNGLVERTEXSTREAM3FATIPROC =
18748    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, x: GLfloat, y: GLfloat, z: GLfloat)>;
18749pub type PFNGLVERTEXSTREAM3FVATIPROC =
18750    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLfloat)>;
18751pub type PFNGLVERTEXSTREAM3DATIPROC = ::std::option::Option<
18752    unsafe extern "C" fn(stream: GLenum, x: GLdouble, y: GLdouble, z: GLdouble),
18753>;
18754pub type PFNGLVERTEXSTREAM3DVATIPROC =
18755    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLdouble)>;
18756pub type PFNGLVERTEXSTREAM4SATIPROC = ::std::option::Option<
18757    unsafe extern "C" fn(stream: GLenum, x: GLshort, y: GLshort, z: GLshort, w: GLshort),
18758>;
18759pub type PFNGLVERTEXSTREAM4SVATIPROC =
18760    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLshort)>;
18761pub type PFNGLVERTEXSTREAM4IATIPROC = ::std::option::Option<
18762    unsafe extern "C" fn(stream: GLenum, x: GLint, y: GLint, z: GLint, w: GLint),
18763>;
18764pub type PFNGLVERTEXSTREAM4IVATIPROC =
18765    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLint)>;
18766pub type PFNGLVERTEXSTREAM4FATIPROC = ::std::option::Option<
18767    unsafe extern "C" fn(stream: GLenum, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat),
18768>;
18769pub type PFNGLVERTEXSTREAM4FVATIPROC =
18770    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLfloat)>;
18771pub type PFNGLVERTEXSTREAM4DATIPROC = ::std::option::Option<
18772    unsafe extern "C" fn(stream: GLenum, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble),
18773>;
18774pub type PFNGLVERTEXSTREAM4DVATIPROC =
18775    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLdouble)>;
18776pub type PFNGLNORMALSTREAM3BATIPROC =
18777    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, nx: GLbyte, ny: GLbyte, nz: GLbyte)>;
18778pub type PFNGLNORMALSTREAM3BVATIPROC =
18779    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLbyte)>;
18780pub type PFNGLNORMALSTREAM3SATIPROC = ::std::option::Option<
18781    unsafe extern "C" fn(stream: GLenum, nx: GLshort, ny: GLshort, nz: GLshort),
18782>;
18783pub type PFNGLNORMALSTREAM3SVATIPROC =
18784    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLshort)>;
18785pub type PFNGLNORMALSTREAM3IATIPROC =
18786    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, nx: GLint, ny: GLint, nz: GLint)>;
18787pub type PFNGLNORMALSTREAM3IVATIPROC =
18788    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLint)>;
18789pub type PFNGLNORMALSTREAM3FATIPROC = ::std::option::Option<
18790    unsafe extern "C" fn(stream: GLenum, nx: GLfloat, ny: GLfloat, nz: GLfloat),
18791>;
18792pub type PFNGLNORMALSTREAM3FVATIPROC =
18793    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLfloat)>;
18794pub type PFNGLNORMALSTREAM3DATIPROC = ::std::option::Option<
18795    unsafe extern "C" fn(stream: GLenum, nx: GLdouble, ny: GLdouble, nz: GLdouble),
18796>;
18797pub type PFNGLNORMALSTREAM3DVATIPROC =
18798    ::std::option::Option<unsafe extern "C" fn(stream: GLenum, coords: *const GLdouble)>;
18799pub type PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC =
18800    ::std::option::Option<unsafe extern "C" fn(stream: GLenum)>;
18801pub type PFNGLVERTEXBLENDENVIATIPROC =
18802    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
18803pub type PFNGLVERTEXBLENDENVFATIPROC =
18804    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
18805extern "C" {
18806    pub fn glVertexStream1sATI(stream: GLenum, x: GLshort);
18807}
18808extern "C" {
18809    pub fn glVertexStream1svATI(stream: GLenum, coords: *const GLshort);
18810}
18811extern "C" {
18812    pub fn glVertexStream1iATI(stream: GLenum, x: GLint);
18813}
18814extern "C" {
18815    pub fn glVertexStream1ivATI(stream: GLenum, coords: *const GLint);
18816}
18817extern "C" {
18818    pub fn glVertexStream1fATI(stream: GLenum, x: GLfloat);
18819}
18820extern "C" {
18821    pub fn glVertexStream1fvATI(stream: GLenum, coords: *const GLfloat);
18822}
18823extern "C" {
18824    pub fn glVertexStream1dATI(stream: GLenum, x: GLdouble);
18825}
18826extern "C" {
18827    pub fn glVertexStream1dvATI(stream: GLenum, coords: *const GLdouble);
18828}
18829extern "C" {
18830    pub fn glVertexStream2sATI(stream: GLenum, x: GLshort, y: GLshort);
18831}
18832extern "C" {
18833    pub fn glVertexStream2svATI(stream: GLenum, coords: *const GLshort);
18834}
18835extern "C" {
18836    pub fn glVertexStream2iATI(stream: GLenum, x: GLint, y: GLint);
18837}
18838extern "C" {
18839    pub fn glVertexStream2ivATI(stream: GLenum, coords: *const GLint);
18840}
18841extern "C" {
18842    pub fn glVertexStream2fATI(stream: GLenum, x: GLfloat, y: GLfloat);
18843}
18844extern "C" {
18845    pub fn glVertexStream2fvATI(stream: GLenum, coords: *const GLfloat);
18846}
18847extern "C" {
18848    pub fn glVertexStream2dATI(stream: GLenum, x: GLdouble, y: GLdouble);
18849}
18850extern "C" {
18851    pub fn glVertexStream2dvATI(stream: GLenum, coords: *const GLdouble);
18852}
18853extern "C" {
18854    pub fn glVertexStream3sATI(stream: GLenum, x: GLshort, y: GLshort, z: GLshort);
18855}
18856extern "C" {
18857    pub fn glVertexStream3svATI(stream: GLenum, coords: *const GLshort);
18858}
18859extern "C" {
18860    pub fn glVertexStream3iATI(stream: GLenum, x: GLint, y: GLint, z: GLint);
18861}
18862extern "C" {
18863    pub fn glVertexStream3ivATI(stream: GLenum, coords: *const GLint);
18864}
18865extern "C" {
18866    pub fn glVertexStream3fATI(stream: GLenum, x: GLfloat, y: GLfloat, z: GLfloat);
18867}
18868extern "C" {
18869    pub fn glVertexStream3fvATI(stream: GLenum, coords: *const GLfloat);
18870}
18871extern "C" {
18872    pub fn glVertexStream3dATI(stream: GLenum, x: GLdouble, y: GLdouble, z: GLdouble);
18873}
18874extern "C" {
18875    pub fn glVertexStream3dvATI(stream: GLenum, coords: *const GLdouble);
18876}
18877extern "C" {
18878    pub fn glVertexStream4sATI(stream: GLenum, x: GLshort, y: GLshort, z: GLshort, w: GLshort);
18879}
18880extern "C" {
18881    pub fn glVertexStream4svATI(stream: GLenum, coords: *const GLshort);
18882}
18883extern "C" {
18884    pub fn glVertexStream4iATI(stream: GLenum, x: GLint, y: GLint, z: GLint, w: GLint);
18885}
18886extern "C" {
18887    pub fn glVertexStream4ivATI(stream: GLenum, coords: *const GLint);
18888}
18889extern "C" {
18890    pub fn glVertexStream4fATI(stream: GLenum, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat);
18891}
18892extern "C" {
18893    pub fn glVertexStream4fvATI(stream: GLenum, coords: *const GLfloat);
18894}
18895extern "C" {
18896    pub fn glVertexStream4dATI(stream: GLenum, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
18897}
18898extern "C" {
18899    pub fn glVertexStream4dvATI(stream: GLenum, coords: *const GLdouble);
18900}
18901extern "C" {
18902    pub fn glNormalStream3bATI(stream: GLenum, nx: GLbyte, ny: GLbyte, nz: GLbyte);
18903}
18904extern "C" {
18905    pub fn glNormalStream3bvATI(stream: GLenum, coords: *const GLbyte);
18906}
18907extern "C" {
18908    pub fn glNormalStream3sATI(stream: GLenum, nx: GLshort, ny: GLshort, nz: GLshort);
18909}
18910extern "C" {
18911    pub fn glNormalStream3svATI(stream: GLenum, coords: *const GLshort);
18912}
18913extern "C" {
18914    pub fn glNormalStream3iATI(stream: GLenum, nx: GLint, ny: GLint, nz: GLint);
18915}
18916extern "C" {
18917    pub fn glNormalStream3ivATI(stream: GLenum, coords: *const GLint);
18918}
18919extern "C" {
18920    pub fn glNormalStream3fATI(stream: GLenum, nx: GLfloat, ny: GLfloat, nz: GLfloat);
18921}
18922extern "C" {
18923    pub fn glNormalStream3fvATI(stream: GLenum, coords: *const GLfloat);
18924}
18925extern "C" {
18926    pub fn glNormalStream3dATI(stream: GLenum, nx: GLdouble, ny: GLdouble, nz: GLdouble);
18927}
18928extern "C" {
18929    pub fn glNormalStream3dvATI(stream: GLenum, coords: *const GLdouble);
18930}
18931extern "C" {
18932    pub fn glClientActiveVertexStreamATI(stream: GLenum);
18933}
18934extern "C" {
18935    pub fn glVertexBlendEnviATI(pname: GLenum, param: GLint);
18936}
18937extern "C" {
18938    pub fn glVertexBlendEnvfATI(pname: GLenum, param: GLfloat);
18939}
18940pub type GLeglImageOES = *mut ::std::os::raw::c_void;
18941pub type PFNGLEGLIMAGETARGETTEXSTORAGEEXTPROC = ::std::option::Option<
18942    unsafe extern "C" fn(target: GLenum, image: GLeglImageOES, attrib_list: *const GLint),
18943>;
18944pub type PFNGLEGLIMAGETARGETTEXTURESTORAGEEXTPROC = ::std::option::Option<
18945    unsafe extern "C" fn(texture: GLuint, image: GLeglImageOES, attrib_list: *const GLint),
18946>;
18947extern "C" {
18948    pub fn glEGLImageTargetTexStorageEXT(
18949        target: GLenum,
18950        image: GLeglImageOES,
18951        attrib_list: *const GLint,
18952    );
18953}
18954extern "C" {
18955    pub fn glEGLImageTargetTextureStorageEXT(
18956        texture: GLuint,
18957        image: GLeglImageOES,
18958        attrib_list: *const GLint,
18959    );
18960}
18961pub type PFNGLUNIFORMBUFFEREXTPROC =
18962    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, buffer: GLuint)>;
18963pub type PFNGLGETUNIFORMBUFFERSIZEEXTPROC =
18964    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint) -> GLint>;
18965pub type PFNGLGETUNIFORMOFFSETEXTPROC =
18966    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint) -> GLintptr>;
18967extern "C" {
18968    pub fn glUniformBufferEXT(program: GLuint, location: GLint, buffer: GLuint);
18969}
18970extern "C" {
18971    pub fn glGetUniformBufferSizeEXT(program: GLuint, location: GLint) -> GLint;
18972}
18973extern "C" {
18974    pub fn glGetUniformOffsetEXT(program: GLuint, location: GLint) -> GLintptr;
18975}
18976pub type PFNGLBLENDCOLOREXTPROC = ::std::option::Option<
18977    unsafe extern "C" fn(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat),
18978>;
18979extern "C" {
18980    pub fn glBlendColorEXT(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat);
18981}
18982pub type PFNGLBLENDEQUATIONSEPARATEEXTPROC =
18983    ::std::option::Option<unsafe extern "C" fn(modeRGB: GLenum, modeAlpha: GLenum)>;
18984extern "C" {
18985    pub fn glBlendEquationSeparateEXT(modeRGB: GLenum, modeAlpha: GLenum);
18986}
18987pub type PFNGLBLENDFUNCSEPARATEEXTPROC = ::std::option::Option<
18988    unsafe extern "C" fn(
18989        sfactorRGB: GLenum,
18990        dfactorRGB: GLenum,
18991        sfactorAlpha: GLenum,
18992        dfactorAlpha: GLenum,
18993    ),
18994>;
18995extern "C" {
18996    pub fn glBlendFuncSeparateEXT(
18997        sfactorRGB: GLenum,
18998        dfactorRGB: GLenum,
18999        sfactorAlpha: GLenum,
19000        dfactorAlpha: GLenum,
19001    );
19002}
19003pub type PFNGLBLENDEQUATIONEXTPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
19004extern "C" {
19005    pub fn glBlendEquationEXT(mode: GLenum);
19006}
19007pub type PFNGLCOLORSUBTABLEEXTPROC = ::std::option::Option<
19008    unsafe extern "C" fn(
19009        target: GLenum,
19010        start: GLsizei,
19011        count: GLsizei,
19012        format: GLenum,
19013        type_: GLenum,
19014        data: *const ::std::os::raw::c_void,
19015    ),
19016>;
19017pub type PFNGLCOPYCOLORSUBTABLEEXTPROC = ::std::option::Option<
19018    unsafe extern "C" fn(target: GLenum, start: GLsizei, x: GLint, y: GLint, width: GLsizei),
19019>;
19020extern "C" {
19021    pub fn glColorSubTableEXT(
19022        target: GLenum,
19023        start: GLsizei,
19024        count: GLsizei,
19025        format: GLenum,
19026        type_: GLenum,
19027        data: *const ::std::os::raw::c_void,
19028    );
19029}
19030extern "C" {
19031    pub fn glCopyColorSubTableEXT(
19032        target: GLenum,
19033        start: GLsizei,
19034        x: GLint,
19035        y: GLint,
19036        width: GLsizei,
19037    );
19038}
19039pub type PFNGLLOCKARRAYSEXTPROC =
19040    ::std::option::Option<unsafe extern "C" fn(first: GLint, count: GLsizei)>;
19041pub type PFNGLUNLOCKARRAYSEXTPROC = ::std::option::Option<unsafe extern "C" fn()>;
19042extern "C" {
19043    pub fn glLockArraysEXT(first: GLint, count: GLsizei);
19044}
19045extern "C" {
19046    pub fn glUnlockArraysEXT();
19047}
19048pub type PFNGLCONVOLUTIONFILTER1DEXTPROC = ::std::option::Option<
19049    unsafe extern "C" fn(
19050        target: GLenum,
19051        internalformat: GLenum,
19052        width: GLsizei,
19053        format: GLenum,
19054        type_: GLenum,
19055        image: *const ::std::os::raw::c_void,
19056    ),
19057>;
19058pub type PFNGLCONVOLUTIONFILTER2DEXTPROC = ::std::option::Option<
19059    unsafe extern "C" fn(
19060        target: GLenum,
19061        internalformat: GLenum,
19062        width: GLsizei,
19063        height: GLsizei,
19064        format: GLenum,
19065        type_: GLenum,
19066        image: *const ::std::os::raw::c_void,
19067    ),
19068>;
19069pub type PFNGLCONVOLUTIONPARAMETERFEXTPROC =
19070    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: GLfloat)>;
19071pub type PFNGLCONVOLUTIONPARAMETERFVEXTPROC = ::std::option::Option<
19072    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfloat),
19073>;
19074pub type PFNGLCONVOLUTIONPARAMETERIEXTPROC =
19075    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: GLint)>;
19076pub type PFNGLCONVOLUTIONPARAMETERIVEXTPROC = ::std::option::Option<
19077    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLint),
19078>;
19079pub type PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC = ::std::option::Option<
19080    unsafe extern "C" fn(
19081        target: GLenum,
19082        internalformat: GLenum,
19083        x: GLint,
19084        y: GLint,
19085        width: GLsizei,
19086    ),
19087>;
19088pub type PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC = ::std::option::Option<
19089    unsafe extern "C" fn(
19090        target: GLenum,
19091        internalformat: GLenum,
19092        x: GLint,
19093        y: GLint,
19094        width: GLsizei,
19095        height: GLsizei,
19096    ),
19097>;
19098pub type PFNGLGETCONVOLUTIONFILTEREXTPROC = ::std::option::Option<
19099    unsafe extern "C" fn(
19100        target: GLenum,
19101        format: GLenum,
19102        type_: GLenum,
19103        image: *mut ::std::os::raw::c_void,
19104    ),
19105>;
19106pub type PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC = ::std::option::Option<
19107    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
19108>;
19109pub type PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC =
19110    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
19111pub type PFNGLGETSEPARABLEFILTEREXTPROC = ::std::option::Option<
19112    unsafe extern "C" fn(
19113        target: GLenum,
19114        format: GLenum,
19115        type_: GLenum,
19116        row: *mut ::std::os::raw::c_void,
19117        column: *mut ::std::os::raw::c_void,
19118        span: *mut ::std::os::raw::c_void,
19119    ),
19120>;
19121pub type PFNGLSEPARABLEFILTER2DEXTPROC = ::std::option::Option<
19122    unsafe extern "C" fn(
19123        target: GLenum,
19124        internalformat: GLenum,
19125        width: GLsizei,
19126        height: GLsizei,
19127        format: GLenum,
19128        type_: GLenum,
19129        row: *const ::std::os::raw::c_void,
19130        column: *const ::std::os::raw::c_void,
19131    ),
19132>;
19133extern "C" {
19134    pub fn glConvolutionFilter1DEXT(
19135        target: GLenum,
19136        internalformat: GLenum,
19137        width: GLsizei,
19138        format: GLenum,
19139        type_: GLenum,
19140        image: *const ::std::os::raw::c_void,
19141    );
19142}
19143extern "C" {
19144    pub fn glConvolutionFilter2DEXT(
19145        target: GLenum,
19146        internalformat: GLenum,
19147        width: GLsizei,
19148        height: GLsizei,
19149        format: GLenum,
19150        type_: GLenum,
19151        image: *const ::std::os::raw::c_void,
19152    );
19153}
19154extern "C" {
19155    pub fn glConvolutionParameterfEXT(target: GLenum, pname: GLenum, params: GLfloat);
19156}
19157extern "C" {
19158    pub fn glConvolutionParameterfvEXT(target: GLenum, pname: GLenum, params: *const GLfloat);
19159}
19160extern "C" {
19161    pub fn glConvolutionParameteriEXT(target: GLenum, pname: GLenum, params: GLint);
19162}
19163extern "C" {
19164    pub fn glConvolutionParameterivEXT(target: GLenum, pname: GLenum, params: *const GLint);
19165}
19166extern "C" {
19167    pub fn glCopyConvolutionFilter1DEXT(
19168        target: GLenum,
19169        internalformat: GLenum,
19170        x: GLint,
19171        y: GLint,
19172        width: GLsizei,
19173    );
19174}
19175extern "C" {
19176    pub fn glCopyConvolutionFilter2DEXT(
19177        target: GLenum,
19178        internalformat: GLenum,
19179        x: GLint,
19180        y: GLint,
19181        width: GLsizei,
19182        height: GLsizei,
19183    );
19184}
19185extern "C" {
19186    pub fn glGetConvolutionFilterEXT(
19187        target: GLenum,
19188        format: GLenum,
19189        type_: GLenum,
19190        image: *mut ::std::os::raw::c_void,
19191    );
19192}
19193extern "C" {
19194    pub fn glGetConvolutionParameterfvEXT(target: GLenum, pname: GLenum, params: *mut GLfloat);
19195}
19196extern "C" {
19197    pub fn glGetConvolutionParameterivEXT(target: GLenum, pname: GLenum, params: *mut GLint);
19198}
19199extern "C" {
19200    pub fn glGetSeparableFilterEXT(
19201        target: GLenum,
19202        format: GLenum,
19203        type_: GLenum,
19204        row: *mut ::std::os::raw::c_void,
19205        column: *mut ::std::os::raw::c_void,
19206        span: *mut ::std::os::raw::c_void,
19207    );
19208}
19209extern "C" {
19210    pub fn glSeparableFilter2DEXT(
19211        target: GLenum,
19212        internalformat: GLenum,
19213        width: GLsizei,
19214        height: GLsizei,
19215        format: GLenum,
19216        type_: GLenum,
19217        row: *const ::std::os::raw::c_void,
19218        column: *const ::std::os::raw::c_void,
19219    );
19220}
19221pub type PFNGLTANGENT3BEXTPROC =
19222    ::std::option::Option<unsafe extern "C" fn(tx: GLbyte, ty: GLbyte, tz: GLbyte)>;
19223pub type PFNGLTANGENT3BVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLbyte)>;
19224pub type PFNGLTANGENT3DEXTPROC =
19225    ::std::option::Option<unsafe extern "C" fn(tx: GLdouble, ty: GLdouble, tz: GLdouble)>;
19226pub type PFNGLTANGENT3DVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
19227pub type PFNGLTANGENT3FEXTPROC =
19228    ::std::option::Option<unsafe extern "C" fn(tx: GLfloat, ty: GLfloat, tz: GLfloat)>;
19229pub type PFNGLTANGENT3FVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
19230pub type PFNGLTANGENT3IEXTPROC =
19231    ::std::option::Option<unsafe extern "C" fn(tx: GLint, ty: GLint, tz: GLint)>;
19232pub type PFNGLTANGENT3IVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
19233pub type PFNGLTANGENT3SEXTPROC =
19234    ::std::option::Option<unsafe extern "C" fn(tx: GLshort, ty: GLshort, tz: GLshort)>;
19235pub type PFNGLTANGENT3SVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
19236pub type PFNGLBINORMAL3BEXTPROC =
19237    ::std::option::Option<unsafe extern "C" fn(bx: GLbyte, by: GLbyte, bz: GLbyte)>;
19238pub type PFNGLBINORMAL3BVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLbyte)>;
19239pub type PFNGLBINORMAL3DEXTPROC =
19240    ::std::option::Option<unsafe extern "C" fn(bx: GLdouble, by: GLdouble, bz: GLdouble)>;
19241pub type PFNGLBINORMAL3DVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
19242pub type PFNGLBINORMAL3FEXTPROC =
19243    ::std::option::Option<unsafe extern "C" fn(bx: GLfloat, by: GLfloat, bz: GLfloat)>;
19244pub type PFNGLBINORMAL3FVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
19245pub type PFNGLBINORMAL3IEXTPROC =
19246    ::std::option::Option<unsafe extern "C" fn(bx: GLint, by: GLint, bz: GLint)>;
19247pub type PFNGLBINORMAL3IVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
19248pub type PFNGLBINORMAL3SEXTPROC =
19249    ::std::option::Option<unsafe extern "C" fn(bx: GLshort, by: GLshort, bz: GLshort)>;
19250pub type PFNGLBINORMAL3SVEXTPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
19251pub type PFNGLTANGENTPOINTEREXTPROC = ::std::option::Option<
19252    unsafe extern "C" fn(type_: GLenum, stride: GLsizei, pointer: *const ::std::os::raw::c_void),
19253>;
19254pub type PFNGLBINORMALPOINTEREXTPROC = ::std::option::Option<
19255    unsafe extern "C" fn(type_: GLenum, stride: GLsizei, pointer: *const ::std::os::raw::c_void),
19256>;
19257extern "C" {
19258    pub fn glTangent3bEXT(tx: GLbyte, ty: GLbyte, tz: GLbyte);
19259}
19260extern "C" {
19261    pub fn glTangent3bvEXT(v: *const GLbyte);
19262}
19263extern "C" {
19264    pub fn glTangent3dEXT(tx: GLdouble, ty: GLdouble, tz: GLdouble);
19265}
19266extern "C" {
19267    pub fn glTangent3dvEXT(v: *const GLdouble);
19268}
19269extern "C" {
19270    pub fn glTangent3fEXT(tx: GLfloat, ty: GLfloat, tz: GLfloat);
19271}
19272extern "C" {
19273    pub fn glTangent3fvEXT(v: *const GLfloat);
19274}
19275extern "C" {
19276    pub fn glTangent3iEXT(tx: GLint, ty: GLint, tz: GLint);
19277}
19278extern "C" {
19279    pub fn glTangent3ivEXT(v: *const GLint);
19280}
19281extern "C" {
19282    pub fn glTangent3sEXT(tx: GLshort, ty: GLshort, tz: GLshort);
19283}
19284extern "C" {
19285    pub fn glTangent3svEXT(v: *const GLshort);
19286}
19287extern "C" {
19288    pub fn glBinormal3bEXT(bx: GLbyte, by: GLbyte, bz: GLbyte);
19289}
19290extern "C" {
19291    pub fn glBinormal3bvEXT(v: *const GLbyte);
19292}
19293extern "C" {
19294    pub fn glBinormal3dEXT(bx: GLdouble, by: GLdouble, bz: GLdouble);
19295}
19296extern "C" {
19297    pub fn glBinormal3dvEXT(v: *const GLdouble);
19298}
19299extern "C" {
19300    pub fn glBinormal3fEXT(bx: GLfloat, by: GLfloat, bz: GLfloat);
19301}
19302extern "C" {
19303    pub fn glBinormal3fvEXT(v: *const GLfloat);
19304}
19305extern "C" {
19306    pub fn glBinormal3iEXT(bx: GLint, by: GLint, bz: GLint);
19307}
19308extern "C" {
19309    pub fn glBinormal3ivEXT(v: *const GLint);
19310}
19311extern "C" {
19312    pub fn glBinormal3sEXT(bx: GLshort, by: GLshort, bz: GLshort);
19313}
19314extern "C" {
19315    pub fn glBinormal3svEXT(v: *const GLshort);
19316}
19317extern "C" {
19318    pub fn glTangentPointerEXT(
19319        type_: GLenum,
19320        stride: GLsizei,
19321        pointer: *const ::std::os::raw::c_void,
19322    );
19323}
19324extern "C" {
19325    pub fn glBinormalPointerEXT(
19326        type_: GLenum,
19327        stride: GLsizei,
19328        pointer: *const ::std::os::raw::c_void,
19329    );
19330}
19331pub type PFNGLCOPYTEXIMAGE1DEXTPROC = ::std::option::Option<
19332    unsafe extern "C" fn(
19333        target: GLenum,
19334        level: GLint,
19335        internalformat: GLenum,
19336        x: GLint,
19337        y: GLint,
19338        width: GLsizei,
19339        border: GLint,
19340    ),
19341>;
19342pub type PFNGLCOPYTEXIMAGE2DEXTPROC = ::std::option::Option<
19343    unsafe extern "C" fn(
19344        target: GLenum,
19345        level: GLint,
19346        internalformat: GLenum,
19347        x: GLint,
19348        y: GLint,
19349        width: GLsizei,
19350        height: GLsizei,
19351        border: GLint,
19352    ),
19353>;
19354pub type PFNGLCOPYTEXSUBIMAGE1DEXTPROC = ::std::option::Option<
19355    unsafe extern "C" fn(
19356        target: GLenum,
19357        level: GLint,
19358        xoffset: GLint,
19359        x: GLint,
19360        y: GLint,
19361        width: GLsizei,
19362    ),
19363>;
19364pub type PFNGLCOPYTEXSUBIMAGE2DEXTPROC = ::std::option::Option<
19365    unsafe extern "C" fn(
19366        target: GLenum,
19367        level: GLint,
19368        xoffset: GLint,
19369        yoffset: GLint,
19370        x: GLint,
19371        y: GLint,
19372        width: GLsizei,
19373        height: GLsizei,
19374    ),
19375>;
19376pub type PFNGLCOPYTEXSUBIMAGE3DEXTPROC = ::std::option::Option<
19377    unsafe extern "C" fn(
19378        target: GLenum,
19379        level: GLint,
19380        xoffset: GLint,
19381        yoffset: GLint,
19382        zoffset: GLint,
19383        x: GLint,
19384        y: GLint,
19385        width: GLsizei,
19386        height: GLsizei,
19387    ),
19388>;
19389extern "C" {
19390    pub fn glCopyTexImage1DEXT(
19391        target: GLenum,
19392        level: GLint,
19393        internalformat: GLenum,
19394        x: GLint,
19395        y: GLint,
19396        width: GLsizei,
19397        border: GLint,
19398    );
19399}
19400extern "C" {
19401    pub fn glCopyTexImage2DEXT(
19402        target: GLenum,
19403        level: GLint,
19404        internalformat: GLenum,
19405        x: GLint,
19406        y: GLint,
19407        width: GLsizei,
19408        height: GLsizei,
19409        border: GLint,
19410    );
19411}
19412extern "C" {
19413    pub fn glCopyTexSubImage1DEXT(
19414        target: GLenum,
19415        level: GLint,
19416        xoffset: GLint,
19417        x: GLint,
19418        y: GLint,
19419        width: GLsizei,
19420    );
19421}
19422extern "C" {
19423    pub fn glCopyTexSubImage2DEXT(
19424        target: GLenum,
19425        level: GLint,
19426        xoffset: GLint,
19427        yoffset: GLint,
19428        x: GLint,
19429        y: GLint,
19430        width: GLsizei,
19431        height: GLsizei,
19432    );
19433}
19434extern "C" {
19435    pub fn glCopyTexSubImage3DEXT(
19436        target: GLenum,
19437        level: GLint,
19438        xoffset: GLint,
19439        yoffset: GLint,
19440        zoffset: GLint,
19441        x: GLint,
19442        y: GLint,
19443        width: GLsizei,
19444        height: GLsizei,
19445    );
19446}
19447pub type PFNGLCULLPARAMETERDVEXTPROC =
19448    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *mut GLdouble)>;
19449pub type PFNGLCULLPARAMETERFVEXTPROC =
19450    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *mut GLfloat)>;
19451extern "C" {
19452    pub fn glCullParameterdvEXT(pname: GLenum, params: *mut GLdouble);
19453}
19454extern "C" {
19455    pub fn glCullParameterfvEXT(pname: GLenum, params: *mut GLfloat);
19456}
19457pub type PFNGLLABELOBJECTEXTPROC = ::std::option::Option<
19458    unsafe extern "C" fn(type_: GLenum, object: GLuint, length: GLsizei, label: *const GLchar),
19459>;
19460pub type PFNGLGETOBJECTLABELEXTPROC = ::std::option::Option<
19461    unsafe extern "C" fn(
19462        type_: GLenum,
19463        object: GLuint,
19464        bufSize: GLsizei,
19465        length: *mut GLsizei,
19466        label: *mut GLchar,
19467    ),
19468>;
19469extern "C" {
19470    pub fn glLabelObjectEXT(type_: GLenum, object: GLuint, length: GLsizei, label: *const GLchar);
19471}
19472extern "C" {
19473    pub fn glGetObjectLabelEXT(
19474        type_: GLenum,
19475        object: GLuint,
19476        bufSize: GLsizei,
19477        length: *mut GLsizei,
19478        label: *mut GLchar,
19479    );
19480}
19481pub type PFNGLINSERTEVENTMARKEREXTPROC =
19482    ::std::option::Option<unsafe extern "C" fn(length: GLsizei, marker: *const GLchar)>;
19483pub type PFNGLPUSHGROUPMARKEREXTPROC =
19484    ::std::option::Option<unsafe extern "C" fn(length: GLsizei, marker: *const GLchar)>;
19485pub type PFNGLPOPGROUPMARKEREXTPROC = ::std::option::Option<unsafe extern "C" fn()>;
19486extern "C" {
19487    pub fn glInsertEventMarkerEXT(length: GLsizei, marker: *const GLchar);
19488}
19489extern "C" {
19490    pub fn glPushGroupMarkerEXT(length: GLsizei, marker: *const GLchar);
19491}
19492extern "C" {
19493    pub fn glPopGroupMarkerEXT();
19494}
19495pub type PFNGLDEPTHBOUNDSEXTPROC =
19496    ::std::option::Option<unsafe extern "C" fn(zmin: GLclampd, zmax: GLclampd)>;
19497extern "C" {
19498    pub fn glDepthBoundsEXT(zmin: GLclampd, zmax: GLclampd);
19499}
19500pub type PFNGLMATRIXLOADFEXTPROC =
19501    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLfloat)>;
19502pub type PFNGLMATRIXLOADDEXTPROC =
19503    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLdouble)>;
19504pub type PFNGLMATRIXMULTFEXTPROC =
19505    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLfloat)>;
19506pub type PFNGLMATRIXMULTDEXTPROC =
19507    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLdouble)>;
19508pub type PFNGLMATRIXLOADIDENTITYEXTPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
19509pub type PFNGLMATRIXROTATEFEXTPROC = ::std::option::Option<
19510    unsafe extern "C" fn(mode: GLenum, angle: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat),
19511>;
19512pub type PFNGLMATRIXROTATEDEXTPROC = ::std::option::Option<
19513    unsafe extern "C" fn(mode: GLenum, angle: GLdouble, x: GLdouble, y: GLdouble, z: GLdouble),
19514>;
19515pub type PFNGLMATRIXSCALEFEXTPROC =
19516    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, x: GLfloat, y: GLfloat, z: GLfloat)>;
19517pub type PFNGLMATRIXSCALEDEXTPROC = ::std::option::Option<
19518    unsafe extern "C" fn(mode: GLenum, x: GLdouble, y: GLdouble, z: GLdouble),
19519>;
19520pub type PFNGLMATRIXTRANSLATEFEXTPROC =
19521    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, x: GLfloat, y: GLfloat, z: GLfloat)>;
19522pub type PFNGLMATRIXTRANSLATEDEXTPROC = ::std::option::Option<
19523    unsafe extern "C" fn(mode: GLenum, x: GLdouble, y: GLdouble, z: GLdouble),
19524>;
19525pub type PFNGLMATRIXFRUSTUMEXTPROC = ::std::option::Option<
19526    unsafe extern "C" fn(
19527        mode: GLenum,
19528        left: GLdouble,
19529        right: GLdouble,
19530        bottom: GLdouble,
19531        top: GLdouble,
19532        zNear: GLdouble,
19533        zFar: GLdouble,
19534    ),
19535>;
19536pub type PFNGLMATRIXORTHOEXTPROC = ::std::option::Option<
19537    unsafe extern "C" fn(
19538        mode: GLenum,
19539        left: GLdouble,
19540        right: GLdouble,
19541        bottom: GLdouble,
19542        top: GLdouble,
19543        zNear: GLdouble,
19544        zFar: GLdouble,
19545    ),
19546>;
19547pub type PFNGLMATRIXPOPEXTPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
19548pub type PFNGLMATRIXPUSHEXTPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
19549pub type PFNGLCLIENTATTRIBDEFAULTEXTPROC =
19550    ::std::option::Option<unsafe extern "C" fn(mask: GLbitfield)>;
19551pub type PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC =
19552    ::std::option::Option<unsafe extern "C" fn(mask: GLbitfield)>;
19553pub type PFNGLTEXTUREPARAMETERFEXTPROC = ::std::option::Option<
19554    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, param: GLfloat),
19555>;
19556pub type PFNGLTEXTUREPARAMETERFVEXTPROC = ::std::option::Option<
19557    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *const GLfloat),
19558>;
19559pub type PFNGLTEXTUREPARAMETERIEXTPROC = ::std::option::Option<
19560    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, param: GLint),
19561>;
19562pub type PFNGLTEXTUREPARAMETERIVEXTPROC = ::std::option::Option<
19563    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *const GLint),
19564>;
19565pub type PFNGLTEXTUREIMAGE1DEXTPROC = ::std::option::Option<
19566    unsafe extern "C" fn(
19567        texture: GLuint,
19568        target: GLenum,
19569        level: GLint,
19570        internalformat: GLint,
19571        width: GLsizei,
19572        border: GLint,
19573        format: GLenum,
19574        type_: GLenum,
19575        pixels: *const ::std::os::raw::c_void,
19576    ),
19577>;
19578pub type PFNGLTEXTUREIMAGE2DEXTPROC = ::std::option::Option<
19579    unsafe extern "C" fn(
19580        texture: GLuint,
19581        target: GLenum,
19582        level: GLint,
19583        internalformat: GLint,
19584        width: GLsizei,
19585        height: GLsizei,
19586        border: GLint,
19587        format: GLenum,
19588        type_: GLenum,
19589        pixels: *const ::std::os::raw::c_void,
19590    ),
19591>;
19592pub type PFNGLTEXTURESUBIMAGE1DEXTPROC = ::std::option::Option<
19593    unsafe extern "C" fn(
19594        texture: GLuint,
19595        target: GLenum,
19596        level: GLint,
19597        xoffset: GLint,
19598        width: GLsizei,
19599        format: GLenum,
19600        type_: GLenum,
19601        pixels: *const ::std::os::raw::c_void,
19602    ),
19603>;
19604pub type PFNGLTEXTURESUBIMAGE2DEXTPROC = ::std::option::Option<
19605    unsafe extern "C" fn(
19606        texture: GLuint,
19607        target: GLenum,
19608        level: GLint,
19609        xoffset: GLint,
19610        yoffset: GLint,
19611        width: GLsizei,
19612        height: GLsizei,
19613        format: GLenum,
19614        type_: GLenum,
19615        pixels: *const ::std::os::raw::c_void,
19616    ),
19617>;
19618pub type PFNGLCOPYTEXTUREIMAGE1DEXTPROC = ::std::option::Option<
19619    unsafe extern "C" fn(
19620        texture: GLuint,
19621        target: GLenum,
19622        level: GLint,
19623        internalformat: GLenum,
19624        x: GLint,
19625        y: GLint,
19626        width: GLsizei,
19627        border: GLint,
19628    ),
19629>;
19630pub type PFNGLCOPYTEXTUREIMAGE2DEXTPROC = ::std::option::Option<
19631    unsafe extern "C" fn(
19632        texture: GLuint,
19633        target: GLenum,
19634        level: GLint,
19635        internalformat: GLenum,
19636        x: GLint,
19637        y: GLint,
19638        width: GLsizei,
19639        height: GLsizei,
19640        border: GLint,
19641    ),
19642>;
19643pub type PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC = ::std::option::Option<
19644    unsafe extern "C" fn(
19645        texture: GLuint,
19646        target: GLenum,
19647        level: GLint,
19648        xoffset: GLint,
19649        x: GLint,
19650        y: GLint,
19651        width: GLsizei,
19652    ),
19653>;
19654pub type PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC = ::std::option::Option<
19655    unsafe extern "C" fn(
19656        texture: GLuint,
19657        target: GLenum,
19658        level: GLint,
19659        xoffset: GLint,
19660        yoffset: GLint,
19661        x: GLint,
19662        y: GLint,
19663        width: GLsizei,
19664        height: GLsizei,
19665    ),
19666>;
19667pub type PFNGLGETTEXTUREIMAGEEXTPROC = ::std::option::Option<
19668    unsafe extern "C" fn(
19669        texture: GLuint,
19670        target: GLenum,
19671        level: GLint,
19672        format: GLenum,
19673        type_: GLenum,
19674        pixels: *mut ::std::os::raw::c_void,
19675    ),
19676>;
19677pub type PFNGLGETTEXTUREPARAMETERFVEXTPROC = ::std::option::Option<
19678    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *mut GLfloat),
19679>;
19680pub type PFNGLGETTEXTUREPARAMETERIVEXTPROC = ::std::option::Option<
19681    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *mut GLint),
19682>;
19683pub type PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC = ::std::option::Option<
19684    unsafe extern "C" fn(
19685        texture: GLuint,
19686        target: GLenum,
19687        level: GLint,
19688        pname: GLenum,
19689        params: *mut GLfloat,
19690    ),
19691>;
19692pub type PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC = ::std::option::Option<
19693    unsafe extern "C" fn(
19694        texture: GLuint,
19695        target: GLenum,
19696        level: GLint,
19697        pname: GLenum,
19698        params: *mut GLint,
19699    ),
19700>;
19701pub type PFNGLTEXTUREIMAGE3DEXTPROC = ::std::option::Option<
19702    unsafe extern "C" fn(
19703        texture: GLuint,
19704        target: GLenum,
19705        level: GLint,
19706        internalformat: GLint,
19707        width: GLsizei,
19708        height: GLsizei,
19709        depth: GLsizei,
19710        border: GLint,
19711        format: GLenum,
19712        type_: GLenum,
19713        pixels: *const ::std::os::raw::c_void,
19714    ),
19715>;
19716pub type PFNGLTEXTURESUBIMAGE3DEXTPROC = ::std::option::Option<
19717    unsafe extern "C" fn(
19718        texture: GLuint,
19719        target: GLenum,
19720        level: GLint,
19721        xoffset: GLint,
19722        yoffset: GLint,
19723        zoffset: GLint,
19724        width: GLsizei,
19725        height: GLsizei,
19726        depth: GLsizei,
19727        format: GLenum,
19728        type_: GLenum,
19729        pixels: *const ::std::os::raw::c_void,
19730    ),
19731>;
19732pub type PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC = ::std::option::Option<
19733    unsafe extern "C" fn(
19734        texture: GLuint,
19735        target: GLenum,
19736        level: GLint,
19737        xoffset: GLint,
19738        yoffset: GLint,
19739        zoffset: GLint,
19740        x: GLint,
19741        y: GLint,
19742        width: GLsizei,
19743        height: GLsizei,
19744    ),
19745>;
19746pub type PFNGLBINDMULTITEXTUREEXTPROC =
19747    ::std::option::Option<unsafe extern "C" fn(texunit: GLenum, target: GLenum, texture: GLuint)>;
19748pub type PFNGLMULTITEXCOORDPOINTEREXTPROC = ::std::option::Option<
19749    unsafe extern "C" fn(
19750        texunit: GLenum,
19751        size: GLint,
19752        type_: GLenum,
19753        stride: GLsizei,
19754        pointer: *const ::std::os::raw::c_void,
19755    ),
19756>;
19757pub type PFNGLMULTITEXENVFEXTPROC = ::std::option::Option<
19758    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, param: GLfloat),
19759>;
19760pub type PFNGLMULTITEXENVFVEXTPROC = ::std::option::Option<
19761    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *const GLfloat),
19762>;
19763pub type PFNGLMULTITEXENVIEXTPROC = ::std::option::Option<
19764    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, param: GLint),
19765>;
19766pub type PFNGLMULTITEXENVIVEXTPROC = ::std::option::Option<
19767    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *const GLint),
19768>;
19769pub type PFNGLMULTITEXGENDEXTPROC = ::std::option::Option<
19770    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, param: GLdouble),
19771>;
19772pub type PFNGLMULTITEXGENDVEXTPROC = ::std::option::Option<
19773    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, params: *const GLdouble),
19774>;
19775pub type PFNGLMULTITEXGENFEXTPROC = ::std::option::Option<
19776    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, param: GLfloat),
19777>;
19778pub type PFNGLMULTITEXGENFVEXTPROC = ::std::option::Option<
19779    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, params: *const GLfloat),
19780>;
19781pub type PFNGLMULTITEXGENIEXTPROC = ::std::option::Option<
19782    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, param: GLint),
19783>;
19784pub type PFNGLMULTITEXGENIVEXTPROC = ::std::option::Option<
19785    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, params: *const GLint),
19786>;
19787pub type PFNGLGETMULTITEXENVFVEXTPROC = ::std::option::Option<
19788    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *mut GLfloat),
19789>;
19790pub type PFNGLGETMULTITEXENVIVEXTPROC = ::std::option::Option<
19791    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *mut GLint),
19792>;
19793pub type PFNGLGETMULTITEXGENDVEXTPROC = ::std::option::Option<
19794    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, params: *mut GLdouble),
19795>;
19796pub type PFNGLGETMULTITEXGENFVEXTPROC = ::std::option::Option<
19797    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, params: *mut GLfloat),
19798>;
19799pub type PFNGLGETMULTITEXGENIVEXTPROC = ::std::option::Option<
19800    unsafe extern "C" fn(texunit: GLenum, coord: GLenum, pname: GLenum, params: *mut GLint),
19801>;
19802pub type PFNGLMULTITEXPARAMETERIEXTPROC = ::std::option::Option<
19803    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, param: GLint),
19804>;
19805pub type PFNGLMULTITEXPARAMETERIVEXTPROC = ::std::option::Option<
19806    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *const GLint),
19807>;
19808pub type PFNGLMULTITEXPARAMETERFEXTPROC = ::std::option::Option<
19809    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, param: GLfloat),
19810>;
19811pub type PFNGLMULTITEXPARAMETERFVEXTPROC = ::std::option::Option<
19812    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *const GLfloat),
19813>;
19814pub type PFNGLMULTITEXIMAGE1DEXTPROC = ::std::option::Option<
19815    unsafe extern "C" fn(
19816        texunit: GLenum,
19817        target: GLenum,
19818        level: GLint,
19819        internalformat: GLint,
19820        width: GLsizei,
19821        border: GLint,
19822        format: GLenum,
19823        type_: GLenum,
19824        pixels: *const ::std::os::raw::c_void,
19825    ),
19826>;
19827pub type PFNGLMULTITEXIMAGE2DEXTPROC = ::std::option::Option<
19828    unsafe extern "C" fn(
19829        texunit: GLenum,
19830        target: GLenum,
19831        level: GLint,
19832        internalformat: GLint,
19833        width: GLsizei,
19834        height: GLsizei,
19835        border: GLint,
19836        format: GLenum,
19837        type_: GLenum,
19838        pixels: *const ::std::os::raw::c_void,
19839    ),
19840>;
19841pub type PFNGLMULTITEXSUBIMAGE1DEXTPROC = ::std::option::Option<
19842    unsafe extern "C" fn(
19843        texunit: GLenum,
19844        target: GLenum,
19845        level: GLint,
19846        xoffset: GLint,
19847        width: GLsizei,
19848        format: GLenum,
19849        type_: GLenum,
19850        pixels: *const ::std::os::raw::c_void,
19851    ),
19852>;
19853pub type PFNGLMULTITEXSUBIMAGE2DEXTPROC = ::std::option::Option<
19854    unsafe extern "C" fn(
19855        texunit: GLenum,
19856        target: GLenum,
19857        level: GLint,
19858        xoffset: GLint,
19859        yoffset: GLint,
19860        width: GLsizei,
19861        height: GLsizei,
19862        format: GLenum,
19863        type_: GLenum,
19864        pixels: *const ::std::os::raw::c_void,
19865    ),
19866>;
19867pub type PFNGLCOPYMULTITEXIMAGE1DEXTPROC = ::std::option::Option<
19868    unsafe extern "C" fn(
19869        texunit: GLenum,
19870        target: GLenum,
19871        level: GLint,
19872        internalformat: GLenum,
19873        x: GLint,
19874        y: GLint,
19875        width: GLsizei,
19876        border: GLint,
19877    ),
19878>;
19879pub type PFNGLCOPYMULTITEXIMAGE2DEXTPROC = ::std::option::Option<
19880    unsafe extern "C" fn(
19881        texunit: GLenum,
19882        target: GLenum,
19883        level: GLint,
19884        internalformat: GLenum,
19885        x: GLint,
19886        y: GLint,
19887        width: GLsizei,
19888        height: GLsizei,
19889        border: GLint,
19890    ),
19891>;
19892pub type PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC = ::std::option::Option<
19893    unsafe extern "C" fn(
19894        texunit: GLenum,
19895        target: GLenum,
19896        level: GLint,
19897        xoffset: GLint,
19898        x: GLint,
19899        y: GLint,
19900        width: GLsizei,
19901    ),
19902>;
19903pub type PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC = ::std::option::Option<
19904    unsafe extern "C" fn(
19905        texunit: GLenum,
19906        target: GLenum,
19907        level: GLint,
19908        xoffset: GLint,
19909        yoffset: GLint,
19910        x: GLint,
19911        y: GLint,
19912        width: GLsizei,
19913        height: GLsizei,
19914    ),
19915>;
19916pub type PFNGLGETMULTITEXIMAGEEXTPROC = ::std::option::Option<
19917    unsafe extern "C" fn(
19918        texunit: GLenum,
19919        target: GLenum,
19920        level: GLint,
19921        format: GLenum,
19922        type_: GLenum,
19923        pixels: *mut ::std::os::raw::c_void,
19924    ),
19925>;
19926pub type PFNGLGETMULTITEXPARAMETERFVEXTPROC = ::std::option::Option<
19927    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *mut GLfloat),
19928>;
19929pub type PFNGLGETMULTITEXPARAMETERIVEXTPROC = ::std::option::Option<
19930    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *mut GLint),
19931>;
19932pub type PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC = ::std::option::Option<
19933    unsafe extern "C" fn(
19934        texunit: GLenum,
19935        target: GLenum,
19936        level: GLint,
19937        pname: GLenum,
19938        params: *mut GLfloat,
19939    ),
19940>;
19941pub type PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC = ::std::option::Option<
19942    unsafe extern "C" fn(
19943        texunit: GLenum,
19944        target: GLenum,
19945        level: GLint,
19946        pname: GLenum,
19947        params: *mut GLint,
19948    ),
19949>;
19950pub type PFNGLMULTITEXIMAGE3DEXTPROC = ::std::option::Option<
19951    unsafe extern "C" fn(
19952        texunit: GLenum,
19953        target: GLenum,
19954        level: GLint,
19955        internalformat: GLint,
19956        width: GLsizei,
19957        height: GLsizei,
19958        depth: GLsizei,
19959        border: GLint,
19960        format: GLenum,
19961        type_: GLenum,
19962        pixels: *const ::std::os::raw::c_void,
19963    ),
19964>;
19965pub type PFNGLMULTITEXSUBIMAGE3DEXTPROC = ::std::option::Option<
19966    unsafe extern "C" fn(
19967        texunit: GLenum,
19968        target: GLenum,
19969        level: GLint,
19970        xoffset: GLint,
19971        yoffset: GLint,
19972        zoffset: GLint,
19973        width: GLsizei,
19974        height: GLsizei,
19975        depth: GLsizei,
19976        format: GLenum,
19977        type_: GLenum,
19978        pixels: *const ::std::os::raw::c_void,
19979    ),
19980>;
19981pub type PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC = ::std::option::Option<
19982    unsafe extern "C" fn(
19983        texunit: GLenum,
19984        target: GLenum,
19985        level: GLint,
19986        xoffset: GLint,
19987        yoffset: GLint,
19988        zoffset: GLint,
19989        x: GLint,
19990        y: GLint,
19991        width: GLsizei,
19992        height: GLsizei,
19993    ),
19994>;
19995pub type PFNGLENABLECLIENTSTATEINDEXEDEXTPROC =
19996    ::std::option::Option<unsafe extern "C" fn(array: GLenum, index: GLuint)>;
19997pub type PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC =
19998    ::std::option::Option<unsafe extern "C" fn(array: GLenum, index: GLuint)>;
19999pub type PFNGLGETFLOATINDEXEDVEXTPROC =
20000    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLfloat)>;
20001pub type PFNGLGETDOUBLEINDEXEDVEXTPROC =
20002    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLdouble)>;
20003pub type PFNGLGETPOINTERINDEXEDVEXTPROC = ::std::option::Option<
20004    unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut *mut ::std::os::raw::c_void),
20005>;
20006pub type PFNGLENABLEINDEXEDEXTPROC =
20007    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint)>;
20008pub type PFNGLDISABLEINDEXEDEXTPROC =
20009    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint)>;
20010pub type PFNGLISENABLEDINDEXEDEXTPROC =
20011    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint) -> GLboolean>;
20012pub type PFNGLGETINTEGERINDEXEDVEXTPROC =
20013    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLint)>;
20014pub type PFNGLGETBOOLEANINDEXEDVEXTPROC = ::std::option::Option<
20015    unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLboolean),
20016>;
20017pub type PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC = ::std::option::Option<
20018    unsafe extern "C" fn(
20019        texture: GLuint,
20020        target: GLenum,
20021        level: GLint,
20022        internalformat: GLenum,
20023        width: GLsizei,
20024        height: GLsizei,
20025        depth: GLsizei,
20026        border: GLint,
20027        imageSize: GLsizei,
20028        bits: *const ::std::os::raw::c_void,
20029    ),
20030>;
20031pub type PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC = ::std::option::Option<
20032    unsafe extern "C" fn(
20033        texture: GLuint,
20034        target: GLenum,
20035        level: GLint,
20036        internalformat: GLenum,
20037        width: GLsizei,
20038        height: GLsizei,
20039        border: GLint,
20040        imageSize: GLsizei,
20041        bits: *const ::std::os::raw::c_void,
20042    ),
20043>;
20044pub type PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC = ::std::option::Option<
20045    unsafe extern "C" fn(
20046        texture: GLuint,
20047        target: GLenum,
20048        level: GLint,
20049        internalformat: GLenum,
20050        width: GLsizei,
20051        border: GLint,
20052        imageSize: GLsizei,
20053        bits: *const ::std::os::raw::c_void,
20054    ),
20055>;
20056pub type PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC = ::std::option::Option<
20057    unsafe extern "C" fn(
20058        texture: GLuint,
20059        target: GLenum,
20060        level: GLint,
20061        xoffset: GLint,
20062        yoffset: GLint,
20063        zoffset: GLint,
20064        width: GLsizei,
20065        height: GLsizei,
20066        depth: GLsizei,
20067        format: GLenum,
20068        imageSize: GLsizei,
20069        bits: *const ::std::os::raw::c_void,
20070    ),
20071>;
20072pub type PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC = ::std::option::Option<
20073    unsafe extern "C" fn(
20074        texture: GLuint,
20075        target: GLenum,
20076        level: GLint,
20077        xoffset: GLint,
20078        yoffset: GLint,
20079        width: GLsizei,
20080        height: GLsizei,
20081        format: GLenum,
20082        imageSize: GLsizei,
20083        bits: *const ::std::os::raw::c_void,
20084    ),
20085>;
20086pub type PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC = ::std::option::Option<
20087    unsafe extern "C" fn(
20088        texture: GLuint,
20089        target: GLenum,
20090        level: GLint,
20091        xoffset: GLint,
20092        width: GLsizei,
20093        format: GLenum,
20094        imageSize: GLsizei,
20095        bits: *const ::std::os::raw::c_void,
20096    ),
20097>;
20098pub type PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC = ::std::option::Option<
20099    unsafe extern "C" fn(
20100        texture: GLuint,
20101        target: GLenum,
20102        lod: GLint,
20103        img: *mut ::std::os::raw::c_void,
20104    ),
20105>;
20106pub type PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC = ::std::option::Option<
20107    unsafe extern "C" fn(
20108        texunit: GLenum,
20109        target: GLenum,
20110        level: GLint,
20111        internalformat: GLenum,
20112        width: GLsizei,
20113        height: GLsizei,
20114        depth: GLsizei,
20115        border: GLint,
20116        imageSize: GLsizei,
20117        bits: *const ::std::os::raw::c_void,
20118    ),
20119>;
20120pub type PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC = ::std::option::Option<
20121    unsafe extern "C" fn(
20122        texunit: GLenum,
20123        target: GLenum,
20124        level: GLint,
20125        internalformat: GLenum,
20126        width: GLsizei,
20127        height: GLsizei,
20128        border: GLint,
20129        imageSize: GLsizei,
20130        bits: *const ::std::os::raw::c_void,
20131    ),
20132>;
20133pub type PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC = ::std::option::Option<
20134    unsafe extern "C" fn(
20135        texunit: GLenum,
20136        target: GLenum,
20137        level: GLint,
20138        internalformat: GLenum,
20139        width: GLsizei,
20140        border: GLint,
20141        imageSize: GLsizei,
20142        bits: *const ::std::os::raw::c_void,
20143    ),
20144>;
20145pub type PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC = ::std::option::Option<
20146    unsafe extern "C" fn(
20147        texunit: GLenum,
20148        target: GLenum,
20149        level: GLint,
20150        xoffset: GLint,
20151        yoffset: GLint,
20152        zoffset: GLint,
20153        width: GLsizei,
20154        height: GLsizei,
20155        depth: GLsizei,
20156        format: GLenum,
20157        imageSize: GLsizei,
20158        bits: *const ::std::os::raw::c_void,
20159    ),
20160>;
20161pub type PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC = ::std::option::Option<
20162    unsafe extern "C" fn(
20163        texunit: GLenum,
20164        target: GLenum,
20165        level: GLint,
20166        xoffset: GLint,
20167        yoffset: GLint,
20168        width: GLsizei,
20169        height: GLsizei,
20170        format: GLenum,
20171        imageSize: GLsizei,
20172        bits: *const ::std::os::raw::c_void,
20173    ),
20174>;
20175pub type PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC = ::std::option::Option<
20176    unsafe extern "C" fn(
20177        texunit: GLenum,
20178        target: GLenum,
20179        level: GLint,
20180        xoffset: GLint,
20181        width: GLsizei,
20182        format: GLenum,
20183        imageSize: GLsizei,
20184        bits: *const ::std::os::raw::c_void,
20185    ),
20186>;
20187pub type PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC = ::std::option::Option<
20188    unsafe extern "C" fn(
20189        texunit: GLenum,
20190        target: GLenum,
20191        lod: GLint,
20192        img: *mut ::std::os::raw::c_void,
20193    ),
20194>;
20195pub type PFNGLMATRIXLOADTRANSPOSEFEXTPROC =
20196    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLfloat)>;
20197pub type PFNGLMATRIXLOADTRANSPOSEDEXTPROC =
20198    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLdouble)>;
20199pub type PFNGLMATRIXMULTTRANSPOSEFEXTPROC =
20200    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLfloat)>;
20201pub type PFNGLMATRIXMULTTRANSPOSEDEXTPROC =
20202    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, m: *const GLdouble)>;
20203pub type PFNGLNAMEDBUFFERDATAEXTPROC = ::std::option::Option<
20204    unsafe extern "C" fn(
20205        buffer: GLuint,
20206        size: GLsizeiptr,
20207        data: *const ::std::os::raw::c_void,
20208        usage: GLenum,
20209    ),
20210>;
20211pub type PFNGLNAMEDBUFFERSUBDATAEXTPROC = ::std::option::Option<
20212    unsafe extern "C" fn(
20213        buffer: GLuint,
20214        offset: GLintptr,
20215        size: GLsizeiptr,
20216        data: *const ::std::os::raw::c_void,
20217    ),
20218>;
20219pub type PFNGLMAPNAMEDBUFFEREXTPROC = ::std::option::Option<
20220    unsafe extern "C" fn(buffer: GLuint, access: GLenum) -> *mut ::std::os::raw::c_void,
20221>;
20222pub type PFNGLUNMAPNAMEDBUFFEREXTPROC =
20223    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint) -> GLboolean>;
20224pub type PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC =
20225    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut GLint)>;
20226pub type PFNGLGETNAMEDBUFFERPOINTERVEXTPROC = ::std::option::Option<
20227    unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut *mut ::std::os::raw::c_void),
20228>;
20229pub type PFNGLGETNAMEDBUFFERSUBDATAEXTPROC = ::std::option::Option<
20230    unsafe extern "C" fn(
20231        buffer: GLuint,
20232        offset: GLintptr,
20233        size: GLsizeiptr,
20234        data: *mut ::std::os::raw::c_void,
20235    ),
20236>;
20237pub type PFNGLPROGRAMUNIFORM1FEXTPROC =
20238    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLfloat)>;
20239pub type PFNGLPROGRAMUNIFORM2FEXTPROC = ::std::option::Option<
20240    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat),
20241>;
20242pub type PFNGLPROGRAMUNIFORM3FEXTPROC = ::std::option::Option<
20243    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat, v2: GLfloat),
20244>;
20245pub type PFNGLPROGRAMUNIFORM4FEXTPROC = ::std::option::Option<
20246    unsafe extern "C" fn(
20247        program: GLuint,
20248        location: GLint,
20249        v0: GLfloat,
20250        v1: GLfloat,
20251        v2: GLfloat,
20252        v3: GLfloat,
20253    ),
20254>;
20255pub type PFNGLPROGRAMUNIFORM1IEXTPROC =
20256    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLint)>;
20257pub type PFNGLPROGRAMUNIFORM2IEXTPROC = ::std::option::Option<
20258    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLint, v1: GLint),
20259>;
20260pub type PFNGLPROGRAMUNIFORM3IEXTPROC = ::std::option::Option<
20261    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint),
20262>;
20263pub type PFNGLPROGRAMUNIFORM4IEXTPROC = ::std::option::Option<
20264    unsafe extern "C" fn(
20265        program: GLuint,
20266        location: GLint,
20267        v0: GLint,
20268        v1: GLint,
20269        v2: GLint,
20270        v3: GLint,
20271    ),
20272>;
20273pub type PFNGLPROGRAMUNIFORM1FVEXTPROC = ::std::option::Option<
20274    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
20275>;
20276pub type PFNGLPROGRAMUNIFORM2FVEXTPROC = ::std::option::Option<
20277    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
20278>;
20279pub type PFNGLPROGRAMUNIFORM3FVEXTPROC = ::std::option::Option<
20280    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
20281>;
20282pub type PFNGLPROGRAMUNIFORM4FVEXTPROC = ::std::option::Option<
20283    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLfloat),
20284>;
20285pub type PFNGLPROGRAMUNIFORM1IVEXTPROC = ::std::option::Option<
20286    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
20287>;
20288pub type PFNGLPROGRAMUNIFORM2IVEXTPROC = ::std::option::Option<
20289    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
20290>;
20291pub type PFNGLPROGRAMUNIFORM3IVEXTPROC = ::std::option::Option<
20292    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
20293>;
20294pub type PFNGLPROGRAMUNIFORM4IVEXTPROC = ::std::option::Option<
20295    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLint),
20296>;
20297pub type PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC = ::std::option::Option<
20298    unsafe extern "C" fn(
20299        program: GLuint,
20300        location: GLint,
20301        count: GLsizei,
20302        transpose: GLboolean,
20303        value: *const GLfloat,
20304    ),
20305>;
20306pub type PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC = ::std::option::Option<
20307    unsafe extern "C" fn(
20308        program: GLuint,
20309        location: GLint,
20310        count: GLsizei,
20311        transpose: GLboolean,
20312        value: *const GLfloat,
20313    ),
20314>;
20315pub type PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC = ::std::option::Option<
20316    unsafe extern "C" fn(
20317        program: GLuint,
20318        location: GLint,
20319        count: GLsizei,
20320        transpose: GLboolean,
20321        value: *const GLfloat,
20322    ),
20323>;
20324pub type PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC = ::std::option::Option<
20325    unsafe extern "C" fn(
20326        program: GLuint,
20327        location: GLint,
20328        count: GLsizei,
20329        transpose: GLboolean,
20330        value: *const GLfloat,
20331    ),
20332>;
20333pub type PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC = ::std::option::Option<
20334    unsafe extern "C" fn(
20335        program: GLuint,
20336        location: GLint,
20337        count: GLsizei,
20338        transpose: GLboolean,
20339        value: *const GLfloat,
20340    ),
20341>;
20342pub type PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC = ::std::option::Option<
20343    unsafe extern "C" fn(
20344        program: GLuint,
20345        location: GLint,
20346        count: GLsizei,
20347        transpose: GLboolean,
20348        value: *const GLfloat,
20349    ),
20350>;
20351pub type PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC = ::std::option::Option<
20352    unsafe extern "C" fn(
20353        program: GLuint,
20354        location: GLint,
20355        count: GLsizei,
20356        transpose: GLboolean,
20357        value: *const GLfloat,
20358    ),
20359>;
20360pub type PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC = ::std::option::Option<
20361    unsafe extern "C" fn(
20362        program: GLuint,
20363        location: GLint,
20364        count: GLsizei,
20365        transpose: GLboolean,
20366        value: *const GLfloat,
20367    ),
20368>;
20369pub type PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC = ::std::option::Option<
20370    unsafe extern "C" fn(
20371        program: GLuint,
20372        location: GLint,
20373        count: GLsizei,
20374        transpose: GLboolean,
20375        value: *const GLfloat,
20376    ),
20377>;
20378pub type PFNGLTEXTUREBUFFEREXTPROC = ::std::option::Option<
20379    unsafe extern "C" fn(texture: GLuint, target: GLenum, internalformat: GLenum, buffer: GLuint),
20380>;
20381pub type PFNGLMULTITEXBUFFEREXTPROC = ::std::option::Option<
20382    unsafe extern "C" fn(texunit: GLenum, target: GLenum, internalformat: GLenum, buffer: GLuint),
20383>;
20384pub type PFNGLTEXTUREPARAMETERIIVEXTPROC = ::std::option::Option<
20385    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *const GLint),
20386>;
20387pub type PFNGLTEXTUREPARAMETERIUIVEXTPROC = ::std::option::Option<
20388    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *const GLuint),
20389>;
20390pub type PFNGLGETTEXTUREPARAMETERIIVEXTPROC = ::std::option::Option<
20391    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *mut GLint),
20392>;
20393pub type PFNGLGETTEXTUREPARAMETERIUIVEXTPROC = ::std::option::Option<
20394    unsafe extern "C" fn(texture: GLuint, target: GLenum, pname: GLenum, params: *mut GLuint),
20395>;
20396pub type PFNGLMULTITEXPARAMETERIIVEXTPROC = ::std::option::Option<
20397    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *const GLint),
20398>;
20399pub type PFNGLMULTITEXPARAMETERIUIVEXTPROC = ::std::option::Option<
20400    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *const GLuint),
20401>;
20402pub type PFNGLGETMULTITEXPARAMETERIIVEXTPROC = ::std::option::Option<
20403    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *mut GLint),
20404>;
20405pub type PFNGLGETMULTITEXPARAMETERIUIVEXTPROC = ::std::option::Option<
20406    unsafe extern "C" fn(texunit: GLenum, target: GLenum, pname: GLenum, params: *mut GLuint),
20407>;
20408pub type PFNGLPROGRAMUNIFORM1UIEXTPROC =
20409    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLuint)>;
20410pub type PFNGLPROGRAMUNIFORM2UIEXTPROC = ::std::option::Option<
20411    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLuint, v1: GLuint),
20412>;
20413pub type PFNGLPROGRAMUNIFORM3UIEXTPROC = ::std::option::Option<
20414    unsafe extern "C" fn(program: GLuint, location: GLint, v0: GLuint, v1: GLuint, v2: GLuint),
20415>;
20416pub type PFNGLPROGRAMUNIFORM4UIEXTPROC = ::std::option::Option<
20417    unsafe extern "C" fn(
20418        program: GLuint,
20419        location: GLint,
20420        v0: GLuint,
20421        v1: GLuint,
20422        v2: GLuint,
20423        v3: GLuint,
20424    ),
20425>;
20426pub type PFNGLPROGRAMUNIFORM1UIVEXTPROC = ::std::option::Option<
20427    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
20428>;
20429pub type PFNGLPROGRAMUNIFORM2UIVEXTPROC = ::std::option::Option<
20430    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
20431>;
20432pub type PFNGLPROGRAMUNIFORM3UIVEXTPROC = ::std::option::Option<
20433    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
20434>;
20435pub type PFNGLPROGRAMUNIFORM4UIVEXTPROC = ::std::option::Option<
20436    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLuint),
20437>;
20438pub type PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC = ::std::option::Option<
20439    unsafe extern "C" fn(
20440        program: GLuint,
20441        target: GLenum,
20442        index: GLuint,
20443        count: GLsizei,
20444        params: *const GLfloat,
20445    ),
20446>;
20447pub type PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC = ::std::option::Option<
20448    unsafe extern "C" fn(
20449        program: GLuint,
20450        target: GLenum,
20451        index: GLuint,
20452        x: GLint,
20453        y: GLint,
20454        z: GLint,
20455        w: GLint,
20456    ),
20457>;
20458pub type PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC = ::std::option::Option<
20459    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *const GLint),
20460>;
20461pub type PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC = ::std::option::Option<
20462    unsafe extern "C" fn(
20463        program: GLuint,
20464        target: GLenum,
20465        index: GLuint,
20466        count: GLsizei,
20467        params: *const GLint,
20468    ),
20469>;
20470pub type PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC = ::std::option::Option<
20471    unsafe extern "C" fn(
20472        program: GLuint,
20473        target: GLenum,
20474        index: GLuint,
20475        x: GLuint,
20476        y: GLuint,
20477        z: GLuint,
20478        w: GLuint,
20479    ),
20480>;
20481pub type PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC = ::std::option::Option<
20482    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *const GLuint),
20483>;
20484pub type PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC = ::std::option::Option<
20485    unsafe extern "C" fn(
20486        program: GLuint,
20487        target: GLenum,
20488        index: GLuint,
20489        count: GLsizei,
20490        params: *const GLuint,
20491    ),
20492>;
20493pub type PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC = ::std::option::Option<
20494    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *mut GLint),
20495>;
20496pub type PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC = ::std::option::Option<
20497    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *mut GLuint),
20498>;
20499pub type PFNGLENABLECLIENTSTATEIEXTPROC =
20500    ::std::option::Option<unsafe extern "C" fn(array: GLenum, index: GLuint)>;
20501pub type PFNGLDISABLECLIENTSTATEIEXTPROC =
20502    ::std::option::Option<unsafe extern "C" fn(array: GLenum, index: GLuint)>;
20503pub type PFNGLGETFLOATI_VEXTPROC =
20504    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, index: GLuint, params: *mut GLfloat)>;
20505pub type PFNGLGETDOUBLEI_VEXTPROC = ::std::option::Option<
20506    unsafe extern "C" fn(pname: GLenum, index: GLuint, params: *mut GLdouble),
20507>;
20508pub type PFNGLGETPOINTERI_VEXTPROC = ::std::option::Option<
20509    unsafe extern "C" fn(pname: GLenum, index: GLuint, params: *mut *mut ::std::os::raw::c_void),
20510>;
20511pub type PFNGLNAMEDPROGRAMSTRINGEXTPROC = ::std::option::Option<
20512    unsafe extern "C" fn(
20513        program: GLuint,
20514        target: GLenum,
20515        format: GLenum,
20516        len: GLsizei,
20517        string: *const ::std::os::raw::c_void,
20518    ),
20519>;
20520pub type PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC = ::std::option::Option<
20521    unsafe extern "C" fn(
20522        program: GLuint,
20523        target: GLenum,
20524        index: GLuint,
20525        x: GLdouble,
20526        y: GLdouble,
20527        z: GLdouble,
20528        w: GLdouble,
20529    ),
20530>;
20531pub type PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC = ::std::option::Option<
20532    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *const GLdouble),
20533>;
20534pub type PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC = ::std::option::Option<
20535    unsafe extern "C" fn(
20536        program: GLuint,
20537        target: GLenum,
20538        index: GLuint,
20539        x: GLfloat,
20540        y: GLfloat,
20541        z: GLfloat,
20542        w: GLfloat,
20543    ),
20544>;
20545pub type PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC = ::std::option::Option<
20546    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *const GLfloat),
20547>;
20548pub type PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC = ::std::option::Option<
20549    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *mut GLdouble),
20550>;
20551pub type PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC = ::std::option::Option<
20552    unsafe extern "C" fn(program: GLuint, target: GLenum, index: GLuint, params: *mut GLfloat),
20553>;
20554pub type PFNGLGETNAMEDPROGRAMIVEXTPROC = ::std::option::Option<
20555    unsafe extern "C" fn(program: GLuint, target: GLenum, pname: GLenum, params: *mut GLint),
20556>;
20557pub type PFNGLGETNAMEDPROGRAMSTRINGEXTPROC = ::std::option::Option<
20558    unsafe extern "C" fn(
20559        program: GLuint,
20560        target: GLenum,
20561        pname: GLenum,
20562        string: *mut ::std::os::raw::c_void,
20563    ),
20564>;
20565pub type PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC = ::std::option::Option<
20566    unsafe extern "C" fn(
20567        renderbuffer: GLuint,
20568        internalformat: GLenum,
20569        width: GLsizei,
20570        height: GLsizei,
20571    ),
20572>;
20573pub type PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC = ::std::option::Option<
20574    unsafe extern "C" fn(renderbuffer: GLuint, pname: GLenum, params: *mut GLint),
20575>;
20576pub type PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC = ::std::option::Option<
20577    unsafe extern "C" fn(
20578        renderbuffer: GLuint,
20579        samples: GLsizei,
20580        internalformat: GLenum,
20581        width: GLsizei,
20582        height: GLsizei,
20583    ),
20584>;
20585pub type PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC = ::std::option::Option<
20586    unsafe extern "C" fn(
20587        renderbuffer: GLuint,
20588        coverageSamples: GLsizei,
20589        colorSamples: GLsizei,
20590        internalformat: GLenum,
20591        width: GLsizei,
20592        height: GLsizei,
20593    ),
20594>;
20595pub type PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC =
20596    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, target: GLenum) -> GLenum>;
20597pub type PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC = ::std::option::Option<
20598    unsafe extern "C" fn(
20599        framebuffer: GLuint,
20600        attachment: GLenum,
20601        textarget: GLenum,
20602        texture: GLuint,
20603        level: GLint,
20604    ),
20605>;
20606pub type PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC = ::std::option::Option<
20607    unsafe extern "C" fn(
20608        framebuffer: GLuint,
20609        attachment: GLenum,
20610        textarget: GLenum,
20611        texture: GLuint,
20612        level: GLint,
20613    ),
20614>;
20615pub type PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC = ::std::option::Option<
20616    unsafe extern "C" fn(
20617        framebuffer: GLuint,
20618        attachment: GLenum,
20619        textarget: GLenum,
20620        texture: GLuint,
20621        level: GLint,
20622        zoffset: GLint,
20623    ),
20624>;
20625pub type PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC = ::std::option::Option<
20626    unsafe extern "C" fn(
20627        framebuffer: GLuint,
20628        attachment: GLenum,
20629        renderbuffertarget: GLenum,
20630        renderbuffer: GLuint,
20631    ),
20632>;
20633pub type PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC = ::std::option::Option<
20634    unsafe extern "C" fn(
20635        framebuffer: GLuint,
20636        attachment: GLenum,
20637        pname: GLenum,
20638        params: *mut GLint,
20639    ),
20640>;
20641pub type PFNGLGENERATETEXTUREMIPMAPEXTPROC =
20642    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, target: GLenum)>;
20643pub type PFNGLGENERATEMULTITEXMIPMAPEXTPROC =
20644    ::std::option::Option<unsafe extern "C" fn(texunit: GLenum, target: GLenum)>;
20645pub type PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC =
20646    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, mode: GLenum)>;
20647pub type PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC = ::std::option::Option<
20648    unsafe extern "C" fn(framebuffer: GLuint, n: GLsizei, bufs: *const GLenum),
20649>;
20650pub type PFNGLFRAMEBUFFERREADBUFFEREXTPROC =
20651    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, mode: GLenum)>;
20652pub type PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC = ::std::option::Option<
20653    unsafe extern "C" fn(framebuffer: GLuint, pname: GLenum, params: *mut GLint),
20654>;
20655pub type PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC = ::std::option::Option<
20656    unsafe extern "C" fn(
20657        readBuffer: GLuint,
20658        writeBuffer: GLuint,
20659        readOffset: GLintptr,
20660        writeOffset: GLintptr,
20661        size: GLsizeiptr,
20662    ),
20663>;
20664pub type PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC = ::std::option::Option<
20665    unsafe extern "C" fn(framebuffer: GLuint, attachment: GLenum, texture: GLuint, level: GLint),
20666>;
20667pub type PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC = ::std::option::Option<
20668    unsafe extern "C" fn(
20669        framebuffer: GLuint,
20670        attachment: GLenum,
20671        texture: GLuint,
20672        level: GLint,
20673        layer: GLint,
20674    ),
20675>;
20676pub type PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC = ::std::option::Option<
20677    unsafe extern "C" fn(
20678        framebuffer: GLuint,
20679        attachment: GLenum,
20680        texture: GLuint,
20681        level: GLint,
20682        face: GLenum,
20683    ),
20684>;
20685pub type PFNGLTEXTURERENDERBUFFEREXTPROC = ::std::option::Option<
20686    unsafe extern "C" fn(texture: GLuint, target: GLenum, renderbuffer: GLuint),
20687>;
20688pub type PFNGLMULTITEXRENDERBUFFEREXTPROC = ::std::option::Option<
20689    unsafe extern "C" fn(texunit: GLenum, target: GLenum, renderbuffer: GLuint),
20690>;
20691pub type PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC = ::std::option::Option<
20692    unsafe extern "C" fn(
20693        vaobj: GLuint,
20694        buffer: GLuint,
20695        size: GLint,
20696        type_: GLenum,
20697        stride: GLsizei,
20698        offset: GLintptr,
20699    ),
20700>;
20701pub type PFNGLVERTEXARRAYCOLOROFFSETEXTPROC = ::std::option::Option<
20702    unsafe extern "C" fn(
20703        vaobj: GLuint,
20704        buffer: GLuint,
20705        size: GLint,
20706        type_: GLenum,
20707        stride: GLsizei,
20708        offset: GLintptr,
20709    ),
20710>;
20711pub type PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC = ::std::option::Option<
20712    unsafe extern "C" fn(vaobj: GLuint, buffer: GLuint, stride: GLsizei, offset: GLintptr),
20713>;
20714pub type PFNGLVERTEXARRAYINDEXOFFSETEXTPROC = ::std::option::Option<
20715    unsafe extern "C" fn(
20716        vaobj: GLuint,
20717        buffer: GLuint,
20718        type_: GLenum,
20719        stride: GLsizei,
20720        offset: GLintptr,
20721    ),
20722>;
20723pub type PFNGLVERTEXARRAYNORMALOFFSETEXTPROC = ::std::option::Option<
20724    unsafe extern "C" fn(
20725        vaobj: GLuint,
20726        buffer: GLuint,
20727        type_: GLenum,
20728        stride: GLsizei,
20729        offset: GLintptr,
20730    ),
20731>;
20732pub type PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC = ::std::option::Option<
20733    unsafe extern "C" fn(
20734        vaobj: GLuint,
20735        buffer: GLuint,
20736        size: GLint,
20737        type_: GLenum,
20738        stride: GLsizei,
20739        offset: GLintptr,
20740    ),
20741>;
20742pub type PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC = ::std::option::Option<
20743    unsafe extern "C" fn(
20744        vaobj: GLuint,
20745        buffer: GLuint,
20746        texunit: GLenum,
20747        size: GLint,
20748        type_: GLenum,
20749        stride: GLsizei,
20750        offset: GLintptr,
20751    ),
20752>;
20753pub type PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC = ::std::option::Option<
20754    unsafe extern "C" fn(
20755        vaobj: GLuint,
20756        buffer: GLuint,
20757        type_: GLenum,
20758        stride: GLsizei,
20759        offset: GLintptr,
20760    ),
20761>;
20762pub type PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC = ::std::option::Option<
20763    unsafe extern "C" fn(
20764        vaobj: GLuint,
20765        buffer: GLuint,
20766        size: GLint,
20767        type_: GLenum,
20768        stride: GLsizei,
20769        offset: GLintptr,
20770    ),
20771>;
20772pub type PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC = ::std::option::Option<
20773    unsafe extern "C" fn(
20774        vaobj: GLuint,
20775        buffer: GLuint,
20776        index: GLuint,
20777        size: GLint,
20778        type_: GLenum,
20779        normalized: GLboolean,
20780        stride: GLsizei,
20781        offset: GLintptr,
20782    ),
20783>;
20784pub type PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC = ::std::option::Option<
20785    unsafe extern "C" fn(
20786        vaobj: GLuint,
20787        buffer: GLuint,
20788        index: GLuint,
20789        size: GLint,
20790        type_: GLenum,
20791        stride: GLsizei,
20792        offset: GLintptr,
20793    ),
20794>;
20795pub type PFNGLENABLEVERTEXARRAYEXTPROC =
20796    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, array: GLenum)>;
20797pub type PFNGLDISABLEVERTEXARRAYEXTPROC =
20798    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, array: GLenum)>;
20799pub type PFNGLENABLEVERTEXARRAYATTRIBEXTPROC =
20800    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, index: GLuint)>;
20801pub type PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC =
20802    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, index: GLuint)>;
20803pub type PFNGLGETVERTEXARRAYINTEGERVEXTPROC =
20804    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, pname: GLenum, param: *mut GLint)>;
20805pub type PFNGLGETVERTEXARRAYPOINTERVEXTPROC = ::std::option::Option<
20806    unsafe extern "C" fn(vaobj: GLuint, pname: GLenum, param: *mut *mut ::std::os::raw::c_void),
20807>;
20808pub type PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC = ::std::option::Option<
20809    unsafe extern "C" fn(vaobj: GLuint, index: GLuint, pname: GLenum, param: *mut GLint),
20810>;
20811pub type PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC = ::std::option::Option<
20812    unsafe extern "C" fn(
20813        vaobj: GLuint,
20814        index: GLuint,
20815        pname: GLenum,
20816        param: *mut *mut ::std::os::raw::c_void,
20817    ),
20818>;
20819pub type PFNGLMAPNAMEDBUFFERRANGEEXTPROC = ::std::option::Option<
20820    unsafe extern "C" fn(
20821        buffer: GLuint,
20822        offset: GLintptr,
20823        length: GLsizeiptr,
20824        access: GLbitfield,
20825    ) -> *mut ::std::os::raw::c_void,
20826>;
20827pub type PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC = ::std::option::Option<
20828    unsafe extern "C" fn(buffer: GLuint, offset: GLintptr, length: GLsizeiptr),
20829>;
20830pub type PFNGLNAMEDBUFFERSTORAGEEXTPROC = ::std::option::Option<
20831    unsafe extern "C" fn(
20832        buffer: GLuint,
20833        size: GLsizeiptr,
20834        data: *const ::std::os::raw::c_void,
20835        flags: GLbitfield,
20836    ),
20837>;
20838pub type PFNGLCLEARNAMEDBUFFERDATAEXTPROC = ::std::option::Option<
20839    unsafe extern "C" fn(
20840        buffer: GLuint,
20841        internalformat: GLenum,
20842        format: GLenum,
20843        type_: GLenum,
20844        data: *const ::std::os::raw::c_void,
20845    ),
20846>;
20847pub type PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC = ::std::option::Option<
20848    unsafe extern "C" fn(
20849        buffer: GLuint,
20850        internalformat: GLenum,
20851        offset: GLsizeiptr,
20852        size: GLsizeiptr,
20853        format: GLenum,
20854        type_: GLenum,
20855        data: *const ::std::os::raw::c_void,
20856    ),
20857>;
20858pub type PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC =
20859    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint, pname: GLenum, param: GLint)>;
20860pub type PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC = ::std::option::Option<
20861    unsafe extern "C" fn(framebuffer: GLuint, pname: GLenum, params: *mut GLint),
20862>;
20863pub type PFNGLPROGRAMUNIFORM1DEXTPROC =
20864    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, x: GLdouble)>;
20865pub type PFNGLPROGRAMUNIFORM2DEXTPROC = ::std::option::Option<
20866    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLdouble, y: GLdouble),
20867>;
20868pub type PFNGLPROGRAMUNIFORM3DEXTPROC = ::std::option::Option<
20869    unsafe extern "C" fn(program: GLuint, location: GLint, x: GLdouble, y: GLdouble, z: GLdouble),
20870>;
20871pub type PFNGLPROGRAMUNIFORM4DEXTPROC = ::std::option::Option<
20872    unsafe extern "C" fn(
20873        program: GLuint,
20874        location: GLint,
20875        x: GLdouble,
20876        y: GLdouble,
20877        z: GLdouble,
20878        w: GLdouble,
20879    ),
20880>;
20881pub type PFNGLPROGRAMUNIFORM1DVEXTPROC = ::std::option::Option<
20882    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
20883>;
20884pub type PFNGLPROGRAMUNIFORM2DVEXTPROC = ::std::option::Option<
20885    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
20886>;
20887pub type PFNGLPROGRAMUNIFORM3DVEXTPROC = ::std::option::Option<
20888    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
20889>;
20890pub type PFNGLPROGRAMUNIFORM4DVEXTPROC = ::std::option::Option<
20891    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, value: *const GLdouble),
20892>;
20893pub type PFNGLPROGRAMUNIFORMMATRIX2DVEXTPROC = ::std::option::Option<
20894    unsafe extern "C" fn(
20895        program: GLuint,
20896        location: GLint,
20897        count: GLsizei,
20898        transpose: GLboolean,
20899        value: *const GLdouble,
20900    ),
20901>;
20902pub type PFNGLPROGRAMUNIFORMMATRIX3DVEXTPROC = ::std::option::Option<
20903    unsafe extern "C" fn(
20904        program: GLuint,
20905        location: GLint,
20906        count: GLsizei,
20907        transpose: GLboolean,
20908        value: *const GLdouble,
20909    ),
20910>;
20911pub type PFNGLPROGRAMUNIFORMMATRIX4DVEXTPROC = ::std::option::Option<
20912    unsafe extern "C" fn(
20913        program: GLuint,
20914        location: GLint,
20915        count: GLsizei,
20916        transpose: GLboolean,
20917        value: *const GLdouble,
20918    ),
20919>;
20920pub type PFNGLPROGRAMUNIFORMMATRIX2X3DVEXTPROC = ::std::option::Option<
20921    unsafe extern "C" fn(
20922        program: GLuint,
20923        location: GLint,
20924        count: GLsizei,
20925        transpose: GLboolean,
20926        value: *const GLdouble,
20927    ),
20928>;
20929pub type PFNGLPROGRAMUNIFORMMATRIX2X4DVEXTPROC = ::std::option::Option<
20930    unsafe extern "C" fn(
20931        program: GLuint,
20932        location: GLint,
20933        count: GLsizei,
20934        transpose: GLboolean,
20935        value: *const GLdouble,
20936    ),
20937>;
20938pub type PFNGLPROGRAMUNIFORMMATRIX3X2DVEXTPROC = ::std::option::Option<
20939    unsafe extern "C" fn(
20940        program: GLuint,
20941        location: GLint,
20942        count: GLsizei,
20943        transpose: GLboolean,
20944        value: *const GLdouble,
20945    ),
20946>;
20947pub type PFNGLPROGRAMUNIFORMMATRIX3X4DVEXTPROC = ::std::option::Option<
20948    unsafe extern "C" fn(
20949        program: GLuint,
20950        location: GLint,
20951        count: GLsizei,
20952        transpose: GLboolean,
20953        value: *const GLdouble,
20954    ),
20955>;
20956pub type PFNGLPROGRAMUNIFORMMATRIX4X2DVEXTPROC = ::std::option::Option<
20957    unsafe extern "C" fn(
20958        program: GLuint,
20959        location: GLint,
20960        count: GLsizei,
20961        transpose: GLboolean,
20962        value: *const GLdouble,
20963    ),
20964>;
20965pub type PFNGLPROGRAMUNIFORMMATRIX4X3DVEXTPROC = ::std::option::Option<
20966    unsafe extern "C" fn(
20967        program: GLuint,
20968        location: GLint,
20969        count: GLsizei,
20970        transpose: GLboolean,
20971        value: *const GLdouble,
20972    ),
20973>;
20974pub type PFNGLTEXTUREBUFFERRANGEEXTPROC = ::std::option::Option<
20975    unsafe extern "C" fn(
20976        texture: GLuint,
20977        target: GLenum,
20978        internalformat: GLenum,
20979        buffer: GLuint,
20980        offset: GLintptr,
20981        size: GLsizeiptr,
20982    ),
20983>;
20984pub type PFNGLTEXTURESTORAGE1DEXTPROC = ::std::option::Option<
20985    unsafe extern "C" fn(
20986        texture: GLuint,
20987        target: GLenum,
20988        levels: GLsizei,
20989        internalformat: GLenum,
20990        width: GLsizei,
20991    ),
20992>;
20993pub type PFNGLTEXTURESTORAGE2DEXTPROC = ::std::option::Option<
20994    unsafe extern "C" fn(
20995        texture: GLuint,
20996        target: GLenum,
20997        levels: GLsizei,
20998        internalformat: GLenum,
20999        width: GLsizei,
21000        height: GLsizei,
21001    ),
21002>;
21003pub type PFNGLTEXTURESTORAGE3DEXTPROC = ::std::option::Option<
21004    unsafe extern "C" fn(
21005        texture: GLuint,
21006        target: GLenum,
21007        levels: GLsizei,
21008        internalformat: GLenum,
21009        width: GLsizei,
21010        height: GLsizei,
21011        depth: GLsizei,
21012    ),
21013>;
21014pub type PFNGLTEXTURESTORAGE2DMULTISAMPLEEXTPROC = ::std::option::Option<
21015    unsafe extern "C" fn(
21016        texture: GLuint,
21017        target: GLenum,
21018        samples: GLsizei,
21019        internalformat: GLenum,
21020        width: GLsizei,
21021        height: GLsizei,
21022        fixedsamplelocations: GLboolean,
21023    ),
21024>;
21025pub type PFNGLTEXTURESTORAGE3DMULTISAMPLEEXTPROC = ::std::option::Option<
21026    unsafe extern "C" fn(
21027        texture: GLuint,
21028        target: GLenum,
21029        samples: GLsizei,
21030        internalformat: GLenum,
21031        width: GLsizei,
21032        height: GLsizei,
21033        depth: GLsizei,
21034        fixedsamplelocations: GLboolean,
21035    ),
21036>;
21037pub type PFNGLVERTEXARRAYBINDVERTEXBUFFEREXTPROC = ::std::option::Option<
21038    unsafe extern "C" fn(
21039        vaobj: GLuint,
21040        bindingindex: GLuint,
21041        buffer: GLuint,
21042        offset: GLintptr,
21043        stride: GLsizei,
21044    ),
21045>;
21046pub type PFNGLVERTEXARRAYVERTEXATTRIBFORMATEXTPROC = ::std::option::Option<
21047    unsafe extern "C" fn(
21048        vaobj: GLuint,
21049        attribindex: GLuint,
21050        size: GLint,
21051        type_: GLenum,
21052        normalized: GLboolean,
21053        relativeoffset: GLuint,
21054    ),
21055>;
21056pub type PFNGLVERTEXARRAYVERTEXATTRIBIFORMATEXTPROC = ::std::option::Option<
21057    unsafe extern "C" fn(
21058        vaobj: GLuint,
21059        attribindex: GLuint,
21060        size: GLint,
21061        type_: GLenum,
21062        relativeoffset: GLuint,
21063    ),
21064>;
21065pub type PFNGLVERTEXARRAYVERTEXATTRIBLFORMATEXTPROC = ::std::option::Option<
21066    unsafe extern "C" fn(
21067        vaobj: GLuint,
21068        attribindex: GLuint,
21069        size: GLint,
21070        type_: GLenum,
21071        relativeoffset: GLuint,
21072    ),
21073>;
21074pub type PFNGLVERTEXARRAYVERTEXATTRIBBINDINGEXTPROC = ::std::option::Option<
21075    unsafe extern "C" fn(vaobj: GLuint, attribindex: GLuint, bindingindex: GLuint),
21076>;
21077pub type PFNGLVERTEXARRAYVERTEXBINDINGDIVISOREXTPROC = ::std::option::Option<
21078    unsafe extern "C" fn(vaobj: GLuint, bindingindex: GLuint, divisor: GLuint),
21079>;
21080pub type PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC = ::std::option::Option<
21081    unsafe extern "C" fn(
21082        vaobj: GLuint,
21083        buffer: GLuint,
21084        index: GLuint,
21085        size: GLint,
21086        type_: GLenum,
21087        stride: GLsizei,
21088        offset: GLintptr,
21089    ),
21090>;
21091pub type PFNGLTEXTUREPAGECOMMITMENTEXTPROC = ::std::option::Option<
21092    unsafe extern "C" fn(
21093        texture: GLuint,
21094        level: GLint,
21095        xoffset: GLint,
21096        yoffset: GLint,
21097        zoffset: GLint,
21098        width: GLsizei,
21099        height: GLsizei,
21100        depth: GLsizei,
21101        commit: GLboolean,
21102    ),
21103>;
21104pub type PFNGLVERTEXARRAYVERTEXATTRIBDIVISOREXTPROC =
21105    ::std::option::Option<unsafe extern "C" fn(vaobj: GLuint, index: GLuint, divisor: GLuint)>;
21106extern "C" {
21107    pub fn glMatrixLoadfEXT(mode: GLenum, m: *const GLfloat);
21108}
21109extern "C" {
21110    pub fn glMatrixLoaddEXT(mode: GLenum, m: *const GLdouble);
21111}
21112extern "C" {
21113    pub fn glMatrixMultfEXT(mode: GLenum, m: *const GLfloat);
21114}
21115extern "C" {
21116    pub fn glMatrixMultdEXT(mode: GLenum, m: *const GLdouble);
21117}
21118extern "C" {
21119    pub fn glMatrixLoadIdentityEXT(mode: GLenum);
21120}
21121extern "C" {
21122    pub fn glMatrixRotatefEXT(mode: GLenum, angle: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat);
21123}
21124extern "C" {
21125    pub fn glMatrixRotatedEXT(mode: GLenum, angle: GLdouble, x: GLdouble, y: GLdouble, z: GLdouble);
21126}
21127extern "C" {
21128    pub fn glMatrixScalefEXT(mode: GLenum, x: GLfloat, y: GLfloat, z: GLfloat);
21129}
21130extern "C" {
21131    pub fn glMatrixScaledEXT(mode: GLenum, x: GLdouble, y: GLdouble, z: GLdouble);
21132}
21133extern "C" {
21134    pub fn glMatrixTranslatefEXT(mode: GLenum, x: GLfloat, y: GLfloat, z: GLfloat);
21135}
21136extern "C" {
21137    pub fn glMatrixTranslatedEXT(mode: GLenum, x: GLdouble, y: GLdouble, z: GLdouble);
21138}
21139extern "C" {
21140    pub fn glMatrixFrustumEXT(
21141        mode: GLenum,
21142        left: GLdouble,
21143        right: GLdouble,
21144        bottom: GLdouble,
21145        top: GLdouble,
21146        zNear: GLdouble,
21147        zFar: GLdouble,
21148    );
21149}
21150extern "C" {
21151    pub fn glMatrixOrthoEXT(
21152        mode: GLenum,
21153        left: GLdouble,
21154        right: GLdouble,
21155        bottom: GLdouble,
21156        top: GLdouble,
21157        zNear: GLdouble,
21158        zFar: GLdouble,
21159    );
21160}
21161extern "C" {
21162    pub fn glMatrixPopEXT(mode: GLenum);
21163}
21164extern "C" {
21165    pub fn glMatrixPushEXT(mode: GLenum);
21166}
21167extern "C" {
21168    pub fn glClientAttribDefaultEXT(mask: GLbitfield);
21169}
21170extern "C" {
21171    pub fn glPushClientAttribDefaultEXT(mask: GLbitfield);
21172}
21173extern "C" {
21174    pub fn glTextureParameterfEXT(texture: GLuint, target: GLenum, pname: GLenum, param: GLfloat);
21175}
21176extern "C" {
21177    pub fn glTextureParameterfvEXT(
21178        texture: GLuint,
21179        target: GLenum,
21180        pname: GLenum,
21181        params: *const GLfloat,
21182    );
21183}
21184extern "C" {
21185    pub fn glTextureParameteriEXT(texture: GLuint, target: GLenum, pname: GLenum, param: GLint);
21186}
21187extern "C" {
21188    pub fn glTextureParameterivEXT(
21189        texture: GLuint,
21190        target: GLenum,
21191        pname: GLenum,
21192        params: *const GLint,
21193    );
21194}
21195extern "C" {
21196    pub fn glTextureImage1DEXT(
21197        texture: GLuint,
21198        target: GLenum,
21199        level: GLint,
21200        internalformat: GLint,
21201        width: GLsizei,
21202        border: GLint,
21203        format: GLenum,
21204        type_: GLenum,
21205        pixels: *const ::std::os::raw::c_void,
21206    );
21207}
21208extern "C" {
21209    pub fn glTextureImage2DEXT(
21210        texture: GLuint,
21211        target: GLenum,
21212        level: GLint,
21213        internalformat: GLint,
21214        width: GLsizei,
21215        height: GLsizei,
21216        border: GLint,
21217        format: GLenum,
21218        type_: GLenum,
21219        pixels: *const ::std::os::raw::c_void,
21220    );
21221}
21222extern "C" {
21223    pub fn glTextureSubImage1DEXT(
21224        texture: GLuint,
21225        target: GLenum,
21226        level: GLint,
21227        xoffset: GLint,
21228        width: GLsizei,
21229        format: GLenum,
21230        type_: GLenum,
21231        pixels: *const ::std::os::raw::c_void,
21232    );
21233}
21234extern "C" {
21235    pub fn glTextureSubImage2DEXT(
21236        texture: GLuint,
21237        target: GLenum,
21238        level: GLint,
21239        xoffset: GLint,
21240        yoffset: GLint,
21241        width: GLsizei,
21242        height: GLsizei,
21243        format: GLenum,
21244        type_: GLenum,
21245        pixels: *const ::std::os::raw::c_void,
21246    );
21247}
21248extern "C" {
21249    pub fn glCopyTextureImage1DEXT(
21250        texture: GLuint,
21251        target: GLenum,
21252        level: GLint,
21253        internalformat: GLenum,
21254        x: GLint,
21255        y: GLint,
21256        width: GLsizei,
21257        border: GLint,
21258    );
21259}
21260extern "C" {
21261    pub fn glCopyTextureImage2DEXT(
21262        texture: GLuint,
21263        target: GLenum,
21264        level: GLint,
21265        internalformat: GLenum,
21266        x: GLint,
21267        y: GLint,
21268        width: GLsizei,
21269        height: GLsizei,
21270        border: GLint,
21271    );
21272}
21273extern "C" {
21274    pub fn glCopyTextureSubImage1DEXT(
21275        texture: GLuint,
21276        target: GLenum,
21277        level: GLint,
21278        xoffset: GLint,
21279        x: GLint,
21280        y: GLint,
21281        width: GLsizei,
21282    );
21283}
21284extern "C" {
21285    pub fn glCopyTextureSubImage2DEXT(
21286        texture: GLuint,
21287        target: GLenum,
21288        level: GLint,
21289        xoffset: GLint,
21290        yoffset: GLint,
21291        x: GLint,
21292        y: GLint,
21293        width: GLsizei,
21294        height: GLsizei,
21295    );
21296}
21297extern "C" {
21298    pub fn glGetTextureImageEXT(
21299        texture: GLuint,
21300        target: GLenum,
21301        level: GLint,
21302        format: GLenum,
21303        type_: GLenum,
21304        pixels: *mut ::std::os::raw::c_void,
21305    );
21306}
21307extern "C" {
21308    pub fn glGetTextureParameterfvEXT(
21309        texture: GLuint,
21310        target: GLenum,
21311        pname: GLenum,
21312        params: *mut GLfloat,
21313    );
21314}
21315extern "C" {
21316    pub fn glGetTextureParameterivEXT(
21317        texture: GLuint,
21318        target: GLenum,
21319        pname: GLenum,
21320        params: *mut GLint,
21321    );
21322}
21323extern "C" {
21324    pub fn glGetTextureLevelParameterfvEXT(
21325        texture: GLuint,
21326        target: GLenum,
21327        level: GLint,
21328        pname: GLenum,
21329        params: *mut GLfloat,
21330    );
21331}
21332extern "C" {
21333    pub fn glGetTextureLevelParameterivEXT(
21334        texture: GLuint,
21335        target: GLenum,
21336        level: GLint,
21337        pname: GLenum,
21338        params: *mut GLint,
21339    );
21340}
21341extern "C" {
21342    pub fn glTextureImage3DEXT(
21343        texture: GLuint,
21344        target: GLenum,
21345        level: GLint,
21346        internalformat: GLint,
21347        width: GLsizei,
21348        height: GLsizei,
21349        depth: GLsizei,
21350        border: GLint,
21351        format: GLenum,
21352        type_: GLenum,
21353        pixels: *const ::std::os::raw::c_void,
21354    );
21355}
21356extern "C" {
21357    pub fn glTextureSubImage3DEXT(
21358        texture: GLuint,
21359        target: GLenum,
21360        level: GLint,
21361        xoffset: GLint,
21362        yoffset: GLint,
21363        zoffset: GLint,
21364        width: GLsizei,
21365        height: GLsizei,
21366        depth: GLsizei,
21367        format: GLenum,
21368        type_: GLenum,
21369        pixels: *const ::std::os::raw::c_void,
21370    );
21371}
21372extern "C" {
21373    pub fn glCopyTextureSubImage3DEXT(
21374        texture: GLuint,
21375        target: GLenum,
21376        level: GLint,
21377        xoffset: GLint,
21378        yoffset: GLint,
21379        zoffset: GLint,
21380        x: GLint,
21381        y: GLint,
21382        width: GLsizei,
21383        height: GLsizei,
21384    );
21385}
21386extern "C" {
21387    pub fn glBindMultiTextureEXT(texunit: GLenum, target: GLenum, texture: GLuint);
21388}
21389extern "C" {
21390    pub fn glMultiTexCoordPointerEXT(
21391        texunit: GLenum,
21392        size: GLint,
21393        type_: GLenum,
21394        stride: GLsizei,
21395        pointer: *const ::std::os::raw::c_void,
21396    );
21397}
21398extern "C" {
21399    pub fn glMultiTexEnvfEXT(texunit: GLenum, target: GLenum, pname: GLenum, param: GLfloat);
21400}
21401extern "C" {
21402    pub fn glMultiTexEnvfvEXT(
21403        texunit: GLenum,
21404        target: GLenum,
21405        pname: GLenum,
21406        params: *const GLfloat,
21407    );
21408}
21409extern "C" {
21410    pub fn glMultiTexEnviEXT(texunit: GLenum, target: GLenum, pname: GLenum, param: GLint);
21411}
21412extern "C" {
21413    pub fn glMultiTexEnvivEXT(texunit: GLenum, target: GLenum, pname: GLenum, params: *const GLint);
21414}
21415extern "C" {
21416    pub fn glMultiTexGendEXT(texunit: GLenum, coord: GLenum, pname: GLenum, param: GLdouble);
21417}
21418extern "C" {
21419    pub fn glMultiTexGendvEXT(
21420        texunit: GLenum,
21421        coord: GLenum,
21422        pname: GLenum,
21423        params: *const GLdouble,
21424    );
21425}
21426extern "C" {
21427    pub fn glMultiTexGenfEXT(texunit: GLenum, coord: GLenum, pname: GLenum, param: GLfloat);
21428}
21429extern "C" {
21430    pub fn glMultiTexGenfvEXT(
21431        texunit: GLenum,
21432        coord: GLenum,
21433        pname: GLenum,
21434        params: *const GLfloat,
21435    );
21436}
21437extern "C" {
21438    pub fn glMultiTexGeniEXT(texunit: GLenum, coord: GLenum, pname: GLenum, param: GLint);
21439}
21440extern "C" {
21441    pub fn glMultiTexGenivEXT(texunit: GLenum, coord: GLenum, pname: GLenum, params: *const GLint);
21442}
21443extern "C" {
21444    pub fn glGetMultiTexEnvfvEXT(
21445        texunit: GLenum,
21446        target: GLenum,
21447        pname: GLenum,
21448        params: *mut GLfloat,
21449    );
21450}
21451extern "C" {
21452    pub fn glGetMultiTexEnvivEXT(
21453        texunit: GLenum,
21454        target: GLenum,
21455        pname: GLenum,
21456        params: *mut GLint,
21457    );
21458}
21459extern "C" {
21460    pub fn glGetMultiTexGendvEXT(
21461        texunit: GLenum,
21462        coord: GLenum,
21463        pname: GLenum,
21464        params: *mut GLdouble,
21465    );
21466}
21467extern "C" {
21468    pub fn glGetMultiTexGenfvEXT(
21469        texunit: GLenum,
21470        coord: GLenum,
21471        pname: GLenum,
21472        params: *mut GLfloat,
21473    );
21474}
21475extern "C" {
21476    pub fn glGetMultiTexGenivEXT(texunit: GLenum, coord: GLenum, pname: GLenum, params: *mut GLint);
21477}
21478extern "C" {
21479    pub fn glMultiTexParameteriEXT(texunit: GLenum, target: GLenum, pname: GLenum, param: GLint);
21480}
21481extern "C" {
21482    pub fn glMultiTexParameterivEXT(
21483        texunit: GLenum,
21484        target: GLenum,
21485        pname: GLenum,
21486        params: *const GLint,
21487    );
21488}
21489extern "C" {
21490    pub fn glMultiTexParameterfEXT(texunit: GLenum, target: GLenum, pname: GLenum, param: GLfloat);
21491}
21492extern "C" {
21493    pub fn glMultiTexParameterfvEXT(
21494        texunit: GLenum,
21495        target: GLenum,
21496        pname: GLenum,
21497        params: *const GLfloat,
21498    );
21499}
21500extern "C" {
21501    pub fn glMultiTexImage1DEXT(
21502        texunit: GLenum,
21503        target: GLenum,
21504        level: GLint,
21505        internalformat: GLint,
21506        width: GLsizei,
21507        border: GLint,
21508        format: GLenum,
21509        type_: GLenum,
21510        pixels: *const ::std::os::raw::c_void,
21511    );
21512}
21513extern "C" {
21514    pub fn glMultiTexImage2DEXT(
21515        texunit: GLenum,
21516        target: GLenum,
21517        level: GLint,
21518        internalformat: GLint,
21519        width: GLsizei,
21520        height: GLsizei,
21521        border: GLint,
21522        format: GLenum,
21523        type_: GLenum,
21524        pixels: *const ::std::os::raw::c_void,
21525    );
21526}
21527extern "C" {
21528    pub fn glMultiTexSubImage1DEXT(
21529        texunit: GLenum,
21530        target: GLenum,
21531        level: GLint,
21532        xoffset: GLint,
21533        width: GLsizei,
21534        format: GLenum,
21535        type_: GLenum,
21536        pixels: *const ::std::os::raw::c_void,
21537    );
21538}
21539extern "C" {
21540    pub fn glMultiTexSubImage2DEXT(
21541        texunit: GLenum,
21542        target: GLenum,
21543        level: GLint,
21544        xoffset: GLint,
21545        yoffset: GLint,
21546        width: GLsizei,
21547        height: GLsizei,
21548        format: GLenum,
21549        type_: GLenum,
21550        pixels: *const ::std::os::raw::c_void,
21551    );
21552}
21553extern "C" {
21554    pub fn glCopyMultiTexImage1DEXT(
21555        texunit: GLenum,
21556        target: GLenum,
21557        level: GLint,
21558        internalformat: GLenum,
21559        x: GLint,
21560        y: GLint,
21561        width: GLsizei,
21562        border: GLint,
21563    );
21564}
21565extern "C" {
21566    pub fn glCopyMultiTexImage2DEXT(
21567        texunit: GLenum,
21568        target: GLenum,
21569        level: GLint,
21570        internalformat: GLenum,
21571        x: GLint,
21572        y: GLint,
21573        width: GLsizei,
21574        height: GLsizei,
21575        border: GLint,
21576    );
21577}
21578extern "C" {
21579    pub fn glCopyMultiTexSubImage1DEXT(
21580        texunit: GLenum,
21581        target: GLenum,
21582        level: GLint,
21583        xoffset: GLint,
21584        x: GLint,
21585        y: GLint,
21586        width: GLsizei,
21587    );
21588}
21589extern "C" {
21590    pub fn glCopyMultiTexSubImage2DEXT(
21591        texunit: GLenum,
21592        target: GLenum,
21593        level: GLint,
21594        xoffset: GLint,
21595        yoffset: GLint,
21596        x: GLint,
21597        y: GLint,
21598        width: GLsizei,
21599        height: GLsizei,
21600    );
21601}
21602extern "C" {
21603    pub fn glGetMultiTexImageEXT(
21604        texunit: GLenum,
21605        target: GLenum,
21606        level: GLint,
21607        format: GLenum,
21608        type_: GLenum,
21609        pixels: *mut ::std::os::raw::c_void,
21610    );
21611}
21612extern "C" {
21613    pub fn glGetMultiTexParameterfvEXT(
21614        texunit: GLenum,
21615        target: GLenum,
21616        pname: GLenum,
21617        params: *mut GLfloat,
21618    );
21619}
21620extern "C" {
21621    pub fn glGetMultiTexParameterivEXT(
21622        texunit: GLenum,
21623        target: GLenum,
21624        pname: GLenum,
21625        params: *mut GLint,
21626    );
21627}
21628extern "C" {
21629    pub fn glGetMultiTexLevelParameterfvEXT(
21630        texunit: GLenum,
21631        target: GLenum,
21632        level: GLint,
21633        pname: GLenum,
21634        params: *mut GLfloat,
21635    );
21636}
21637extern "C" {
21638    pub fn glGetMultiTexLevelParameterivEXT(
21639        texunit: GLenum,
21640        target: GLenum,
21641        level: GLint,
21642        pname: GLenum,
21643        params: *mut GLint,
21644    );
21645}
21646extern "C" {
21647    pub fn glMultiTexImage3DEXT(
21648        texunit: GLenum,
21649        target: GLenum,
21650        level: GLint,
21651        internalformat: GLint,
21652        width: GLsizei,
21653        height: GLsizei,
21654        depth: GLsizei,
21655        border: GLint,
21656        format: GLenum,
21657        type_: GLenum,
21658        pixels: *const ::std::os::raw::c_void,
21659    );
21660}
21661extern "C" {
21662    pub fn glMultiTexSubImage3DEXT(
21663        texunit: GLenum,
21664        target: GLenum,
21665        level: GLint,
21666        xoffset: GLint,
21667        yoffset: GLint,
21668        zoffset: GLint,
21669        width: GLsizei,
21670        height: GLsizei,
21671        depth: GLsizei,
21672        format: GLenum,
21673        type_: GLenum,
21674        pixels: *const ::std::os::raw::c_void,
21675    );
21676}
21677extern "C" {
21678    pub fn glCopyMultiTexSubImage3DEXT(
21679        texunit: GLenum,
21680        target: GLenum,
21681        level: GLint,
21682        xoffset: GLint,
21683        yoffset: GLint,
21684        zoffset: GLint,
21685        x: GLint,
21686        y: GLint,
21687        width: GLsizei,
21688        height: GLsizei,
21689    );
21690}
21691extern "C" {
21692    pub fn glEnableClientStateIndexedEXT(array: GLenum, index: GLuint);
21693}
21694extern "C" {
21695    pub fn glDisableClientStateIndexedEXT(array: GLenum, index: GLuint);
21696}
21697extern "C" {
21698    pub fn glGetFloatIndexedvEXT(target: GLenum, index: GLuint, data: *mut GLfloat);
21699}
21700extern "C" {
21701    pub fn glGetDoubleIndexedvEXT(target: GLenum, index: GLuint, data: *mut GLdouble);
21702}
21703extern "C" {
21704    pub fn glGetPointerIndexedvEXT(
21705        target: GLenum,
21706        index: GLuint,
21707        data: *mut *mut ::std::os::raw::c_void,
21708    );
21709}
21710extern "C" {
21711    pub fn glEnableIndexedEXT(target: GLenum, index: GLuint);
21712}
21713extern "C" {
21714    pub fn glDisableIndexedEXT(target: GLenum, index: GLuint);
21715}
21716extern "C" {
21717    pub fn glIsEnabledIndexedEXT(target: GLenum, index: GLuint) -> GLboolean;
21718}
21719extern "C" {
21720    pub fn glGetIntegerIndexedvEXT(target: GLenum, index: GLuint, data: *mut GLint);
21721}
21722extern "C" {
21723    pub fn glGetBooleanIndexedvEXT(target: GLenum, index: GLuint, data: *mut GLboolean);
21724}
21725extern "C" {
21726    pub fn glCompressedTextureImage3DEXT(
21727        texture: GLuint,
21728        target: GLenum,
21729        level: GLint,
21730        internalformat: GLenum,
21731        width: GLsizei,
21732        height: GLsizei,
21733        depth: GLsizei,
21734        border: GLint,
21735        imageSize: GLsizei,
21736        bits: *const ::std::os::raw::c_void,
21737    );
21738}
21739extern "C" {
21740    pub fn glCompressedTextureImage2DEXT(
21741        texture: GLuint,
21742        target: GLenum,
21743        level: GLint,
21744        internalformat: GLenum,
21745        width: GLsizei,
21746        height: GLsizei,
21747        border: GLint,
21748        imageSize: GLsizei,
21749        bits: *const ::std::os::raw::c_void,
21750    );
21751}
21752extern "C" {
21753    pub fn glCompressedTextureImage1DEXT(
21754        texture: GLuint,
21755        target: GLenum,
21756        level: GLint,
21757        internalformat: GLenum,
21758        width: GLsizei,
21759        border: GLint,
21760        imageSize: GLsizei,
21761        bits: *const ::std::os::raw::c_void,
21762    );
21763}
21764extern "C" {
21765    pub fn glCompressedTextureSubImage3DEXT(
21766        texture: GLuint,
21767        target: GLenum,
21768        level: GLint,
21769        xoffset: GLint,
21770        yoffset: GLint,
21771        zoffset: GLint,
21772        width: GLsizei,
21773        height: GLsizei,
21774        depth: GLsizei,
21775        format: GLenum,
21776        imageSize: GLsizei,
21777        bits: *const ::std::os::raw::c_void,
21778    );
21779}
21780extern "C" {
21781    pub fn glCompressedTextureSubImage2DEXT(
21782        texture: GLuint,
21783        target: GLenum,
21784        level: GLint,
21785        xoffset: GLint,
21786        yoffset: GLint,
21787        width: GLsizei,
21788        height: GLsizei,
21789        format: GLenum,
21790        imageSize: GLsizei,
21791        bits: *const ::std::os::raw::c_void,
21792    );
21793}
21794extern "C" {
21795    pub fn glCompressedTextureSubImage1DEXT(
21796        texture: GLuint,
21797        target: GLenum,
21798        level: GLint,
21799        xoffset: GLint,
21800        width: GLsizei,
21801        format: GLenum,
21802        imageSize: GLsizei,
21803        bits: *const ::std::os::raw::c_void,
21804    );
21805}
21806extern "C" {
21807    pub fn glGetCompressedTextureImageEXT(
21808        texture: GLuint,
21809        target: GLenum,
21810        lod: GLint,
21811        img: *mut ::std::os::raw::c_void,
21812    );
21813}
21814extern "C" {
21815    pub fn glCompressedMultiTexImage3DEXT(
21816        texunit: GLenum,
21817        target: GLenum,
21818        level: GLint,
21819        internalformat: GLenum,
21820        width: GLsizei,
21821        height: GLsizei,
21822        depth: GLsizei,
21823        border: GLint,
21824        imageSize: GLsizei,
21825        bits: *const ::std::os::raw::c_void,
21826    );
21827}
21828extern "C" {
21829    pub fn glCompressedMultiTexImage2DEXT(
21830        texunit: GLenum,
21831        target: GLenum,
21832        level: GLint,
21833        internalformat: GLenum,
21834        width: GLsizei,
21835        height: GLsizei,
21836        border: GLint,
21837        imageSize: GLsizei,
21838        bits: *const ::std::os::raw::c_void,
21839    );
21840}
21841extern "C" {
21842    pub fn glCompressedMultiTexImage1DEXT(
21843        texunit: GLenum,
21844        target: GLenum,
21845        level: GLint,
21846        internalformat: GLenum,
21847        width: GLsizei,
21848        border: GLint,
21849        imageSize: GLsizei,
21850        bits: *const ::std::os::raw::c_void,
21851    );
21852}
21853extern "C" {
21854    pub fn glCompressedMultiTexSubImage3DEXT(
21855        texunit: GLenum,
21856        target: GLenum,
21857        level: GLint,
21858        xoffset: GLint,
21859        yoffset: GLint,
21860        zoffset: GLint,
21861        width: GLsizei,
21862        height: GLsizei,
21863        depth: GLsizei,
21864        format: GLenum,
21865        imageSize: GLsizei,
21866        bits: *const ::std::os::raw::c_void,
21867    );
21868}
21869extern "C" {
21870    pub fn glCompressedMultiTexSubImage2DEXT(
21871        texunit: GLenum,
21872        target: GLenum,
21873        level: GLint,
21874        xoffset: GLint,
21875        yoffset: GLint,
21876        width: GLsizei,
21877        height: GLsizei,
21878        format: GLenum,
21879        imageSize: GLsizei,
21880        bits: *const ::std::os::raw::c_void,
21881    );
21882}
21883extern "C" {
21884    pub fn glCompressedMultiTexSubImage1DEXT(
21885        texunit: GLenum,
21886        target: GLenum,
21887        level: GLint,
21888        xoffset: GLint,
21889        width: GLsizei,
21890        format: GLenum,
21891        imageSize: GLsizei,
21892        bits: *const ::std::os::raw::c_void,
21893    );
21894}
21895extern "C" {
21896    pub fn glGetCompressedMultiTexImageEXT(
21897        texunit: GLenum,
21898        target: GLenum,
21899        lod: GLint,
21900        img: *mut ::std::os::raw::c_void,
21901    );
21902}
21903extern "C" {
21904    pub fn glMatrixLoadTransposefEXT(mode: GLenum, m: *const GLfloat);
21905}
21906extern "C" {
21907    pub fn glMatrixLoadTransposedEXT(mode: GLenum, m: *const GLdouble);
21908}
21909extern "C" {
21910    pub fn glMatrixMultTransposefEXT(mode: GLenum, m: *const GLfloat);
21911}
21912extern "C" {
21913    pub fn glMatrixMultTransposedEXT(mode: GLenum, m: *const GLdouble);
21914}
21915extern "C" {
21916    pub fn glNamedBufferDataEXT(
21917        buffer: GLuint,
21918        size: GLsizeiptr,
21919        data: *const ::std::os::raw::c_void,
21920        usage: GLenum,
21921    );
21922}
21923extern "C" {
21924    pub fn glNamedBufferSubDataEXT(
21925        buffer: GLuint,
21926        offset: GLintptr,
21927        size: GLsizeiptr,
21928        data: *const ::std::os::raw::c_void,
21929    );
21930}
21931extern "C" {
21932    pub fn glMapNamedBufferEXT(buffer: GLuint, access: GLenum) -> *mut ::std::os::raw::c_void;
21933}
21934extern "C" {
21935    pub fn glUnmapNamedBufferEXT(buffer: GLuint) -> GLboolean;
21936}
21937extern "C" {
21938    pub fn glGetNamedBufferParameterivEXT(buffer: GLuint, pname: GLenum, params: *mut GLint);
21939}
21940extern "C" {
21941    pub fn glGetNamedBufferPointervEXT(
21942        buffer: GLuint,
21943        pname: GLenum,
21944        params: *mut *mut ::std::os::raw::c_void,
21945    );
21946}
21947extern "C" {
21948    pub fn glGetNamedBufferSubDataEXT(
21949        buffer: GLuint,
21950        offset: GLintptr,
21951        size: GLsizeiptr,
21952        data: *mut ::std::os::raw::c_void,
21953    );
21954}
21955extern "C" {
21956    pub fn glProgramUniform1fEXT(program: GLuint, location: GLint, v0: GLfloat);
21957}
21958extern "C" {
21959    pub fn glProgramUniform2fEXT(program: GLuint, location: GLint, v0: GLfloat, v1: GLfloat);
21960}
21961extern "C" {
21962    pub fn glProgramUniform3fEXT(
21963        program: GLuint,
21964        location: GLint,
21965        v0: GLfloat,
21966        v1: GLfloat,
21967        v2: GLfloat,
21968    );
21969}
21970extern "C" {
21971    pub fn glProgramUniform4fEXT(
21972        program: GLuint,
21973        location: GLint,
21974        v0: GLfloat,
21975        v1: GLfloat,
21976        v2: GLfloat,
21977        v3: GLfloat,
21978    );
21979}
21980extern "C" {
21981    pub fn glProgramUniform1iEXT(program: GLuint, location: GLint, v0: GLint);
21982}
21983extern "C" {
21984    pub fn glProgramUniform2iEXT(program: GLuint, location: GLint, v0: GLint, v1: GLint);
21985}
21986extern "C" {
21987    pub fn glProgramUniform3iEXT(program: GLuint, location: GLint, v0: GLint, v1: GLint, v2: GLint);
21988}
21989extern "C" {
21990    pub fn glProgramUniform4iEXT(
21991        program: GLuint,
21992        location: GLint,
21993        v0: GLint,
21994        v1: GLint,
21995        v2: GLint,
21996        v3: GLint,
21997    );
21998}
21999extern "C" {
22000    pub fn glProgramUniform1fvEXT(
22001        program: GLuint,
22002        location: GLint,
22003        count: GLsizei,
22004        value: *const GLfloat,
22005    );
22006}
22007extern "C" {
22008    pub fn glProgramUniform2fvEXT(
22009        program: GLuint,
22010        location: GLint,
22011        count: GLsizei,
22012        value: *const GLfloat,
22013    );
22014}
22015extern "C" {
22016    pub fn glProgramUniform3fvEXT(
22017        program: GLuint,
22018        location: GLint,
22019        count: GLsizei,
22020        value: *const GLfloat,
22021    );
22022}
22023extern "C" {
22024    pub fn glProgramUniform4fvEXT(
22025        program: GLuint,
22026        location: GLint,
22027        count: GLsizei,
22028        value: *const GLfloat,
22029    );
22030}
22031extern "C" {
22032    pub fn glProgramUniform1ivEXT(
22033        program: GLuint,
22034        location: GLint,
22035        count: GLsizei,
22036        value: *const GLint,
22037    );
22038}
22039extern "C" {
22040    pub fn glProgramUniform2ivEXT(
22041        program: GLuint,
22042        location: GLint,
22043        count: GLsizei,
22044        value: *const GLint,
22045    );
22046}
22047extern "C" {
22048    pub fn glProgramUniform3ivEXT(
22049        program: GLuint,
22050        location: GLint,
22051        count: GLsizei,
22052        value: *const GLint,
22053    );
22054}
22055extern "C" {
22056    pub fn glProgramUniform4ivEXT(
22057        program: GLuint,
22058        location: GLint,
22059        count: GLsizei,
22060        value: *const GLint,
22061    );
22062}
22063extern "C" {
22064    pub fn glProgramUniformMatrix2fvEXT(
22065        program: GLuint,
22066        location: GLint,
22067        count: GLsizei,
22068        transpose: GLboolean,
22069        value: *const GLfloat,
22070    );
22071}
22072extern "C" {
22073    pub fn glProgramUniformMatrix3fvEXT(
22074        program: GLuint,
22075        location: GLint,
22076        count: GLsizei,
22077        transpose: GLboolean,
22078        value: *const GLfloat,
22079    );
22080}
22081extern "C" {
22082    pub fn glProgramUniformMatrix4fvEXT(
22083        program: GLuint,
22084        location: GLint,
22085        count: GLsizei,
22086        transpose: GLboolean,
22087        value: *const GLfloat,
22088    );
22089}
22090extern "C" {
22091    pub fn glProgramUniformMatrix2x3fvEXT(
22092        program: GLuint,
22093        location: GLint,
22094        count: GLsizei,
22095        transpose: GLboolean,
22096        value: *const GLfloat,
22097    );
22098}
22099extern "C" {
22100    pub fn glProgramUniformMatrix3x2fvEXT(
22101        program: GLuint,
22102        location: GLint,
22103        count: GLsizei,
22104        transpose: GLboolean,
22105        value: *const GLfloat,
22106    );
22107}
22108extern "C" {
22109    pub fn glProgramUniformMatrix2x4fvEXT(
22110        program: GLuint,
22111        location: GLint,
22112        count: GLsizei,
22113        transpose: GLboolean,
22114        value: *const GLfloat,
22115    );
22116}
22117extern "C" {
22118    pub fn glProgramUniformMatrix4x2fvEXT(
22119        program: GLuint,
22120        location: GLint,
22121        count: GLsizei,
22122        transpose: GLboolean,
22123        value: *const GLfloat,
22124    );
22125}
22126extern "C" {
22127    pub fn glProgramUniformMatrix3x4fvEXT(
22128        program: GLuint,
22129        location: GLint,
22130        count: GLsizei,
22131        transpose: GLboolean,
22132        value: *const GLfloat,
22133    );
22134}
22135extern "C" {
22136    pub fn glProgramUniformMatrix4x3fvEXT(
22137        program: GLuint,
22138        location: GLint,
22139        count: GLsizei,
22140        transpose: GLboolean,
22141        value: *const GLfloat,
22142    );
22143}
22144extern "C" {
22145    pub fn glTextureBufferEXT(
22146        texture: GLuint,
22147        target: GLenum,
22148        internalformat: GLenum,
22149        buffer: GLuint,
22150    );
22151}
22152extern "C" {
22153    pub fn glMultiTexBufferEXT(
22154        texunit: GLenum,
22155        target: GLenum,
22156        internalformat: GLenum,
22157        buffer: GLuint,
22158    );
22159}
22160extern "C" {
22161    pub fn glTextureParameterIivEXT(
22162        texture: GLuint,
22163        target: GLenum,
22164        pname: GLenum,
22165        params: *const GLint,
22166    );
22167}
22168extern "C" {
22169    pub fn glTextureParameterIuivEXT(
22170        texture: GLuint,
22171        target: GLenum,
22172        pname: GLenum,
22173        params: *const GLuint,
22174    );
22175}
22176extern "C" {
22177    pub fn glGetTextureParameterIivEXT(
22178        texture: GLuint,
22179        target: GLenum,
22180        pname: GLenum,
22181        params: *mut GLint,
22182    );
22183}
22184extern "C" {
22185    pub fn glGetTextureParameterIuivEXT(
22186        texture: GLuint,
22187        target: GLenum,
22188        pname: GLenum,
22189        params: *mut GLuint,
22190    );
22191}
22192extern "C" {
22193    pub fn glMultiTexParameterIivEXT(
22194        texunit: GLenum,
22195        target: GLenum,
22196        pname: GLenum,
22197        params: *const GLint,
22198    );
22199}
22200extern "C" {
22201    pub fn glMultiTexParameterIuivEXT(
22202        texunit: GLenum,
22203        target: GLenum,
22204        pname: GLenum,
22205        params: *const GLuint,
22206    );
22207}
22208extern "C" {
22209    pub fn glGetMultiTexParameterIivEXT(
22210        texunit: GLenum,
22211        target: GLenum,
22212        pname: GLenum,
22213        params: *mut GLint,
22214    );
22215}
22216extern "C" {
22217    pub fn glGetMultiTexParameterIuivEXT(
22218        texunit: GLenum,
22219        target: GLenum,
22220        pname: GLenum,
22221        params: *mut GLuint,
22222    );
22223}
22224extern "C" {
22225    pub fn glProgramUniform1uiEXT(program: GLuint, location: GLint, v0: GLuint);
22226}
22227extern "C" {
22228    pub fn glProgramUniform2uiEXT(program: GLuint, location: GLint, v0: GLuint, v1: GLuint);
22229}
22230extern "C" {
22231    pub fn glProgramUniform3uiEXT(
22232        program: GLuint,
22233        location: GLint,
22234        v0: GLuint,
22235        v1: GLuint,
22236        v2: GLuint,
22237    );
22238}
22239extern "C" {
22240    pub fn glProgramUniform4uiEXT(
22241        program: GLuint,
22242        location: GLint,
22243        v0: GLuint,
22244        v1: GLuint,
22245        v2: GLuint,
22246        v3: GLuint,
22247    );
22248}
22249extern "C" {
22250    pub fn glProgramUniform1uivEXT(
22251        program: GLuint,
22252        location: GLint,
22253        count: GLsizei,
22254        value: *const GLuint,
22255    );
22256}
22257extern "C" {
22258    pub fn glProgramUniform2uivEXT(
22259        program: GLuint,
22260        location: GLint,
22261        count: GLsizei,
22262        value: *const GLuint,
22263    );
22264}
22265extern "C" {
22266    pub fn glProgramUniform3uivEXT(
22267        program: GLuint,
22268        location: GLint,
22269        count: GLsizei,
22270        value: *const GLuint,
22271    );
22272}
22273extern "C" {
22274    pub fn glProgramUniform4uivEXT(
22275        program: GLuint,
22276        location: GLint,
22277        count: GLsizei,
22278        value: *const GLuint,
22279    );
22280}
22281extern "C" {
22282    pub fn glNamedProgramLocalParameters4fvEXT(
22283        program: GLuint,
22284        target: GLenum,
22285        index: GLuint,
22286        count: GLsizei,
22287        params: *const GLfloat,
22288    );
22289}
22290extern "C" {
22291    pub fn glNamedProgramLocalParameterI4iEXT(
22292        program: GLuint,
22293        target: GLenum,
22294        index: GLuint,
22295        x: GLint,
22296        y: GLint,
22297        z: GLint,
22298        w: GLint,
22299    );
22300}
22301extern "C" {
22302    pub fn glNamedProgramLocalParameterI4ivEXT(
22303        program: GLuint,
22304        target: GLenum,
22305        index: GLuint,
22306        params: *const GLint,
22307    );
22308}
22309extern "C" {
22310    pub fn glNamedProgramLocalParametersI4ivEXT(
22311        program: GLuint,
22312        target: GLenum,
22313        index: GLuint,
22314        count: GLsizei,
22315        params: *const GLint,
22316    );
22317}
22318extern "C" {
22319    pub fn glNamedProgramLocalParameterI4uiEXT(
22320        program: GLuint,
22321        target: GLenum,
22322        index: GLuint,
22323        x: GLuint,
22324        y: GLuint,
22325        z: GLuint,
22326        w: GLuint,
22327    );
22328}
22329extern "C" {
22330    pub fn glNamedProgramLocalParameterI4uivEXT(
22331        program: GLuint,
22332        target: GLenum,
22333        index: GLuint,
22334        params: *const GLuint,
22335    );
22336}
22337extern "C" {
22338    pub fn glNamedProgramLocalParametersI4uivEXT(
22339        program: GLuint,
22340        target: GLenum,
22341        index: GLuint,
22342        count: GLsizei,
22343        params: *const GLuint,
22344    );
22345}
22346extern "C" {
22347    pub fn glGetNamedProgramLocalParameterIivEXT(
22348        program: GLuint,
22349        target: GLenum,
22350        index: GLuint,
22351        params: *mut GLint,
22352    );
22353}
22354extern "C" {
22355    pub fn glGetNamedProgramLocalParameterIuivEXT(
22356        program: GLuint,
22357        target: GLenum,
22358        index: GLuint,
22359        params: *mut GLuint,
22360    );
22361}
22362extern "C" {
22363    pub fn glEnableClientStateiEXT(array: GLenum, index: GLuint);
22364}
22365extern "C" {
22366    pub fn glDisableClientStateiEXT(array: GLenum, index: GLuint);
22367}
22368extern "C" {
22369    pub fn glGetFloati_vEXT(pname: GLenum, index: GLuint, params: *mut GLfloat);
22370}
22371extern "C" {
22372    pub fn glGetDoublei_vEXT(pname: GLenum, index: GLuint, params: *mut GLdouble);
22373}
22374extern "C" {
22375    pub fn glGetPointeri_vEXT(
22376        pname: GLenum,
22377        index: GLuint,
22378        params: *mut *mut ::std::os::raw::c_void,
22379    );
22380}
22381extern "C" {
22382    pub fn glNamedProgramStringEXT(
22383        program: GLuint,
22384        target: GLenum,
22385        format: GLenum,
22386        len: GLsizei,
22387        string: *const ::std::os::raw::c_void,
22388    );
22389}
22390extern "C" {
22391    pub fn glNamedProgramLocalParameter4dEXT(
22392        program: GLuint,
22393        target: GLenum,
22394        index: GLuint,
22395        x: GLdouble,
22396        y: GLdouble,
22397        z: GLdouble,
22398        w: GLdouble,
22399    );
22400}
22401extern "C" {
22402    pub fn glNamedProgramLocalParameter4dvEXT(
22403        program: GLuint,
22404        target: GLenum,
22405        index: GLuint,
22406        params: *const GLdouble,
22407    );
22408}
22409extern "C" {
22410    pub fn glNamedProgramLocalParameter4fEXT(
22411        program: GLuint,
22412        target: GLenum,
22413        index: GLuint,
22414        x: GLfloat,
22415        y: GLfloat,
22416        z: GLfloat,
22417        w: GLfloat,
22418    );
22419}
22420extern "C" {
22421    pub fn glNamedProgramLocalParameter4fvEXT(
22422        program: GLuint,
22423        target: GLenum,
22424        index: GLuint,
22425        params: *const GLfloat,
22426    );
22427}
22428extern "C" {
22429    pub fn glGetNamedProgramLocalParameterdvEXT(
22430        program: GLuint,
22431        target: GLenum,
22432        index: GLuint,
22433        params: *mut GLdouble,
22434    );
22435}
22436extern "C" {
22437    pub fn glGetNamedProgramLocalParameterfvEXT(
22438        program: GLuint,
22439        target: GLenum,
22440        index: GLuint,
22441        params: *mut GLfloat,
22442    );
22443}
22444extern "C" {
22445    pub fn glGetNamedProgramivEXT(
22446        program: GLuint,
22447        target: GLenum,
22448        pname: GLenum,
22449        params: *mut GLint,
22450    );
22451}
22452extern "C" {
22453    pub fn glGetNamedProgramStringEXT(
22454        program: GLuint,
22455        target: GLenum,
22456        pname: GLenum,
22457        string: *mut ::std::os::raw::c_void,
22458    );
22459}
22460extern "C" {
22461    pub fn glNamedRenderbufferStorageEXT(
22462        renderbuffer: GLuint,
22463        internalformat: GLenum,
22464        width: GLsizei,
22465        height: GLsizei,
22466    );
22467}
22468extern "C" {
22469    pub fn glGetNamedRenderbufferParameterivEXT(
22470        renderbuffer: GLuint,
22471        pname: GLenum,
22472        params: *mut GLint,
22473    );
22474}
22475extern "C" {
22476    pub fn glNamedRenderbufferStorageMultisampleEXT(
22477        renderbuffer: GLuint,
22478        samples: GLsizei,
22479        internalformat: GLenum,
22480        width: GLsizei,
22481        height: GLsizei,
22482    );
22483}
22484extern "C" {
22485    pub fn glNamedRenderbufferStorageMultisampleCoverageEXT(
22486        renderbuffer: GLuint,
22487        coverageSamples: GLsizei,
22488        colorSamples: GLsizei,
22489        internalformat: GLenum,
22490        width: GLsizei,
22491        height: GLsizei,
22492    );
22493}
22494extern "C" {
22495    pub fn glCheckNamedFramebufferStatusEXT(framebuffer: GLuint, target: GLenum) -> GLenum;
22496}
22497extern "C" {
22498    pub fn glNamedFramebufferTexture1DEXT(
22499        framebuffer: GLuint,
22500        attachment: GLenum,
22501        textarget: GLenum,
22502        texture: GLuint,
22503        level: GLint,
22504    );
22505}
22506extern "C" {
22507    pub fn glNamedFramebufferTexture2DEXT(
22508        framebuffer: GLuint,
22509        attachment: GLenum,
22510        textarget: GLenum,
22511        texture: GLuint,
22512        level: GLint,
22513    );
22514}
22515extern "C" {
22516    pub fn glNamedFramebufferTexture3DEXT(
22517        framebuffer: GLuint,
22518        attachment: GLenum,
22519        textarget: GLenum,
22520        texture: GLuint,
22521        level: GLint,
22522        zoffset: GLint,
22523    );
22524}
22525extern "C" {
22526    pub fn glNamedFramebufferRenderbufferEXT(
22527        framebuffer: GLuint,
22528        attachment: GLenum,
22529        renderbuffertarget: GLenum,
22530        renderbuffer: GLuint,
22531    );
22532}
22533extern "C" {
22534    pub fn glGetNamedFramebufferAttachmentParameterivEXT(
22535        framebuffer: GLuint,
22536        attachment: GLenum,
22537        pname: GLenum,
22538        params: *mut GLint,
22539    );
22540}
22541extern "C" {
22542    pub fn glGenerateTextureMipmapEXT(texture: GLuint, target: GLenum);
22543}
22544extern "C" {
22545    pub fn glGenerateMultiTexMipmapEXT(texunit: GLenum, target: GLenum);
22546}
22547extern "C" {
22548    pub fn glFramebufferDrawBufferEXT(framebuffer: GLuint, mode: GLenum);
22549}
22550extern "C" {
22551    pub fn glFramebufferDrawBuffersEXT(framebuffer: GLuint, n: GLsizei, bufs: *const GLenum);
22552}
22553extern "C" {
22554    pub fn glFramebufferReadBufferEXT(framebuffer: GLuint, mode: GLenum);
22555}
22556extern "C" {
22557    pub fn glGetFramebufferParameterivEXT(framebuffer: GLuint, pname: GLenum, params: *mut GLint);
22558}
22559extern "C" {
22560    pub fn glNamedCopyBufferSubDataEXT(
22561        readBuffer: GLuint,
22562        writeBuffer: GLuint,
22563        readOffset: GLintptr,
22564        writeOffset: GLintptr,
22565        size: GLsizeiptr,
22566    );
22567}
22568extern "C" {
22569    pub fn glNamedFramebufferTextureEXT(
22570        framebuffer: GLuint,
22571        attachment: GLenum,
22572        texture: GLuint,
22573        level: GLint,
22574    );
22575}
22576extern "C" {
22577    pub fn glNamedFramebufferTextureLayerEXT(
22578        framebuffer: GLuint,
22579        attachment: GLenum,
22580        texture: GLuint,
22581        level: GLint,
22582        layer: GLint,
22583    );
22584}
22585extern "C" {
22586    pub fn glNamedFramebufferTextureFaceEXT(
22587        framebuffer: GLuint,
22588        attachment: GLenum,
22589        texture: GLuint,
22590        level: GLint,
22591        face: GLenum,
22592    );
22593}
22594extern "C" {
22595    pub fn glTextureRenderbufferEXT(texture: GLuint, target: GLenum, renderbuffer: GLuint);
22596}
22597extern "C" {
22598    pub fn glMultiTexRenderbufferEXT(texunit: GLenum, target: GLenum, renderbuffer: GLuint);
22599}
22600extern "C" {
22601    pub fn glVertexArrayVertexOffsetEXT(
22602        vaobj: GLuint,
22603        buffer: GLuint,
22604        size: GLint,
22605        type_: GLenum,
22606        stride: GLsizei,
22607        offset: GLintptr,
22608    );
22609}
22610extern "C" {
22611    pub fn glVertexArrayColorOffsetEXT(
22612        vaobj: GLuint,
22613        buffer: GLuint,
22614        size: GLint,
22615        type_: GLenum,
22616        stride: GLsizei,
22617        offset: GLintptr,
22618    );
22619}
22620extern "C" {
22621    pub fn glVertexArrayEdgeFlagOffsetEXT(
22622        vaobj: GLuint,
22623        buffer: GLuint,
22624        stride: GLsizei,
22625        offset: GLintptr,
22626    );
22627}
22628extern "C" {
22629    pub fn glVertexArrayIndexOffsetEXT(
22630        vaobj: GLuint,
22631        buffer: GLuint,
22632        type_: GLenum,
22633        stride: GLsizei,
22634        offset: GLintptr,
22635    );
22636}
22637extern "C" {
22638    pub fn glVertexArrayNormalOffsetEXT(
22639        vaobj: GLuint,
22640        buffer: GLuint,
22641        type_: GLenum,
22642        stride: GLsizei,
22643        offset: GLintptr,
22644    );
22645}
22646extern "C" {
22647    pub fn glVertexArrayTexCoordOffsetEXT(
22648        vaobj: GLuint,
22649        buffer: GLuint,
22650        size: GLint,
22651        type_: GLenum,
22652        stride: GLsizei,
22653        offset: GLintptr,
22654    );
22655}
22656extern "C" {
22657    pub fn glVertexArrayMultiTexCoordOffsetEXT(
22658        vaobj: GLuint,
22659        buffer: GLuint,
22660        texunit: GLenum,
22661        size: GLint,
22662        type_: GLenum,
22663        stride: GLsizei,
22664        offset: GLintptr,
22665    );
22666}
22667extern "C" {
22668    pub fn glVertexArrayFogCoordOffsetEXT(
22669        vaobj: GLuint,
22670        buffer: GLuint,
22671        type_: GLenum,
22672        stride: GLsizei,
22673        offset: GLintptr,
22674    );
22675}
22676extern "C" {
22677    pub fn glVertexArraySecondaryColorOffsetEXT(
22678        vaobj: GLuint,
22679        buffer: GLuint,
22680        size: GLint,
22681        type_: GLenum,
22682        stride: GLsizei,
22683        offset: GLintptr,
22684    );
22685}
22686extern "C" {
22687    pub fn glVertexArrayVertexAttribOffsetEXT(
22688        vaobj: GLuint,
22689        buffer: GLuint,
22690        index: GLuint,
22691        size: GLint,
22692        type_: GLenum,
22693        normalized: GLboolean,
22694        stride: GLsizei,
22695        offset: GLintptr,
22696    );
22697}
22698extern "C" {
22699    pub fn glVertexArrayVertexAttribIOffsetEXT(
22700        vaobj: GLuint,
22701        buffer: GLuint,
22702        index: GLuint,
22703        size: GLint,
22704        type_: GLenum,
22705        stride: GLsizei,
22706        offset: GLintptr,
22707    );
22708}
22709extern "C" {
22710    pub fn glEnableVertexArrayEXT(vaobj: GLuint, array: GLenum);
22711}
22712extern "C" {
22713    pub fn glDisableVertexArrayEXT(vaobj: GLuint, array: GLenum);
22714}
22715extern "C" {
22716    pub fn glEnableVertexArrayAttribEXT(vaobj: GLuint, index: GLuint);
22717}
22718extern "C" {
22719    pub fn glDisableVertexArrayAttribEXT(vaobj: GLuint, index: GLuint);
22720}
22721extern "C" {
22722    pub fn glGetVertexArrayIntegervEXT(vaobj: GLuint, pname: GLenum, param: *mut GLint);
22723}
22724extern "C" {
22725    pub fn glGetVertexArrayPointervEXT(
22726        vaobj: GLuint,
22727        pname: GLenum,
22728        param: *mut *mut ::std::os::raw::c_void,
22729    );
22730}
22731extern "C" {
22732    pub fn glGetVertexArrayIntegeri_vEXT(
22733        vaobj: GLuint,
22734        index: GLuint,
22735        pname: GLenum,
22736        param: *mut GLint,
22737    );
22738}
22739extern "C" {
22740    pub fn glGetVertexArrayPointeri_vEXT(
22741        vaobj: GLuint,
22742        index: GLuint,
22743        pname: GLenum,
22744        param: *mut *mut ::std::os::raw::c_void,
22745    );
22746}
22747extern "C" {
22748    pub fn glMapNamedBufferRangeEXT(
22749        buffer: GLuint,
22750        offset: GLintptr,
22751        length: GLsizeiptr,
22752        access: GLbitfield,
22753    ) -> *mut ::std::os::raw::c_void;
22754}
22755extern "C" {
22756    pub fn glFlushMappedNamedBufferRangeEXT(buffer: GLuint, offset: GLintptr, length: GLsizeiptr);
22757}
22758extern "C" {
22759    pub fn glNamedBufferStorageEXT(
22760        buffer: GLuint,
22761        size: GLsizeiptr,
22762        data: *const ::std::os::raw::c_void,
22763        flags: GLbitfield,
22764    );
22765}
22766extern "C" {
22767    pub fn glClearNamedBufferDataEXT(
22768        buffer: GLuint,
22769        internalformat: GLenum,
22770        format: GLenum,
22771        type_: GLenum,
22772        data: *const ::std::os::raw::c_void,
22773    );
22774}
22775extern "C" {
22776    pub fn glClearNamedBufferSubDataEXT(
22777        buffer: GLuint,
22778        internalformat: GLenum,
22779        offset: GLsizeiptr,
22780        size: GLsizeiptr,
22781        format: GLenum,
22782        type_: GLenum,
22783        data: *const ::std::os::raw::c_void,
22784    );
22785}
22786extern "C" {
22787    pub fn glNamedFramebufferParameteriEXT(framebuffer: GLuint, pname: GLenum, param: GLint);
22788}
22789extern "C" {
22790    pub fn glGetNamedFramebufferParameterivEXT(
22791        framebuffer: GLuint,
22792        pname: GLenum,
22793        params: *mut GLint,
22794    );
22795}
22796extern "C" {
22797    pub fn glProgramUniform1dEXT(program: GLuint, location: GLint, x: GLdouble);
22798}
22799extern "C" {
22800    pub fn glProgramUniform2dEXT(program: GLuint, location: GLint, x: GLdouble, y: GLdouble);
22801}
22802extern "C" {
22803    pub fn glProgramUniform3dEXT(
22804        program: GLuint,
22805        location: GLint,
22806        x: GLdouble,
22807        y: GLdouble,
22808        z: GLdouble,
22809    );
22810}
22811extern "C" {
22812    pub fn glProgramUniform4dEXT(
22813        program: GLuint,
22814        location: GLint,
22815        x: GLdouble,
22816        y: GLdouble,
22817        z: GLdouble,
22818        w: GLdouble,
22819    );
22820}
22821extern "C" {
22822    pub fn glProgramUniform1dvEXT(
22823        program: GLuint,
22824        location: GLint,
22825        count: GLsizei,
22826        value: *const GLdouble,
22827    );
22828}
22829extern "C" {
22830    pub fn glProgramUniform2dvEXT(
22831        program: GLuint,
22832        location: GLint,
22833        count: GLsizei,
22834        value: *const GLdouble,
22835    );
22836}
22837extern "C" {
22838    pub fn glProgramUniform3dvEXT(
22839        program: GLuint,
22840        location: GLint,
22841        count: GLsizei,
22842        value: *const GLdouble,
22843    );
22844}
22845extern "C" {
22846    pub fn glProgramUniform4dvEXT(
22847        program: GLuint,
22848        location: GLint,
22849        count: GLsizei,
22850        value: *const GLdouble,
22851    );
22852}
22853extern "C" {
22854    pub fn glProgramUniformMatrix2dvEXT(
22855        program: GLuint,
22856        location: GLint,
22857        count: GLsizei,
22858        transpose: GLboolean,
22859        value: *const GLdouble,
22860    );
22861}
22862extern "C" {
22863    pub fn glProgramUniformMatrix3dvEXT(
22864        program: GLuint,
22865        location: GLint,
22866        count: GLsizei,
22867        transpose: GLboolean,
22868        value: *const GLdouble,
22869    );
22870}
22871extern "C" {
22872    pub fn glProgramUniformMatrix4dvEXT(
22873        program: GLuint,
22874        location: GLint,
22875        count: GLsizei,
22876        transpose: GLboolean,
22877        value: *const GLdouble,
22878    );
22879}
22880extern "C" {
22881    pub fn glProgramUniformMatrix2x3dvEXT(
22882        program: GLuint,
22883        location: GLint,
22884        count: GLsizei,
22885        transpose: GLboolean,
22886        value: *const GLdouble,
22887    );
22888}
22889extern "C" {
22890    pub fn glProgramUniformMatrix2x4dvEXT(
22891        program: GLuint,
22892        location: GLint,
22893        count: GLsizei,
22894        transpose: GLboolean,
22895        value: *const GLdouble,
22896    );
22897}
22898extern "C" {
22899    pub fn glProgramUniformMatrix3x2dvEXT(
22900        program: GLuint,
22901        location: GLint,
22902        count: GLsizei,
22903        transpose: GLboolean,
22904        value: *const GLdouble,
22905    );
22906}
22907extern "C" {
22908    pub fn glProgramUniformMatrix3x4dvEXT(
22909        program: GLuint,
22910        location: GLint,
22911        count: GLsizei,
22912        transpose: GLboolean,
22913        value: *const GLdouble,
22914    );
22915}
22916extern "C" {
22917    pub fn glProgramUniformMatrix4x2dvEXT(
22918        program: GLuint,
22919        location: GLint,
22920        count: GLsizei,
22921        transpose: GLboolean,
22922        value: *const GLdouble,
22923    );
22924}
22925extern "C" {
22926    pub fn glProgramUniformMatrix4x3dvEXT(
22927        program: GLuint,
22928        location: GLint,
22929        count: GLsizei,
22930        transpose: GLboolean,
22931        value: *const GLdouble,
22932    );
22933}
22934extern "C" {
22935    pub fn glTextureBufferRangeEXT(
22936        texture: GLuint,
22937        target: GLenum,
22938        internalformat: GLenum,
22939        buffer: GLuint,
22940        offset: GLintptr,
22941        size: GLsizeiptr,
22942    );
22943}
22944extern "C" {
22945    pub fn glTextureStorage1DEXT(
22946        texture: GLuint,
22947        target: GLenum,
22948        levels: GLsizei,
22949        internalformat: GLenum,
22950        width: GLsizei,
22951    );
22952}
22953extern "C" {
22954    pub fn glTextureStorage2DEXT(
22955        texture: GLuint,
22956        target: GLenum,
22957        levels: GLsizei,
22958        internalformat: GLenum,
22959        width: GLsizei,
22960        height: GLsizei,
22961    );
22962}
22963extern "C" {
22964    pub fn glTextureStorage3DEXT(
22965        texture: GLuint,
22966        target: GLenum,
22967        levels: GLsizei,
22968        internalformat: GLenum,
22969        width: GLsizei,
22970        height: GLsizei,
22971        depth: GLsizei,
22972    );
22973}
22974extern "C" {
22975    pub fn glTextureStorage2DMultisampleEXT(
22976        texture: GLuint,
22977        target: GLenum,
22978        samples: GLsizei,
22979        internalformat: GLenum,
22980        width: GLsizei,
22981        height: GLsizei,
22982        fixedsamplelocations: GLboolean,
22983    );
22984}
22985extern "C" {
22986    pub fn glTextureStorage3DMultisampleEXT(
22987        texture: GLuint,
22988        target: GLenum,
22989        samples: GLsizei,
22990        internalformat: GLenum,
22991        width: GLsizei,
22992        height: GLsizei,
22993        depth: GLsizei,
22994        fixedsamplelocations: GLboolean,
22995    );
22996}
22997extern "C" {
22998    pub fn glVertexArrayBindVertexBufferEXT(
22999        vaobj: GLuint,
23000        bindingindex: GLuint,
23001        buffer: GLuint,
23002        offset: GLintptr,
23003        stride: GLsizei,
23004    );
23005}
23006extern "C" {
23007    pub fn glVertexArrayVertexAttribFormatEXT(
23008        vaobj: GLuint,
23009        attribindex: GLuint,
23010        size: GLint,
23011        type_: GLenum,
23012        normalized: GLboolean,
23013        relativeoffset: GLuint,
23014    );
23015}
23016extern "C" {
23017    pub fn glVertexArrayVertexAttribIFormatEXT(
23018        vaobj: GLuint,
23019        attribindex: GLuint,
23020        size: GLint,
23021        type_: GLenum,
23022        relativeoffset: GLuint,
23023    );
23024}
23025extern "C" {
23026    pub fn glVertexArrayVertexAttribLFormatEXT(
23027        vaobj: GLuint,
23028        attribindex: GLuint,
23029        size: GLint,
23030        type_: GLenum,
23031        relativeoffset: GLuint,
23032    );
23033}
23034extern "C" {
23035    pub fn glVertexArrayVertexAttribBindingEXT(
23036        vaobj: GLuint,
23037        attribindex: GLuint,
23038        bindingindex: GLuint,
23039    );
23040}
23041extern "C" {
23042    pub fn glVertexArrayVertexBindingDivisorEXT(
23043        vaobj: GLuint,
23044        bindingindex: GLuint,
23045        divisor: GLuint,
23046    );
23047}
23048extern "C" {
23049    pub fn glVertexArrayVertexAttribLOffsetEXT(
23050        vaobj: GLuint,
23051        buffer: GLuint,
23052        index: GLuint,
23053        size: GLint,
23054        type_: GLenum,
23055        stride: GLsizei,
23056        offset: GLintptr,
23057    );
23058}
23059extern "C" {
23060    pub fn glTexturePageCommitmentEXT(
23061        texture: GLuint,
23062        level: GLint,
23063        xoffset: GLint,
23064        yoffset: GLint,
23065        zoffset: GLint,
23066        width: GLsizei,
23067        height: GLsizei,
23068        depth: GLsizei,
23069        commit: GLboolean,
23070    );
23071}
23072extern "C" {
23073    pub fn glVertexArrayVertexAttribDivisorEXT(vaobj: GLuint, index: GLuint, divisor: GLuint);
23074}
23075pub type PFNGLCOLORMASKINDEXEDEXTPROC = ::std::option::Option<
23076    unsafe extern "C" fn(index: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean),
23077>;
23078extern "C" {
23079    pub fn glColorMaskIndexedEXT(
23080        index: GLuint,
23081        r: GLboolean,
23082        g: GLboolean,
23083        b: GLboolean,
23084        a: GLboolean,
23085    );
23086}
23087pub type PFNGLDRAWARRAYSINSTANCEDEXTPROC = ::std::option::Option<
23088    unsafe extern "C" fn(mode: GLenum, start: GLint, count: GLsizei, primcount: GLsizei),
23089>;
23090pub type PFNGLDRAWELEMENTSINSTANCEDEXTPROC = ::std::option::Option<
23091    unsafe extern "C" fn(
23092        mode: GLenum,
23093        count: GLsizei,
23094        type_: GLenum,
23095        indices: *const ::std::os::raw::c_void,
23096        primcount: GLsizei,
23097    ),
23098>;
23099extern "C" {
23100    pub fn glDrawArraysInstancedEXT(mode: GLenum, start: GLint, count: GLsizei, primcount: GLsizei);
23101}
23102extern "C" {
23103    pub fn glDrawElementsInstancedEXT(
23104        mode: GLenum,
23105        count: GLsizei,
23106        type_: GLenum,
23107        indices: *const ::std::os::raw::c_void,
23108        primcount: GLsizei,
23109    );
23110}
23111pub type PFNGLDRAWRANGEELEMENTSEXTPROC = ::std::option::Option<
23112    unsafe extern "C" fn(
23113        mode: GLenum,
23114        start: GLuint,
23115        end: GLuint,
23116        count: GLsizei,
23117        type_: GLenum,
23118        indices: *const ::std::os::raw::c_void,
23119    ),
23120>;
23121extern "C" {
23122    pub fn glDrawRangeElementsEXT(
23123        mode: GLenum,
23124        start: GLuint,
23125        end: GLuint,
23126        count: GLsizei,
23127        type_: GLenum,
23128        indices: *const ::std::os::raw::c_void,
23129    );
23130}
23131pub type GLeglClientBufferEXT = *mut ::std::os::raw::c_void;
23132pub type PFNGLBUFFERSTORAGEEXTERNALEXTPROC = ::std::option::Option<
23133    unsafe extern "C" fn(
23134        target: GLenum,
23135        offset: GLintptr,
23136        size: GLsizeiptr,
23137        clientBuffer: GLeglClientBufferEXT,
23138        flags: GLbitfield,
23139    ),
23140>;
23141pub type PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC = ::std::option::Option<
23142    unsafe extern "C" fn(
23143        buffer: GLuint,
23144        offset: GLintptr,
23145        size: GLsizeiptr,
23146        clientBuffer: GLeglClientBufferEXT,
23147        flags: GLbitfield,
23148    ),
23149>;
23150extern "C" {
23151    pub fn glBufferStorageExternalEXT(
23152        target: GLenum,
23153        offset: GLintptr,
23154        size: GLsizeiptr,
23155        clientBuffer: GLeglClientBufferEXT,
23156        flags: GLbitfield,
23157    );
23158}
23159extern "C" {
23160    pub fn glNamedBufferStorageExternalEXT(
23161        buffer: GLuint,
23162        offset: GLintptr,
23163        size: GLsizeiptr,
23164        clientBuffer: GLeglClientBufferEXT,
23165        flags: GLbitfield,
23166    );
23167}
23168pub type PFNGLFOGCOORDFEXTPROC = ::std::option::Option<unsafe extern "C" fn(coord: GLfloat)>;
23169pub type PFNGLFOGCOORDFVEXTPROC =
23170    ::std::option::Option<unsafe extern "C" fn(coord: *const GLfloat)>;
23171pub type PFNGLFOGCOORDDEXTPROC = ::std::option::Option<unsafe extern "C" fn(coord: GLdouble)>;
23172pub type PFNGLFOGCOORDDVEXTPROC =
23173    ::std::option::Option<unsafe extern "C" fn(coord: *const GLdouble)>;
23174pub type PFNGLFOGCOORDPOINTEREXTPROC = ::std::option::Option<
23175    unsafe extern "C" fn(type_: GLenum, stride: GLsizei, pointer: *const ::std::os::raw::c_void),
23176>;
23177extern "C" {
23178    pub fn glFogCoordfEXT(coord: GLfloat);
23179}
23180extern "C" {
23181    pub fn glFogCoordfvEXT(coord: *const GLfloat);
23182}
23183extern "C" {
23184    pub fn glFogCoorddEXT(coord: GLdouble);
23185}
23186extern "C" {
23187    pub fn glFogCoorddvEXT(coord: *const GLdouble);
23188}
23189extern "C" {
23190    pub fn glFogCoordPointerEXT(
23191        type_: GLenum,
23192        stride: GLsizei,
23193        pointer: *const ::std::os::raw::c_void,
23194    );
23195}
23196pub type PFNGLBLITFRAMEBUFFEREXTPROC = ::std::option::Option<
23197    unsafe extern "C" fn(
23198        srcX0: GLint,
23199        srcY0: GLint,
23200        srcX1: GLint,
23201        srcY1: GLint,
23202        dstX0: GLint,
23203        dstY0: GLint,
23204        dstX1: GLint,
23205        dstY1: GLint,
23206        mask: GLbitfield,
23207        filter: GLenum,
23208    ),
23209>;
23210extern "C" {
23211    pub fn glBlitFramebufferEXT(
23212        srcX0: GLint,
23213        srcY0: GLint,
23214        srcX1: GLint,
23215        srcY1: GLint,
23216        dstX0: GLint,
23217        dstY0: GLint,
23218        dstX1: GLint,
23219        dstY1: GLint,
23220        mask: GLbitfield,
23221        filter: GLenum,
23222    );
23223}
23224pub type PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC = ::std::option::Option<
23225    unsafe extern "C" fn(
23226        target: GLenum,
23227        samples: GLsizei,
23228        internalformat: GLenum,
23229        width: GLsizei,
23230        height: GLsizei,
23231    ),
23232>;
23233extern "C" {
23234    pub fn glRenderbufferStorageMultisampleEXT(
23235        target: GLenum,
23236        samples: GLsizei,
23237        internalformat: GLenum,
23238        width: GLsizei,
23239        height: GLsizei,
23240    );
23241}
23242pub type PFNGLISRENDERBUFFEREXTPROC =
23243    ::std::option::Option<unsafe extern "C" fn(renderbuffer: GLuint) -> GLboolean>;
23244pub type PFNGLBINDRENDERBUFFEREXTPROC =
23245    ::std::option::Option<unsafe extern "C" fn(target: GLenum, renderbuffer: GLuint)>;
23246pub type PFNGLDELETERENDERBUFFERSEXTPROC =
23247    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, renderbuffers: *const GLuint)>;
23248pub type PFNGLGENRENDERBUFFERSEXTPROC =
23249    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, renderbuffers: *mut GLuint)>;
23250pub type PFNGLRENDERBUFFERSTORAGEEXTPROC = ::std::option::Option<
23251    unsafe extern "C" fn(target: GLenum, internalformat: GLenum, width: GLsizei, height: GLsizei),
23252>;
23253pub type PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC =
23254    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
23255pub type PFNGLISFRAMEBUFFEREXTPROC =
23256    ::std::option::Option<unsafe extern "C" fn(framebuffer: GLuint) -> GLboolean>;
23257pub type PFNGLBINDFRAMEBUFFEREXTPROC =
23258    ::std::option::Option<unsafe extern "C" fn(target: GLenum, framebuffer: GLuint)>;
23259pub type PFNGLDELETEFRAMEBUFFERSEXTPROC =
23260    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, framebuffers: *const GLuint)>;
23261pub type PFNGLGENFRAMEBUFFERSEXTPROC =
23262    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, framebuffers: *mut GLuint)>;
23263pub type PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC =
23264    ::std::option::Option<unsafe extern "C" fn(target: GLenum) -> GLenum>;
23265pub type PFNGLFRAMEBUFFERTEXTURE1DEXTPROC = ::std::option::Option<
23266    unsafe extern "C" fn(
23267        target: GLenum,
23268        attachment: GLenum,
23269        textarget: GLenum,
23270        texture: GLuint,
23271        level: GLint,
23272    ),
23273>;
23274pub type PFNGLFRAMEBUFFERTEXTURE2DEXTPROC = ::std::option::Option<
23275    unsafe extern "C" fn(
23276        target: GLenum,
23277        attachment: GLenum,
23278        textarget: GLenum,
23279        texture: GLuint,
23280        level: GLint,
23281    ),
23282>;
23283pub type PFNGLFRAMEBUFFERTEXTURE3DEXTPROC = ::std::option::Option<
23284    unsafe extern "C" fn(
23285        target: GLenum,
23286        attachment: GLenum,
23287        textarget: GLenum,
23288        texture: GLuint,
23289        level: GLint,
23290        zoffset: GLint,
23291    ),
23292>;
23293pub type PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC = ::std::option::Option<
23294    unsafe extern "C" fn(
23295        target: GLenum,
23296        attachment: GLenum,
23297        renderbuffertarget: GLenum,
23298        renderbuffer: GLuint,
23299    ),
23300>;
23301pub type PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC = ::std::option::Option<
23302    unsafe extern "C" fn(target: GLenum, attachment: GLenum, pname: GLenum, params: *mut GLint),
23303>;
23304pub type PFNGLGENERATEMIPMAPEXTPROC = ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
23305extern "C" {
23306    pub fn glIsRenderbufferEXT(renderbuffer: GLuint) -> GLboolean;
23307}
23308extern "C" {
23309    pub fn glBindRenderbufferEXT(target: GLenum, renderbuffer: GLuint);
23310}
23311extern "C" {
23312    pub fn glDeleteRenderbuffersEXT(n: GLsizei, renderbuffers: *const GLuint);
23313}
23314extern "C" {
23315    pub fn glGenRenderbuffersEXT(n: GLsizei, renderbuffers: *mut GLuint);
23316}
23317extern "C" {
23318    pub fn glRenderbufferStorageEXT(
23319        target: GLenum,
23320        internalformat: GLenum,
23321        width: GLsizei,
23322        height: GLsizei,
23323    );
23324}
23325extern "C" {
23326    pub fn glGetRenderbufferParameterivEXT(target: GLenum, pname: GLenum, params: *mut GLint);
23327}
23328extern "C" {
23329    pub fn glIsFramebufferEXT(framebuffer: GLuint) -> GLboolean;
23330}
23331extern "C" {
23332    pub fn glBindFramebufferEXT(target: GLenum, framebuffer: GLuint);
23333}
23334extern "C" {
23335    pub fn glDeleteFramebuffersEXT(n: GLsizei, framebuffers: *const GLuint);
23336}
23337extern "C" {
23338    pub fn glGenFramebuffersEXT(n: GLsizei, framebuffers: *mut GLuint);
23339}
23340extern "C" {
23341    pub fn glCheckFramebufferStatusEXT(target: GLenum) -> GLenum;
23342}
23343extern "C" {
23344    pub fn glFramebufferTexture1DEXT(
23345        target: GLenum,
23346        attachment: GLenum,
23347        textarget: GLenum,
23348        texture: GLuint,
23349        level: GLint,
23350    );
23351}
23352extern "C" {
23353    pub fn glFramebufferTexture2DEXT(
23354        target: GLenum,
23355        attachment: GLenum,
23356        textarget: GLenum,
23357        texture: GLuint,
23358        level: GLint,
23359    );
23360}
23361extern "C" {
23362    pub fn glFramebufferTexture3DEXT(
23363        target: GLenum,
23364        attachment: GLenum,
23365        textarget: GLenum,
23366        texture: GLuint,
23367        level: GLint,
23368        zoffset: GLint,
23369    );
23370}
23371extern "C" {
23372    pub fn glFramebufferRenderbufferEXT(
23373        target: GLenum,
23374        attachment: GLenum,
23375        renderbuffertarget: GLenum,
23376        renderbuffer: GLuint,
23377    );
23378}
23379extern "C" {
23380    pub fn glGetFramebufferAttachmentParameterivEXT(
23381        target: GLenum,
23382        attachment: GLenum,
23383        pname: GLenum,
23384        params: *mut GLint,
23385    );
23386}
23387extern "C" {
23388    pub fn glGenerateMipmapEXT(target: GLenum);
23389}
23390pub type PFNGLPROGRAMPARAMETERIEXTPROC =
23391    ::std::option::Option<unsafe extern "C" fn(program: GLuint, pname: GLenum, value: GLint)>;
23392extern "C" {
23393    pub fn glProgramParameteriEXT(program: GLuint, pname: GLenum, value: GLint);
23394}
23395pub type PFNGLPROGRAMENVPARAMETERS4FVEXTPROC = ::std::option::Option<
23396    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, params: *const GLfloat),
23397>;
23398pub type PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC = ::std::option::Option<
23399    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, params: *const GLfloat),
23400>;
23401extern "C" {
23402    pub fn glProgramEnvParameters4fvEXT(
23403        target: GLenum,
23404        index: GLuint,
23405        count: GLsizei,
23406        params: *const GLfloat,
23407    );
23408}
23409extern "C" {
23410    pub fn glProgramLocalParameters4fvEXT(
23411        target: GLenum,
23412        index: GLuint,
23413        count: GLsizei,
23414        params: *const GLfloat,
23415    );
23416}
23417pub type PFNGLGETUNIFORMUIVEXTPROC = ::std::option::Option<
23418    unsafe extern "C" fn(program: GLuint, location: GLint, params: *mut GLuint),
23419>;
23420pub type PFNGLBINDFRAGDATALOCATIONEXTPROC = ::std::option::Option<
23421    unsafe extern "C" fn(program: GLuint, color: GLuint, name: *const GLchar),
23422>;
23423pub type PFNGLGETFRAGDATALOCATIONEXTPROC =
23424    ::std::option::Option<unsafe extern "C" fn(program: GLuint, name: *const GLchar) -> GLint>;
23425pub type PFNGLUNIFORM1UIEXTPROC =
23426    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLuint)>;
23427pub type PFNGLUNIFORM2UIEXTPROC =
23428    ::std::option::Option<unsafe extern "C" fn(location: GLint, v0: GLuint, v1: GLuint)>;
23429pub type PFNGLUNIFORM3UIEXTPROC = ::std::option::Option<
23430    unsafe extern "C" fn(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint),
23431>;
23432pub type PFNGLUNIFORM4UIEXTPROC = ::std::option::Option<
23433    unsafe extern "C" fn(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint),
23434>;
23435pub type PFNGLUNIFORM1UIVEXTPROC = ::std::option::Option<
23436    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
23437>;
23438pub type PFNGLUNIFORM2UIVEXTPROC = ::std::option::Option<
23439    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
23440>;
23441pub type PFNGLUNIFORM3UIVEXTPROC = ::std::option::Option<
23442    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
23443>;
23444pub type PFNGLUNIFORM4UIVEXTPROC = ::std::option::Option<
23445    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint),
23446>;
23447extern "C" {
23448    pub fn glGetUniformuivEXT(program: GLuint, location: GLint, params: *mut GLuint);
23449}
23450extern "C" {
23451    pub fn glBindFragDataLocationEXT(program: GLuint, color: GLuint, name: *const GLchar);
23452}
23453extern "C" {
23454    pub fn glGetFragDataLocationEXT(program: GLuint, name: *const GLchar) -> GLint;
23455}
23456extern "C" {
23457    pub fn glUniform1uiEXT(location: GLint, v0: GLuint);
23458}
23459extern "C" {
23460    pub fn glUniform2uiEXT(location: GLint, v0: GLuint, v1: GLuint);
23461}
23462extern "C" {
23463    pub fn glUniform3uiEXT(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint);
23464}
23465extern "C" {
23466    pub fn glUniform4uiEXT(location: GLint, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint);
23467}
23468extern "C" {
23469    pub fn glUniform1uivEXT(location: GLint, count: GLsizei, value: *const GLuint);
23470}
23471extern "C" {
23472    pub fn glUniform2uivEXT(location: GLint, count: GLsizei, value: *const GLuint);
23473}
23474extern "C" {
23475    pub fn glUniform3uivEXT(location: GLint, count: GLsizei, value: *const GLuint);
23476}
23477extern "C" {
23478    pub fn glUniform4uivEXT(location: GLint, count: GLsizei, value: *const GLuint);
23479}
23480pub type PFNGLGETHISTOGRAMEXTPROC = ::std::option::Option<
23481    unsafe extern "C" fn(
23482        target: GLenum,
23483        reset: GLboolean,
23484        format: GLenum,
23485        type_: GLenum,
23486        values: *mut ::std::os::raw::c_void,
23487    ),
23488>;
23489pub type PFNGLGETHISTOGRAMPARAMETERFVEXTPROC = ::std::option::Option<
23490    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
23491>;
23492pub type PFNGLGETHISTOGRAMPARAMETERIVEXTPROC =
23493    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
23494pub type PFNGLGETMINMAXEXTPROC = ::std::option::Option<
23495    unsafe extern "C" fn(
23496        target: GLenum,
23497        reset: GLboolean,
23498        format: GLenum,
23499        type_: GLenum,
23500        values: *mut ::std::os::raw::c_void,
23501    ),
23502>;
23503pub type PFNGLGETMINMAXPARAMETERFVEXTPROC = ::std::option::Option<
23504    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
23505>;
23506pub type PFNGLGETMINMAXPARAMETERIVEXTPROC =
23507    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
23508pub type PFNGLHISTOGRAMEXTPROC = ::std::option::Option<
23509    unsafe extern "C" fn(target: GLenum, width: GLsizei, internalformat: GLenum, sink: GLboolean),
23510>;
23511pub type PFNGLMINMAXEXTPROC = ::std::option::Option<
23512    unsafe extern "C" fn(target: GLenum, internalformat: GLenum, sink: GLboolean),
23513>;
23514pub type PFNGLRESETHISTOGRAMEXTPROC = ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
23515pub type PFNGLRESETMINMAXEXTPROC = ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
23516extern "C" {
23517    pub fn glGetHistogramEXT(
23518        target: GLenum,
23519        reset: GLboolean,
23520        format: GLenum,
23521        type_: GLenum,
23522        values: *mut ::std::os::raw::c_void,
23523    );
23524}
23525extern "C" {
23526    pub fn glGetHistogramParameterfvEXT(target: GLenum, pname: GLenum, params: *mut GLfloat);
23527}
23528extern "C" {
23529    pub fn glGetHistogramParameterivEXT(target: GLenum, pname: GLenum, params: *mut GLint);
23530}
23531extern "C" {
23532    pub fn glGetMinmaxEXT(
23533        target: GLenum,
23534        reset: GLboolean,
23535        format: GLenum,
23536        type_: GLenum,
23537        values: *mut ::std::os::raw::c_void,
23538    );
23539}
23540extern "C" {
23541    pub fn glGetMinmaxParameterfvEXT(target: GLenum, pname: GLenum, params: *mut GLfloat);
23542}
23543extern "C" {
23544    pub fn glGetMinmaxParameterivEXT(target: GLenum, pname: GLenum, params: *mut GLint);
23545}
23546extern "C" {
23547    pub fn glHistogramEXT(target: GLenum, width: GLsizei, internalformat: GLenum, sink: GLboolean);
23548}
23549extern "C" {
23550    pub fn glMinmaxEXT(target: GLenum, internalformat: GLenum, sink: GLboolean);
23551}
23552extern "C" {
23553    pub fn glResetHistogramEXT(target: GLenum);
23554}
23555extern "C" {
23556    pub fn glResetMinmaxEXT(target: GLenum);
23557}
23558pub type PFNGLINDEXFUNCEXTPROC =
23559    ::std::option::Option<unsafe extern "C" fn(func: GLenum, ref_: GLclampf)>;
23560extern "C" {
23561    pub fn glIndexFuncEXT(func: GLenum, ref_: GLclampf);
23562}
23563pub type PFNGLINDEXMATERIALEXTPROC =
23564    ::std::option::Option<unsafe extern "C" fn(face: GLenum, mode: GLenum)>;
23565extern "C" {
23566    pub fn glIndexMaterialEXT(face: GLenum, mode: GLenum);
23567}
23568pub type PFNGLAPPLYTEXTUREEXTPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
23569pub type PFNGLTEXTURELIGHTEXTPROC = ::std::option::Option<unsafe extern "C" fn(pname: GLenum)>;
23570pub type PFNGLTEXTUREMATERIALEXTPROC =
23571    ::std::option::Option<unsafe extern "C" fn(face: GLenum, mode: GLenum)>;
23572extern "C" {
23573    pub fn glApplyTextureEXT(mode: GLenum);
23574}
23575extern "C" {
23576    pub fn glTextureLightEXT(pname: GLenum);
23577}
23578extern "C" {
23579    pub fn glTextureMaterialEXT(face: GLenum, mode: GLenum);
23580}
23581pub type PFNGLGETUNSIGNEDBYTEVEXTPROC =
23582    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, data: *mut GLubyte)>;
23583pub type PFNGLGETUNSIGNEDBYTEI_VEXTPROC =
23584    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, data: *mut GLubyte)>;
23585pub type PFNGLDELETEMEMORYOBJECTSEXTPROC =
23586    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, memoryObjects: *const GLuint)>;
23587pub type PFNGLISMEMORYOBJECTEXTPROC =
23588    ::std::option::Option<unsafe extern "C" fn(memoryObject: GLuint) -> GLboolean>;
23589pub type PFNGLCREATEMEMORYOBJECTSEXTPROC =
23590    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, memoryObjects: *mut GLuint)>;
23591pub type PFNGLMEMORYOBJECTPARAMETERIVEXTPROC = ::std::option::Option<
23592    unsafe extern "C" fn(memoryObject: GLuint, pname: GLenum, params: *const GLint),
23593>;
23594pub type PFNGLGETMEMORYOBJECTPARAMETERIVEXTPROC = ::std::option::Option<
23595    unsafe extern "C" fn(memoryObject: GLuint, pname: GLenum, params: *mut GLint),
23596>;
23597pub type PFNGLTEXSTORAGEMEM2DEXTPROC = ::std::option::Option<
23598    unsafe extern "C" fn(
23599        target: GLenum,
23600        levels: GLsizei,
23601        internalFormat: GLenum,
23602        width: GLsizei,
23603        height: GLsizei,
23604        memory: GLuint,
23605        offset: GLuint64,
23606    ),
23607>;
23608pub type PFNGLTEXSTORAGEMEM2DMULTISAMPLEEXTPROC = ::std::option::Option<
23609    unsafe extern "C" fn(
23610        target: GLenum,
23611        samples: GLsizei,
23612        internalFormat: GLenum,
23613        width: GLsizei,
23614        height: GLsizei,
23615        fixedSampleLocations: GLboolean,
23616        memory: GLuint,
23617        offset: GLuint64,
23618    ),
23619>;
23620pub type PFNGLTEXSTORAGEMEM3DEXTPROC = ::std::option::Option<
23621    unsafe extern "C" fn(
23622        target: GLenum,
23623        levels: GLsizei,
23624        internalFormat: GLenum,
23625        width: GLsizei,
23626        height: GLsizei,
23627        depth: GLsizei,
23628        memory: GLuint,
23629        offset: GLuint64,
23630    ),
23631>;
23632pub type PFNGLTEXSTORAGEMEM3DMULTISAMPLEEXTPROC = ::std::option::Option<
23633    unsafe extern "C" fn(
23634        target: GLenum,
23635        samples: GLsizei,
23636        internalFormat: GLenum,
23637        width: GLsizei,
23638        height: GLsizei,
23639        depth: GLsizei,
23640        fixedSampleLocations: GLboolean,
23641        memory: GLuint,
23642        offset: GLuint64,
23643    ),
23644>;
23645pub type PFNGLBUFFERSTORAGEMEMEXTPROC = ::std::option::Option<
23646    unsafe extern "C" fn(target: GLenum, size: GLsizeiptr, memory: GLuint, offset: GLuint64),
23647>;
23648pub type PFNGLTEXTURESTORAGEMEM2DEXTPROC = ::std::option::Option<
23649    unsafe extern "C" fn(
23650        texture: GLuint,
23651        levels: GLsizei,
23652        internalFormat: GLenum,
23653        width: GLsizei,
23654        height: GLsizei,
23655        memory: GLuint,
23656        offset: GLuint64,
23657    ),
23658>;
23659pub type PFNGLTEXTURESTORAGEMEM2DMULTISAMPLEEXTPROC = ::std::option::Option<
23660    unsafe extern "C" fn(
23661        texture: GLuint,
23662        samples: GLsizei,
23663        internalFormat: GLenum,
23664        width: GLsizei,
23665        height: GLsizei,
23666        fixedSampleLocations: GLboolean,
23667        memory: GLuint,
23668        offset: GLuint64,
23669    ),
23670>;
23671pub type PFNGLTEXTURESTORAGEMEM3DEXTPROC = ::std::option::Option<
23672    unsafe extern "C" fn(
23673        texture: GLuint,
23674        levels: GLsizei,
23675        internalFormat: GLenum,
23676        width: GLsizei,
23677        height: GLsizei,
23678        depth: GLsizei,
23679        memory: GLuint,
23680        offset: GLuint64,
23681    ),
23682>;
23683pub type PFNGLTEXTURESTORAGEMEM3DMULTISAMPLEEXTPROC = ::std::option::Option<
23684    unsafe extern "C" fn(
23685        texture: GLuint,
23686        samples: GLsizei,
23687        internalFormat: GLenum,
23688        width: GLsizei,
23689        height: GLsizei,
23690        depth: GLsizei,
23691        fixedSampleLocations: GLboolean,
23692        memory: GLuint,
23693        offset: GLuint64,
23694    ),
23695>;
23696pub type PFNGLNAMEDBUFFERSTORAGEMEMEXTPROC = ::std::option::Option<
23697    unsafe extern "C" fn(buffer: GLuint, size: GLsizeiptr, memory: GLuint, offset: GLuint64),
23698>;
23699pub type PFNGLTEXSTORAGEMEM1DEXTPROC = ::std::option::Option<
23700    unsafe extern "C" fn(
23701        target: GLenum,
23702        levels: GLsizei,
23703        internalFormat: GLenum,
23704        width: GLsizei,
23705        memory: GLuint,
23706        offset: GLuint64,
23707    ),
23708>;
23709pub type PFNGLTEXTURESTORAGEMEM1DEXTPROC = ::std::option::Option<
23710    unsafe extern "C" fn(
23711        texture: GLuint,
23712        levels: GLsizei,
23713        internalFormat: GLenum,
23714        width: GLsizei,
23715        memory: GLuint,
23716        offset: GLuint64,
23717    ),
23718>;
23719extern "C" {
23720    pub fn glGetUnsignedBytevEXT(pname: GLenum, data: *mut GLubyte);
23721}
23722extern "C" {
23723    pub fn glGetUnsignedBytei_vEXT(target: GLenum, index: GLuint, data: *mut GLubyte);
23724}
23725extern "C" {
23726    pub fn glDeleteMemoryObjectsEXT(n: GLsizei, memoryObjects: *const GLuint);
23727}
23728extern "C" {
23729    pub fn glIsMemoryObjectEXT(memoryObject: GLuint) -> GLboolean;
23730}
23731extern "C" {
23732    pub fn glCreateMemoryObjectsEXT(n: GLsizei, memoryObjects: *mut GLuint);
23733}
23734extern "C" {
23735    pub fn glMemoryObjectParameterivEXT(memoryObject: GLuint, pname: GLenum, params: *const GLint);
23736}
23737extern "C" {
23738    pub fn glGetMemoryObjectParameterivEXT(memoryObject: GLuint, pname: GLenum, params: *mut GLint);
23739}
23740extern "C" {
23741    pub fn glTexStorageMem2DEXT(
23742        target: GLenum,
23743        levels: GLsizei,
23744        internalFormat: GLenum,
23745        width: GLsizei,
23746        height: GLsizei,
23747        memory: GLuint,
23748        offset: GLuint64,
23749    );
23750}
23751extern "C" {
23752    pub fn glTexStorageMem2DMultisampleEXT(
23753        target: GLenum,
23754        samples: GLsizei,
23755        internalFormat: GLenum,
23756        width: GLsizei,
23757        height: GLsizei,
23758        fixedSampleLocations: GLboolean,
23759        memory: GLuint,
23760        offset: GLuint64,
23761    );
23762}
23763extern "C" {
23764    pub fn glTexStorageMem3DEXT(
23765        target: GLenum,
23766        levels: GLsizei,
23767        internalFormat: GLenum,
23768        width: GLsizei,
23769        height: GLsizei,
23770        depth: GLsizei,
23771        memory: GLuint,
23772        offset: GLuint64,
23773    );
23774}
23775extern "C" {
23776    pub fn glTexStorageMem3DMultisampleEXT(
23777        target: GLenum,
23778        samples: GLsizei,
23779        internalFormat: GLenum,
23780        width: GLsizei,
23781        height: GLsizei,
23782        depth: GLsizei,
23783        fixedSampleLocations: GLboolean,
23784        memory: GLuint,
23785        offset: GLuint64,
23786    );
23787}
23788extern "C" {
23789    pub fn glBufferStorageMemEXT(
23790        target: GLenum,
23791        size: GLsizeiptr,
23792        memory: GLuint,
23793        offset: GLuint64,
23794    );
23795}
23796extern "C" {
23797    pub fn glTextureStorageMem2DEXT(
23798        texture: GLuint,
23799        levels: GLsizei,
23800        internalFormat: GLenum,
23801        width: GLsizei,
23802        height: GLsizei,
23803        memory: GLuint,
23804        offset: GLuint64,
23805    );
23806}
23807extern "C" {
23808    pub fn glTextureStorageMem2DMultisampleEXT(
23809        texture: GLuint,
23810        samples: GLsizei,
23811        internalFormat: GLenum,
23812        width: GLsizei,
23813        height: GLsizei,
23814        fixedSampleLocations: GLboolean,
23815        memory: GLuint,
23816        offset: GLuint64,
23817    );
23818}
23819extern "C" {
23820    pub fn glTextureStorageMem3DEXT(
23821        texture: GLuint,
23822        levels: GLsizei,
23823        internalFormat: GLenum,
23824        width: GLsizei,
23825        height: GLsizei,
23826        depth: GLsizei,
23827        memory: GLuint,
23828        offset: GLuint64,
23829    );
23830}
23831extern "C" {
23832    pub fn glTextureStorageMem3DMultisampleEXT(
23833        texture: GLuint,
23834        samples: GLsizei,
23835        internalFormat: GLenum,
23836        width: GLsizei,
23837        height: GLsizei,
23838        depth: GLsizei,
23839        fixedSampleLocations: GLboolean,
23840        memory: GLuint,
23841        offset: GLuint64,
23842    );
23843}
23844extern "C" {
23845    pub fn glNamedBufferStorageMemEXT(
23846        buffer: GLuint,
23847        size: GLsizeiptr,
23848        memory: GLuint,
23849        offset: GLuint64,
23850    );
23851}
23852extern "C" {
23853    pub fn glTexStorageMem1DEXT(
23854        target: GLenum,
23855        levels: GLsizei,
23856        internalFormat: GLenum,
23857        width: GLsizei,
23858        memory: GLuint,
23859        offset: GLuint64,
23860    );
23861}
23862extern "C" {
23863    pub fn glTextureStorageMem1DEXT(
23864        texture: GLuint,
23865        levels: GLsizei,
23866        internalFormat: GLenum,
23867        width: GLsizei,
23868        memory: GLuint,
23869        offset: GLuint64,
23870    );
23871}
23872pub type PFNGLIMPORTMEMORYFDEXTPROC = ::std::option::Option<
23873    unsafe extern "C" fn(memory: GLuint, size: GLuint64, handleType: GLenum, fd: GLint),
23874>;
23875extern "C" {
23876    pub fn glImportMemoryFdEXT(memory: GLuint, size: GLuint64, handleType: GLenum, fd: GLint);
23877}
23878pub type PFNGLIMPORTMEMORYWIN32HANDLEEXTPROC = ::std::option::Option<
23879    unsafe extern "C" fn(
23880        memory: GLuint,
23881        size: GLuint64,
23882        handleType: GLenum,
23883        handle: *mut ::std::os::raw::c_void,
23884    ),
23885>;
23886pub type PFNGLIMPORTMEMORYWIN32NAMEEXTPROC = ::std::option::Option<
23887    unsafe extern "C" fn(
23888        memory: GLuint,
23889        size: GLuint64,
23890        handleType: GLenum,
23891        name: *const ::std::os::raw::c_void,
23892    ),
23893>;
23894extern "C" {
23895    pub fn glImportMemoryWin32HandleEXT(
23896        memory: GLuint,
23897        size: GLuint64,
23898        handleType: GLenum,
23899        handle: *mut ::std::os::raw::c_void,
23900    );
23901}
23902extern "C" {
23903    pub fn glImportMemoryWin32NameEXT(
23904        memory: GLuint,
23905        size: GLuint64,
23906        handleType: GLenum,
23907        name: *const ::std::os::raw::c_void,
23908    );
23909}
23910pub type PFNGLMULTIDRAWARRAYSEXTPROC = ::std::option::Option<
23911    unsafe extern "C" fn(
23912        mode: GLenum,
23913        first: *const GLint,
23914        count: *const GLsizei,
23915        primcount: GLsizei,
23916    ),
23917>;
23918pub type PFNGLMULTIDRAWELEMENTSEXTPROC = ::std::option::Option<
23919    unsafe extern "C" fn(
23920        mode: GLenum,
23921        count: *const GLsizei,
23922        type_: GLenum,
23923        indices: *const *const ::std::os::raw::c_void,
23924        primcount: GLsizei,
23925    ),
23926>;
23927extern "C" {
23928    pub fn glMultiDrawArraysEXT(
23929        mode: GLenum,
23930        first: *const GLint,
23931        count: *const GLsizei,
23932        primcount: GLsizei,
23933    );
23934}
23935extern "C" {
23936    pub fn glMultiDrawElementsEXT(
23937        mode: GLenum,
23938        count: *const GLsizei,
23939        type_: GLenum,
23940        indices: *const *const ::std::os::raw::c_void,
23941        primcount: GLsizei,
23942    );
23943}
23944pub type PFNGLSAMPLEMASKEXTPROC =
23945    ::std::option::Option<unsafe extern "C" fn(value: GLclampf, invert: GLboolean)>;
23946pub type PFNGLSAMPLEPATTERNEXTPROC = ::std::option::Option<unsafe extern "C" fn(pattern: GLenum)>;
23947extern "C" {
23948    pub fn glSampleMaskEXT(value: GLclampf, invert: GLboolean);
23949}
23950extern "C" {
23951    pub fn glSamplePatternEXT(pattern: GLenum);
23952}
23953pub type PFNGLCOLORTABLEEXTPROC = ::std::option::Option<
23954    unsafe extern "C" fn(
23955        target: GLenum,
23956        internalFormat: GLenum,
23957        width: GLsizei,
23958        format: GLenum,
23959        type_: GLenum,
23960        table: *const ::std::os::raw::c_void,
23961    ),
23962>;
23963pub type PFNGLGETCOLORTABLEEXTPROC = ::std::option::Option<
23964    unsafe extern "C" fn(
23965        target: GLenum,
23966        format: GLenum,
23967        type_: GLenum,
23968        data: *mut ::std::os::raw::c_void,
23969    ),
23970>;
23971pub type PFNGLGETCOLORTABLEPARAMETERIVEXTPROC =
23972    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
23973pub type PFNGLGETCOLORTABLEPARAMETERFVEXTPROC = ::std::option::Option<
23974    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
23975>;
23976extern "C" {
23977    pub fn glColorTableEXT(
23978        target: GLenum,
23979        internalFormat: GLenum,
23980        width: GLsizei,
23981        format: GLenum,
23982        type_: GLenum,
23983        table: *const ::std::os::raw::c_void,
23984    );
23985}
23986extern "C" {
23987    pub fn glGetColorTableEXT(
23988        target: GLenum,
23989        format: GLenum,
23990        type_: GLenum,
23991        data: *mut ::std::os::raw::c_void,
23992    );
23993}
23994extern "C" {
23995    pub fn glGetColorTableParameterivEXT(target: GLenum, pname: GLenum, params: *mut GLint);
23996}
23997extern "C" {
23998    pub fn glGetColorTableParameterfvEXT(target: GLenum, pname: GLenum, params: *mut GLfloat);
23999}
24000pub type PFNGLPIXELTRANSFORMPARAMETERIEXTPROC =
24001    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLint)>;
24002pub type PFNGLPIXELTRANSFORMPARAMETERFEXTPROC =
24003    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLfloat)>;
24004pub type PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC = ::std::option::Option<
24005    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLint),
24006>;
24007pub type PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC = ::std::option::Option<
24008    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfloat),
24009>;
24010pub type PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC =
24011    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
24012pub type PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC = ::std::option::Option<
24013    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
24014>;
24015extern "C" {
24016    pub fn glPixelTransformParameteriEXT(target: GLenum, pname: GLenum, param: GLint);
24017}
24018extern "C" {
24019    pub fn glPixelTransformParameterfEXT(target: GLenum, pname: GLenum, param: GLfloat);
24020}
24021extern "C" {
24022    pub fn glPixelTransformParameterivEXT(target: GLenum, pname: GLenum, params: *const GLint);
24023}
24024extern "C" {
24025    pub fn glPixelTransformParameterfvEXT(target: GLenum, pname: GLenum, params: *const GLfloat);
24026}
24027extern "C" {
24028    pub fn glGetPixelTransformParameterivEXT(target: GLenum, pname: GLenum, params: *mut GLint);
24029}
24030extern "C" {
24031    pub fn glGetPixelTransformParameterfvEXT(target: GLenum, pname: GLenum, params: *mut GLfloat);
24032}
24033pub type PFNGLPOINTPARAMETERFEXTPROC =
24034    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
24035pub type PFNGLPOINTPARAMETERFVEXTPROC =
24036    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
24037extern "C" {
24038    pub fn glPointParameterfEXT(pname: GLenum, param: GLfloat);
24039}
24040extern "C" {
24041    pub fn glPointParameterfvEXT(pname: GLenum, params: *const GLfloat);
24042}
24043pub type PFNGLPOLYGONOFFSETEXTPROC =
24044    ::std::option::Option<unsafe extern "C" fn(factor: GLfloat, bias: GLfloat)>;
24045extern "C" {
24046    pub fn glPolygonOffsetEXT(factor: GLfloat, bias: GLfloat);
24047}
24048pub type PFNGLPOLYGONOFFSETCLAMPEXTPROC =
24049    ::std::option::Option<unsafe extern "C" fn(factor: GLfloat, units: GLfloat, clamp: GLfloat)>;
24050extern "C" {
24051    pub fn glPolygonOffsetClampEXT(factor: GLfloat, units: GLfloat, clamp: GLfloat);
24052}
24053pub type PFNGLPROVOKINGVERTEXEXTPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
24054extern "C" {
24055    pub fn glProvokingVertexEXT(mode: GLenum);
24056}
24057pub type PFNGLRASTERSAMPLESEXTPROC =
24058    ::std::option::Option<unsafe extern "C" fn(samples: GLuint, fixedsamplelocations: GLboolean)>;
24059extern "C" {
24060    pub fn glRasterSamplesEXT(samples: GLuint, fixedsamplelocations: GLboolean);
24061}
24062pub type PFNGLSECONDARYCOLOR3BEXTPROC =
24063    ::std::option::Option<unsafe extern "C" fn(red: GLbyte, green: GLbyte, blue: GLbyte)>;
24064pub type PFNGLSECONDARYCOLOR3BVEXTPROC =
24065    ::std::option::Option<unsafe extern "C" fn(v: *const GLbyte)>;
24066pub type PFNGLSECONDARYCOLOR3DEXTPROC =
24067    ::std::option::Option<unsafe extern "C" fn(red: GLdouble, green: GLdouble, blue: GLdouble)>;
24068pub type PFNGLSECONDARYCOLOR3DVEXTPROC =
24069    ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
24070pub type PFNGLSECONDARYCOLOR3FEXTPROC =
24071    ::std::option::Option<unsafe extern "C" fn(red: GLfloat, green: GLfloat, blue: GLfloat)>;
24072pub type PFNGLSECONDARYCOLOR3FVEXTPROC =
24073    ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
24074pub type PFNGLSECONDARYCOLOR3IEXTPROC =
24075    ::std::option::Option<unsafe extern "C" fn(red: GLint, green: GLint, blue: GLint)>;
24076pub type PFNGLSECONDARYCOLOR3IVEXTPROC =
24077    ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
24078pub type PFNGLSECONDARYCOLOR3SEXTPROC =
24079    ::std::option::Option<unsafe extern "C" fn(red: GLshort, green: GLshort, blue: GLshort)>;
24080pub type PFNGLSECONDARYCOLOR3SVEXTPROC =
24081    ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
24082pub type PFNGLSECONDARYCOLOR3UBEXTPROC =
24083    ::std::option::Option<unsafe extern "C" fn(red: GLubyte, green: GLubyte, blue: GLubyte)>;
24084pub type PFNGLSECONDARYCOLOR3UBVEXTPROC =
24085    ::std::option::Option<unsafe extern "C" fn(v: *const GLubyte)>;
24086pub type PFNGLSECONDARYCOLOR3UIEXTPROC =
24087    ::std::option::Option<unsafe extern "C" fn(red: GLuint, green: GLuint, blue: GLuint)>;
24088pub type PFNGLSECONDARYCOLOR3UIVEXTPROC =
24089    ::std::option::Option<unsafe extern "C" fn(v: *const GLuint)>;
24090pub type PFNGLSECONDARYCOLOR3USEXTPROC =
24091    ::std::option::Option<unsafe extern "C" fn(red: GLushort, green: GLushort, blue: GLushort)>;
24092pub type PFNGLSECONDARYCOLOR3USVEXTPROC =
24093    ::std::option::Option<unsafe extern "C" fn(v: *const GLushort)>;
24094pub type PFNGLSECONDARYCOLORPOINTEREXTPROC = ::std::option::Option<
24095    unsafe extern "C" fn(
24096        size: GLint,
24097        type_: GLenum,
24098        stride: GLsizei,
24099        pointer: *const ::std::os::raw::c_void,
24100    ),
24101>;
24102extern "C" {
24103    pub fn glSecondaryColor3bEXT(red: GLbyte, green: GLbyte, blue: GLbyte);
24104}
24105extern "C" {
24106    pub fn glSecondaryColor3bvEXT(v: *const GLbyte);
24107}
24108extern "C" {
24109    pub fn glSecondaryColor3dEXT(red: GLdouble, green: GLdouble, blue: GLdouble);
24110}
24111extern "C" {
24112    pub fn glSecondaryColor3dvEXT(v: *const GLdouble);
24113}
24114extern "C" {
24115    pub fn glSecondaryColor3fEXT(red: GLfloat, green: GLfloat, blue: GLfloat);
24116}
24117extern "C" {
24118    pub fn glSecondaryColor3fvEXT(v: *const GLfloat);
24119}
24120extern "C" {
24121    pub fn glSecondaryColor3iEXT(red: GLint, green: GLint, blue: GLint);
24122}
24123extern "C" {
24124    pub fn glSecondaryColor3ivEXT(v: *const GLint);
24125}
24126extern "C" {
24127    pub fn glSecondaryColor3sEXT(red: GLshort, green: GLshort, blue: GLshort);
24128}
24129extern "C" {
24130    pub fn glSecondaryColor3svEXT(v: *const GLshort);
24131}
24132extern "C" {
24133    pub fn glSecondaryColor3ubEXT(red: GLubyte, green: GLubyte, blue: GLubyte);
24134}
24135extern "C" {
24136    pub fn glSecondaryColor3ubvEXT(v: *const GLubyte);
24137}
24138extern "C" {
24139    pub fn glSecondaryColor3uiEXT(red: GLuint, green: GLuint, blue: GLuint);
24140}
24141extern "C" {
24142    pub fn glSecondaryColor3uivEXT(v: *const GLuint);
24143}
24144extern "C" {
24145    pub fn glSecondaryColor3usEXT(red: GLushort, green: GLushort, blue: GLushort);
24146}
24147extern "C" {
24148    pub fn glSecondaryColor3usvEXT(v: *const GLushort);
24149}
24150extern "C" {
24151    pub fn glSecondaryColorPointerEXT(
24152        size: GLint,
24153        type_: GLenum,
24154        stride: GLsizei,
24155        pointer: *const ::std::os::raw::c_void,
24156    );
24157}
24158pub type PFNGLGENSEMAPHORESEXTPROC =
24159    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, semaphores: *mut GLuint)>;
24160pub type PFNGLDELETESEMAPHORESEXTPROC =
24161    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, semaphores: *const GLuint)>;
24162pub type PFNGLISSEMAPHOREEXTPROC =
24163    ::std::option::Option<unsafe extern "C" fn(semaphore: GLuint) -> GLboolean>;
24164pub type PFNGLSEMAPHOREPARAMETERUI64VEXTPROC = ::std::option::Option<
24165    unsafe extern "C" fn(semaphore: GLuint, pname: GLenum, params: *const GLuint64),
24166>;
24167pub type PFNGLGETSEMAPHOREPARAMETERUI64VEXTPROC = ::std::option::Option<
24168    unsafe extern "C" fn(semaphore: GLuint, pname: GLenum, params: *mut GLuint64),
24169>;
24170pub type PFNGLWAITSEMAPHOREEXTPROC = ::std::option::Option<
24171    unsafe extern "C" fn(
24172        semaphore: GLuint,
24173        numBufferBarriers: GLuint,
24174        buffers: *const GLuint,
24175        numTextureBarriers: GLuint,
24176        textures: *const GLuint,
24177        srcLayouts: *const GLenum,
24178    ),
24179>;
24180pub type PFNGLSIGNALSEMAPHOREEXTPROC = ::std::option::Option<
24181    unsafe extern "C" fn(
24182        semaphore: GLuint,
24183        numBufferBarriers: GLuint,
24184        buffers: *const GLuint,
24185        numTextureBarriers: GLuint,
24186        textures: *const GLuint,
24187        dstLayouts: *const GLenum,
24188    ),
24189>;
24190extern "C" {
24191    pub fn glGenSemaphoresEXT(n: GLsizei, semaphores: *mut GLuint);
24192}
24193extern "C" {
24194    pub fn glDeleteSemaphoresEXT(n: GLsizei, semaphores: *const GLuint);
24195}
24196extern "C" {
24197    pub fn glIsSemaphoreEXT(semaphore: GLuint) -> GLboolean;
24198}
24199extern "C" {
24200    pub fn glSemaphoreParameterui64vEXT(semaphore: GLuint, pname: GLenum, params: *const GLuint64);
24201}
24202extern "C" {
24203    pub fn glGetSemaphoreParameterui64vEXT(semaphore: GLuint, pname: GLenum, params: *mut GLuint64);
24204}
24205extern "C" {
24206    pub fn glWaitSemaphoreEXT(
24207        semaphore: GLuint,
24208        numBufferBarriers: GLuint,
24209        buffers: *const GLuint,
24210        numTextureBarriers: GLuint,
24211        textures: *const GLuint,
24212        srcLayouts: *const GLenum,
24213    );
24214}
24215extern "C" {
24216    pub fn glSignalSemaphoreEXT(
24217        semaphore: GLuint,
24218        numBufferBarriers: GLuint,
24219        buffers: *const GLuint,
24220        numTextureBarriers: GLuint,
24221        textures: *const GLuint,
24222        dstLayouts: *const GLenum,
24223    );
24224}
24225pub type PFNGLIMPORTSEMAPHOREFDEXTPROC =
24226    ::std::option::Option<unsafe extern "C" fn(semaphore: GLuint, handleType: GLenum, fd: GLint)>;
24227extern "C" {
24228    pub fn glImportSemaphoreFdEXT(semaphore: GLuint, handleType: GLenum, fd: GLint);
24229}
24230pub type PFNGLIMPORTSEMAPHOREWIN32HANDLEEXTPROC = ::std::option::Option<
24231    unsafe extern "C" fn(
24232        semaphore: GLuint,
24233        handleType: GLenum,
24234        handle: *mut ::std::os::raw::c_void,
24235    ),
24236>;
24237pub type PFNGLIMPORTSEMAPHOREWIN32NAMEEXTPROC = ::std::option::Option<
24238    unsafe extern "C" fn(
24239        semaphore: GLuint,
24240        handleType: GLenum,
24241        name: *const ::std::os::raw::c_void,
24242    ),
24243>;
24244extern "C" {
24245    pub fn glImportSemaphoreWin32HandleEXT(
24246        semaphore: GLuint,
24247        handleType: GLenum,
24248        handle: *mut ::std::os::raw::c_void,
24249    );
24250}
24251extern "C" {
24252    pub fn glImportSemaphoreWin32NameEXT(
24253        semaphore: GLuint,
24254        handleType: GLenum,
24255        name: *const ::std::os::raw::c_void,
24256    );
24257}
24258pub type PFNGLUSESHADERPROGRAMEXTPROC =
24259    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, program: GLuint)>;
24260pub type PFNGLACTIVEPROGRAMEXTPROC = ::std::option::Option<unsafe extern "C" fn(program: GLuint)>;
24261pub type PFNGLCREATESHADERPROGRAMEXTPROC =
24262    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, string: *const GLchar) -> GLuint>;
24263extern "C" {
24264    pub fn glUseShaderProgramEXT(type_: GLenum, program: GLuint);
24265}
24266extern "C" {
24267    pub fn glActiveProgramEXT(program: GLuint);
24268}
24269extern "C" {
24270    pub fn glCreateShaderProgramEXT(type_: GLenum, string: *const GLchar) -> GLuint;
24271}
24272pub type PFNGLFRAMEBUFFERFETCHBARRIEREXTPROC = ::std::option::Option<unsafe extern "C" fn()>;
24273extern "C" {
24274    pub fn glFramebufferFetchBarrierEXT();
24275}
24276pub type PFNGLBINDIMAGETEXTUREEXTPROC = ::std::option::Option<
24277    unsafe extern "C" fn(
24278        index: GLuint,
24279        texture: GLuint,
24280        level: GLint,
24281        layered: GLboolean,
24282        layer: GLint,
24283        access: GLenum,
24284        format: GLint,
24285    ),
24286>;
24287pub type PFNGLMEMORYBARRIEREXTPROC =
24288    ::std::option::Option<unsafe extern "C" fn(barriers: GLbitfield)>;
24289extern "C" {
24290    pub fn glBindImageTextureEXT(
24291        index: GLuint,
24292        texture: GLuint,
24293        level: GLint,
24294        layered: GLboolean,
24295        layer: GLint,
24296        access: GLenum,
24297        format: GLint,
24298    );
24299}
24300extern "C" {
24301    pub fn glMemoryBarrierEXT(barriers: GLbitfield);
24302}
24303pub type PFNGLSTENCILCLEARTAGEXTPROC =
24304    ::std::option::Option<unsafe extern "C" fn(stencilTagBits: GLsizei, stencilClearTag: GLuint)>;
24305extern "C" {
24306    pub fn glStencilClearTagEXT(stencilTagBits: GLsizei, stencilClearTag: GLuint);
24307}
24308pub type PFNGLACTIVESTENCILFACEEXTPROC = ::std::option::Option<unsafe extern "C" fn(face: GLenum)>;
24309extern "C" {
24310    pub fn glActiveStencilFaceEXT(face: GLenum);
24311}
24312pub type PFNGLTEXSUBIMAGE1DEXTPROC = ::std::option::Option<
24313    unsafe extern "C" fn(
24314        target: GLenum,
24315        level: GLint,
24316        xoffset: GLint,
24317        width: GLsizei,
24318        format: GLenum,
24319        type_: GLenum,
24320        pixels: *const ::std::os::raw::c_void,
24321    ),
24322>;
24323pub type PFNGLTEXSUBIMAGE2DEXTPROC = ::std::option::Option<
24324    unsafe extern "C" fn(
24325        target: GLenum,
24326        level: GLint,
24327        xoffset: GLint,
24328        yoffset: GLint,
24329        width: GLsizei,
24330        height: GLsizei,
24331        format: GLenum,
24332        type_: GLenum,
24333        pixels: *const ::std::os::raw::c_void,
24334    ),
24335>;
24336extern "C" {
24337    pub fn glTexSubImage1DEXT(
24338        target: GLenum,
24339        level: GLint,
24340        xoffset: GLint,
24341        width: GLsizei,
24342        format: GLenum,
24343        type_: GLenum,
24344        pixels: *const ::std::os::raw::c_void,
24345    );
24346}
24347extern "C" {
24348    pub fn glTexSubImage2DEXT(
24349        target: GLenum,
24350        level: GLint,
24351        xoffset: GLint,
24352        yoffset: GLint,
24353        width: GLsizei,
24354        height: GLsizei,
24355        format: GLenum,
24356        type_: GLenum,
24357        pixels: *const ::std::os::raw::c_void,
24358    );
24359}
24360pub type PFNGLTEXIMAGE3DEXTPROC = ::std::option::Option<
24361    unsafe extern "C" fn(
24362        target: GLenum,
24363        level: GLint,
24364        internalformat: GLenum,
24365        width: GLsizei,
24366        height: GLsizei,
24367        depth: GLsizei,
24368        border: GLint,
24369        format: GLenum,
24370        type_: GLenum,
24371        pixels: *const ::std::os::raw::c_void,
24372    ),
24373>;
24374pub type PFNGLTEXSUBIMAGE3DEXTPROC = ::std::option::Option<
24375    unsafe extern "C" fn(
24376        target: GLenum,
24377        level: GLint,
24378        xoffset: GLint,
24379        yoffset: GLint,
24380        zoffset: GLint,
24381        width: GLsizei,
24382        height: GLsizei,
24383        depth: GLsizei,
24384        format: GLenum,
24385        type_: GLenum,
24386        pixels: *const ::std::os::raw::c_void,
24387    ),
24388>;
24389extern "C" {
24390    pub fn glTexImage3DEXT(
24391        target: GLenum,
24392        level: GLint,
24393        internalformat: GLenum,
24394        width: GLsizei,
24395        height: GLsizei,
24396        depth: GLsizei,
24397        border: GLint,
24398        format: GLenum,
24399        type_: GLenum,
24400        pixels: *const ::std::os::raw::c_void,
24401    );
24402}
24403extern "C" {
24404    pub fn glTexSubImage3DEXT(
24405        target: GLenum,
24406        level: GLint,
24407        xoffset: GLint,
24408        yoffset: GLint,
24409        zoffset: GLint,
24410        width: GLsizei,
24411        height: GLsizei,
24412        depth: GLsizei,
24413        format: GLenum,
24414        type_: GLenum,
24415        pixels: *const ::std::os::raw::c_void,
24416    );
24417}
24418pub type PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC = ::std::option::Option<
24419    unsafe extern "C" fn(
24420        target: GLenum,
24421        attachment: GLenum,
24422        texture: GLuint,
24423        level: GLint,
24424        layer: GLint,
24425    ),
24426>;
24427extern "C" {
24428    pub fn glFramebufferTextureLayerEXT(
24429        target: GLenum,
24430        attachment: GLenum,
24431        texture: GLuint,
24432        level: GLint,
24433        layer: GLint,
24434    );
24435}
24436pub type PFNGLTEXBUFFEREXTPROC = ::std::option::Option<
24437    unsafe extern "C" fn(target: GLenum, internalformat: GLenum, buffer: GLuint),
24438>;
24439extern "C" {
24440    pub fn glTexBufferEXT(target: GLenum, internalformat: GLenum, buffer: GLuint);
24441}
24442pub type PFNGLTEXPARAMETERIIVEXTPROC = ::std::option::Option<
24443    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLint),
24444>;
24445pub type PFNGLTEXPARAMETERIUIVEXTPROC = ::std::option::Option<
24446    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLuint),
24447>;
24448pub type PFNGLGETTEXPARAMETERIIVEXTPROC =
24449    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
24450pub type PFNGLGETTEXPARAMETERIUIVEXTPROC =
24451    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLuint)>;
24452pub type PFNGLCLEARCOLORIIEXTPROC = ::std::option::Option<
24453    unsafe extern "C" fn(red: GLint, green: GLint, blue: GLint, alpha: GLint),
24454>;
24455pub type PFNGLCLEARCOLORIUIEXTPROC = ::std::option::Option<
24456    unsafe extern "C" fn(red: GLuint, green: GLuint, blue: GLuint, alpha: GLuint),
24457>;
24458extern "C" {
24459    pub fn glTexParameterIivEXT(target: GLenum, pname: GLenum, params: *const GLint);
24460}
24461extern "C" {
24462    pub fn glTexParameterIuivEXT(target: GLenum, pname: GLenum, params: *const GLuint);
24463}
24464extern "C" {
24465    pub fn glGetTexParameterIivEXT(target: GLenum, pname: GLenum, params: *mut GLint);
24466}
24467extern "C" {
24468    pub fn glGetTexParameterIuivEXT(target: GLenum, pname: GLenum, params: *mut GLuint);
24469}
24470extern "C" {
24471    pub fn glClearColorIiEXT(red: GLint, green: GLint, blue: GLint, alpha: GLint);
24472}
24473extern "C" {
24474    pub fn glClearColorIuiEXT(red: GLuint, green: GLuint, blue: GLuint, alpha: GLuint);
24475}
24476pub type PFNGLARETEXTURESRESIDENTEXTPROC = ::std::option::Option<
24477    unsafe extern "C" fn(
24478        n: GLsizei,
24479        textures: *const GLuint,
24480        residences: *mut GLboolean,
24481    ) -> GLboolean,
24482>;
24483pub type PFNGLBINDTEXTUREEXTPROC =
24484    ::std::option::Option<unsafe extern "C" fn(target: GLenum, texture: GLuint)>;
24485pub type PFNGLDELETETEXTURESEXTPROC =
24486    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, textures: *const GLuint)>;
24487pub type PFNGLGENTEXTURESEXTPROC =
24488    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, textures: *mut GLuint)>;
24489pub type PFNGLISTEXTUREEXTPROC =
24490    ::std::option::Option<unsafe extern "C" fn(texture: GLuint) -> GLboolean>;
24491pub type PFNGLPRIORITIZETEXTURESEXTPROC = ::std::option::Option<
24492    unsafe extern "C" fn(n: GLsizei, textures: *const GLuint, priorities: *const GLclampf),
24493>;
24494extern "C" {
24495    pub fn glAreTexturesResidentEXT(
24496        n: GLsizei,
24497        textures: *const GLuint,
24498        residences: *mut GLboolean,
24499    ) -> GLboolean;
24500}
24501extern "C" {
24502    pub fn glBindTextureEXT(target: GLenum, texture: GLuint);
24503}
24504extern "C" {
24505    pub fn glDeleteTexturesEXT(n: GLsizei, textures: *const GLuint);
24506}
24507extern "C" {
24508    pub fn glGenTexturesEXT(n: GLsizei, textures: *mut GLuint);
24509}
24510extern "C" {
24511    pub fn glIsTextureEXT(texture: GLuint) -> GLboolean;
24512}
24513extern "C" {
24514    pub fn glPrioritizeTexturesEXT(
24515        n: GLsizei,
24516        textures: *const GLuint,
24517        priorities: *const GLclampf,
24518    );
24519}
24520pub type PFNGLTEXTURENORMALEXTPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
24521extern "C" {
24522    pub fn glTextureNormalEXT(mode: GLenum);
24523}
24524pub type PFNGLGETQUERYOBJECTI64VEXTPROC =
24525    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLint64)>;
24526pub type PFNGLGETQUERYOBJECTUI64VEXTPROC =
24527    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLuint64)>;
24528extern "C" {
24529    pub fn glGetQueryObjecti64vEXT(id: GLuint, pname: GLenum, params: *mut GLint64);
24530}
24531extern "C" {
24532    pub fn glGetQueryObjectui64vEXT(id: GLuint, pname: GLenum, params: *mut GLuint64);
24533}
24534pub type PFNGLBEGINTRANSFORMFEEDBACKEXTPROC =
24535    ::std::option::Option<unsafe extern "C" fn(primitiveMode: GLenum)>;
24536pub type PFNGLENDTRANSFORMFEEDBACKEXTPROC = ::std::option::Option<unsafe extern "C" fn()>;
24537pub type PFNGLBINDBUFFERRANGEEXTPROC = ::std::option::Option<
24538    unsafe extern "C" fn(
24539        target: GLenum,
24540        index: GLuint,
24541        buffer: GLuint,
24542        offset: GLintptr,
24543        size: GLsizeiptr,
24544    ),
24545>;
24546pub type PFNGLBINDBUFFEROFFSETEXTPROC = ::std::option::Option<
24547    unsafe extern "C" fn(target: GLenum, index: GLuint, buffer: GLuint, offset: GLintptr),
24548>;
24549pub type PFNGLBINDBUFFERBASEEXTPROC =
24550    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, buffer: GLuint)>;
24551pub type PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC = ::std::option::Option<
24552    unsafe extern "C" fn(
24553        program: GLuint,
24554        count: GLsizei,
24555        varyings: *const *const GLchar,
24556        bufferMode: GLenum,
24557    ),
24558>;
24559pub type PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC = ::std::option::Option<
24560    unsafe extern "C" fn(
24561        program: GLuint,
24562        index: GLuint,
24563        bufSize: GLsizei,
24564        length: *mut GLsizei,
24565        size: *mut GLsizei,
24566        type_: *mut GLenum,
24567        name: *mut GLchar,
24568    ),
24569>;
24570extern "C" {
24571    pub fn glBeginTransformFeedbackEXT(primitiveMode: GLenum);
24572}
24573extern "C" {
24574    pub fn glEndTransformFeedbackEXT();
24575}
24576extern "C" {
24577    pub fn glBindBufferRangeEXT(
24578        target: GLenum,
24579        index: GLuint,
24580        buffer: GLuint,
24581        offset: GLintptr,
24582        size: GLsizeiptr,
24583    );
24584}
24585extern "C" {
24586    pub fn glBindBufferOffsetEXT(target: GLenum, index: GLuint, buffer: GLuint, offset: GLintptr);
24587}
24588extern "C" {
24589    pub fn glBindBufferBaseEXT(target: GLenum, index: GLuint, buffer: GLuint);
24590}
24591extern "C" {
24592    pub fn glTransformFeedbackVaryingsEXT(
24593        program: GLuint,
24594        count: GLsizei,
24595        varyings: *const *const GLchar,
24596        bufferMode: GLenum,
24597    );
24598}
24599extern "C" {
24600    pub fn glGetTransformFeedbackVaryingEXT(
24601        program: GLuint,
24602        index: GLuint,
24603        bufSize: GLsizei,
24604        length: *mut GLsizei,
24605        size: *mut GLsizei,
24606        type_: *mut GLenum,
24607        name: *mut GLchar,
24608    );
24609}
24610pub type PFNGLARRAYELEMENTEXTPROC = ::std::option::Option<unsafe extern "C" fn(i: GLint)>;
24611pub type PFNGLCOLORPOINTEREXTPROC = ::std::option::Option<
24612    unsafe extern "C" fn(
24613        size: GLint,
24614        type_: GLenum,
24615        stride: GLsizei,
24616        count: GLsizei,
24617        pointer: *const ::std::os::raw::c_void,
24618    ),
24619>;
24620pub type PFNGLDRAWARRAYSEXTPROC =
24621    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, first: GLint, count: GLsizei)>;
24622pub type PFNGLEDGEFLAGPOINTEREXTPROC = ::std::option::Option<
24623    unsafe extern "C" fn(stride: GLsizei, count: GLsizei, pointer: *const GLboolean),
24624>;
24625pub type PFNGLGETPOINTERVEXTPROC = ::std::option::Option<
24626    unsafe extern "C" fn(pname: GLenum, params: *mut *mut ::std::os::raw::c_void),
24627>;
24628pub type PFNGLINDEXPOINTEREXTPROC = ::std::option::Option<
24629    unsafe extern "C" fn(
24630        type_: GLenum,
24631        stride: GLsizei,
24632        count: GLsizei,
24633        pointer: *const ::std::os::raw::c_void,
24634    ),
24635>;
24636pub type PFNGLNORMALPOINTEREXTPROC = ::std::option::Option<
24637    unsafe extern "C" fn(
24638        type_: GLenum,
24639        stride: GLsizei,
24640        count: GLsizei,
24641        pointer: *const ::std::os::raw::c_void,
24642    ),
24643>;
24644pub type PFNGLTEXCOORDPOINTEREXTPROC = ::std::option::Option<
24645    unsafe extern "C" fn(
24646        size: GLint,
24647        type_: GLenum,
24648        stride: GLsizei,
24649        count: GLsizei,
24650        pointer: *const ::std::os::raw::c_void,
24651    ),
24652>;
24653pub type PFNGLVERTEXPOINTEREXTPROC = ::std::option::Option<
24654    unsafe extern "C" fn(
24655        size: GLint,
24656        type_: GLenum,
24657        stride: GLsizei,
24658        count: GLsizei,
24659        pointer: *const ::std::os::raw::c_void,
24660    ),
24661>;
24662extern "C" {
24663    pub fn glArrayElementEXT(i: GLint);
24664}
24665extern "C" {
24666    pub fn glColorPointerEXT(
24667        size: GLint,
24668        type_: GLenum,
24669        stride: GLsizei,
24670        count: GLsizei,
24671        pointer: *const ::std::os::raw::c_void,
24672    );
24673}
24674extern "C" {
24675    pub fn glDrawArraysEXT(mode: GLenum, first: GLint, count: GLsizei);
24676}
24677extern "C" {
24678    pub fn glEdgeFlagPointerEXT(stride: GLsizei, count: GLsizei, pointer: *const GLboolean);
24679}
24680extern "C" {
24681    pub fn glGetPointervEXT(pname: GLenum, params: *mut *mut ::std::os::raw::c_void);
24682}
24683extern "C" {
24684    pub fn glIndexPointerEXT(
24685        type_: GLenum,
24686        stride: GLsizei,
24687        count: GLsizei,
24688        pointer: *const ::std::os::raw::c_void,
24689    );
24690}
24691extern "C" {
24692    pub fn glNormalPointerEXT(
24693        type_: GLenum,
24694        stride: GLsizei,
24695        count: GLsizei,
24696        pointer: *const ::std::os::raw::c_void,
24697    );
24698}
24699extern "C" {
24700    pub fn glTexCoordPointerEXT(
24701        size: GLint,
24702        type_: GLenum,
24703        stride: GLsizei,
24704        count: GLsizei,
24705        pointer: *const ::std::os::raw::c_void,
24706    );
24707}
24708extern "C" {
24709    pub fn glVertexPointerEXT(
24710        size: GLint,
24711        type_: GLenum,
24712        stride: GLsizei,
24713        count: GLsizei,
24714        pointer: *const ::std::os::raw::c_void,
24715    );
24716}
24717pub type PFNGLVERTEXATTRIBL1DEXTPROC =
24718    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble)>;
24719pub type PFNGLVERTEXATTRIBL2DEXTPROC =
24720    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble)>;
24721pub type PFNGLVERTEXATTRIBL3DEXTPROC = ::std::option::Option<
24722    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble),
24723>;
24724pub type PFNGLVERTEXATTRIBL4DEXTPROC = ::std::option::Option<
24725    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble),
24726>;
24727pub type PFNGLVERTEXATTRIBL1DVEXTPROC =
24728    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
24729pub type PFNGLVERTEXATTRIBL2DVEXTPROC =
24730    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
24731pub type PFNGLVERTEXATTRIBL3DVEXTPROC =
24732    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
24733pub type PFNGLVERTEXATTRIBL4DVEXTPROC =
24734    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
24735pub type PFNGLVERTEXATTRIBLPOINTEREXTPROC = ::std::option::Option<
24736    unsafe extern "C" fn(
24737        index: GLuint,
24738        size: GLint,
24739        type_: GLenum,
24740        stride: GLsizei,
24741        pointer: *const ::std::os::raw::c_void,
24742    ),
24743>;
24744pub type PFNGLGETVERTEXATTRIBLDVEXTPROC = ::std::option::Option<
24745    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLdouble),
24746>;
24747extern "C" {
24748    pub fn glVertexAttribL1dEXT(index: GLuint, x: GLdouble);
24749}
24750extern "C" {
24751    pub fn glVertexAttribL2dEXT(index: GLuint, x: GLdouble, y: GLdouble);
24752}
24753extern "C" {
24754    pub fn glVertexAttribL3dEXT(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble);
24755}
24756extern "C" {
24757    pub fn glVertexAttribL4dEXT(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
24758}
24759extern "C" {
24760    pub fn glVertexAttribL1dvEXT(index: GLuint, v: *const GLdouble);
24761}
24762extern "C" {
24763    pub fn glVertexAttribL2dvEXT(index: GLuint, v: *const GLdouble);
24764}
24765extern "C" {
24766    pub fn glVertexAttribL3dvEXT(index: GLuint, v: *const GLdouble);
24767}
24768extern "C" {
24769    pub fn glVertexAttribL4dvEXT(index: GLuint, v: *const GLdouble);
24770}
24771extern "C" {
24772    pub fn glVertexAttribLPointerEXT(
24773        index: GLuint,
24774        size: GLint,
24775        type_: GLenum,
24776        stride: GLsizei,
24777        pointer: *const ::std::os::raw::c_void,
24778    );
24779}
24780extern "C" {
24781    pub fn glGetVertexAttribLdvEXT(index: GLuint, pname: GLenum, params: *mut GLdouble);
24782}
24783pub type PFNGLBEGINVERTEXSHADEREXTPROC = ::std::option::Option<unsafe extern "C" fn()>;
24784pub type PFNGLENDVERTEXSHADEREXTPROC = ::std::option::Option<unsafe extern "C" fn()>;
24785pub type PFNGLBINDVERTEXSHADEREXTPROC = ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
24786pub type PFNGLGENVERTEXSHADERSEXTPROC =
24787    ::std::option::Option<unsafe extern "C" fn(range: GLuint) -> GLuint>;
24788pub type PFNGLDELETEVERTEXSHADEREXTPROC = ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
24789pub type PFNGLSHADEROP1EXTPROC =
24790    ::std::option::Option<unsafe extern "C" fn(op: GLenum, res: GLuint, arg1: GLuint)>;
24791pub type PFNGLSHADEROP2EXTPROC = ::std::option::Option<
24792    unsafe extern "C" fn(op: GLenum, res: GLuint, arg1: GLuint, arg2: GLuint),
24793>;
24794pub type PFNGLSHADEROP3EXTPROC = ::std::option::Option<
24795    unsafe extern "C" fn(op: GLenum, res: GLuint, arg1: GLuint, arg2: GLuint, arg3: GLuint),
24796>;
24797pub type PFNGLSWIZZLEEXTPROC = ::std::option::Option<
24798    unsafe extern "C" fn(
24799        res: GLuint,
24800        in_: GLuint,
24801        outX: GLenum,
24802        outY: GLenum,
24803        outZ: GLenum,
24804        outW: GLenum,
24805    ),
24806>;
24807pub type PFNGLWRITEMASKEXTPROC = ::std::option::Option<
24808    unsafe extern "C" fn(
24809        res: GLuint,
24810        in_: GLuint,
24811        outX: GLenum,
24812        outY: GLenum,
24813        outZ: GLenum,
24814        outW: GLenum,
24815    ),
24816>;
24817pub type PFNGLINSERTCOMPONENTEXTPROC =
24818    ::std::option::Option<unsafe extern "C" fn(res: GLuint, src: GLuint, num: GLuint)>;
24819pub type PFNGLEXTRACTCOMPONENTEXTPROC =
24820    ::std::option::Option<unsafe extern "C" fn(res: GLuint, src: GLuint, num: GLuint)>;
24821pub type PFNGLGENSYMBOLSEXTPROC = ::std::option::Option<
24822    unsafe extern "C" fn(
24823        datatype: GLenum,
24824        storagetype: GLenum,
24825        range: GLenum,
24826        components: GLuint,
24827    ) -> GLuint,
24828>;
24829pub type PFNGLSETINVARIANTEXTPROC = ::std::option::Option<
24830    unsafe extern "C" fn(id: GLuint, type_: GLenum, addr: *const ::std::os::raw::c_void),
24831>;
24832pub type PFNGLSETLOCALCONSTANTEXTPROC = ::std::option::Option<
24833    unsafe extern "C" fn(id: GLuint, type_: GLenum, addr: *const ::std::os::raw::c_void),
24834>;
24835pub type PFNGLVARIANTBVEXTPROC =
24836    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLbyte)>;
24837pub type PFNGLVARIANTSVEXTPROC =
24838    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLshort)>;
24839pub type PFNGLVARIANTIVEXTPROC =
24840    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLint)>;
24841pub type PFNGLVARIANTFVEXTPROC =
24842    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLfloat)>;
24843pub type PFNGLVARIANTDVEXTPROC =
24844    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLdouble)>;
24845pub type PFNGLVARIANTUBVEXTPROC =
24846    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLubyte)>;
24847pub type PFNGLVARIANTUSVEXTPROC =
24848    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLushort)>;
24849pub type PFNGLVARIANTUIVEXTPROC =
24850    ::std::option::Option<unsafe extern "C" fn(id: GLuint, addr: *const GLuint)>;
24851pub type PFNGLVARIANTPOINTEREXTPROC = ::std::option::Option<
24852    unsafe extern "C" fn(
24853        id: GLuint,
24854        type_: GLenum,
24855        stride: GLuint,
24856        addr: *const ::std::os::raw::c_void,
24857    ),
24858>;
24859pub type PFNGLENABLEVARIANTCLIENTSTATEEXTPROC =
24860    ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
24861pub type PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC =
24862    ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
24863pub type PFNGLBINDLIGHTPARAMETEREXTPROC =
24864    ::std::option::Option<unsafe extern "C" fn(light: GLenum, value: GLenum) -> GLuint>;
24865pub type PFNGLBINDMATERIALPARAMETEREXTPROC =
24866    ::std::option::Option<unsafe extern "C" fn(face: GLenum, value: GLenum) -> GLuint>;
24867pub type PFNGLBINDTEXGENPARAMETEREXTPROC = ::std::option::Option<
24868    unsafe extern "C" fn(unit: GLenum, coord: GLenum, value: GLenum) -> GLuint,
24869>;
24870pub type PFNGLBINDTEXTUREUNITPARAMETEREXTPROC =
24871    ::std::option::Option<unsafe extern "C" fn(unit: GLenum, value: GLenum) -> GLuint>;
24872pub type PFNGLBINDPARAMETEREXTPROC =
24873    ::std::option::Option<unsafe extern "C" fn(value: GLenum) -> GLuint>;
24874pub type PFNGLISVARIANTENABLEDEXTPROC =
24875    ::std::option::Option<unsafe extern "C" fn(id: GLuint, cap: GLenum) -> GLboolean>;
24876pub type PFNGLGETVARIANTBOOLEANVEXTPROC =
24877    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLboolean)>;
24878pub type PFNGLGETVARIANTINTEGERVEXTPROC =
24879    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLint)>;
24880pub type PFNGLGETVARIANTFLOATVEXTPROC =
24881    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLfloat)>;
24882pub type PFNGLGETVARIANTPOINTERVEXTPROC = ::std::option::Option<
24883    unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut *mut ::std::os::raw::c_void),
24884>;
24885pub type PFNGLGETINVARIANTBOOLEANVEXTPROC =
24886    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLboolean)>;
24887pub type PFNGLGETINVARIANTINTEGERVEXTPROC =
24888    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLint)>;
24889pub type PFNGLGETINVARIANTFLOATVEXTPROC =
24890    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLfloat)>;
24891pub type PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC =
24892    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLboolean)>;
24893pub type PFNGLGETLOCALCONSTANTINTEGERVEXTPROC =
24894    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLint)>;
24895pub type PFNGLGETLOCALCONSTANTFLOATVEXTPROC =
24896    ::std::option::Option<unsafe extern "C" fn(id: GLuint, value: GLenum, data: *mut GLfloat)>;
24897extern "C" {
24898    pub fn glBeginVertexShaderEXT();
24899}
24900extern "C" {
24901    pub fn glEndVertexShaderEXT();
24902}
24903extern "C" {
24904    pub fn glBindVertexShaderEXT(id: GLuint);
24905}
24906extern "C" {
24907    pub fn glGenVertexShadersEXT(range: GLuint) -> GLuint;
24908}
24909extern "C" {
24910    pub fn glDeleteVertexShaderEXT(id: GLuint);
24911}
24912extern "C" {
24913    pub fn glShaderOp1EXT(op: GLenum, res: GLuint, arg1: GLuint);
24914}
24915extern "C" {
24916    pub fn glShaderOp2EXT(op: GLenum, res: GLuint, arg1: GLuint, arg2: GLuint);
24917}
24918extern "C" {
24919    pub fn glShaderOp3EXT(op: GLenum, res: GLuint, arg1: GLuint, arg2: GLuint, arg3: GLuint);
24920}
24921extern "C" {
24922    pub fn glSwizzleEXT(
24923        res: GLuint,
24924        in_: GLuint,
24925        outX: GLenum,
24926        outY: GLenum,
24927        outZ: GLenum,
24928        outW: GLenum,
24929    );
24930}
24931extern "C" {
24932    pub fn glWriteMaskEXT(
24933        res: GLuint,
24934        in_: GLuint,
24935        outX: GLenum,
24936        outY: GLenum,
24937        outZ: GLenum,
24938        outW: GLenum,
24939    );
24940}
24941extern "C" {
24942    pub fn glInsertComponentEXT(res: GLuint, src: GLuint, num: GLuint);
24943}
24944extern "C" {
24945    pub fn glExtractComponentEXT(res: GLuint, src: GLuint, num: GLuint);
24946}
24947extern "C" {
24948    pub fn glGenSymbolsEXT(
24949        datatype: GLenum,
24950        storagetype: GLenum,
24951        range: GLenum,
24952        components: GLuint,
24953    ) -> GLuint;
24954}
24955extern "C" {
24956    pub fn glSetInvariantEXT(id: GLuint, type_: GLenum, addr: *const ::std::os::raw::c_void);
24957}
24958extern "C" {
24959    pub fn glSetLocalConstantEXT(id: GLuint, type_: GLenum, addr: *const ::std::os::raw::c_void);
24960}
24961extern "C" {
24962    pub fn glVariantbvEXT(id: GLuint, addr: *const GLbyte);
24963}
24964extern "C" {
24965    pub fn glVariantsvEXT(id: GLuint, addr: *const GLshort);
24966}
24967extern "C" {
24968    pub fn glVariantivEXT(id: GLuint, addr: *const GLint);
24969}
24970extern "C" {
24971    pub fn glVariantfvEXT(id: GLuint, addr: *const GLfloat);
24972}
24973extern "C" {
24974    pub fn glVariantdvEXT(id: GLuint, addr: *const GLdouble);
24975}
24976extern "C" {
24977    pub fn glVariantubvEXT(id: GLuint, addr: *const GLubyte);
24978}
24979extern "C" {
24980    pub fn glVariantusvEXT(id: GLuint, addr: *const GLushort);
24981}
24982extern "C" {
24983    pub fn glVariantuivEXT(id: GLuint, addr: *const GLuint);
24984}
24985extern "C" {
24986    pub fn glVariantPointerEXT(
24987        id: GLuint,
24988        type_: GLenum,
24989        stride: GLuint,
24990        addr: *const ::std::os::raw::c_void,
24991    );
24992}
24993extern "C" {
24994    pub fn glEnableVariantClientStateEXT(id: GLuint);
24995}
24996extern "C" {
24997    pub fn glDisableVariantClientStateEXT(id: GLuint);
24998}
24999extern "C" {
25000    pub fn glBindLightParameterEXT(light: GLenum, value: GLenum) -> GLuint;
25001}
25002extern "C" {
25003    pub fn glBindMaterialParameterEXT(face: GLenum, value: GLenum) -> GLuint;
25004}
25005extern "C" {
25006    pub fn glBindTexGenParameterEXT(unit: GLenum, coord: GLenum, value: GLenum) -> GLuint;
25007}
25008extern "C" {
25009    pub fn glBindTextureUnitParameterEXT(unit: GLenum, value: GLenum) -> GLuint;
25010}
25011extern "C" {
25012    pub fn glBindParameterEXT(value: GLenum) -> GLuint;
25013}
25014extern "C" {
25015    pub fn glIsVariantEnabledEXT(id: GLuint, cap: GLenum) -> GLboolean;
25016}
25017extern "C" {
25018    pub fn glGetVariantBooleanvEXT(id: GLuint, value: GLenum, data: *mut GLboolean);
25019}
25020extern "C" {
25021    pub fn glGetVariantIntegervEXT(id: GLuint, value: GLenum, data: *mut GLint);
25022}
25023extern "C" {
25024    pub fn glGetVariantFloatvEXT(id: GLuint, value: GLenum, data: *mut GLfloat);
25025}
25026extern "C" {
25027    pub fn glGetVariantPointervEXT(
25028        id: GLuint,
25029        value: GLenum,
25030        data: *mut *mut ::std::os::raw::c_void,
25031    );
25032}
25033extern "C" {
25034    pub fn glGetInvariantBooleanvEXT(id: GLuint, value: GLenum, data: *mut GLboolean);
25035}
25036extern "C" {
25037    pub fn glGetInvariantIntegervEXT(id: GLuint, value: GLenum, data: *mut GLint);
25038}
25039extern "C" {
25040    pub fn glGetInvariantFloatvEXT(id: GLuint, value: GLenum, data: *mut GLfloat);
25041}
25042extern "C" {
25043    pub fn glGetLocalConstantBooleanvEXT(id: GLuint, value: GLenum, data: *mut GLboolean);
25044}
25045extern "C" {
25046    pub fn glGetLocalConstantIntegervEXT(id: GLuint, value: GLenum, data: *mut GLint);
25047}
25048extern "C" {
25049    pub fn glGetLocalConstantFloatvEXT(id: GLuint, value: GLenum, data: *mut GLfloat);
25050}
25051pub type PFNGLVERTEXWEIGHTFEXTPROC = ::std::option::Option<unsafe extern "C" fn(weight: GLfloat)>;
25052pub type PFNGLVERTEXWEIGHTFVEXTPROC =
25053    ::std::option::Option<unsafe extern "C" fn(weight: *const GLfloat)>;
25054pub type PFNGLVERTEXWEIGHTPOINTEREXTPROC = ::std::option::Option<
25055    unsafe extern "C" fn(
25056        size: GLint,
25057        type_: GLenum,
25058        stride: GLsizei,
25059        pointer: *const ::std::os::raw::c_void,
25060    ),
25061>;
25062extern "C" {
25063    pub fn glVertexWeightfEXT(weight: GLfloat);
25064}
25065extern "C" {
25066    pub fn glVertexWeightfvEXT(weight: *const GLfloat);
25067}
25068extern "C" {
25069    pub fn glVertexWeightPointerEXT(
25070        size: GLint,
25071        type_: GLenum,
25072        stride: GLsizei,
25073        pointer: *const ::std::os::raw::c_void,
25074    );
25075}
25076pub type PFNGLACQUIREKEYEDMUTEXWIN32EXTPROC = ::std::option::Option<
25077    unsafe extern "C" fn(memory: GLuint, key: GLuint64, timeout: GLuint) -> GLboolean,
25078>;
25079pub type PFNGLRELEASEKEYEDMUTEXWIN32EXTPROC =
25080    ::std::option::Option<unsafe extern "C" fn(memory: GLuint, key: GLuint64) -> GLboolean>;
25081extern "C" {
25082    pub fn glAcquireKeyedMutexWin32EXT(memory: GLuint, key: GLuint64, timeout: GLuint)
25083        -> GLboolean;
25084}
25085extern "C" {
25086    pub fn glReleaseKeyedMutexWin32EXT(memory: GLuint, key: GLuint64) -> GLboolean;
25087}
25088pub type PFNGLWINDOWRECTANGLESEXTPROC =
25089    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, count: GLsizei, box_: *const GLint)>;
25090extern "C" {
25091    pub fn glWindowRectanglesEXT(mode: GLenum, count: GLsizei, box_: *const GLint);
25092}
25093pub type PFNGLIMPORTSYNCEXTPROC = ::std::option::Option<
25094    unsafe extern "C" fn(
25095        external_sync_type: GLenum,
25096        external_sync: GLintptr,
25097        flags: GLbitfield,
25098    ) -> GLsync,
25099>;
25100extern "C" {
25101    pub fn glImportSyncEXT(
25102        external_sync_type: GLenum,
25103        external_sync: GLintptr,
25104        flags: GLbitfield,
25105    ) -> GLsync;
25106}
25107pub type PFNGLFRAMETERMINATORGREMEDYPROC = ::std::option::Option<unsafe extern "C" fn()>;
25108extern "C" {
25109    pub fn glFrameTerminatorGREMEDY();
25110}
25111pub type PFNGLSTRINGMARKERGREMEDYPROC = ::std::option::Option<
25112    unsafe extern "C" fn(len: GLsizei, string: *const ::std::os::raw::c_void),
25113>;
25114extern "C" {
25115    pub fn glStringMarkerGREMEDY(len: GLsizei, string: *const ::std::os::raw::c_void);
25116}
25117pub type PFNGLIMAGETRANSFORMPARAMETERIHPPROC =
25118    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLint)>;
25119pub type PFNGLIMAGETRANSFORMPARAMETERFHPPROC =
25120    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLfloat)>;
25121pub type PFNGLIMAGETRANSFORMPARAMETERIVHPPROC = ::std::option::Option<
25122    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLint),
25123>;
25124pub type PFNGLIMAGETRANSFORMPARAMETERFVHPPROC = ::std::option::Option<
25125    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfloat),
25126>;
25127pub type PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC =
25128    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
25129pub type PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC = ::std::option::Option<
25130    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
25131>;
25132extern "C" {
25133    pub fn glImageTransformParameteriHP(target: GLenum, pname: GLenum, param: GLint);
25134}
25135extern "C" {
25136    pub fn glImageTransformParameterfHP(target: GLenum, pname: GLenum, param: GLfloat);
25137}
25138extern "C" {
25139    pub fn glImageTransformParameterivHP(target: GLenum, pname: GLenum, params: *const GLint);
25140}
25141extern "C" {
25142    pub fn glImageTransformParameterfvHP(target: GLenum, pname: GLenum, params: *const GLfloat);
25143}
25144extern "C" {
25145    pub fn glGetImageTransformParameterivHP(target: GLenum, pname: GLenum, params: *mut GLint);
25146}
25147extern "C" {
25148    pub fn glGetImageTransformParameterfvHP(target: GLenum, pname: GLenum, params: *mut GLfloat);
25149}
25150pub type PFNGLMULTIMODEDRAWARRAYSIBMPROC = ::std::option::Option<
25151    unsafe extern "C" fn(
25152        mode: *const GLenum,
25153        first: *const GLint,
25154        count: *const GLsizei,
25155        primcount: GLsizei,
25156        modestride: GLint,
25157    ),
25158>;
25159pub type PFNGLMULTIMODEDRAWELEMENTSIBMPROC = ::std::option::Option<
25160    unsafe extern "C" fn(
25161        mode: *const GLenum,
25162        count: *const GLsizei,
25163        type_: GLenum,
25164        indices: *const *const ::std::os::raw::c_void,
25165        primcount: GLsizei,
25166        modestride: GLint,
25167    ),
25168>;
25169extern "C" {
25170    pub fn glMultiModeDrawArraysIBM(
25171        mode: *const GLenum,
25172        first: *const GLint,
25173        count: *const GLsizei,
25174        primcount: GLsizei,
25175        modestride: GLint,
25176    );
25177}
25178extern "C" {
25179    pub fn glMultiModeDrawElementsIBM(
25180        mode: *const GLenum,
25181        count: *const GLsizei,
25182        type_: GLenum,
25183        indices: *const *const ::std::os::raw::c_void,
25184        primcount: GLsizei,
25185        modestride: GLint,
25186    );
25187}
25188pub type PFNGLFLUSHSTATICDATAIBMPROC = ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
25189extern "C" {
25190    pub fn glFlushStaticDataIBM(target: GLenum);
25191}
25192pub type PFNGLCOLORPOINTERLISTIBMPROC = ::std::option::Option<
25193    unsafe extern "C" fn(
25194        size: GLint,
25195        type_: GLenum,
25196        stride: GLint,
25197        pointer: *mut *const ::std::os::raw::c_void,
25198        ptrstride: GLint,
25199    ),
25200>;
25201pub type PFNGLSECONDARYCOLORPOINTERLISTIBMPROC = ::std::option::Option<
25202    unsafe extern "C" fn(
25203        size: GLint,
25204        type_: GLenum,
25205        stride: GLint,
25206        pointer: *mut *const ::std::os::raw::c_void,
25207        ptrstride: GLint,
25208    ),
25209>;
25210pub type PFNGLEDGEFLAGPOINTERLISTIBMPROC = ::std::option::Option<
25211    unsafe extern "C" fn(stride: GLint, pointer: *mut *const GLboolean, ptrstride: GLint),
25212>;
25213pub type PFNGLFOGCOORDPOINTERLISTIBMPROC = ::std::option::Option<
25214    unsafe extern "C" fn(
25215        type_: GLenum,
25216        stride: GLint,
25217        pointer: *mut *const ::std::os::raw::c_void,
25218        ptrstride: GLint,
25219    ),
25220>;
25221pub type PFNGLINDEXPOINTERLISTIBMPROC = ::std::option::Option<
25222    unsafe extern "C" fn(
25223        type_: GLenum,
25224        stride: GLint,
25225        pointer: *mut *const ::std::os::raw::c_void,
25226        ptrstride: GLint,
25227    ),
25228>;
25229pub type PFNGLNORMALPOINTERLISTIBMPROC = ::std::option::Option<
25230    unsafe extern "C" fn(
25231        type_: GLenum,
25232        stride: GLint,
25233        pointer: *mut *const ::std::os::raw::c_void,
25234        ptrstride: GLint,
25235    ),
25236>;
25237pub type PFNGLTEXCOORDPOINTERLISTIBMPROC = ::std::option::Option<
25238    unsafe extern "C" fn(
25239        size: GLint,
25240        type_: GLenum,
25241        stride: GLint,
25242        pointer: *mut *const ::std::os::raw::c_void,
25243        ptrstride: GLint,
25244    ),
25245>;
25246pub type PFNGLVERTEXPOINTERLISTIBMPROC = ::std::option::Option<
25247    unsafe extern "C" fn(
25248        size: GLint,
25249        type_: GLenum,
25250        stride: GLint,
25251        pointer: *mut *const ::std::os::raw::c_void,
25252        ptrstride: GLint,
25253    ),
25254>;
25255extern "C" {
25256    pub fn glColorPointerListIBM(
25257        size: GLint,
25258        type_: GLenum,
25259        stride: GLint,
25260        pointer: *mut *const ::std::os::raw::c_void,
25261        ptrstride: GLint,
25262    );
25263}
25264extern "C" {
25265    pub fn glSecondaryColorPointerListIBM(
25266        size: GLint,
25267        type_: GLenum,
25268        stride: GLint,
25269        pointer: *mut *const ::std::os::raw::c_void,
25270        ptrstride: GLint,
25271    );
25272}
25273extern "C" {
25274    pub fn glEdgeFlagPointerListIBM(
25275        stride: GLint,
25276        pointer: *mut *const GLboolean,
25277        ptrstride: GLint,
25278    );
25279}
25280extern "C" {
25281    pub fn glFogCoordPointerListIBM(
25282        type_: GLenum,
25283        stride: GLint,
25284        pointer: *mut *const ::std::os::raw::c_void,
25285        ptrstride: GLint,
25286    );
25287}
25288extern "C" {
25289    pub fn glIndexPointerListIBM(
25290        type_: GLenum,
25291        stride: GLint,
25292        pointer: *mut *const ::std::os::raw::c_void,
25293        ptrstride: GLint,
25294    );
25295}
25296extern "C" {
25297    pub fn glNormalPointerListIBM(
25298        type_: GLenum,
25299        stride: GLint,
25300        pointer: *mut *const ::std::os::raw::c_void,
25301        ptrstride: GLint,
25302    );
25303}
25304extern "C" {
25305    pub fn glTexCoordPointerListIBM(
25306        size: GLint,
25307        type_: GLenum,
25308        stride: GLint,
25309        pointer: *mut *const ::std::os::raw::c_void,
25310        ptrstride: GLint,
25311    );
25312}
25313extern "C" {
25314    pub fn glVertexPointerListIBM(
25315        size: GLint,
25316        type_: GLenum,
25317        stride: GLint,
25318        pointer: *mut *const ::std::os::raw::c_void,
25319        ptrstride: GLint,
25320    );
25321}
25322pub type PFNGLBLENDFUNCSEPARATEINGRPROC = ::std::option::Option<
25323    unsafe extern "C" fn(
25324        sfactorRGB: GLenum,
25325        dfactorRGB: GLenum,
25326        sfactorAlpha: GLenum,
25327        dfactorAlpha: GLenum,
25328    ),
25329>;
25330extern "C" {
25331    pub fn glBlendFuncSeparateINGR(
25332        sfactorRGB: GLenum,
25333        dfactorRGB: GLenum,
25334        sfactorAlpha: GLenum,
25335        dfactorAlpha: GLenum,
25336    );
25337}
25338pub type PFNGLAPPLYFRAMEBUFFERATTACHMENTCMAAINTELPROC =
25339    ::std::option::Option<unsafe extern "C" fn()>;
25340extern "C" {
25341    pub fn glApplyFramebufferAttachmentCMAAINTEL();
25342}
25343pub type PFNGLSYNCTEXTUREINTELPROC = ::std::option::Option<unsafe extern "C" fn(texture: GLuint)>;
25344pub type PFNGLUNMAPTEXTURE2DINTELPROC =
25345    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, level: GLint)>;
25346pub type PFNGLMAPTEXTURE2DINTELPROC = ::std::option::Option<
25347    unsafe extern "C" fn(
25348        texture: GLuint,
25349        level: GLint,
25350        access: GLbitfield,
25351        stride: *mut GLint,
25352        layout: *mut GLenum,
25353    ) -> *mut ::std::os::raw::c_void,
25354>;
25355extern "C" {
25356    pub fn glSyncTextureINTEL(texture: GLuint);
25357}
25358extern "C" {
25359    pub fn glUnmapTexture2DINTEL(texture: GLuint, level: GLint);
25360}
25361extern "C" {
25362    pub fn glMapTexture2DINTEL(
25363        texture: GLuint,
25364        level: GLint,
25365        access: GLbitfield,
25366        stride: *mut GLint,
25367        layout: *mut GLenum,
25368    ) -> *mut ::std::os::raw::c_void;
25369}
25370pub type PFNGLVERTEXPOINTERVINTELPROC = ::std::option::Option<
25371    unsafe extern "C" fn(size: GLint, type_: GLenum, pointer: *mut *const ::std::os::raw::c_void),
25372>;
25373pub type PFNGLNORMALPOINTERVINTELPROC = ::std::option::Option<
25374    unsafe extern "C" fn(type_: GLenum, pointer: *mut *const ::std::os::raw::c_void),
25375>;
25376pub type PFNGLCOLORPOINTERVINTELPROC = ::std::option::Option<
25377    unsafe extern "C" fn(size: GLint, type_: GLenum, pointer: *mut *const ::std::os::raw::c_void),
25378>;
25379pub type PFNGLTEXCOORDPOINTERVINTELPROC = ::std::option::Option<
25380    unsafe extern "C" fn(size: GLint, type_: GLenum, pointer: *mut *const ::std::os::raw::c_void),
25381>;
25382extern "C" {
25383    pub fn glVertexPointervINTEL(
25384        size: GLint,
25385        type_: GLenum,
25386        pointer: *mut *const ::std::os::raw::c_void,
25387    );
25388}
25389extern "C" {
25390    pub fn glNormalPointervINTEL(type_: GLenum, pointer: *mut *const ::std::os::raw::c_void);
25391}
25392extern "C" {
25393    pub fn glColorPointervINTEL(
25394        size: GLint,
25395        type_: GLenum,
25396        pointer: *mut *const ::std::os::raw::c_void,
25397    );
25398}
25399extern "C" {
25400    pub fn glTexCoordPointervINTEL(
25401        size: GLint,
25402        type_: GLenum,
25403        pointer: *mut *const ::std::os::raw::c_void,
25404    );
25405}
25406pub type PFNGLBEGINPERFQUERYINTELPROC =
25407    ::std::option::Option<unsafe extern "C" fn(queryHandle: GLuint)>;
25408pub type PFNGLCREATEPERFQUERYINTELPROC =
25409    ::std::option::Option<unsafe extern "C" fn(queryId: GLuint, queryHandle: *mut GLuint)>;
25410pub type PFNGLDELETEPERFQUERYINTELPROC =
25411    ::std::option::Option<unsafe extern "C" fn(queryHandle: GLuint)>;
25412pub type PFNGLENDPERFQUERYINTELPROC =
25413    ::std::option::Option<unsafe extern "C" fn(queryHandle: GLuint)>;
25414pub type PFNGLGETFIRSTPERFQUERYIDINTELPROC =
25415    ::std::option::Option<unsafe extern "C" fn(queryId: *mut GLuint)>;
25416pub type PFNGLGETNEXTPERFQUERYIDINTELPROC =
25417    ::std::option::Option<unsafe extern "C" fn(queryId: GLuint, nextQueryId: *mut GLuint)>;
25418pub type PFNGLGETPERFCOUNTERINFOINTELPROC = ::std::option::Option<
25419    unsafe extern "C" fn(
25420        queryId: GLuint,
25421        counterId: GLuint,
25422        counterNameLength: GLuint,
25423        counterName: *mut GLchar,
25424        counterDescLength: GLuint,
25425        counterDesc: *mut GLchar,
25426        counterOffset: *mut GLuint,
25427        counterDataSize: *mut GLuint,
25428        counterTypeEnum: *mut GLuint,
25429        counterDataTypeEnum: *mut GLuint,
25430        rawCounterMaxValue: *mut GLuint64,
25431    ),
25432>;
25433pub type PFNGLGETPERFQUERYDATAINTELPROC = ::std::option::Option<
25434    unsafe extern "C" fn(
25435        queryHandle: GLuint,
25436        flags: GLuint,
25437        dataSize: GLsizei,
25438        data: *mut ::std::os::raw::c_void,
25439        bytesWritten: *mut GLuint,
25440    ),
25441>;
25442pub type PFNGLGETPERFQUERYIDBYNAMEINTELPROC =
25443    ::std::option::Option<unsafe extern "C" fn(queryName: *mut GLchar, queryId: *mut GLuint)>;
25444pub type PFNGLGETPERFQUERYINFOINTELPROC = ::std::option::Option<
25445    unsafe extern "C" fn(
25446        queryId: GLuint,
25447        queryNameLength: GLuint,
25448        queryName: *mut GLchar,
25449        dataSize: *mut GLuint,
25450        noCounters: *mut GLuint,
25451        noInstances: *mut GLuint,
25452        capsMask: *mut GLuint,
25453    ),
25454>;
25455extern "C" {
25456    pub fn glBeginPerfQueryINTEL(queryHandle: GLuint);
25457}
25458extern "C" {
25459    pub fn glCreatePerfQueryINTEL(queryId: GLuint, queryHandle: *mut GLuint);
25460}
25461extern "C" {
25462    pub fn glDeletePerfQueryINTEL(queryHandle: GLuint);
25463}
25464extern "C" {
25465    pub fn glEndPerfQueryINTEL(queryHandle: GLuint);
25466}
25467extern "C" {
25468    pub fn glGetFirstPerfQueryIdINTEL(queryId: *mut GLuint);
25469}
25470extern "C" {
25471    pub fn glGetNextPerfQueryIdINTEL(queryId: GLuint, nextQueryId: *mut GLuint);
25472}
25473extern "C" {
25474    pub fn glGetPerfCounterInfoINTEL(
25475        queryId: GLuint,
25476        counterId: GLuint,
25477        counterNameLength: GLuint,
25478        counterName: *mut GLchar,
25479        counterDescLength: GLuint,
25480        counterDesc: *mut GLchar,
25481        counterOffset: *mut GLuint,
25482        counterDataSize: *mut GLuint,
25483        counterTypeEnum: *mut GLuint,
25484        counterDataTypeEnum: *mut GLuint,
25485        rawCounterMaxValue: *mut GLuint64,
25486    );
25487}
25488extern "C" {
25489    pub fn glGetPerfQueryDataINTEL(
25490        queryHandle: GLuint,
25491        flags: GLuint,
25492        dataSize: GLsizei,
25493        data: *mut ::std::os::raw::c_void,
25494        bytesWritten: *mut GLuint,
25495    );
25496}
25497extern "C" {
25498    pub fn glGetPerfQueryIdByNameINTEL(queryName: *mut GLchar, queryId: *mut GLuint);
25499}
25500extern "C" {
25501    pub fn glGetPerfQueryInfoINTEL(
25502        queryId: GLuint,
25503        queryNameLength: GLuint,
25504        queryName: *mut GLchar,
25505        dataSize: *mut GLuint,
25506        noCounters: *mut GLuint,
25507        noInstances: *mut GLuint,
25508        capsMask: *mut GLuint,
25509    );
25510}
25511pub type PFNGLFRAMEBUFFERPARAMETERIMESAPROC =
25512    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, param: GLint)>;
25513pub type PFNGLGETFRAMEBUFFERPARAMETERIVMESAPROC =
25514    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
25515extern "C" {
25516    pub fn glFramebufferParameteriMESA(target: GLenum, pname: GLenum, param: GLint);
25517}
25518extern "C" {
25519    pub fn glGetFramebufferParameterivMESA(target: GLenum, pname: GLenum, params: *mut GLint);
25520}
25521pub type PFNGLRESIZEBUFFERSMESAPROC = ::std::option::Option<unsafe extern "C" fn()>;
25522extern "C" {
25523    pub fn glResizeBuffersMESA();
25524}
25525pub type PFNGLWINDOWPOS2DMESAPROC =
25526    ::std::option::Option<unsafe extern "C" fn(x: GLdouble, y: GLdouble)>;
25527pub type PFNGLWINDOWPOS2DVMESAPROC =
25528    ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
25529pub type PFNGLWINDOWPOS2FMESAPROC =
25530    ::std::option::Option<unsafe extern "C" fn(x: GLfloat, y: GLfloat)>;
25531pub type PFNGLWINDOWPOS2FVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
25532pub type PFNGLWINDOWPOS2IMESAPROC = ::std::option::Option<unsafe extern "C" fn(x: GLint, y: GLint)>;
25533pub type PFNGLWINDOWPOS2IVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
25534pub type PFNGLWINDOWPOS2SMESAPROC =
25535    ::std::option::Option<unsafe extern "C" fn(x: GLshort, y: GLshort)>;
25536pub type PFNGLWINDOWPOS2SVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
25537pub type PFNGLWINDOWPOS3DMESAPROC =
25538    ::std::option::Option<unsafe extern "C" fn(x: GLdouble, y: GLdouble, z: GLdouble)>;
25539pub type PFNGLWINDOWPOS3DVMESAPROC =
25540    ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
25541pub type PFNGLWINDOWPOS3FMESAPROC =
25542    ::std::option::Option<unsafe extern "C" fn(x: GLfloat, y: GLfloat, z: GLfloat)>;
25543pub type PFNGLWINDOWPOS3FVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
25544pub type PFNGLWINDOWPOS3IMESAPROC =
25545    ::std::option::Option<unsafe extern "C" fn(x: GLint, y: GLint, z: GLint)>;
25546pub type PFNGLWINDOWPOS3IVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
25547pub type PFNGLWINDOWPOS3SMESAPROC =
25548    ::std::option::Option<unsafe extern "C" fn(x: GLshort, y: GLshort, z: GLshort)>;
25549pub type PFNGLWINDOWPOS3SVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
25550pub type PFNGLWINDOWPOS4DMESAPROC =
25551    ::std::option::Option<unsafe extern "C" fn(x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble)>;
25552pub type PFNGLWINDOWPOS4DVMESAPROC =
25553    ::std::option::Option<unsafe extern "C" fn(v: *const GLdouble)>;
25554pub type PFNGLWINDOWPOS4FMESAPROC =
25555    ::std::option::Option<unsafe extern "C" fn(x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat)>;
25556pub type PFNGLWINDOWPOS4FVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLfloat)>;
25557pub type PFNGLWINDOWPOS4IMESAPROC =
25558    ::std::option::Option<unsafe extern "C" fn(x: GLint, y: GLint, z: GLint, w: GLint)>;
25559pub type PFNGLWINDOWPOS4IVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLint)>;
25560pub type PFNGLWINDOWPOS4SMESAPROC =
25561    ::std::option::Option<unsafe extern "C" fn(x: GLshort, y: GLshort, z: GLshort, w: GLshort)>;
25562pub type PFNGLWINDOWPOS4SVMESAPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLshort)>;
25563extern "C" {
25564    pub fn glWindowPos2dMESA(x: GLdouble, y: GLdouble);
25565}
25566extern "C" {
25567    pub fn glWindowPos2dvMESA(v: *const GLdouble);
25568}
25569extern "C" {
25570    pub fn glWindowPos2fMESA(x: GLfloat, y: GLfloat);
25571}
25572extern "C" {
25573    pub fn glWindowPos2fvMESA(v: *const GLfloat);
25574}
25575extern "C" {
25576    pub fn glWindowPos2iMESA(x: GLint, y: GLint);
25577}
25578extern "C" {
25579    pub fn glWindowPos2ivMESA(v: *const GLint);
25580}
25581extern "C" {
25582    pub fn glWindowPos2sMESA(x: GLshort, y: GLshort);
25583}
25584extern "C" {
25585    pub fn glWindowPos2svMESA(v: *const GLshort);
25586}
25587extern "C" {
25588    pub fn glWindowPos3dMESA(x: GLdouble, y: GLdouble, z: GLdouble);
25589}
25590extern "C" {
25591    pub fn glWindowPos3dvMESA(v: *const GLdouble);
25592}
25593extern "C" {
25594    pub fn glWindowPos3fMESA(x: GLfloat, y: GLfloat, z: GLfloat);
25595}
25596extern "C" {
25597    pub fn glWindowPos3fvMESA(v: *const GLfloat);
25598}
25599extern "C" {
25600    pub fn glWindowPos3iMESA(x: GLint, y: GLint, z: GLint);
25601}
25602extern "C" {
25603    pub fn glWindowPos3ivMESA(v: *const GLint);
25604}
25605extern "C" {
25606    pub fn glWindowPos3sMESA(x: GLshort, y: GLshort, z: GLshort);
25607}
25608extern "C" {
25609    pub fn glWindowPos3svMESA(v: *const GLshort);
25610}
25611extern "C" {
25612    pub fn glWindowPos4dMESA(x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
25613}
25614extern "C" {
25615    pub fn glWindowPos4dvMESA(v: *const GLdouble);
25616}
25617extern "C" {
25618    pub fn glWindowPos4fMESA(x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat);
25619}
25620extern "C" {
25621    pub fn glWindowPos4fvMESA(v: *const GLfloat);
25622}
25623extern "C" {
25624    pub fn glWindowPos4iMESA(x: GLint, y: GLint, z: GLint, w: GLint);
25625}
25626extern "C" {
25627    pub fn glWindowPos4ivMESA(v: *const GLint);
25628}
25629extern "C" {
25630    pub fn glWindowPos4sMESA(x: GLshort, y: GLshort, z: GLshort, w: GLshort);
25631}
25632extern "C" {
25633    pub fn glWindowPos4svMESA(v: *const GLshort);
25634}
25635pub type PFNGLBEGINCONDITIONALRENDERNVXPROC =
25636    ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
25637pub type PFNGLENDCONDITIONALRENDERNVXPROC = ::std::option::Option<unsafe extern "C" fn()>;
25638extern "C" {
25639    pub fn glBeginConditionalRenderNVX(id: GLuint);
25640}
25641extern "C" {
25642    pub fn glEndConditionalRenderNVX();
25643}
25644pub type PFNGLUPLOADGPUMASKNVXPROC = ::std::option::Option<unsafe extern "C" fn(mask: GLbitfield)>;
25645pub type PFNGLMULTICASTVIEWPORTARRAYVNVXPROC = ::std::option::Option<
25646    unsafe extern "C" fn(gpu: GLuint, first: GLuint, count: GLsizei, v: *const GLfloat),
25647>;
25648pub type PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC = ::std::option::Option<
25649    unsafe extern "C" fn(gpu: GLuint, index: GLuint, xcoeff: GLfloat, ycoeff: GLfloat),
25650>;
25651pub type PFNGLMULTICASTSCISSORARRAYVNVXPROC = ::std::option::Option<
25652    unsafe extern "C" fn(gpu: GLuint, first: GLuint, count: GLsizei, v: *const GLint),
25653>;
25654pub type PFNGLASYNCCOPYBUFFERSUBDATANVXPROC = ::std::option::Option<
25655    unsafe extern "C" fn(
25656        waitSemaphoreCount: GLsizei,
25657        waitSemaphoreArray: *const GLuint,
25658        fenceValueArray: *const GLuint64,
25659        readGpu: GLuint,
25660        writeGpuMask: GLbitfield,
25661        readBuffer: GLuint,
25662        writeBuffer: GLuint,
25663        readOffset: GLintptr,
25664        writeOffset: GLintptr,
25665        size: GLsizeiptr,
25666        signalSemaphoreCount: GLsizei,
25667        signalSemaphoreArray: *const GLuint,
25668        signalValueArray: *const GLuint64,
25669    ) -> GLuint,
25670>;
25671pub type PFNGLASYNCCOPYIMAGESUBDATANVXPROC = ::std::option::Option<
25672    unsafe extern "C" fn(
25673        waitSemaphoreCount: GLsizei,
25674        waitSemaphoreArray: *const GLuint,
25675        waitValueArray: *const GLuint64,
25676        srcGpu: GLuint,
25677        dstGpuMask: GLbitfield,
25678        srcName: GLuint,
25679        srcTarget: GLenum,
25680        srcLevel: GLint,
25681        srcX: GLint,
25682        srcY: GLint,
25683        srcZ: GLint,
25684        dstName: GLuint,
25685        dstTarget: GLenum,
25686        dstLevel: GLint,
25687        dstX: GLint,
25688        dstY: GLint,
25689        dstZ: GLint,
25690        srcWidth: GLsizei,
25691        srcHeight: GLsizei,
25692        srcDepth: GLsizei,
25693        signalSemaphoreCount: GLsizei,
25694        signalSemaphoreArray: *const GLuint,
25695        signalValueArray: *const GLuint64,
25696    ) -> GLuint,
25697>;
25698extern "C" {
25699    pub fn glUploadGpuMaskNVX(mask: GLbitfield);
25700}
25701extern "C" {
25702    pub fn glMulticastViewportArrayvNVX(
25703        gpu: GLuint,
25704        first: GLuint,
25705        count: GLsizei,
25706        v: *const GLfloat,
25707    );
25708}
25709extern "C" {
25710    pub fn glMulticastViewportPositionWScaleNVX(
25711        gpu: GLuint,
25712        index: GLuint,
25713        xcoeff: GLfloat,
25714        ycoeff: GLfloat,
25715    );
25716}
25717extern "C" {
25718    pub fn glMulticastScissorArrayvNVX(gpu: GLuint, first: GLuint, count: GLsizei, v: *const GLint);
25719}
25720extern "C" {
25721    pub fn glAsyncCopyBufferSubDataNVX(
25722        waitSemaphoreCount: GLsizei,
25723        waitSemaphoreArray: *const GLuint,
25724        fenceValueArray: *const GLuint64,
25725        readGpu: GLuint,
25726        writeGpuMask: GLbitfield,
25727        readBuffer: GLuint,
25728        writeBuffer: GLuint,
25729        readOffset: GLintptr,
25730        writeOffset: GLintptr,
25731        size: GLsizeiptr,
25732        signalSemaphoreCount: GLsizei,
25733        signalSemaphoreArray: *const GLuint,
25734        signalValueArray: *const GLuint64,
25735    ) -> GLuint;
25736}
25737extern "C" {
25738    pub fn glAsyncCopyImageSubDataNVX(
25739        waitSemaphoreCount: GLsizei,
25740        waitSemaphoreArray: *const GLuint,
25741        waitValueArray: *const GLuint64,
25742        srcGpu: GLuint,
25743        dstGpuMask: GLbitfield,
25744        srcName: GLuint,
25745        srcTarget: GLenum,
25746        srcLevel: GLint,
25747        srcX: GLint,
25748        srcY: GLint,
25749        srcZ: GLint,
25750        dstName: GLuint,
25751        dstTarget: GLenum,
25752        dstLevel: GLint,
25753        dstX: GLint,
25754        dstY: GLint,
25755        dstZ: GLint,
25756        srcWidth: GLsizei,
25757        srcHeight: GLsizei,
25758        srcDepth: GLsizei,
25759        signalSemaphoreCount: GLsizei,
25760        signalSemaphoreArray: *const GLuint,
25761        signalValueArray: *const GLuint64,
25762    ) -> GLuint;
25763}
25764pub type PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC = ::std::option::Option<
25765    unsafe extern "C" fn(
25766        gpuMask: GLbitfield,
25767        buffer: GLuint,
25768        offset: GLintptr,
25769        size: GLsizeiptr,
25770        data: *const ::std::os::raw::c_void,
25771    ),
25772>;
25773pub type PFNGLLGPUCOPYIMAGESUBDATANVXPROC = ::std::option::Option<
25774    unsafe extern "C" fn(
25775        sourceGpu: GLuint,
25776        destinationGpuMask: GLbitfield,
25777        srcName: GLuint,
25778        srcTarget: GLenum,
25779        srcLevel: GLint,
25780        srcX: GLint,
25781        srxY: GLint,
25782        srcZ: GLint,
25783        dstName: GLuint,
25784        dstTarget: GLenum,
25785        dstLevel: GLint,
25786        dstX: GLint,
25787        dstY: GLint,
25788        dstZ: GLint,
25789        width: GLsizei,
25790        height: GLsizei,
25791        depth: GLsizei,
25792    ),
25793>;
25794pub type PFNGLLGPUINTERLOCKNVXPROC = ::std::option::Option<unsafe extern "C" fn()>;
25795extern "C" {
25796    pub fn glLGPUNamedBufferSubDataNVX(
25797        gpuMask: GLbitfield,
25798        buffer: GLuint,
25799        offset: GLintptr,
25800        size: GLsizeiptr,
25801        data: *const ::std::os::raw::c_void,
25802    );
25803}
25804extern "C" {
25805    pub fn glLGPUCopyImageSubDataNVX(
25806        sourceGpu: GLuint,
25807        destinationGpuMask: GLbitfield,
25808        srcName: GLuint,
25809        srcTarget: GLenum,
25810        srcLevel: GLint,
25811        srcX: GLint,
25812        srxY: GLint,
25813        srcZ: GLint,
25814        dstName: GLuint,
25815        dstTarget: GLenum,
25816        dstLevel: GLint,
25817        dstX: GLint,
25818        dstY: GLint,
25819        dstZ: GLint,
25820        width: GLsizei,
25821        height: GLsizei,
25822        depth: GLsizei,
25823    );
25824}
25825extern "C" {
25826    pub fn glLGPUInterlockNVX();
25827}
25828pub type PFNGLCREATEPROGRESSFENCENVXPROC = ::std::option::Option<unsafe extern "C" fn() -> GLuint>;
25829pub type PFNGLSIGNALSEMAPHOREUI64NVXPROC = ::std::option::Option<
25830    unsafe extern "C" fn(
25831        signalGpu: GLuint,
25832        fenceObjectCount: GLsizei,
25833        semaphoreArray: *const GLuint,
25834        fenceValueArray: *const GLuint64,
25835    ),
25836>;
25837pub type PFNGLWAITSEMAPHOREUI64NVXPROC = ::std::option::Option<
25838    unsafe extern "C" fn(
25839        waitGpu: GLuint,
25840        fenceObjectCount: GLsizei,
25841        semaphoreArray: *const GLuint,
25842        fenceValueArray: *const GLuint64,
25843    ),
25844>;
25845pub type PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC = ::std::option::Option<
25846    unsafe extern "C" fn(
25847        fenceObjectCount: GLsizei,
25848        semaphoreArray: *const GLuint,
25849        fenceValueArray: *const GLuint64,
25850    ),
25851>;
25852extern "C" {
25853    pub fn glCreateProgressFenceNVX() -> GLuint;
25854}
25855extern "C" {
25856    pub fn glSignalSemaphoreui64NVX(
25857        signalGpu: GLuint,
25858        fenceObjectCount: GLsizei,
25859        semaphoreArray: *const GLuint,
25860        fenceValueArray: *const GLuint64,
25861    );
25862}
25863extern "C" {
25864    pub fn glWaitSemaphoreui64NVX(
25865        waitGpu: GLuint,
25866        fenceObjectCount: GLsizei,
25867        semaphoreArray: *const GLuint,
25868        fenceValueArray: *const GLuint64,
25869    );
25870}
25871extern "C" {
25872    pub fn glClientWaitSemaphoreui64NVX(
25873        fenceObjectCount: GLsizei,
25874        semaphoreArray: *const GLuint,
25875        fenceValueArray: *const GLuint64,
25876    );
25877}
25878pub type PFNGLALPHATOCOVERAGEDITHERCONTROLNVPROC =
25879    ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
25880extern "C" {
25881    pub fn glAlphaToCoverageDitherControlNV(mode: GLenum);
25882}
25883pub type PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSNVPROC = ::std::option::Option<
25884    unsafe extern "C" fn(
25885        mode: GLenum,
25886        indirect: *const ::std::os::raw::c_void,
25887        drawCount: GLsizei,
25888        stride: GLsizei,
25889        vertexBufferCount: GLint,
25890    ),
25891>;
25892pub type PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSNVPROC = ::std::option::Option<
25893    unsafe extern "C" fn(
25894        mode: GLenum,
25895        type_: GLenum,
25896        indirect: *const ::std::os::raw::c_void,
25897        drawCount: GLsizei,
25898        stride: GLsizei,
25899        vertexBufferCount: GLint,
25900    ),
25901>;
25902extern "C" {
25903    pub fn glMultiDrawArraysIndirectBindlessNV(
25904        mode: GLenum,
25905        indirect: *const ::std::os::raw::c_void,
25906        drawCount: GLsizei,
25907        stride: GLsizei,
25908        vertexBufferCount: GLint,
25909    );
25910}
25911extern "C" {
25912    pub fn glMultiDrawElementsIndirectBindlessNV(
25913        mode: GLenum,
25914        type_: GLenum,
25915        indirect: *const ::std::os::raw::c_void,
25916        drawCount: GLsizei,
25917        stride: GLsizei,
25918        vertexBufferCount: GLint,
25919    );
25920}
25921pub type PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSCOUNTNVPROC = ::std::option::Option<
25922    unsafe extern "C" fn(
25923        mode: GLenum,
25924        indirect: *const ::std::os::raw::c_void,
25925        drawCount: GLsizei,
25926        maxDrawCount: GLsizei,
25927        stride: GLsizei,
25928        vertexBufferCount: GLint,
25929    ),
25930>;
25931pub type PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSCOUNTNVPROC = ::std::option::Option<
25932    unsafe extern "C" fn(
25933        mode: GLenum,
25934        type_: GLenum,
25935        indirect: *const ::std::os::raw::c_void,
25936        drawCount: GLsizei,
25937        maxDrawCount: GLsizei,
25938        stride: GLsizei,
25939        vertexBufferCount: GLint,
25940    ),
25941>;
25942extern "C" {
25943    pub fn glMultiDrawArraysIndirectBindlessCountNV(
25944        mode: GLenum,
25945        indirect: *const ::std::os::raw::c_void,
25946        drawCount: GLsizei,
25947        maxDrawCount: GLsizei,
25948        stride: GLsizei,
25949        vertexBufferCount: GLint,
25950    );
25951}
25952extern "C" {
25953    pub fn glMultiDrawElementsIndirectBindlessCountNV(
25954        mode: GLenum,
25955        type_: GLenum,
25956        indirect: *const ::std::os::raw::c_void,
25957        drawCount: GLsizei,
25958        maxDrawCount: GLsizei,
25959        stride: GLsizei,
25960        vertexBufferCount: GLint,
25961    );
25962}
25963pub type PFNGLGETTEXTUREHANDLENVPROC =
25964    ::std::option::Option<unsafe extern "C" fn(texture: GLuint) -> GLuint64>;
25965pub type PFNGLGETTEXTURESAMPLERHANDLENVPROC =
25966    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, sampler: GLuint) -> GLuint64>;
25967pub type PFNGLMAKETEXTUREHANDLERESIDENTNVPROC =
25968    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64)>;
25969pub type PFNGLMAKETEXTUREHANDLENONRESIDENTNVPROC =
25970    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64)>;
25971pub type PFNGLGETIMAGEHANDLENVPROC = ::std::option::Option<
25972    unsafe extern "C" fn(
25973        texture: GLuint,
25974        level: GLint,
25975        layered: GLboolean,
25976        layer: GLint,
25977        format: GLenum,
25978    ) -> GLuint64,
25979>;
25980pub type PFNGLMAKEIMAGEHANDLERESIDENTNVPROC =
25981    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64, access: GLenum)>;
25982pub type PFNGLMAKEIMAGEHANDLENONRESIDENTNVPROC =
25983    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64)>;
25984pub type PFNGLUNIFORMHANDLEUI64NVPROC =
25985    ::std::option::Option<unsafe extern "C" fn(location: GLint, value: GLuint64)>;
25986pub type PFNGLUNIFORMHANDLEUI64VNVPROC = ::std::option::Option<
25987    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64),
25988>;
25989pub type PFNGLPROGRAMUNIFORMHANDLEUI64NVPROC =
25990    ::std::option::Option<unsafe extern "C" fn(program: GLuint, location: GLint, value: GLuint64)>;
25991pub type PFNGLPROGRAMUNIFORMHANDLEUI64VNVPROC = ::std::option::Option<
25992    unsafe extern "C" fn(program: GLuint, location: GLint, count: GLsizei, values: *const GLuint64),
25993>;
25994pub type PFNGLISTEXTUREHANDLERESIDENTNVPROC =
25995    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64) -> GLboolean>;
25996pub type PFNGLISIMAGEHANDLERESIDENTNVPROC =
25997    ::std::option::Option<unsafe extern "C" fn(handle: GLuint64) -> GLboolean>;
25998extern "C" {
25999    pub fn glGetTextureHandleNV(texture: GLuint) -> GLuint64;
26000}
26001extern "C" {
26002    pub fn glGetTextureSamplerHandleNV(texture: GLuint, sampler: GLuint) -> GLuint64;
26003}
26004extern "C" {
26005    pub fn glMakeTextureHandleResidentNV(handle: GLuint64);
26006}
26007extern "C" {
26008    pub fn glMakeTextureHandleNonResidentNV(handle: GLuint64);
26009}
26010extern "C" {
26011    pub fn glGetImageHandleNV(
26012        texture: GLuint,
26013        level: GLint,
26014        layered: GLboolean,
26015        layer: GLint,
26016        format: GLenum,
26017    ) -> GLuint64;
26018}
26019extern "C" {
26020    pub fn glMakeImageHandleResidentNV(handle: GLuint64, access: GLenum);
26021}
26022extern "C" {
26023    pub fn glMakeImageHandleNonResidentNV(handle: GLuint64);
26024}
26025extern "C" {
26026    pub fn glUniformHandleui64NV(location: GLint, value: GLuint64);
26027}
26028extern "C" {
26029    pub fn glUniformHandleui64vNV(location: GLint, count: GLsizei, value: *const GLuint64);
26030}
26031extern "C" {
26032    pub fn glProgramUniformHandleui64NV(program: GLuint, location: GLint, value: GLuint64);
26033}
26034extern "C" {
26035    pub fn glProgramUniformHandleui64vNV(
26036        program: GLuint,
26037        location: GLint,
26038        count: GLsizei,
26039        values: *const GLuint64,
26040    );
26041}
26042extern "C" {
26043    pub fn glIsTextureHandleResidentNV(handle: GLuint64) -> GLboolean;
26044}
26045extern "C" {
26046    pub fn glIsImageHandleResidentNV(handle: GLuint64) -> GLboolean;
26047}
26048pub type PFNGLBLENDPARAMETERINVPROC =
26049    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, value: GLint)>;
26050pub type PFNGLBLENDBARRIERNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
26051extern "C" {
26052    pub fn glBlendParameteriNV(pname: GLenum, value: GLint);
26053}
26054extern "C" {
26055    pub fn glBlendBarrierNV();
26056}
26057pub type PFNGLVIEWPORTPOSITIONWSCALENVPROC =
26058    ::std::option::Option<unsafe extern "C" fn(index: GLuint, xcoeff: GLfloat, ycoeff: GLfloat)>;
26059extern "C" {
26060    pub fn glViewportPositionWScaleNV(index: GLuint, xcoeff: GLfloat, ycoeff: GLfloat);
26061}
26062pub type PFNGLCREATESTATESNVPROC =
26063    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, states: *mut GLuint)>;
26064pub type PFNGLDELETESTATESNVPROC =
26065    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, states: *const GLuint)>;
26066pub type PFNGLISSTATENVPROC =
26067    ::std::option::Option<unsafe extern "C" fn(state: GLuint) -> GLboolean>;
26068pub type PFNGLSTATECAPTURENVPROC =
26069    ::std::option::Option<unsafe extern "C" fn(state: GLuint, mode: GLenum)>;
26070pub type PFNGLGETCOMMANDHEADERNVPROC =
26071    ::std::option::Option<unsafe extern "C" fn(tokenID: GLenum, size: GLuint) -> GLuint>;
26072pub type PFNGLGETSTAGEINDEXNVPROC =
26073    ::std::option::Option<unsafe extern "C" fn(shadertype: GLenum) -> GLushort>;
26074pub type PFNGLDRAWCOMMANDSNVPROC = ::std::option::Option<
26075    unsafe extern "C" fn(
26076        primitiveMode: GLenum,
26077        buffer: GLuint,
26078        indirects: *const GLintptr,
26079        sizes: *const GLsizei,
26080        count: GLuint,
26081    ),
26082>;
26083pub type PFNGLDRAWCOMMANDSADDRESSNVPROC = ::std::option::Option<
26084    unsafe extern "C" fn(
26085        primitiveMode: GLenum,
26086        indirects: *const GLuint64,
26087        sizes: *const GLsizei,
26088        count: GLuint,
26089    ),
26090>;
26091pub type PFNGLDRAWCOMMANDSSTATESNVPROC = ::std::option::Option<
26092    unsafe extern "C" fn(
26093        buffer: GLuint,
26094        indirects: *const GLintptr,
26095        sizes: *const GLsizei,
26096        states: *const GLuint,
26097        fbos: *const GLuint,
26098        count: GLuint,
26099    ),
26100>;
26101pub type PFNGLDRAWCOMMANDSSTATESADDRESSNVPROC = ::std::option::Option<
26102    unsafe extern "C" fn(
26103        indirects: *const GLuint64,
26104        sizes: *const GLsizei,
26105        states: *const GLuint,
26106        fbos: *const GLuint,
26107        count: GLuint,
26108    ),
26109>;
26110pub type PFNGLCREATECOMMANDLISTSNVPROC =
26111    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, lists: *mut GLuint)>;
26112pub type PFNGLDELETECOMMANDLISTSNVPROC =
26113    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, lists: *const GLuint)>;
26114pub type PFNGLISCOMMANDLISTNVPROC =
26115    ::std::option::Option<unsafe extern "C" fn(list: GLuint) -> GLboolean>;
26116pub type PFNGLLISTDRAWCOMMANDSSTATESCLIENTNVPROC = ::std::option::Option<
26117    unsafe extern "C" fn(
26118        list: GLuint,
26119        segment: GLuint,
26120        indirects: *mut *const ::std::os::raw::c_void,
26121        sizes: *const GLsizei,
26122        states: *const GLuint,
26123        fbos: *const GLuint,
26124        count: GLuint,
26125    ),
26126>;
26127pub type PFNGLCOMMANDLISTSEGMENTSNVPROC =
26128    ::std::option::Option<unsafe extern "C" fn(list: GLuint, segments: GLuint)>;
26129pub type PFNGLCOMPILECOMMANDLISTNVPROC = ::std::option::Option<unsafe extern "C" fn(list: GLuint)>;
26130pub type PFNGLCALLCOMMANDLISTNVPROC = ::std::option::Option<unsafe extern "C" fn(list: GLuint)>;
26131extern "C" {
26132    pub fn glCreateStatesNV(n: GLsizei, states: *mut GLuint);
26133}
26134extern "C" {
26135    pub fn glDeleteStatesNV(n: GLsizei, states: *const GLuint);
26136}
26137extern "C" {
26138    pub fn glIsStateNV(state: GLuint) -> GLboolean;
26139}
26140extern "C" {
26141    pub fn glStateCaptureNV(state: GLuint, mode: GLenum);
26142}
26143extern "C" {
26144    pub fn glGetCommandHeaderNV(tokenID: GLenum, size: GLuint) -> GLuint;
26145}
26146extern "C" {
26147    pub fn glGetStageIndexNV(shadertype: GLenum) -> GLushort;
26148}
26149extern "C" {
26150    pub fn glDrawCommandsNV(
26151        primitiveMode: GLenum,
26152        buffer: GLuint,
26153        indirects: *const GLintptr,
26154        sizes: *const GLsizei,
26155        count: GLuint,
26156    );
26157}
26158extern "C" {
26159    pub fn glDrawCommandsAddressNV(
26160        primitiveMode: GLenum,
26161        indirects: *const GLuint64,
26162        sizes: *const GLsizei,
26163        count: GLuint,
26164    );
26165}
26166extern "C" {
26167    pub fn glDrawCommandsStatesNV(
26168        buffer: GLuint,
26169        indirects: *const GLintptr,
26170        sizes: *const GLsizei,
26171        states: *const GLuint,
26172        fbos: *const GLuint,
26173        count: GLuint,
26174    );
26175}
26176extern "C" {
26177    pub fn glDrawCommandsStatesAddressNV(
26178        indirects: *const GLuint64,
26179        sizes: *const GLsizei,
26180        states: *const GLuint,
26181        fbos: *const GLuint,
26182        count: GLuint,
26183    );
26184}
26185extern "C" {
26186    pub fn glCreateCommandListsNV(n: GLsizei, lists: *mut GLuint);
26187}
26188extern "C" {
26189    pub fn glDeleteCommandListsNV(n: GLsizei, lists: *const GLuint);
26190}
26191extern "C" {
26192    pub fn glIsCommandListNV(list: GLuint) -> GLboolean;
26193}
26194extern "C" {
26195    pub fn glListDrawCommandsStatesClientNV(
26196        list: GLuint,
26197        segment: GLuint,
26198        indirects: *mut *const ::std::os::raw::c_void,
26199        sizes: *const GLsizei,
26200        states: *const GLuint,
26201        fbos: *const GLuint,
26202        count: GLuint,
26203    );
26204}
26205extern "C" {
26206    pub fn glCommandListSegmentsNV(list: GLuint, segments: GLuint);
26207}
26208extern "C" {
26209    pub fn glCompileCommandListNV(list: GLuint);
26210}
26211extern "C" {
26212    pub fn glCallCommandListNV(list: GLuint);
26213}
26214pub type PFNGLBEGINCONDITIONALRENDERNVPROC =
26215    ::std::option::Option<unsafe extern "C" fn(id: GLuint, mode: GLenum)>;
26216pub type PFNGLENDCONDITIONALRENDERNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
26217extern "C" {
26218    pub fn glBeginConditionalRenderNV(id: GLuint, mode: GLenum);
26219}
26220extern "C" {
26221    pub fn glEndConditionalRenderNV();
26222}
26223pub type PFNGLSUBPIXELPRECISIONBIASNVPROC =
26224    ::std::option::Option<unsafe extern "C" fn(xbits: GLuint, ybits: GLuint)>;
26225extern "C" {
26226    pub fn glSubpixelPrecisionBiasNV(xbits: GLuint, ybits: GLuint);
26227}
26228pub type PFNGLCONSERVATIVERASTERPARAMETERFNVPROC =
26229    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, value: GLfloat)>;
26230extern "C" {
26231    pub fn glConservativeRasterParameterfNV(pname: GLenum, value: GLfloat);
26232}
26233pub type PFNGLCONSERVATIVERASTERPARAMETERINVPROC =
26234    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
26235extern "C" {
26236    pub fn glConservativeRasterParameteriNV(pname: GLenum, param: GLint);
26237}
26238pub type PFNGLCOPYIMAGESUBDATANVPROC = ::std::option::Option<
26239    unsafe extern "C" fn(
26240        srcName: GLuint,
26241        srcTarget: GLenum,
26242        srcLevel: GLint,
26243        srcX: GLint,
26244        srcY: GLint,
26245        srcZ: GLint,
26246        dstName: GLuint,
26247        dstTarget: GLenum,
26248        dstLevel: GLint,
26249        dstX: GLint,
26250        dstY: GLint,
26251        dstZ: GLint,
26252        width: GLsizei,
26253        height: GLsizei,
26254        depth: GLsizei,
26255    ),
26256>;
26257extern "C" {
26258    pub fn glCopyImageSubDataNV(
26259        srcName: GLuint,
26260        srcTarget: GLenum,
26261        srcLevel: GLint,
26262        srcX: GLint,
26263        srcY: GLint,
26264        srcZ: GLint,
26265        dstName: GLuint,
26266        dstTarget: GLenum,
26267        dstLevel: GLint,
26268        dstX: GLint,
26269        dstY: GLint,
26270        dstZ: GLint,
26271        width: GLsizei,
26272        height: GLsizei,
26273        depth: GLsizei,
26274    );
26275}
26276pub type PFNGLDEPTHRANGEDNVPROC =
26277    ::std::option::Option<unsafe extern "C" fn(zNear: GLdouble, zFar: GLdouble)>;
26278pub type PFNGLCLEARDEPTHDNVPROC = ::std::option::Option<unsafe extern "C" fn(depth: GLdouble)>;
26279pub type PFNGLDEPTHBOUNDSDNVPROC =
26280    ::std::option::Option<unsafe extern "C" fn(zmin: GLdouble, zmax: GLdouble)>;
26281extern "C" {
26282    pub fn glDepthRangedNV(zNear: GLdouble, zFar: GLdouble);
26283}
26284extern "C" {
26285    pub fn glClearDepthdNV(depth: GLdouble);
26286}
26287extern "C" {
26288    pub fn glDepthBoundsdNV(zmin: GLdouble, zmax: GLdouble);
26289}
26290pub type PFNGLDRAWTEXTURENVPROC = ::std::option::Option<
26291    unsafe extern "C" fn(
26292        texture: GLuint,
26293        sampler: GLuint,
26294        x0: GLfloat,
26295        y0: GLfloat,
26296        x1: GLfloat,
26297        y1: GLfloat,
26298        z: GLfloat,
26299        s0: GLfloat,
26300        t0: GLfloat,
26301        s1: GLfloat,
26302        t1: GLfloat,
26303    ),
26304>;
26305extern "C" {
26306    pub fn glDrawTextureNV(
26307        texture: GLuint,
26308        sampler: GLuint,
26309        x0: GLfloat,
26310        y0: GLfloat,
26311        x1: GLfloat,
26312        y1: GLfloat,
26313        z: GLfloat,
26314        s0: GLfloat,
26315        t0: GLfloat,
26316        s1: GLfloat,
26317        t1: GLfloat,
26318    );
26319}
26320pub type GLVULKANPROCNV = ::std::option::Option<unsafe extern "C" fn()>;
26321pub type PFNGLDRAWVKIMAGENVPROC = ::std::option::Option<
26322    unsafe extern "C" fn(
26323        vkImage: GLuint64,
26324        sampler: GLuint,
26325        x0: GLfloat,
26326        y0: GLfloat,
26327        x1: GLfloat,
26328        y1: GLfloat,
26329        z: GLfloat,
26330        s0: GLfloat,
26331        t0: GLfloat,
26332        s1: GLfloat,
26333        t1: GLfloat,
26334    ),
26335>;
26336pub type PFNGLGETVKPROCADDRNVPROC =
26337    ::std::option::Option<unsafe extern "C" fn(name: *const GLchar) -> GLVULKANPROCNV>;
26338pub type PFNGLWAITVKSEMAPHORENVPROC =
26339    ::std::option::Option<unsafe extern "C" fn(vkSemaphore: GLuint64)>;
26340pub type PFNGLSIGNALVKSEMAPHORENVPROC =
26341    ::std::option::Option<unsafe extern "C" fn(vkSemaphore: GLuint64)>;
26342pub type PFNGLSIGNALVKFENCENVPROC = ::std::option::Option<unsafe extern "C" fn(vkFence: GLuint64)>;
26343extern "C" {
26344    pub fn glDrawVkImageNV(
26345        vkImage: GLuint64,
26346        sampler: GLuint,
26347        x0: GLfloat,
26348        y0: GLfloat,
26349        x1: GLfloat,
26350        y1: GLfloat,
26351        z: GLfloat,
26352        s0: GLfloat,
26353        t0: GLfloat,
26354        s1: GLfloat,
26355        t1: GLfloat,
26356    );
26357}
26358extern "C" {
26359    pub fn glGetVkProcAddrNV(name: *const GLchar) -> GLVULKANPROCNV;
26360}
26361extern "C" {
26362    pub fn glWaitVkSemaphoreNV(vkSemaphore: GLuint64);
26363}
26364extern "C" {
26365    pub fn glSignalVkSemaphoreNV(vkSemaphore: GLuint64);
26366}
26367extern "C" {
26368    pub fn glSignalVkFenceNV(vkFence: GLuint64);
26369}
26370pub type PFNGLMAPCONTROLPOINTSNVPROC = ::std::option::Option<
26371    unsafe extern "C" fn(
26372        target: GLenum,
26373        index: GLuint,
26374        type_: GLenum,
26375        ustride: GLsizei,
26376        vstride: GLsizei,
26377        uorder: GLint,
26378        vorder: GLint,
26379        packed: GLboolean,
26380        points: *const ::std::os::raw::c_void,
26381    ),
26382>;
26383pub type PFNGLMAPPARAMETERIVNVPROC = ::std::option::Option<
26384    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLint),
26385>;
26386pub type PFNGLMAPPARAMETERFVNVPROC = ::std::option::Option<
26387    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfloat),
26388>;
26389pub type PFNGLGETMAPCONTROLPOINTSNVPROC = ::std::option::Option<
26390    unsafe extern "C" fn(
26391        target: GLenum,
26392        index: GLuint,
26393        type_: GLenum,
26394        ustride: GLsizei,
26395        vstride: GLsizei,
26396        packed: GLboolean,
26397        points: *mut ::std::os::raw::c_void,
26398    ),
26399>;
26400pub type PFNGLGETMAPPARAMETERIVNVPROC =
26401    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
26402pub type PFNGLGETMAPPARAMETERFVNVPROC = ::std::option::Option<
26403    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
26404>;
26405pub type PFNGLGETMAPATTRIBPARAMETERIVNVPROC = ::std::option::Option<
26406    unsafe extern "C" fn(target: GLenum, index: GLuint, pname: GLenum, params: *mut GLint),
26407>;
26408pub type PFNGLGETMAPATTRIBPARAMETERFVNVPROC = ::std::option::Option<
26409    unsafe extern "C" fn(target: GLenum, index: GLuint, pname: GLenum, params: *mut GLfloat),
26410>;
26411pub type PFNGLEVALMAPSNVPROC =
26412    ::std::option::Option<unsafe extern "C" fn(target: GLenum, mode: GLenum)>;
26413extern "C" {
26414    pub fn glMapControlPointsNV(
26415        target: GLenum,
26416        index: GLuint,
26417        type_: GLenum,
26418        ustride: GLsizei,
26419        vstride: GLsizei,
26420        uorder: GLint,
26421        vorder: GLint,
26422        packed: GLboolean,
26423        points: *const ::std::os::raw::c_void,
26424    );
26425}
26426extern "C" {
26427    pub fn glMapParameterivNV(target: GLenum, pname: GLenum, params: *const GLint);
26428}
26429extern "C" {
26430    pub fn glMapParameterfvNV(target: GLenum, pname: GLenum, params: *const GLfloat);
26431}
26432extern "C" {
26433    pub fn glGetMapControlPointsNV(
26434        target: GLenum,
26435        index: GLuint,
26436        type_: GLenum,
26437        ustride: GLsizei,
26438        vstride: GLsizei,
26439        packed: GLboolean,
26440        points: *mut ::std::os::raw::c_void,
26441    );
26442}
26443extern "C" {
26444    pub fn glGetMapParameterivNV(target: GLenum, pname: GLenum, params: *mut GLint);
26445}
26446extern "C" {
26447    pub fn glGetMapParameterfvNV(target: GLenum, pname: GLenum, params: *mut GLfloat);
26448}
26449extern "C" {
26450    pub fn glGetMapAttribParameterivNV(
26451        target: GLenum,
26452        index: GLuint,
26453        pname: GLenum,
26454        params: *mut GLint,
26455    );
26456}
26457extern "C" {
26458    pub fn glGetMapAttribParameterfvNV(
26459        target: GLenum,
26460        index: GLuint,
26461        pname: GLenum,
26462        params: *mut GLfloat,
26463    );
26464}
26465extern "C" {
26466    pub fn glEvalMapsNV(target: GLenum, mode: GLenum);
26467}
26468pub type PFNGLGETMULTISAMPLEFVNVPROC =
26469    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, index: GLuint, val: *mut GLfloat)>;
26470pub type PFNGLSAMPLEMASKINDEXEDNVPROC =
26471    ::std::option::Option<unsafe extern "C" fn(index: GLuint, mask: GLbitfield)>;
26472pub type PFNGLTEXRENDERBUFFERNVPROC =
26473    ::std::option::Option<unsafe extern "C" fn(target: GLenum, renderbuffer: GLuint)>;
26474extern "C" {
26475    pub fn glGetMultisamplefvNV(pname: GLenum, index: GLuint, val: *mut GLfloat);
26476}
26477extern "C" {
26478    pub fn glSampleMaskIndexedNV(index: GLuint, mask: GLbitfield);
26479}
26480extern "C" {
26481    pub fn glTexRenderbufferNV(target: GLenum, renderbuffer: GLuint);
26482}
26483pub type PFNGLDELETEFENCESNVPROC =
26484    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, fences: *const GLuint)>;
26485pub type PFNGLGENFENCESNVPROC =
26486    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, fences: *mut GLuint)>;
26487pub type PFNGLISFENCENVPROC =
26488    ::std::option::Option<unsafe extern "C" fn(fence: GLuint) -> GLboolean>;
26489pub type PFNGLTESTFENCENVPROC =
26490    ::std::option::Option<unsafe extern "C" fn(fence: GLuint) -> GLboolean>;
26491pub type PFNGLGETFENCEIVNVPROC =
26492    ::std::option::Option<unsafe extern "C" fn(fence: GLuint, pname: GLenum, params: *mut GLint)>;
26493pub type PFNGLFINISHFENCENVPROC = ::std::option::Option<unsafe extern "C" fn(fence: GLuint)>;
26494pub type PFNGLSETFENCENVPROC =
26495    ::std::option::Option<unsafe extern "C" fn(fence: GLuint, condition: GLenum)>;
26496extern "C" {
26497    pub fn glDeleteFencesNV(n: GLsizei, fences: *const GLuint);
26498}
26499extern "C" {
26500    pub fn glGenFencesNV(n: GLsizei, fences: *mut GLuint);
26501}
26502extern "C" {
26503    pub fn glIsFenceNV(fence: GLuint) -> GLboolean;
26504}
26505extern "C" {
26506    pub fn glTestFenceNV(fence: GLuint) -> GLboolean;
26507}
26508extern "C" {
26509    pub fn glGetFenceivNV(fence: GLuint, pname: GLenum, params: *mut GLint);
26510}
26511extern "C" {
26512    pub fn glFinishFenceNV(fence: GLuint);
26513}
26514extern "C" {
26515    pub fn glSetFenceNV(fence: GLuint, condition: GLenum);
26516}
26517pub type PFNGLFRAGMENTCOVERAGECOLORNVPROC =
26518    ::std::option::Option<unsafe extern "C" fn(color: GLuint)>;
26519extern "C" {
26520    pub fn glFragmentCoverageColorNV(color: GLuint);
26521}
26522pub type PFNGLPROGRAMNAMEDPARAMETER4FNVPROC = ::std::option::Option<
26523    unsafe extern "C" fn(
26524        id: GLuint,
26525        len: GLsizei,
26526        name: *const GLubyte,
26527        x: GLfloat,
26528        y: GLfloat,
26529        z: GLfloat,
26530        w: GLfloat,
26531    ),
26532>;
26533pub type PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC = ::std::option::Option<
26534    unsafe extern "C" fn(id: GLuint, len: GLsizei, name: *const GLubyte, v: *const GLfloat),
26535>;
26536pub type PFNGLPROGRAMNAMEDPARAMETER4DNVPROC = ::std::option::Option<
26537    unsafe extern "C" fn(
26538        id: GLuint,
26539        len: GLsizei,
26540        name: *const GLubyte,
26541        x: GLdouble,
26542        y: GLdouble,
26543        z: GLdouble,
26544        w: GLdouble,
26545    ),
26546>;
26547pub type PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC = ::std::option::Option<
26548    unsafe extern "C" fn(id: GLuint, len: GLsizei, name: *const GLubyte, v: *const GLdouble),
26549>;
26550pub type PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC = ::std::option::Option<
26551    unsafe extern "C" fn(id: GLuint, len: GLsizei, name: *const GLubyte, params: *mut GLfloat),
26552>;
26553pub type PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC = ::std::option::Option<
26554    unsafe extern "C" fn(id: GLuint, len: GLsizei, name: *const GLubyte, params: *mut GLdouble),
26555>;
26556extern "C" {
26557    pub fn glProgramNamedParameter4fNV(
26558        id: GLuint,
26559        len: GLsizei,
26560        name: *const GLubyte,
26561        x: GLfloat,
26562        y: GLfloat,
26563        z: GLfloat,
26564        w: GLfloat,
26565    );
26566}
26567extern "C" {
26568    pub fn glProgramNamedParameter4fvNV(
26569        id: GLuint,
26570        len: GLsizei,
26571        name: *const GLubyte,
26572        v: *const GLfloat,
26573    );
26574}
26575extern "C" {
26576    pub fn glProgramNamedParameter4dNV(
26577        id: GLuint,
26578        len: GLsizei,
26579        name: *const GLubyte,
26580        x: GLdouble,
26581        y: GLdouble,
26582        z: GLdouble,
26583        w: GLdouble,
26584    );
26585}
26586extern "C" {
26587    pub fn glProgramNamedParameter4dvNV(
26588        id: GLuint,
26589        len: GLsizei,
26590        name: *const GLubyte,
26591        v: *const GLdouble,
26592    );
26593}
26594extern "C" {
26595    pub fn glGetProgramNamedParameterfvNV(
26596        id: GLuint,
26597        len: GLsizei,
26598        name: *const GLubyte,
26599        params: *mut GLfloat,
26600    );
26601}
26602extern "C" {
26603    pub fn glGetProgramNamedParameterdvNV(
26604        id: GLuint,
26605        len: GLsizei,
26606        name: *const GLubyte,
26607        params: *mut GLdouble,
26608    );
26609}
26610pub type PFNGLCOVERAGEMODULATIONTABLENVPROC =
26611    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, v: *const GLfloat)>;
26612pub type PFNGLGETCOVERAGEMODULATIONTABLENVPROC =
26613    ::std::option::Option<unsafe extern "C" fn(bufsize: GLsizei, v: *mut GLfloat)>;
26614pub type PFNGLCOVERAGEMODULATIONNVPROC =
26615    ::std::option::Option<unsafe extern "C" fn(components: GLenum)>;
26616extern "C" {
26617    pub fn glCoverageModulationTableNV(n: GLsizei, v: *const GLfloat);
26618}
26619extern "C" {
26620    pub fn glGetCoverageModulationTableNV(bufsize: GLsizei, v: *mut GLfloat);
26621}
26622extern "C" {
26623    pub fn glCoverageModulationNV(components: GLenum);
26624}
26625pub type PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC = ::std::option::Option<
26626    unsafe extern "C" fn(
26627        target: GLenum,
26628        coverageSamples: GLsizei,
26629        colorSamples: GLsizei,
26630        internalformat: GLenum,
26631        width: GLsizei,
26632        height: GLsizei,
26633    ),
26634>;
26635extern "C" {
26636    pub fn glRenderbufferStorageMultisampleCoverageNV(
26637        target: GLenum,
26638        coverageSamples: GLsizei,
26639        colorSamples: GLsizei,
26640        internalformat: GLenum,
26641        width: GLsizei,
26642        height: GLsizei,
26643    );
26644}
26645pub type PFNGLPROGRAMVERTEXLIMITNVPROC =
26646    ::std::option::Option<unsafe extern "C" fn(target: GLenum, limit: GLint)>;
26647pub type PFNGLFRAMEBUFFERTEXTUREEXTPROC = ::std::option::Option<
26648    unsafe extern "C" fn(target: GLenum, attachment: GLenum, texture: GLuint, level: GLint),
26649>;
26650pub type PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC = ::std::option::Option<
26651    unsafe extern "C" fn(
26652        target: GLenum,
26653        attachment: GLenum,
26654        texture: GLuint,
26655        level: GLint,
26656        face: GLenum,
26657    ),
26658>;
26659extern "C" {
26660    pub fn glProgramVertexLimitNV(target: GLenum, limit: GLint);
26661}
26662extern "C" {
26663    pub fn glFramebufferTextureEXT(
26664        target: GLenum,
26665        attachment: GLenum,
26666        texture: GLuint,
26667        level: GLint,
26668    );
26669}
26670extern "C" {
26671    pub fn glFramebufferTextureFaceEXT(
26672        target: GLenum,
26673        attachment: GLenum,
26674        texture: GLuint,
26675        level: GLint,
26676        face: GLenum,
26677    );
26678}
26679pub type PFNGLRENDERGPUMASKNVPROC = ::std::option::Option<unsafe extern "C" fn(mask: GLbitfield)>;
26680pub type PFNGLMULTICASTBUFFERSUBDATANVPROC = ::std::option::Option<
26681    unsafe extern "C" fn(
26682        gpuMask: GLbitfield,
26683        buffer: GLuint,
26684        offset: GLintptr,
26685        size: GLsizeiptr,
26686        data: *const ::std::os::raw::c_void,
26687    ),
26688>;
26689pub type PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC = ::std::option::Option<
26690    unsafe extern "C" fn(
26691        readGpu: GLuint,
26692        writeGpuMask: GLbitfield,
26693        readBuffer: GLuint,
26694        writeBuffer: GLuint,
26695        readOffset: GLintptr,
26696        writeOffset: GLintptr,
26697        size: GLsizeiptr,
26698    ),
26699>;
26700pub type PFNGLMULTICASTCOPYIMAGESUBDATANVPROC = ::std::option::Option<
26701    unsafe extern "C" fn(
26702        srcGpu: GLuint,
26703        dstGpuMask: GLbitfield,
26704        srcName: GLuint,
26705        srcTarget: GLenum,
26706        srcLevel: GLint,
26707        srcX: GLint,
26708        srcY: GLint,
26709        srcZ: GLint,
26710        dstName: GLuint,
26711        dstTarget: GLenum,
26712        dstLevel: GLint,
26713        dstX: GLint,
26714        dstY: GLint,
26715        dstZ: GLint,
26716        srcWidth: GLsizei,
26717        srcHeight: GLsizei,
26718        srcDepth: GLsizei,
26719    ),
26720>;
26721pub type PFNGLMULTICASTBLITFRAMEBUFFERNVPROC = ::std::option::Option<
26722    unsafe extern "C" fn(
26723        srcGpu: GLuint,
26724        dstGpu: GLuint,
26725        srcX0: GLint,
26726        srcY0: GLint,
26727        srcX1: GLint,
26728        srcY1: GLint,
26729        dstX0: GLint,
26730        dstY0: GLint,
26731        dstX1: GLint,
26732        dstY1: GLint,
26733        mask: GLbitfield,
26734        filter: GLenum,
26735    ),
26736>;
26737pub type PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC = ::std::option::Option<
26738    unsafe extern "C" fn(
26739        gpu: GLuint,
26740        framebuffer: GLuint,
26741        start: GLuint,
26742        count: GLsizei,
26743        v: *const GLfloat,
26744    ),
26745>;
26746pub type PFNGLMULTICASTBARRIERNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
26747pub type PFNGLMULTICASTWAITSYNCNVPROC =
26748    ::std::option::Option<unsafe extern "C" fn(signalGpu: GLuint, waitGpuMask: GLbitfield)>;
26749pub type PFNGLMULTICASTGETQUERYOBJECTIVNVPROC = ::std::option::Option<
26750    unsafe extern "C" fn(gpu: GLuint, id: GLuint, pname: GLenum, params: *mut GLint),
26751>;
26752pub type PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC = ::std::option::Option<
26753    unsafe extern "C" fn(gpu: GLuint, id: GLuint, pname: GLenum, params: *mut GLuint),
26754>;
26755pub type PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC = ::std::option::Option<
26756    unsafe extern "C" fn(gpu: GLuint, id: GLuint, pname: GLenum, params: *mut GLint64),
26757>;
26758pub type PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC = ::std::option::Option<
26759    unsafe extern "C" fn(gpu: GLuint, id: GLuint, pname: GLenum, params: *mut GLuint64),
26760>;
26761extern "C" {
26762    pub fn glRenderGpuMaskNV(mask: GLbitfield);
26763}
26764extern "C" {
26765    pub fn glMulticastBufferSubDataNV(
26766        gpuMask: GLbitfield,
26767        buffer: GLuint,
26768        offset: GLintptr,
26769        size: GLsizeiptr,
26770        data: *const ::std::os::raw::c_void,
26771    );
26772}
26773extern "C" {
26774    pub fn glMulticastCopyBufferSubDataNV(
26775        readGpu: GLuint,
26776        writeGpuMask: GLbitfield,
26777        readBuffer: GLuint,
26778        writeBuffer: GLuint,
26779        readOffset: GLintptr,
26780        writeOffset: GLintptr,
26781        size: GLsizeiptr,
26782    );
26783}
26784extern "C" {
26785    pub fn glMulticastCopyImageSubDataNV(
26786        srcGpu: GLuint,
26787        dstGpuMask: GLbitfield,
26788        srcName: GLuint,
26789        srcTarget: GLenum,
26790        srcLevel: GLint,
26791        srcX: GLint,
26792        srcY: GLint,
26793        srcZ: GLint,
26794        dstName: GLuint,
26795        dstTarget: GLenum,
26796        dstLevel: GLint,
26797        dstX: GLint,
26798        dstY: GLint,
26799        dstZ: GLint,
26800        srcWidth: GLsizei,
26801        srcHeight: GLsizei,
26802        srcDepth: GLsizei,
26803    );
26804}
26805extern "C" {
26806    pub fn glMulticastBlitFramebufferNV(
26807        srcGpu: GLuint,
26808        dstGpu: GLuint,
26809        srcX0: GLint,
26810        srcY0: GLint,
26811        srcX1: GLint,
26812        srcY1: GLint,
26813        dstX0: GLint,
26814        dstY0: GLint,
26815        dstX1: GLint,
26816        dstY1: GLint,
26817        mask: GLbitfield,
26818        filter: GLenum,
26819    );
26820}
26821extern "C" {
26822    pub fn glMulticastFramebufferSampleLocationsfvNV(
26823        gpu: GLuint,
26824        framebuffer: GLuint,
26825        start: GLuint,
26826        count: GLsizei,
26827        v: *const GLfloat,
26828    );
26829}
26830extern "C" {
26831    pub fn glMulticastBarrierNV();
26832}
26833extern "C" {
26834    pub fn glMulticastWaitSyncNV(signalGpu: GLuint, waitGpuMask: GLbitfield);
26835}
26836extern "C" {
26837    pub fn glMulticastGetQueryObjectivNV(
26838        gpu: GLuint,
26839        id: GLuint,
26840        pname: GLenum,
26841        params: *mut GLint,
26842    );
26843}
26844extern "C" {
26845    pub fn glMulticastGetQueryObjectuivNV(
26846        gpu: GLuint,
26847        id: GLuint,
26848        pname: GLenum,
26849        params: *mut GLuint,
26850    );
26851}
26852extern "C" {
26853    pub fn glMulticastGetQueryObjecti64vNV(
26854        gpu: GLuint,
26855        id: GLuint,
26856        pname: GLenum,
26857        params: *mut GLint64,
26858    );
26859}
26860extern "C" {
26861    pub fn glMulticastGetQueryObjectui64vNV(
26862        gpu: GLuint,
26863        id: GLuint,
26864        pname: GLenum,
26865        params: *mut GLuint64,
26866    );
26867}
26868pub type PFNGLPROGRAMLOCALPARAMETERI4INVPROC = ::std::option::Option<
26869    unsafe extern "C" fn(target: GLenum, index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint),
26870>;
26871pub type PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC = ::std::option::Option<
26872    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLint),
26873>;
26874pub type PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC = ::std::option::Option<
26875    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, params: *const GLint),
26876>;
26877pub type PFNGLPROGRAMLOCALPARAMETERI4UINVPROC = ::std::option::Option<
26878    unsafe extern "C" fn(target: GLenum, index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint),
26879>;
26880pub type PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC = ::std::option::Option<
26881    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLuint),
26882>;
26883pub type PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC = ::std::option::Option<
26884    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, params: *const GLuint),
26885>;
26886pub type PFNGLPROGRAMENVPARAMETERI4INVPROC = ::std::option::Option<
26887    unsafe extern "C" fn(target: GLenum, index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint),
26888>;
26889pub type PFNGLPROGRAMENVPARAMETERI4IVNVPROC = ::std::option::Option<
26890    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLint),
26891>;
26892pub type PFNGLPROGRAMENVPARAMETERSI4IVNVPROC = ::std::option::Option<
26893    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, params: *const GLint),
26894>;
26895pub type PFNGLPROGRAMENVPARAMETERI4UINVPROC = ::std::option::Option<
26896    unsafe extern "C" fn(target: GLenum, index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint),
26897>;
26898pub type PFNGLPROGRAMENVPARAMETERI4UIVNVPROC = ::std::option::Option<
26899    unsafe extern "C" fn(target: GLenum, index: GLuint, params: *const GLuint),
26900>;
26901pub type PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC = ::std::option::Option<
26902    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, params: *const GLuint),
26903>;
26904pub type PFNGLGETPROGRAMLOCALPARAMETERIIVNVPROC =
26905    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLint)>;
26906pub type PFNGLGETPROGRAMLOCALPARAMETERIUIVNVPROC =
26907    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLuint)>;
26908pub type PFNGLGETPROGRAMENVPARAMETERIIVNVPROC =
26909    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLint)>;
26910pub type PFNGLGETPROGRAMENVPARAMETERIUIVNVPROC =
26911    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, params: *mut GLuint)>;
26912extern "C" {
26913    pub fn glProgramLocalParameterI4iNV(
26914        target: GLenum,
26915        index: GLuint,
26916        x: GLint,
26917        y: GLint,
26918        z: GLint,
26919        w: GLint,
26920    );
26921}
26922extern "C" {
26923    pub fn glProgramLocalParameterI4ivNV(target: GLenum, index: GLuint, params: *const GLint);
26924}
26925extern "C" {
26926    pub fn glProgramLocalParametersI4ivNV(
26927        target: GLenum,
26928        index: GLuint,
26929        count: GLsizei,
26930        params: *const GLint,
26931    );
26932}
26933extern "C" {
26934    pub fn glProgramLocalParameterI4uiNV(
26935        target: GLenum,
26936        index: GLuint,
26937        x: GLuint,
26938        y: GLuint,
26939        z: GLuint,
26940        w: GLuint,
26941    );
26942}
26943extern "C" {
26944    pub fn glProgramLocalParameterI4uivNV(target: GLenum, index: GLuint, params: *const GLuint);
26945}
26946extern "C" {
26947    pub fn glProgramLocalParametersI4uivNV(
26948        target: GLenum,
26949        index: GLuint,
26950        count: GLsizei,
26951        params: *const GLuint,
26952    );
26953}
26954extern "C" {
26955    pub fn glProgramEnvParameterI4iNV(
26956        target: GLenum,
26957        index: GLuint,
26958        x: GLint,
26959        y: GLint,
26960        z: GLint,
26961        w: GLint,
26962    );
26963}
26964extern "C" {
26965    pub fn glProgramEnvParameterI4ivNV(target: GLenum, index: GLuint, params: *const GLint);
26966}
26967extern "C" {
26968    pub fn glProgramEnvParametersI4ivNV(
26969        target: GLenum,
26970        index: GLuint,
26971        count: GLsizei,
26972        params: *const GLint,
26973    );
26974}
26975extern "C" {
26976    pub fn glProgramEnvParameterI4uiNV(
26977        target: GLenum,
26978        index: GLuint,
26979        x: GLuint,
26980        y: GLuint,
26981        z: GLuint,
26982        w: GLuint,
26983    );
26984}
26985extern "C" {
26986    pub fn glProgramEnvParameterI4uivNV(target: GLenum, index: GLuint, params: *const GLuint);
26987}
26988extern "C" {
26989    pub fn glProgramEnvParametersI4uivNV(
26990        target: GLenum,
26991        index: GLuint,
26992        count: GLsizei,
26993        params: *const GLuint,
26994    );
26995}
26996extern "C" {
26997    pub fn glGetProgramLocalParameterIivNV(target: GLenum, index: GLuint, params: *mut GLint);
26998}
26999extern "C" {
27000    pub fn glGetProgramLocalParameterIuivNV(target: GLenum, index: GLuint, params: *mut GLuint);
27001}
27002extern "C" {
27003    pub fn glGetProgramEnvParameterIivNV(target: GLenum, index: GLuint, params: *mut GLint);
27004}
27005extern "C" {
27006    pub fn glGetProgramEnvParameterIuivNV(target: GLenum, index: GLuint, params: *mut GLuint);
27007}
27008pub type PFNGLPROGRAMSUBROUTINEPARAMETERSUIVNVPROC = ::std::option::Option<
27009    unsafe extern "C" fn(target: GLenum, count: GLsizei, params: *const GLuint),
27010>;
27011pub type PFNGLGETPROGRAMSUBROUTINEPARAMETERUIVNVPROC =
27012    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, param: *mut GLuint)>;
27013extern "C" {
27014    pub fn glProgramSubroutineParametersuivNV(
27015        target: GLenum,
27016        count: GLsizei,
27017        params: *const GLuint,
27018    );
27019}
27020extern "C" {
27021    pub fn glGetProgramSubroutineParameteruivNV(target: GLenum, index: GLuint, param: *mut GLuint);
27022}
27023pub type GLhalfNV = ::std::os::raw::c_ushort;
27024pub type PFNGLVERTEX2HNVPROC =
27025    ::std::option::Option<unsafe extern "C" fn(x: GLhalfNV, y: GLhalfNV)>;
27026pub type PFNGLVERTEX2HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27027pub type PFNGLVERTEX3HNVPROC =
27028    ::std::option::Option<unsafe extern "C" fn(x: GLhalfNV, y: GLhalfNV, z: GLhalfNV)>;
27029pub type PFNGLVERTEX3HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27030pub type PFNGLVERTEX4HNVPROC =
27031    ::std::option::Option<unsafe extern "C" fn(x: GLhalfNV, y: GLhalfNV, z: GLhalfNV, w: GLhalfNV)>;
27032pub type PFNGLVERTEX4HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27033pub type PFNGLNORMAL3HNVPROC =
27034    ::std::option::Option<unsafe extern "C" fn(nx: GLhalfNV, ny: GLhalfNV, nz: GLhalfNV)>;
27035pub type PFNGLNORMAL3HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27036pub type PFNGLCOLOR3HNVPROC =
27037    ::std::option::Option<unsafe extern "C" fn(red: GLhalfNV, green: GLhalfNV, blue: GLhalfNV)>;
27038pub type PFNGLCOLOR3HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27039pub type PFNGLCOLOR4HNVPROC = ::std::option::Option<
27040    unsafe extern "C" fn(red: GLhalfNV, green: GLhalfNV, blue: GLhalfNV, alpha: GLhalfNV),
27041>;
27042pub type PFNGLCOLOR4HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27043pub type PFNGLTEXCOORD1HNVPROC = ::std::option::Option<unsafe extern "C" fn(s: GLhalfNV)>;
27044pub type PFNGLTEXCOORD1HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27045pub type PFNGLTEXCOORD2HNVPROC =
27046    ::std::option::Option<unsafe extern "C" fn(s: GLhalfNV, t: GLhalfNV)>;
27047pub type PFNGLTEXCOORD2HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27048pub type PFNGLTEXCOORD3HNVPROC =
27049    ::std::option::Option<unsafe extern "C" fn(s: GLhalfNV, t: GLhalfNV, r: GLhalfNV)>;
27050pub type PFNGLTEXCOORD3HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27051pub type PFNGLTEXCOORD4HNVPROC =
27052    ::std::option::Option<unsafe extern "C" fn(s: GLhalfNV, t: GLhalfNV, r: GLhalfNV, q: GLhalfNV)>;
27053pub type PFNGLTEXCOORD4HVNVPROC = ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27054pub type PFNGLMULTITEXCOORD1HNVPROC =
27055    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLhalfNV)>;
27056pub type PFNGLMULTITEXCOORD1HVNVPROC =
27057    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLhalfNV)>;
27058pub type PFNGLMULTITEXCOORD2HNVPROC =
27059    ::std::option::Option<unsafe extern "C" fn(target: GLenum, s: GLhalfNV, t: GLhalfNV)>;
27060pub type PFNGLMULTITEXCOORD2HVNVPROC =
27061    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLhalfNV)>;
27062pub type PFNGLMULTITEXCOORD3HNVPROC = ::std::option::Option<
27063    unsafe extern "C" fn(target: GLenum, s: GLhalfNV, t: GLhalfNV, r: GLhalfNV),
27064>;
27065pub type PFNGLMULTITEXCOORD3HVNVPROC =
27066    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLhalfNV)>;
27067pub type PFNGLMULTITEXCOORD4HNVPROC = ::std::option::Option<
27068    unsafe extern "C" fn(target: GLenum, s: GLhalfNV, t: GLhalfNV, r: GLhalfNV, q: GLhalfNV),
27069>;
27070pub type PFNGLMULTITEXCOORD4HVNVPROC =
27071    ::std::option::Option<unsafe extern "C" fn(target: GLenum, v: *const GLhalfNV)>;
27072pub type PFNGLFOGCOORDHNVPROC = ::std::option::Option<unsafe extern "C" fn(fog: GLhalfNV)>;
27073pub type PFNGLFOGCOORDHVNVPROC = ::std::option::Option<unsafe extern "C" fn(fog: *const GLhalfNV)>;
27074pub type PFNGLSECONDARYCOLOR3HNVPROC =
27075    ::std::option::Option<unsafe extern "C" fn(red: GLhalfNV, green: GLhalfNV, blue: GLhalfNV)>;
27076pub type PFNGLSECONDARYCOLOR3HVNVPROC =
27077    ::std::option::Option<unsafe extern "C" fn(v: *const GLhalfNV)>;
27078pub type PFNGLVERTEXWEIGHTHNVPROC = ::std::option::Option<unsafe extern "C" fn(weight: GLhalfNV)>;
27079pub type PFNGLVERTEXWEIGHTHVNVPROC =
27080    ::std::option::Option<unsafe extern "C" fn(weight: *const GLhalfNV)>;
27081pub type PFNGLVERTEXATTRIB1HNVPROC =
27082    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLhalfNV)>;
27083pub type PFNGLVERTEXATTRIB1HVNVPROC =
27084    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLhalfNV)>;
27085pub type PFNGLVERTEXATTRIB2HNVPROC =
27086    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLhalfNV, y: GLhalfNV)>;
27087pub type PFNGLVERTEXATTRIB2HVNVPROC =
27088    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLhalfNV)>;
27089pub type PFNGLVERTEXATTRIB3HNVPROC = ::std::option::Option<
27090    unsafe extern "C" fn(index: GLuint, x: GLhalfNV, y: GLhalfNV, z: GLhalfNV),
27091>;
27092pub type PFNGLVERTEXATTRIB3HVNVPROC =
27093    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLhalfNV)>;
27094pub type PFNGLVERTEXATTRIB4HNVPROC = ::std::option::Option<
27095    unsafe extern "C" fn(index: GLuint, x: GLhalfNV, y: GLhalfNV, z: GLhalfNV, w: GLhalfNV),
27096>;
27097pub type PFNGLVERTEXATTRIB4HVNVPROC =
27098    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLhalfNV)>;
27099pub type PFNGLVERTEXATTRIBS1HVNVPROC =
27100    ::std::option::Option<unsafe extern "C" fn(index: GLuint, n: GLsizei, v: *const GLhalfNV)>;
27101pub type PFNGLVERTEXATTRIBS2HVNVPROC =
27102    ::std::option::Option<unsafe extern "C" fn(index: GLuint, n: GLsizei, v: *const GLhalfNV)>;
27103pub type PFNGLVERTEXATTRIBS3HVNVPROC =
27104    ::std::option::Option<unsafe extern "C" fn(index: GLuint, n: GLsizei, v: *const GLhalfNV)>;
27105pub type PFNGLVERTEXATTRIBS4HVNVPROC =
27106    ::std::option::Option<unsafe extern "C" fn(index: GLuint, n: GLsizei, v: *const GLhalfNV)>;
27107extern "C" {
27108    pub fn glVertex2hNV(x: GLhalfNV, y: GLhalfNV);
27109}
27110extern "C" {
27111    pub fn glVertex2hvNV(v: *const GLhalfNV);
27112}
27113extern "C" {
27114    pub fn glVertex3hNV(x: GLhalfNV, y: GLhalfNV, z: GLhalfNV);
27115}
27116extern "C" {
27117    pub fn glVertex3hvNV(v: *const GLhalfNV);
27118}
27119extern "C" {
27120    pub fn glVertex4hNV(x: GLhalfNV, y: GLhalfNV, z: GLhalfNV, w: GLhalfNV);
27121}
27122extern "C" {
27123    pub fn glVertex4hvNV(v: *const GLhalfNV);
27124}
27125extern "C" {
27126    pub fn glNormal3hNV(nx: GLhalfNV, ny: GLhalfNV, nz: GLhalfNV);
27127}
27128extern "C" {
27129    pub fn glNormal3hvNV(v: *const GLhalfNV);
27130}
27131extern "C" {
27132    pub fn glColor3hNV(red: GLhalfNV, green: GLhalfNV, blue: GLhalfNV);
27133}
27134extern "C" {
27135    pub fn glColor3hvNV(v: *const GLhalfNV);
27136}
27137extern "C" {
27138    pub fn glColor4hNV(red: GLhalfNV, green: GLhalfNV, blue: GLhalfNV, alpha: GLhalfNV);
27139}
27140extern "C" {
27141    pub fn glColor4hvNV(v: *const GLhalfNV);
27142}
27143extern "C" {
27144    pub fn glTexCoord1hNV(s: GLhalfNV);
27145}
27146extern "C" {
27147    pub fn glTexCoord1hvNV(v: *const GLhalfNV);
27148}
27149extern "C" {
27150    pub fn glTexCoord2hNV(s: GLhalfNV, t: GLhalfNV);
27151}
27152extern "C" {
27153    pub fn glTexCoord2hvNV(v: *const GLhalfNV);
27154}
27155extern "C" {
27156    pub fn glTexCoord3hNV(s: GLhalfNV, t: GLhalfNV, r: GLhalfNV);
27157}
27158extern "C" {
27159    pub fn glTexCoord3hvNV(v: *const GLhalfNV);
27160}
27161extern "C" {
27162    pub fn glTexCoord4hNV(s: GLhalfNV, t: GLhalfNV, r: GLhalfNV, q: GLhalfNV);
27163}
27164extern "C" {
27165    pub fn glTexCoord4hvNV(v: *const GLhalfNV);
27166}
27167extern "C" {
27168    pub fn glMultiTexCoord1hNV(target: GLenum, s: GLhalfNV);
27169}
27170extern "C" {
27171    pub fn glMultiTexCoord1hvNV(target: GLenum, v: *const GLhalfNV);
27172}
27173extern "C" {
27174    pub fn glMultiTexCoord2hNV(target: GLenum, s: GLhalfNV, t: GLhalfNV);
27175}
27176extern "C" {
27177    pub fn glMultiTexCoord2hvNV(target: GLenum, v: *const GLhalfNV);
27178}
27179extern "C" {
27180    pub fn glMultiTexCoord3hNV(target: GLenum, s: GLhalfNV, t: GLhalfNV, r: GLhalfNV);
27181}
27182extern "C" {
27183    pub fn glMultiTexCoord3hvNV(target: GLenum, v: *const GLhalfNV);
27184}
27185extern "C" {
27186    pub fn glMultiTexCoord4hNV(target: GLenum, s: GLhalfNV, t: GLhalfNV, r: GLhalfNV, q: GLhalfNV);
27187}
27188extern "C" {
27189    pub fn glMultiTexCoord4hvNV(target: GLenum, v: *const GLhalfNV);
27190}
27191extern "C" {
27192    pub fn glFogCoordhNV(fog: GLhalfNV);
27193}
27194extern "C" {
27195    pub fn glFogCoordhvNV(fog: *const GLhalfNV);
27196}
27197extern "C" {
27198    pub fn glSecondaryColor3hNV(red: GLhalfNV, green: GLhalfNV, blue: GLhalfNV);
27199}
27200extern "C" {
27201    pub fn glSecondaryColor3hvNV(v: *const GLhalfNV);
27202}
27203extern "C" {
27204    pub fn glVertexWeighthNV(weight: GLhalfNV);
27205}
27206extern "C" {
27207    pub fn glVertexWeighthvNV(weight: *const GLhalfNV);
27208}
27209extern "C" {
27210    pub fn glVertexAttrib1hNV(index: GLuint, x: GLhalfNV);
27211}
27212extern "C" {
27213    pub fn glVertexAttrib1hvNV(index: GLuint, v: *const GLhalfNV);
27214}
27215extern "C" {
27216    pub fn glVertexAttrib2hNV(index: GLuint, x: GLhalfNV, y: GLhalfNV);
27217}
27218extern "C" {
27219    pub fn glVertexAttrib2hvNV(index: GLuint, v: *const GLhalfNV);
27220}
27221extern "C" {
27222    pub fn glVertexAttrib3hNV(index: GLuint, x: GLhalfNV, y: GLhalfNV, z: GLhalfNV);
27223}
27224extern "C" {
27225    pub fn glVertexAttrib3hvNV(index: GLuint, v: *const GLhalfNV);
27226}
27227extern "C" {
27228    pub fn glVertexAttrib4hNV(index: GLuint, x: GLhalfNV, y: GLhalfNV, z: GLhalfNV, w: GLhalfNV);
27229}
27230extern "C" {
27231    pub fn glVertexAttrib4hvNV(index: GLuint, v: *const GLhalfNV);
27232}
27233extern "C" {
27234    pub fn glVertexAttribs1hvNV(index: GLuint, n: GLsizei, v: *const GLhalfNV);
27235}
27236extern "C" {
27237    pub fn glVertexAttribs2hvNV(index: GLuint, n: GLsizei, v: *const GLhalfNV);
27238}
27239extern "C" {
27240    pub fn glVertexAttribs3hvNV(index: GLuint, n: GLsizei, v: *const GLhalfNV);
27241}
27242extern "C" {
27243    pub fn glVertexAttribs4hvNV(index: GLuint, n: GLsizei, v: *const GLhalfNV);
27244}
27245pub type PFNGLGETINTERNALFORMATSAMPLEIVNVPROC = ::std::option::Option<
27246    unsafe extern "C" fn(
27247        target: GLenum,
27248        internalformat: GLenum,
27249        samples: GLsizei,
27250        pname: GLenum,
27251        bufSize: GLsizei,
27252        params: *mut GLint,
27253    ),
27254>;
27255extern "C" {
27256    pub fn glGetInternalformatSampleivNV(
27257        target: GLenum,
27258        internalformat: GLenum,
27259        samples: GLsizei,
27260        pname: GLenum,
27261        bufSize: GLsizei,
27262        params: *mut GLint,
27263    );
27264}
27265pub type PFNGLGETMEMORYOBJECTDETACHEDRESOURCESUIVNVPROC = ::std::option::Option<
27266    unsafe extern "C" fn(
27267        memory: GLuint,
27268        pname: GLenum,
27269        first: GLint,
27270        count: GLsizei,
27271        params: *mut GLuint,
27272    ),
27273>;
27274pub type PFNGLRESETMEMORYOBJECTPARAMETERNVPROC =
27275    ::std::option::Option<unsafe extern "C" fn(memory: GLuint, pname: GLenum)>;
27276pub type PFNGLTEXATTACHMEMORYNVPROC =
27277    ::std::option::Option<unsafe extern "C" fn(target: GLenum, memory: GLuint, offset: GLuint64)>;
27278pub type PFNGLBUFFERATTACHMEMORYNVPROC =
27279    ::std::option::Option<unsafe extern "C" fn(target: GLenum, memory: GLuint, offset: GLuint64)>;
27280pub type PFNGLTEXTUREATTACHMEMORYNVPROC =
27281    ::std::option::Option<unsafe extern "C" fn(texture: GLuint, memory: GLuint, offset: GLuint64)>;
27282pub type PFNGLNAMEDBUFFERATTACHMEMORYNVPROC =
27283    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint, memory: GLuint, offset: GLuint64)>;
27284extern "C" {
27285    pub fn glGetMemoryObjectDetachedResourcesuivNV(
27286        memory: GLuint,
27287        pname: GLenum,
27288        first: GLint,
27289        count: GLsizei,
27290        params: *mut GLuint,
27291    );
27292}
27293extern "C" {
27294    pub fn glResetMemoryObjectParameterNV(memory: GLuint, pname: GLenum);
27295}
27296extern "C" {
27297    pub fn glTexAttachMemoryNV(target: GLenum, memory: GLuint, offset: GLuint64);
27298}
27299extern "C" {
27300    pub fn glBufferAttachMemoryNV(target: GLenum, memory: GLuint, offset: GLuint64);
27301}
27302extern "C" {
27303    pub fn glTextureAttachMemoryNV(texture: GLuint, memory: GLuint, offset: GLuint64);
27304}
27305extern "C" {
27306    pub fn glNamedBufferAttachMemoryNV(buffer: GLuint, memory: GLuint, offset: GLuint64);
27307}
27308pub type PFNGLDRAWMESHTASKSNVPROC =
27309    ::std::option::Option<unsafe extern "C" fn(first: GLuint, count: GLuint)>;
27310pub type PFNGLDRAWMESHTASKSINDIRECTNVPROC =
27311    ::std::option::Option<unsafe extern "C" fn(indirect: GLintptr)>;
27312pub type PFNGLMULTIDRAWMESHTASKSINDIRECTNVPROC = ::std::option::Option<
27313    unsafe extern "C" fn(indirect: GLintptr, drawcount: GLsizei, stride: GLsizei),
27314>;
27315pub type PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC = ::std::option::Option<
27316    unsafe extern "C" fn(
27317        indirect: GLintptr,
27318        drawcount: GLintptr,
27319        maxdrawcount: GLsizei,
27320        stride: GLsizei,
27321    ),
27322>;
27323extern "C" {
27324    pub fn glDrawMeshTasksNV(first: GLuint, count: GLuint);
27325}
27326extern "C" {
27327    pub fn glDrawMeshTasksIndirectNV(indirect: GLintptr);
27328}
27329extern "C" {
27330    pub fn glMultiDrawMeshTasksIndirectNV(indirect: GLintptr, drawcount: GLsizei, stride: GLsizei);
27331}
27332extern "C" {
27333    pub fn glMultiDrawMeshTasksIndirectCountNV(
27334        indirect: GLintptr,
27335        drawcount: GLintptr,
27336        maxdrawcount: GLsizei,
27337        stride: GLsizei,
27338    );
27339}
27340pub type PFNGLGENOCCLUSIONQUERIESNVPROC =
27341    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *mut GLuint)>;
27342pub type PFNGLDELETEOCCLUSIONQUERIESNVPROC =
27343    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *const GLuint)>;
27344pub type PFNGLISOCCLUSIONQUERYNVPROC =
27345    ::std::option::Option<unsafe extern "C" fn(id: GLuint) -> GLboolean>;
27346pub type PFNGLBEGINOCCLUSIONQUERYNVPROC = ::std::option::Option<unsafe extern "C" fn(id: GLuint)>;
27347pub type PFNGLENDOCCLUSIONQUERYNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
27348pub type PFNGLGETOCCLUSIONQUERYIVNVPROC =
27349    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLint)>;
27350pub type PFNGLGETOCCLUSIONQUERYUIVNVPROC =
27351    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLuint)>;
27352extern "C" {
27353    pub fn glGenOcclusionQueriesNV(n: GLsizei, ids: *mut GLuint);
27354}
27355extern "C" {
27356    pub fn glDeleteOcclusionQueriesNV(n: GLsizei, ids: *const GLuint);
27357}
27358extern "C" {
27359    pub fn glIsOcclusionQueryNV(id: GLuint) -> GLboolean;
27360}
27361extern "C" {
27362    pub fn glBeginOcclusionQueryNV(id: GLuint);
27363}
27364extern "C" {
27365    pub fn glEndOcclusionQueryNV();
27366}
27367extern "C" {
27368    pub fn glGetOcclusionQueryivNV(id: GLuint, pname: GLenum, params: *mut GLint);
27369}
27370extern "C" {
27371    pub fn glGetOcclusionQueryuivNV(id: GLuint, pname: GLenum, params: *mut GLuint);
27372}
27373pub type PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC = ::std::option::Option<
27374    unsafe extern "C" fn(
27375        target: GLenum,
27376        bindingIndex: GLuint,
27377        wordIndex: GLuint,
27378        count: GLsizei,
27379        params: *const GLfloat,
27380    ),
27381>;
27382pub type PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC = ::std::option::Option<
27383    unsafe extern "C" fn(
27384        target: GLenum,
27385        bindingIndex: GLuint,
27386        wordIndex: GLuint,
27387        count: GLsizei,
27388        params: *const GLint,
27389    ),
27390>;
27391pub type PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC = ::std::option::Option<
27392    unsafe extern "C" fn(
27393        target: GLenum,
27394        bindingIndex: GLuint,
27395        wordIndex: GLuint,
27396        count: GLsizei,
27397        params: *const GLuint,
27398    ),
27399>;
27400extern "C" {
27401    pub fn glProgramBufferParametersfvNV(
27402        target: GLenum,
27403        bindingIndex: GLuint,
27404        wordIndex: GLuint,
27405        count: GLsizei,
27406        params: *const GLfloat,
27407    );
27408}
27409extern "C" {
27410    pub fn glProgramBufferParametersIivNV(
27411        target: GLenum,
27412        bindingIndex: GLuint,
27413        wordIndex: GLuint,
27414        count: GLsizei,
27415        params: *const GLint,
27416    );
27417}
27418extern "C" {
27419    pub fn glProgramBufferParametersIuivNV(
27420        target: GLenum,
27421        bindingIndex: GLuint,
27422        wordIndex: GLuint,
27423        count: GLsizei,
27424        params: *const GLuint,
27425    );
27426}
27427pub type PFNGLGENPATHSNVPROC =
27428    ::std::option::Option<unsafe extern "C" fn(range: GLsizei) -> GLuint>;
27429pub type PFNGLDELETEPATHSNVPROC =
27430    ::std::option::Option<unsafe extern "C" fn(path: GLuint, range: GLsizei)>;
27431pub type PFNGLISPATHNVPROC = ::std::option::Option<unsafe extern "C" fn(path: GLuint) -> GLboolean>;
27432pub type PFNGLPATHCOMMANDSNVPROC = ::std::option::Option<
27433    unsafe extern "C" fn(
27434        path: GLuint,
27435        numCommands: GLsizei,
27436        commands: *const GLubyte,
27437        numCoords: GLsizei,
27438        coordType: GLenum,
27439        coords: *const ::std::os::raw::c_void,
27440    ),
27441>;
27442pub type PFNGLPATHCOORDSNVPROC = ::std::option::Option<
27443    unsafe extern "C" fn(
27444        path: GLuint,
27445        numCoords: GLsizei,
27446        coordType: GLenum,
27447        coords: *const ::std::os::raw::c_void,
27448    ),
27449>;
27450pub type PFNGLPATHSUBCOMMANDSNVPROC = ::std::option::Option<
27451    unsafe extern "C" fn(
27452        path: GLuint,
27453        commandStart: GLsizei,
27454        commandsToDelete: GLsizei,
27455        numCommands: GLsizei,
27456        commands: *const GLubyte,
27457        numCoords: GLsizei,
27458        coordType: GLenum,
27459        coords: *const ::std::os::raw::c_void,
27460    ),
27461>;
27462pub type PFNGLPATHSUBCOORDSNVPROC = ::std::option::Option<
27463    unsafe extern "C" fn(
27464        path: GLuint,
27465        coordStart: GLsizei,
27466        numCoords: GLsizei,
27467        coordType: GLenum,
27468        coords: *const ::std::os::raw::c_void,
27469    ),
27470>;
27471pub type PFNGLPATHSTRINGNVPROC = ::std::option::Option<
27472    unsafe extern "C" fn(
27473        path: GLuint,
27474        format: GLenum,
27475        length: GLsizei,
27476        pathString: *const ::std::os::raw::c_void,
27477    ),
27478>;
27479pub type PFNGLPATHGLYPHSNVPROC = ::std::option::Option<
27480    unsafe extern "C" fn(
27481        firstPathName: GLuint,
27482        fontTarget: GLenum,
27483        fontName: *const ::std::os::raw::c_void,
27484        fontStyle: GLbitfield,
27485        numGlyphs: GLsizei,
27486        type_: GLenum,
27487        charcodes: *const ::std::os::raw::c_void,
27488        handleMissingGlyphs: GLenum,
27489        pathParameterTemplate: GLuint,
27490        emScale: GLfloat,
27491    ),
27492>;
27493pub type PFNGLPATHGLYPHRANGENVPROC = ::std::option::Option<
27494    unsafe extern "C" fn(
27495        firstPathName: GLuint,
27496        fontTarget: GLenum,
27497        fontName: *const ::std::os::raw::c_void,
27498        fontStyle: GLbitfield,
27499        firstGlyph: GLuint,
27500        numGlyphs: GLsizei,
27501        handleMissingGlyphs: GLenum,
27502        pathParameterTemplate: GLuint,
27503        emScale: GLfloat,
27504    ),
27505>;
27506pub type PFNGLWEIGHTPATHSNVPROC = ::std::option::Option<
27507    unsafe extern "C" fn(
27508        resultPath: GLuint,
27509        numPaths: GLsizei,
27510        paths: *const GLuint,
27511        weights: *const GLfloat,
27512    ),
27513>;
27514pub type PFNGLCOPYPATHNVPROC =
27515    ::std::option::Option<unsafe extern "C" fn(resultPath: GLuint, srcPath: GLuint)>;
27516pub type PFNGLINTERPOLATEPATHSNVPROC = ::std::option::Option<
27517    unsafe extern "C" fn(resultPath: GLuint, pathA: GLuint, pathB: GLuint, weight: GLfloat),
27518>;
27519pub type PFNGLTRANSFORMPATHNVPROC = ::std::option::Option<
27520    unsafe extern "C" fn(
27521        resultPath: GLuint,
27522        srcPath: GLuint,
27523        transformType: GLenum,
27524        transformValues: *const GLfloat,
27525    ),
27526>;
27527pub type PFNGLPATHPARAMETERIVNVPROC =
27528    ::std::option::Option<unsafe extern "C" fn(path: GLuint, pname: GLenum, value: *const GLint)>;
27529pub type PFNGLPATHPARAMETERINVPROC =
27530    ::std::option::Option<unsafe extern "C" fn(path: GLuint, pname: GLenum, value: GLint)>;
27531pub type PFNGLPATHPARAMETERFVNVPROC =
27532    ::std::option::Option<unsafe extern "C" fn(path: GLuint, pname: GLenum, value: *const GLfloat)>;
27533pub type PFNGLPATHPARAMETERFNVPROC =
27534    ::std::option::Option<unsafe extern "C" fn(path: GLuint, pname: GLenum, value: GLfloat)>;
27535pub type PFNGLPATHDASHARRAYNVPROC = ::std::option::Option<
27536    unsafe extern "C" fn(path: GLuint, dashCount: GLsizei, dashArray: *const GLfloat),
27537>;
27538pub type PFNGLPATHSTENCILFUNCNVPROC =
27539    ::std::option::Option<unsafe extern "C" fn(func: GLenum, ref_: GLint, mask: GLuint)>;
27540pub type PFNGLPATHSTENCILDEPTHOFFSETNVPROC =
27541    ::std::option::Option<unsafe extern "C" fn(factor: GLfloat, units: GLfloat)>;
27542pub type PFNGLSTENCILFILLPATHNVPROC =
27543    ::std::option::Option<unsafe extern "C" fn(path: GLuint, fillMode: GLenum, mask: GLuint)>;
27544pub type PFNGLSTENCILSTROKEPATHNVPROC =
27545    ::std::option::Option<unsafe extern "C" fn(path: GLuint, reference: GLint, mask: GLuint)>;
27546pub type PFNGLSTENCILFILLPATHINSTANCEDNVPROC = ::std::option::Option<
27547    unsafe extern "C" fn(
27548        numPaths: GLsizei,
27549        pathNameType: GLenum,
27550        paths: *const ::std::os::raw::c_void,
27551        pathBase: GLuint,
27552        fillMode: GLenum,
27553        mask: GLuint,
27554        transformType: GLenum,
27555        transformValues: *const GLfloat,
27556    ),
27557>;
27558pub type PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC = ::std::option::Option<
27559    unsafe extern "C" fn(
27560        numPaths: GLsizei,
27561        pathNameType: GLenum,
27562        paths: *const ::std::os::raw::c_void,
27563        pathBase: GLuint,
27564        reference: GLint,
27565        mask: GLuint,
27566        transformType: GLenum,
27567        transformValues: *const GLfloat,
27568    ),
27569>;
27570pub type PFNGLPATHCOVERDEPTHFUNCNVPROC = ::std::option::Option<unsafe extern "C" fn(func: GLenum)>;
27571pub type PFNGLCOVERFILLPATHNVPROC =
27572    ::std::option::Option<unsafe extern "C" fn(path: GLuint, coverMode: GLenum)>;
27573pub type PFNGLCOVERSTROKEPATHNVPROC =
27574    ::std::option::Option<unsafe extern "C" fn(path: GLuint, coverMode: GLenum)>;
27575pub type PFNGLCOVERFILLPATHINSTANCEDNVPROC = ::std::option::Option<
27576    unsafe extern "C" fn(
27577        numPaths: GLsizei,
27578        pathNameType: GLenum,
27579        paths: *const ::std::os::raw::c_void,
27580        pathBase: GLuint,
27581        coverMode: GLenum,
27582        transformType: GLenum,
27583        transformValues: *const GLfloat,
27584    ),
27585>;
27586pub type PFNGLCOVERSTROKEPATHINSTANCEDNVPROC = ::std::option::Option<
27587    unsafe extern "C" fn(
27588        numPaths: GLsizei,
27589        pathNameType: GLenum,
27590        paths: *const ::std::os::raw::c_void,
27591        pathBase: GLuint,
27592        coverMode: GLenum,
27593        transformType: GLenum,
27594        transformValues: *const GLfloat,
27595    ),
27596>;
27597pub type PFNGLGETPATHPARAMETERIVNVPROC =
27598    ::std::option::Option<unsafe extern "C" fn(path: GLuint, pname: GLenum, value: *mut GLint)>;
27599pub type PFNGLGETPATHPARAMETERFVNVPROC =
27600    ::std::option::Option<unsafe extern "C" fn(path: GLuint, pname: GLenum, value: *mut GLfloat)>;
27601pub type PFNGLGETPATHCOMMANDSNVPROC =
27602    ::std::option::Option<unsafe extern "C" fn(path: GLuint, commands: *mut GLubyte)>;
27603pub type PFNGLGETPATHCOORDSNVPROC =
27604    ::std::option::Option<unsafe extern "C" fn(path: GLuint, coords: *mut GLfloat)>;
27605pub type PFNGLGETPATHDASHARRAYNVPROC =
27606    ::std::option::Option<unsafe extern "C" fn(path: GLuint, dashArray: *mut GLfloat)>;
27607pub type PFNGLGETPATHMETRICSNVPROC = ::std::option::Option<
27608    unsafe extern "C" fn(
27609        metricQueryMask: GLbitfield,
27610        numPaths: GLsizei,
27611        pathNameType: GLenum,
27612        paths: *const ::std::os::raw::c_void,
27613        pathBase: GLuint,
27614        stride: GLsizei,
27615        metrics: *mut GLfloat,
27616    ),
27617>;
27618pub type PFNGLGETPATHMETRICRANGENVPROC = ::std::option::Option<
27619    unsafe extern "C" fn(
27620        metricQueryMask: GLbitfield,
27621        firstPathName: GLuint,
27622        numPaths: GLsizei,
27623        stride: GLsizei,
27624        metrics: *mut GLfloat,
27625    ),
27626>;
27627pub type PFNGLGETPATHSPACINGNVPROC = ::std::option::Option<
27628    unsafe extern "C" fn(
27629        pathListMode: GLenum,
27630        numPaths: GLsizei,
27631        pathNameType: GLenum,
27632        paths: *const ::std::os::raw::c_void,
27633        pathBase: GLuint,
27634        advanceScale: GLfloat,
27635        kerningScale: GLfloat,
27636        transformType: GLenum,
27637        returnedSpacing: *mut GLfloat,
27638    ),
27639>;
27640pub type PFNGLISPOINTINFILLPATHNVPROC = ::std::option::Option<
27641    unsafe extern "C" fn(path: GLuint, mask: GLuint, x: GLfloat, y: GLfloat) -> GLboolean,
27642>;
27643pub type PFNGLISPOINTINSTROKEPATHNVPROC =
27644    ::std::option::Option<unsafe extern "C" fn(path: GLuint, x: GLfloat, y: GLfloat) -> GLboolean>;
27645pub type PFNGLGETPATHLENGTHNVPROC = ::std::option::Option<
27646    unsafe extern "C" fn(path: GLuint, startSegment: GLsizei, numSegments: GLsizei) -> GLfloat,
27647>;
27648pub type PFNGLPOINTALONGPATHNVPROC = ::std::option::Option<
27649    unsafe extern "C" fn(
27650        path: GLuint,
27651        startSegment: GLsizei,
27652        numSegments: GLsizei,
27653        distance: GLfloat,
27654        x: *mut GLfloat,
27655        y: *mut GLfloat,
27656        tangentX: *mut GLfloat,
27657        tangentY: *mut GLfloat,
27658    ) -> GLboolean,
27659>;
27660pub type PFNGLMATRIXLOAD3X2FNVPROC =
27661    ::std::option::Option<unsafe extern "C" fn(matrixMode: GLenum, m: *const GLfloat)>;
27662pub type PFNGLMATRIXLOAD3X3FNVPROC =
27663    ::std::option::Option<unsafe extern "C" fn(matrixMode: GLenum, m: *const GLfloat)>;
27664pub type PFNGLMATRIXLOADTRANSPOSE3X3FNVPROC =
27665    ::std::option::Option<unsafe extern "C" fn(matrixMode: GLenum, m: *const GLfloat)>;
27666pub type PFNGLMATRIXMULT3X2FNVPROC =
27667    ::std::option::Option<unsafe extern "C" fn(matrixMode: GLenum, m: *const GLfloat)>;
27668pub type PFNGLMATRIXMULT3X3FNVPROC =
27669    ::std::option::Option<unsafe extern "C" fn(matrixMode: GLenum, m: *const GLfloat)>;
27670pub type PFNGLMATRIXMULTTRANSPOSE3X3FNVPROC =
27671    ::std::option::Option<unsafe extern "C" fn(matrixMode: GLenum, m: *const GLfloat)>;
27672pub type PFNGLSTENCILTHENCOVERFILLPATHNVPROC = ::std::option::Option<
27673    unsafe extern "C" fn(path: GLuint, fillMode: GLenum, mask: GLuint, coverMode: GLenum),
27674>;
27675pub type PFNGLSTENCILTHENCOVERSTROKEPATHNVPROC = ::std::option::Option<
27676    unsafe extern "C" fn(path: GLuint, reference: GLint, mask: GLuint, coverMode: GLenum),
27677>;
27678pub type PFNGLSTENCILTHENCOVERFILLPATHINSTANCEDNVPROC = ::std::option::Option<
27679    unsafe extern "C" fn(
27680        numPaths: GLsizei,
27681        pathNameType: GLenum,
27682        paths: *const ::std::os::raw::c_void,
27683        pathBase: GLuint,
27684        fillMode: GLenum,
27685        mask: GLuint,
27686        coverMode: GLenum,
27687        transformType: GLenum,
27688        transformValues: *const GLfloat,
27689    ),
27690>;
27691pub type PFNGLSTENCILTHENCOVERSTROKEPATHINSTANCEDNVPROC = ::std::option::Option<
27692    unsafe extern "C" fn(
27693        numPaths: GLsizei,
27694        pathNameType: GLenum,
27695        paths: *const ::std::os::raw::c_void,
27696        pathBase: GLuint,
27697        reference: GLint,
27698        mask: GLuint,
27699        coverMode: GLenum,
27700        transformType: GLenum,
27701        transformValues: *const GLfloat,
27702    ),
27703>;
27704pub type PFNGLPATHGLYPHINDEXRANGENVPROC = ::std::option::Option<
27705    unsafe extern "C" fn(
27706        fontTarget: GLenum,
27707        fontName: *const ::std::os::raw::c_void,
27708        fontStyle: GLbitfield,
27709        pathParameterTemplate: GLuint,
27710        emScale: GLfloat,
27711        baseAndCount: *mut GLuint,
27712    ) -> GLenum,
27713>;
27714pub type PFNGLPATHGLYPHINDEXARRAYNVPROC = ::std::option::Option<
27715    unsafe extern "C" fn(
27716        firstPathName: GLuint,
27717        fontTarget: GLenum,
27718        fontName: *const ::std::os::raw::c_void,
27719        fontStyle: GLbitfield,
27720        firstGlyphIndex: GLuint,
27721        numGlyphs: GLsizei,
27722        pathParameterTemplate: GLuint,
27723        emScale: GLfloat,
27724    ) -> GLenum,
27725>;
27726pub type PFNGLPATHMEMORYGLYPHINDEXARRAYNVPROC = ::std::option::Option<
27727    unsafe extern "C" fn(
27728        firstPathName: GLuint,
27729        fontTarget: GLenum,
27730        fontSize: GLsizeiptr,
27731        fontData: *const ::std::os::raw::c_void,
27732        faceIndex: GLsizei,
27733        firstGlyphIndex: GLuint,
27734        numGlyphs: GLsizei,
27735        pathParameterTemplate: GLuint,
27736        emScale: GLfloat,
27737    ) -> GLenum,
27738>;
27739pub type PFNGLPROGRAMPATHFRAGMENTINPUTGENNVPROC = ::std::option::Option<
27740    unsafe extern "C" fn(
27741        program: GLuint,
27742        location: GLint,
27743        genMode: GLenum,
27744        components: GLint,
27745        coeffs: *const GLfloat,
27746    ),
27747>;
27748pub type PFNGLGETPROGRAMRESOURCEFVNVPROC = ::std::option::Option<
27749    unsafe extern "C" fn(
27750        program: GLuint,
27751        programInterface: GLenum,
27752        index: GLuint,
27753        propCount: GLsizei,
27754        props: *const GLenum,
27755        bufSize: GLsizei,
27756        length: *mut GLsizei,
27757        params: *mut GLfloat,
27758    ),
27759>;
27760pub type PFNGLPATHCOLORGENNVPROC = ::std::option::Option<
27761    unsafe extern "C" fn(
27762        color: GLenum,
27763        genMode: GLenum,
27764        colorFormat: GLenum,
27765        coeffs: *const GLfloat,
27766    ),
27767>;
27768pub type PFNGLPATHTEXGENNVPROC = ::std::option::Option<
27769    unsafe extern "C" fn(
27770        texCoordSet: GLenum,
27771        genMode: GLenum,
27772        components: GLint,
27773        coeffs: *const GLfloat,
27774    ),
27775>;
27776pub type PFNGLPATHFOGGENNVPROC = ::std::option::Option<unsafe extern "C" fn(genMode: GLenum)>;
27777pub type PFNGLGETPATHCOLORGENIVNVPROC =
27778    ::std::option::Option<unsafe extern "C" fn(color: GLenum, pname: GLenum, value: *mut GLint)>;
27779pub type PFNGLGETPATHCOLORGENFVNVPROC =
27780    ::std::option::Option<unsafe extern "C" fn(color: GLenum, pname: GLenum, value: *mut GLfloat)>;
27781pub type PFNGLGETPATHTEXGENIVNVPROC = ::std::option::Option<
27782    unsafe extern "C" fn(texCoordSet: GLenum, pname: GLenum, value: *mut GLint),
27783>;
27784pub type PFNGLGETPATHTEXGENFVNVPROC = ::std::option::Option<
27785    unsafe extern "C" fn(texCoordSet: GLenum, pname: GLenum, value: *mut GLfloat),
27786>;
27787extern "C" {
27788    pub fn glGenPathsNV(range: GLsizei) -> GLuint;
27789}
27790extern "C" {
27791    pub fn glDeletePathsNV(path: GLuint, range: GLsizei);
27792}
27793extern "C" {
27794    pub fn glIsPathNV(path: GLuint) -> GLboolean;
27795}
27796extern "C" {
27797    pub fn glPathCommandsNV(
27798        path: GLuint,
27799        numCommands: GLsizei,
27800        commands: *const GLubyte,
27801        numCoords: GLsizei,
27802        coordType: GLenum,
27803        coords: *const ::std::os::raw::c_void,
27804    );
27805}
27806extern "C" {
27807    pub fn glPathCoordsNV(
27808        path: GLuint,
27809        numCoords: GLsizei,
27810        coordType: GLenum,
27811        coords: *const ::std::os::raw::c_void,
27812    );
27813}
27814extern "C" {
27815    pub fn glPathSubCommandsNV(
27816        path: GLuint,
27817        commandStart: GLsizei,
27818        commandsToDelete: GLsizei,
27819        numCommands: GLsizei,
27820        commands: *const GLubyte,
27821        numCoords: GLsizei,
27822        coordType: GLenum,
27823        coords: *const ::std::os::raw::c_void,
27824    );
27825}
27826extern "C" {
27827    pub fn glPathSubCoordsNV(
27828        path: GLuint,
27829        coordStart: GLsizei,
27830        numCoords: GLsizei,
27831        coordType: GLenum,
27832        coords: *const ::std::os::raw::c_void,
27833    );
27834}
27835extern "C" {
27836    pub fn glPathStringNV(
27837        path: GLuint,
27838        format: GLenum,
27839        length: GLsizei,
27840        pathString: *const ::std::os::raw::c_void,
27841    );
27842}
27843extern "C" {
27844    pub fn glPathGlyphsNV(
27845        firstPathName: GLuint,
27846        fontTarget: GLenum,
27847        fontName: *const ::std::os::raw::c_void,
27848        fontStyle: GLbitfield,
27849        numGlyphs: GLsizei,
27850        type_: GLenum,
27851        charcodes: *const ::std::os::raw::c_void,
27852        handleMissingGlyphs: GLenum,
27853        pathParameterTemplate: GLuint,
27854        emScale: GLfloat,
27855    );
27856}
27857extern "C" {
27858    pub fn glPathGlyphRangeNV(
27859        firstPathName: GLuint,
27860        fontTarget: GLenum,
27861        fontName: *const ::std::os::raw::c_void,
27862        fontStyle: GLbitfield,
27863        firstGlyph: GLuint,
27864        numGlyphs: GLsizei,
27865        handleMissingGlyphs: GLenum,
27866        pathParameterTemplate: GLuint,
27867        emScale: GLfloat,
27868    );
27869}
27870extern "C" {
27871    pub fn glWeightPathsNV(
27872        resultPath: GLuint,
27873        numPaths: GLsizei,
27874        paths: *const GLuint,
27875        weights: *const GLfloat,
27876    );
27877}
27878extern "C" {
27879    pub fn glCopyPathNV(resultPath: GLuint, srcPath: GLuint);
27880}
27881extern "C" {
27882    pub fn glInterpolatePathsNV(resultPath: GLuint, pathA: GLuint, pathB: GLuint, weight: GLfloat);
27883}
27884extern "C" {
27885    pub fn glTransformPathNV(
27886        resultPath: GLuint,
27887        srcPath: GLuint,
27888        transformType: GLenum,
27889        transformValues: *const GLfloat,
27890    );
27891}
27892extern "C" {
27893    pub fn glPathParameterivNV(path: GLuint, pname: GLenum, value: *const GLint);
27894}
27895extern "C" {
27896    pub fn glPathParameteriNV(path: GLuint, pname: GLenum, value: GLint);
27897}
27898extern "C" {
27899    pub fn glPathParameterfvNV(path: GLuint, pname: GLenum, value: *const GLfloat);
27900}
27901extern "C" {
27902    pub fn glPathParameterfNV(path: GLuint, pname: GLenum, value: GLfloat);
27903}
27904extern "C" {
27905    pub fn glPathDashArrayNV(path: GLuint, dashCount: GLsizei, dashArray: *const GLfloat);
27906}
27907extern "C" {
27908    pub fn glPathStencilFuncNV(func: GLenum, ref_: GLint, mask: GLuint);
27909}
27910extern "C" {
27911    pub fn glPathStencilDepthOffsetNV(factor: GLfloat, units: GLfloat);
27912}
27913extern "C" {
27914    pub fn glStencilFillPathNV(path: GLuint, fillMode: GLenum, mask: GLuint);
27915}
27916extern "C" {
27917    pub fn glStencilStrokePathNV(path: GLuint, reference: GLint, mask: GLuint);
27918}
27919extern "C" {
27920    pub fn glStencilFillPathInstancedNV(
27921        numPaths: GLsizei,
27922        pathNameType: GLenum,
27923        paths: *const ::std::os::raw::c_void,
27924        pathBase: GLuint,
27925        fillMode: GLenum,
27926        mask: GLuint,
27927        transformType: GLenum,
27928        transformValues: *const GLfloat,
27929    );
27930}
27931extern "C" {
27932    pub fn glStencilStrokePathInstancedNV(
27933        numPaths: GLsizei,
27934        pathNameType: GLenum,
27935        paths: *const ::std::os::raw::c_void,
27936        pathBase: GLuint,
27937        reference: GLint,
27938        mask: GLuint,
27939        transformType: GLenum,
27940        transformValues: *const GLfloat,
27941    );
27942}
27943extern "C" {
27944    pub fn glPathCoverDepthFuncNV(func: GLenum);
27945}
27946extern "C" {
27947    pub fn glCoverFillPathNV(path: GLuint, coverMode: GLenum);
27948}
27949extern "C" {
27950    pub fn glCoverStrokePathNV(path: GLuint, coverMode: GLenum);
27951}
27952extern "C" {
27953    pub fn glCoverFillPathInstancedNV(
27954        numPaths: GLsizei,
27955        pathNameType: GLenum,
27956        paths: *const ::std::os::raw::c_void,
27957        pathBase: GLuint,
27958        coverMode: GLenum,
27959        transformType: GLenum,
27960        transformValues: *const GLfloat,
27961    );
27962}
27963extern "C" {
27964    pub fn glCoverStrokePathInstancedNV(
27965        numPaths: GLsizei,
27966        pathNameType: GLenum,
27967        paths: *const ::std::os::raw::c_void,
27968        pathBase: GLuint,
27969        coverMode: GLenum,
27970        transformType: GLenum,
27971        transformValues: *const GLfloat,
27972    );
27973}
27974extern "C" {
27975    pub fn glGetPathParameterivNV(path: GLuint, pname: GLenum, value: *mut GLint);
27976}
27977extern "C" {
27978    pub fn glGetPathParameterfvNV(path: GLuint, pname: GLenum, value: *mut GLfloat);
27979}
27980extern "C" {
27981    pub fn glGetPathCommandsNV(path: GLuint, commands: *mut GLubyte);
27982}
27983extern "C" {
27984    pub fn glGetPathCoordsNV(path: GLuint, coords: *mut GLfloat);
27985}
27986extern "C" {
27987    pub fn glGetPathDashArrayNV(path: GLuint, dashArray: *mut GLfloat);
27988}
27989extern "C" {
27990    pub fn glGetPathMetricsNV(
27991        metricQueryMask: GLbitfield,
27992        numPaths: GLsizei,
27993        pathNameType: GLenum,
27994        paths: *const ::std::os::raw::c_void,
27995        pathBase: GLuint,
27996        stride: GLsizei,
27997        metrics: *mut GLfloat,
27998    );
27999}
28000extern "C" {
28001    pub fn glGetPathMetricRangeNV(
28002        metricQueryMask: GLbitfield,
28003        firstPathName: GLuint,
28004        numPaths: GLsizei,
28005        stride: GLsizei,
28006        metrics: *mut GLfloat,
28007    );
28008}
28009extern "C" {
28010    pub fn glGetPathSpacingNV(
28011        pathListMode: GLenum,
28012        numPaths: GLsizei,
28013        pathNameType: GLenum,
28014        paths: *const ::std::os::raw::c_void,
28015        pathBase: GLuint,
28016        advanceScale: GLfloat,
28017        kerningScale: GLfloat,
28018        transformType: GLenum,
28019        returnedSpacing: *mut GLfloat,
28020    );
28021}
28022extern "C" {
28023    pub fn glIsPointInFillPathNV(path: GLuint, mask: GLuint, x: GLfloat, y: GLfloat) -> GLboolean;
28024}
28025extern "C" {
28026    pub fn glIsPointInStrokePathNV(path: GLuint, x: GLfloat, y: GLfloat) -> GLboolean;
28027}
28028extern "C" {
28029    pub fn glGetPathLengthNV(path: GLuint, startSegment: GLsizei, numSegments: GLsizei) -> GLfloat;
28030}
28031extern "C" {
28032    pub fn glPointAlongPathNV(
28033        path: GLuint,
28034        startSegment: GLsizei,
28035        numSegments: GLsizei,
28036        distance: GLfloat,
28037        x: *mut GLfloat,
28038        y: *mut GLfloat,
28039        tangentX: *mut GLfloat,
28040        tangentY: *mut GLfloat,
28041    ) -> GLboolean;
28042}
28043extern "C" {
28044    pub fn glMatrixLoad3x2fNV(matrixMode: GLenum, m: *const GLfloat);
28045}
28046extern "C" {
28047    pub fn glMatrixLoad3x3fNV(matrixMode: GLenum, m: *const GLfloat);
28048}
28049extern "C" {
28050    pub fn glMatrixLoadTranspose3x3fNV(matrixMode: GLenum, m: *const GLfloat);
28051}
28052extern "C" {
28053    pub fn glMatrixMult3x2fNV(matrixMode: GLenum, m: *const GLfloat);
28054}
28055extern "C" {
28056    pub fn glMatrixMult3x3fNV(matrixMode: GLenum, m: *const GLfloat);
28057}
28058extern "C" {
28059    pub fn glMatrixMultTranspose3x3fNV(matrixMode: GLenum, m: *const GLfloat);
28060}
28061extern "C" {
28062    pub fn glStencilThenCoverFillPathNV(
28063        path: GLuint,
28064        fillMode: GLenum,
28065        mask: GLuint,
28066        coverMode: GLenum,
28067    );
28068}
28069extern "C" {
28070    pub fn glStencilThenCoverStrokePathNV(
28071        path: GLuint,
28072        reference: GLint,
28073        mask: GLuint,
28074        coverMode: GLenum,
28075    );
28076}
28077extern "C" {
28078    pub fn glStencilThenCoverFillPathInstancedNV(
28079        numPaths: GLsizei,
28080        pathNameType: GLenum,
28081        paths: *const ::std::os::raw::c_void,
28082        pathBase: GLuint,
28083        fillMode: GLenum,
28084        mask: GLuint,
28085        coverMode: GLenum,
28086        transformType: GLenum,
28087        transformValues: *const GLfloat,
28088    );
28089}
28090extern "C" {
28091    pub fn glStencilThenCoverStrokePathInstancedNV(
28092        numPaths: GLsizei,
28093        pathNameType: GLenum,
28094        paths: *const ::std::os::raw::c_void,
28095        pathBase: GLuint,
28096        reference: GLint,
28097        mask: GLuint,
28098        coverMode: GLenum,
28099        transformType: GLenum,
28100        transformValues: *const GLfloat,
28101    );
28102}
28103extern "C" {
28104    pub fn glPathGlyphIndexRangeNV(
28105        fontTarget: GLenum,
28106        fontName: *const ::std::os::raw::c_void,
28107        fontStyle: GLbitfield,
28108        pathParameterTemplate: GLuint,
28109        emScale: GLfloat,
28110        baseAndCount: *mut GLuint,
28111    ) -> GLenum;
28112}
28113extern "C" {
28114    pub fn glPathGlyphIndexArrayNV(
28115        firstPathName: GLuint,
28116        fontTarget: GLenum,
28117        fontName: *const ::std::os::raw::c_void,
28118        fontStyle: GLbitfield,
28119        firstGlyphIndex: GLuint,
28120        numGlyphs: GLsizei,
28121        pathParameterTemplate: GLuint,
28122        emScale: GLfloat,
28123    ) -> GLenum;
28124}
28125extern "C" {
28126    pub fn glPathMemoryGlyphIndexArrayNV(
28127        firstPathName: GLuint,
28128        fontTarget: GLenum,
28129        fontSize: GLsizeiptr,
28130        fontData: *const ::std::os::raw::c_void,
28131        faceIndex: GLsizei,
28132        firstGlyphIndex: GLuint,
28133        numGlyphs: GLsizei,
28134        pathParameterTemplate: GLuint,
28135        emScale: GLfloat,
28136    ) -> GLenum;
28137}
28138extern "C" {
28139    pub fn glProgramPathFragmentInputGenNV(
28140        program: GLuint,
28141        location: GLint,
28142        genMode: GLenum,
28143        components: GLint,
28144        coeffs: *const GLfloat,
28145    );
28146}
28147extern "C" {
28148    pub fn glGetProgramResourcefvNV(
28149        program: GLuint,
28150        programInterface: GLenum,
28151        index: GLuint,
28152        propCount: GLsizei,
28153        props: *const GLenum,
28154        bufSize: GLsizei,
28155        length: *mut GLsizei,
28156        params: *mut GLfloat,
28157    );
28158}
28159extern "C" {
28160    pub fn glPathColorGenNV(
28161        color: GLenum,
28162        genMode: GLenum,
28163        colorFormat: GLenum,
28164        coeffs: *const GLfloat,
28165    );
28166}
28167extern "C" {
28168    pub fn glPathTexGenNV(
28169        texCoordSet: GLenum,
28170        genMode: GLenum,
28171        components: GLint,
28172        coeffs: *const GLfloat,
28173    );
28174}
28175extern "C" {
28176    pub fn glPathFogGenNV(genMode: GLenum);
28177}
28178extern "C" {
28179    pub fn glGetPathColorGenivNV(color: GLenum, pname: GLenum, value: *mut GLint);
28180}
28181extern "C" {
28182    pub fn glGetPathColorGenfvNV(color: GLenum, pname: GLenum, value: *mut GLfloat);
28183}
28184extern "C" {
28185    pub fn glGetPathTexGenivNV(texCoordSet: GLenum, pname: GLenum, value: *mut GLint);
28186}
28187extern "C" {
28188    pub fn glGetPathTexGenfvNV(texCoordSet: GLenum, pname: GLenum, value: *mut GLfloat);
28189}
28190pub type PFNGLPIXELDATARANGENVPROC = ::std::option::Option<
28191    unsafe extern "C" fn(target: GLenum, length: GLsizei, pointer: *const ::std::os::raw::c_void),
28192>;
28193pub type PFNGLFLUSHPIXELDATARANGENVPROC =
28194    ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
28195extern "C" {
28196    pub fn glPixelDataRangeNV(
28197        target: GLenum,
28198        length: GLsizei,
28199        pointer: *const ::std::os::raw::c_void,
28200    );
28201}
28202extern "C" {
28203    pub fn glFlushPixelDataRangeNV(target: GLenum);
28204}
28205pub type PFNGLPOINTPARAMETERINVPROC =
28206    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
28207pub type PFNGLPOINTPARAMETERIVNVPROC =
28208    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLint)>;
28209extern "C" {
28210    pub fn glPointParameteriNV(pname: GLenum, param: GLint);
28211}
28212extern "C" {
28213    pub fn glPointParameterivNV(pname: GLenum, params: *const GLint);
28214}
28215pub type PFNGLPRESENTFRAMEKEYEDNVPROC = ::std::option::Option<
28216    unsafe extern "C" fn(
28217        video_slot: GLuint,
28218        minPresentTime: GLuint64EXT,
28219        beginPresentTimeId: GLuint,
28220        presentDurationId: GLuint,
28221        type_: GLenum,
28222        target0: GLenum,
28223        fill0: GLuint,
28224        key0: GLuint,
28225        target1: GLenum,
28226        fill1: GLuint,
28227        key1: GLuint,
28228    ),
28229>;
28230pub type PFNGLPRESENTFRAMEDUALFILLNVPROC = ::std::option::Option<
28231    unsafe extern "C" fn(
28232        video_slot: GLuint,
28233        minPresentTime: GLuint64EXT,
28234        beginPresentTimeId: GLuint,
28235        presentDurationId: GLuint,
28236        type_: GLenum,
28237        target0: GLenum,
28238        fill0: GLuint,
28239        target1: GLenum,
28240        fill1: GLuint,
28241        target2: GLenum,
28242        fill2: GLuint,
28243        target3: GLenum,
28244        fill3: GLuint,
28245    ),
28246>;
28247pub type PFNGLGETVIDEOIVNVPROC = ::std::option::Option<
28248    unsafe extern "C" fn(video_slot: GLuint, pname: GLenum, params: *mut GLint),
28249>;
28250pub type PFNGLGETVIDEOUIVNVPROC = ::std::option::Option<
28251    unsafe extern "C" fn(video_slot: GLuint, pname: GLenum, params: *mut GLuint),
28252>;
28253pub type PFNGLGETVIDEOI64VNVPROC = ::std::option::Option<
28254    unsafe extern "C" fn(video_slot: GLuint, pname: GLenum, params: *mut GLint64EXT),
28255>;
28256pub type PFNGLGETVIDEOUI64VNVPROC = ::std::option::Option<
28257    unsafe extern "C" fn(video_slot: GLuint, pname: GLenum, params: *mut GLuint64EXT),
28258>;
28259extern "C" {
28260    pub fn glPresentFrameKeyedNV(
28261        video_slot: GLuint,
28262        minPresentTime: GLuint64EXT,
28263        beginPresentTimeId: GLuint,
28264        presentDurationId: GLuint,
28265        type_: GLenum,
28266        target0: GLenum,
28267        fill0: GLuint,
28268        key0: GLuint,
28269        target1: GLenum,
28270        fill1: GLuint,
28271        key1: GLuint,
28272    );
28273}
28274extern "C" {
28275    pub fn glPresentFrameDualFillNV(
28276        video_slot: GLuint,
28277        minPresentTime: GLuint64EXT,
28278        beginPresentTimeId: GLuint,
28279        presentDurationId: GLuint,
28280        type_: GLenum,
28281        target0: GLenum,
28282        fill0: GLuint,
28283        target1: GLenum,
28284        fill1: GLuint,
28285        target2: GLenum,
28286        fill2: GLuint,
28287        target3: GLenum,
28288        fill3: GLuint,
28289    );
28290}
28291extern "C" {
28292    pub fn glGetVideoivNV(video_slot: GLuint, pname: GLenum, params: *mut GLint);
28293}
28294extern "C" {
28295    pub fn glGetVideouivNV(video_slot: GLuint, pname: GLenum, params: *mut GLuint);
28296}
28297extern "C" {
28298    pub fn glGetVideoi64vNV(video_slot: GLuint, pname: GLenum, params: *mut GLint64EXT);
28299}
28300extern "C" {
28301    pub fn glGetVideoui64vNV(video_slot: GLuint, pname: GLenum, params: *mut GLuint64EXT);
28302}
28303pub type PFNGLPRIMITIVERESTARTNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
28304pub type PFNGLPRIMITIVERESTARTINDEXNVPROC =
28305    ::std::option::Option<unsafe extern "C" fn(index: GLuint)>;
28306extern "C" {
28307    pub fn glPrimitiveRestartNV();
28308}
28309extern "C" {
28310    pub fn glPrimitiveRestartIndexNV(index: GLuint);
28311}
28312pub type PFNGLQUERYRESOURCENVPROC = ::std::option::Option<
28313    unsafe extern "C" fn(
28314        queryType: GLenum,
28315        tagId: GLint,
28316        bufSize: GLuint,
28317        buffer: *mut GLint,
28318    ) -> GLint,
28319>;
28320extern "C" {
28321    pub fn glQueryResourceNV(
28322        queryType: GLenum,
28323        tagId: GLint,
28324        bufSize: GLuint,
28325        buffer: *mut GLint,
28326    ) -> GLint;
28327}
28328pub type PFNGLGENQUERYRESOURCETAGNVPROC =
28329    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, tagIds: *mut GLint)>;
28330pub type PFNGLDELETEQUERYRESOURCETAGNVPROC =
28331    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, tagIds: *const GLint)>;
28332pub type PFNGLQUERYRESOURCETAGNVPROC =
28333    ::std::option::Option<unsafe extern "C" fn(tagId: GLint, tagString: *const GLchar)>;
28334extern "C" {
28335    pub fn glGenQueryResourceTagNV(n: GLsizei, tagIds: *mut GLint);
28336}
28337extern "C" {
28338    pub fn glDeleteQueryResourceTagNV(n: GLsizei, tagIds: *const GLint);
28339}
28340extern "C" {
28341    pub fn glQueryResourceTagNV(tagId: GLint, tagString: *const GLchar);
28342}
28343pub type PFNGLCOMBINERPARAMETERFVNVPROC =
28344    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
28345pub type PFNGLCOMBINERPARAMETERFNVPROC =
28346    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
28347pub type PFNGLCOMBINERPARAMETERIVNVPROC =
28348    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLint)>;
28349pub type PFNGLCOMBINERPARAMETERINVPROC =
28350    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
28351pub type PFNGLCOMBINERINPUTNVPROC = ::std::option::Option<
28352    unsafe extern "C" fn(
28353        stage: GLenum,
28354        portion: GLenum,
28355        variable: GLenum,
28356        input: GLenum,
28357        mapping: GLenum,
28358        componentUsage: GLenum,
28359    ),
28360>;
28361pub type PFNGLCOMBINEROUTPUTNVPROC = ::std::option::Option<
28362    unsafe extern "C" fn(
28363        stage: GLenum,
28364        portion: GLenum,
28365        abOutput: GLenum,
28366        cdOutput: GLenum,
28367        sumOutput: GLenum,
28368        scale: GLenum,
28369        bias: GLenum,
28370        abDotProduct: GLboolean,
28371        cdDotProduct: GLboolean,
28372        muxSum: GLboolean,
28373    ),
28374>;
28375pub type PFNGLFINALCOMBINERINPUTNVPROC = ::std::option::Option<
28376    unsafe extern "C" fn(variable: GLenum, input: GLenum, mapping: GLenum, componentUsage: GLenum),
28377>;
28378pub type PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC = ::std::option::Option<
28379    unsafe extern "C" fn(
28380        stage: GLenum,
28381        portion: GLenum,
28382        variable: GLenum,
28383        pname: GLenum,
28384        params: *mut GLfloat,
28385    ),
28386>;
28387pub type PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC = ::std::option::Option<
28388    unsafe extern "C" fn(
28389        stage: GLenum,
28390        portion: GLenum,
28391        variable: GLenum,
28392        pname: GLenum,
28393        params: *mut GLint,
28394    ),
28395>;
28396pub type PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC = ::std::option::Option<
28397    unsafe extern "C" fn(stage: GLenum, portion: GLenum, pname: GLenum, params: *mut GLfloat),
28398>;
28399pub type PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC = ::std::option::Option<
28400    unsafe extern "C" fn(stage: GLenum, portion: GLenum, pname: GLenum, params: *mut GLint),
28401>;
28402pub type PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC = ::std::option::Option<
28403    unsafe extern "C" fn(variable: GLenum, pname: GLenum, params: *mut GLfloat),
28404>;
28405pub type PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC = ::std::option::Option<
28406    unsafe extern "C" fn(variable: GLenum, pname: GLenum, params: *mut GLint),
28407>;
28408extern "C" {
28409    pub fn glCombinerParameterfvNV(pname: GLenum, params: *const GLfloat);
28410}
28411extern "C" {
28412    pub fn glCombinerParameterfNV(pname: GLenum, param: GLfloat);
28413}
28414extern "C" {
28415    pub fn glCombinerParameterivNV(pname: GLenum, params: *const GLint);
28416}
28417extern "C" {
28418    pub fn glCombinerParameteriNV(pname: GLenum, param: GLint);
28419}
28420extern "C" {
28421    pub fn glCombinerInputNV(
28422        stage: GLenum,
28423        portion: GLenum,
28424        variable: GLenum,
28425        input: GLenum,
28426        mapping: GLenum,
28427        componentUsage: GLenum,
28428    );
28429}
28430extern "C" {
28431    pub fn glCombinerOutputNV(
28432        stage: GLenum,
28433        portion: GLenum,
28434        abOutput: GLenum,
28435        cdOutput: GLenum,
28436        sumOutput: GLenum,
28437        scale: GLenum,
28438        bias: GLenum,
28439        abDotProduct: GLboolean,
28440        cdDotProduct: GLboolean,
28441        muxSum: GLboolean,
28442    );
28443}
28444extern "C" {
28445    pub fn glFinalCombinerInputNV(
28446        variable: GLenum,
28447        input: GLenum,
28448        mapping: GLenum,
28449        componentUsage: GLenum,
28450    );
28451}
28452extern "C" {
28453    pub fn glGetCombinerInputParameterfvNV(
28454        stage: GLenum,
28455        portion: GLenum,
28456        variable: GLenum,
28457        pname: GLenum,
28458        params: *mut GLfloat,
28459    );
28460}
28461extern "C" {
28462    pub fn glGetCombinerInputParameterivNV(
28463        stage: GLenum,
28464        portion: GLenum,
28465        variable: GLenum,
28466        pname: GLenum,
28467        params: *mut GLint,
28468    );
28469}
28470extern "C" {
28471    pub fn glGetCombinerOutputParameterfvNV(
28472        stage: GLenum,
28473        portion: GLenum,
28474        pname: GLenum,
28475        params: *mut GLfloat,
28476    );
28477}
28478extern "C" {
28479    pub fn glGetCombinerOutputParameterivNV(
28480        stage: GLenum,
28481        portion: GLenum,
28482        pname: GLenum,
28483        params: *mut GLint,
28484    );
28485}
28486extern "C" {
28487    pub fn glGetFinalCombinerInputParameterfvNV(
28488        variable: GLenum,
28489        pname: GLenum,
28490        params: *mut GLfloat,
28491    );
28492}
28493extern "C" {
28494    pub fn glGetFinalCombinerInputParameterivNV(
28495        variable: GLenum,
28496        pname: GLenum,
28497        params: *mut GLint,
28498    );
28499}
28500pub type PFNGLCOMBINERSTAGEPARAMETERFVNVPROC = ::std::option::Option<
28501    unsafe extern "C" fn(stage: GLenum, pname: GLenum, params: *const GLfloat),
28502>;
28503pub type PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC =
28504    ::std::option::Option<unsafe extern "C" fn(stage: GLenum, pname: GLenum, params: *mut GLfloat)>;
28505extern "C" {
28506    pub fn glCombinerStageParameterfvNV(stage: GLenum, pname: GLenum, params: *const GLfloat);
28507}
28508extern "C" {
28509    pub fn glGetCombinerStageParameterfvNV(stage: GLenum, pname: GLenum, params: *mut GLfloat);
28510}
28511pub type PFNGLFRAMEBUFFERSAMPLELOCATIONSFVNVPROC = ::std::option::Option<
28512    unsafe extern "C" fn(target: GLenum, start: GLuint, count: GLsizei, v: *const GLfloat),
28513>;
28514pub type PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVNVPROC = ::std::option::Option<
28515    unsafe extern "C" fn(framebuffer: GLuint, start: GLuint, count: GLsizei, v: *const GLfloat),
28516>;
28517pub type PFNGLRESOLVEDEPTHVALUESNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
28518extern "C" {
28519    pub fn glFramebufferSampleLocationsfvNV(
28520        target: GLenum,
28521        start: GLuint,
28522        count: GLsizei,
28523        v: *const GLfloat,
28524    );
28525}
28526extern "C" {
28527    pub fn glNamedFramebufferSampleLocationsfvNV(
28528        framebuffer: GLuint,
28529        start: GLuint,
28530        count: GLsizei,
28531        v: *const GLfloat,
28532    );
28533}
28534extern "C" {
28535    pub fn glResolveDepthValuesNV();
28536}
28537pub type PFNGLSCISSOREXCLUSIVENVPROC = ::std::option::Option<
28538    unsafe extern "C" fn(x: GLint, y: GLint, width: GLsizei, height: GLsizei),
28539>;
28540pub type PFNGLSCISSOREXCLUSIVEARRAYVNVPROC =
28541    ::std::option::Option<unsafe extern "C" fn(first: GLuint, count: GLsizei, v: *const GLint)>;
28542extern "C" {
28543    pub fn glScissorExclusiveNV(x: GLint, y: GLint, width: GLsizei, height: GLsizei);
28544}
28545extern "C" {
28546    pub fn glScissorExclusiveArrayvNV(first: GLuint, count: GLsizei, v: *const GLint);
28547}
28548pub type PFNGLMAKEBUFFERRESIDENTNVPROC =
28549    ::std::option::Option<unsafe extern "C" fn(target: GLenum, access: GLenum)>;
28550pub type PFNGLMAKEBUFFERNONRESIDENTNVPROC =
28551    ::std::option::Option<unsafe extern "C" fn(target: GLenum)>;
28552pub type PFNGLISBUFFERRESIDENTNVPROC =
28553    ::std::option::Option<unsafe extern "C" fn(target: GLenum) -> GLboolean>;
28554pub type PFNGLMAKENAMEDBUFFERRESIDENTNVPROC =
28555    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint, access: GLenum)>;
28556pub type PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC =
28557    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint)>;
28558pub type PFNGLISNAMEDBUFFERRESIDENTNVPROC =
28559    ::std::option::Option<unsafe extern "C" fn(buffer: GLuint) -> GLboolean>;
28560pub type PFNGLGETBUFFERPARAMETERUI64VNVPROC = ::std::option::Option<
28561    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLuint64EXT),
28562>;
28563pub type PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC = ::std::option::Option<
28564    unsafe extern "C" fn(buffer: GLuint, pname: GLenum, params: *mut GLuint64EXT),
28565>;
28566pub type PFNGLGETINTEGERUI64VNVPROC =
28567    ::std::option::Option<unsafe extern "C" fn(value: GLenum, result: *mut GLuint64EXT)>;
28568pub type PFNGLUNIFORMUI64NVPROC =
28569    ::std::option::Option<unsafe extern "C" fn(location: GLint, value: GLuint64EXT)>;
28570pub type PFNGLUNIFORMUI64VNVPROC = ::std::option::Option<
28571    unsafe extern "C" fn(location: GLint, count: GLsizei, value: *const GLuint64EXT),
28572>;
28573pub type PFNGLPROGRAMUNIFORMUI64NVPROC = ::std::option::Option<
28574    unsafe extern "C" fn(program: GLuint, location: GLint, value: GLuint64EXT),
28575>;
28576pub type PFNGLPROGRAMUNIFORMUI64VNVPROC = ::std::option::Option<
28577    unsafe extern "C" fn(
28578        program: GLuint,
28579        location: GLint,
28580        count: GLsizei,
28581        value: *const GLuint64EXT,
28582    ),
28583>;
28584extern "C" {
28585    pub fn glMakeBufferResidentNV(target: GLenum, access: GLenum);
28586}
28587extern "C" {
28588    pub fn glMakeBufferNonResidentNV(target: GLenum);
28589}
28590extern "C" {
28591    pub fn glIsBufferResidentNV(target: GLenum) -> GLboolean;
28592}
28593extern "C" {
28594    pub fn glMakeNamedBufferResidentNV(buffer: GLuint, access: GLenum);
28595}
28596extern "C" {
28597    pub fn glMakeNamedBufferNonResidentNV(buffer: GLuint);
28598}
28599extern "C" {
28600    pub fn glIsNamedBufferResidentNV(buffer: GLuint) -> GLboolean;
28601}
28602extern "C" {
28603    pub fn glGetBufferParameterui64vNV(target: GLenum, pname: GLenum, params: *mut GLuint64EXT);
28604}
28605extern "C" {
28606    pub fn glGetNamedBufferParameterui64vNV(
28607        buffer: GLuint,
28608        pname: GLenum,
28609        params: *mut GLuint64EXT,
28610    );
28611}
28612extern "C" {
28613    pub fn glGetIntegerui64vNV(value: GLenum, result: *mut GLuint64EXT);
28614}
28615extern "C" {
28616    pub fn glUniformui64NV(location: GLint, value: GLuint64EXT);
28617}
28618extern "C" {
28619    pub fn glUniformui64vNV(location: GLint, count: GLsizei, value: *const GLuint64EXT);
28620}
28621extern "C" {
28622    pub fn glProgramUniformui64NV(program: GLuint, location: GLint, value: GLuint64EXT);
28623}
28624extern "C" {
28625    pub fn glProgramUniformui64vNV(
28626        program: GLuint,
28627        location: GLint,
28628        count: GLsizei,
28629        value: *const GLuint64EXT,
28630    );
28631}
28632pub type PFNGLBINDSHADINGRATEIMAGENVPROC =
28633    ::std::option::Option<unsafe extern "C" fn(texture: GLuint)>;
28634pub type PFNGLGETSHADINGRATEIMAGEPALETTENVPROC =
28635    ::std::option::Option<unsafe extern "C" fn(viewport: GLuint, entry: GLuint, rate: *mut GLenum)>;
28636pub type PFNGLGETSHADINGRATESAMPLELOCATIONIVNVPROC = ::std::option::Option<
28637    unsafe extern "C" fn(rate: GLenum, samples: GLuint, index: GLuint, location: *mut GLint),
28638>;
28639pub type PFNGLSHADINGRATEIMAGEBARRIERNVPROC =
28640    ::std::option::Option<unsafe extern "C" fn(synchronize: GLboolean)>;
28641pub type PFNGLSHADINGRATEIMAGEPALETTENVPROC = ::std::option::Option<
28642    unsafe extern "C" fn(viewport: GLuint, first: GLuint, count: GLsizei, rates: *const GLenum),
28643>;
28644pub type PFNGLSHADINGRATESAMPLEORDERNVPROC =
28645    ::std::option::Option<unsafe extern "C" fn(order: GLenum)>;
28646pub type PFNGLSHADINGRATESAMPLEORDERCUSTOMNVPROC = ::std::option::Option<
28647    unsafe extern "C" fn(rate: GLenum, samples: GLuint, locations: *const GLint),
28648>;
28649extern "C" {
28650    pub fn glBindShadingRateImageNV(texture: GLuint);
28651}
28652extern "C" {
28653    pub fn glGetShadingRateImagePaletteNV(viewport: GLuint, entry: GLuint, rate: *mut GLenum);
28654}
28655extern "C" {
28656    pub fn glGetShadingRateSampleLocationivNV(
28657        rate: GLenum,
28658        samples: GLuint,
28659        index: GLuint,
28660        location: *mut GLint,
28661    );
28662}
28663extern "C" {
28664    pub fn glShadingRateImageBarrierNV(synchronize: GLboolean);
28665}
28666extern "C" {
28667    pub fn glShadingRateImagePaletteNV(
28668        viewport: GLuint,
28669        first: GLuint,
28670        count: GLsizei,
28671        rates: *const GLenum,
28672    );
28673}
28674extern "C" {
28675    pub fn glShadingRateSampleOrderNV(order: GLenum);
28676}
28677extern "C" {
28678    pub fn glShadingRateSampleOrderCustomNV(rate: GLenum, samples: GLuint, locations: *const GLint);
28679}
28680pub type PFNGLTEXTUREBARRIERNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
28681extern "C" {
28682    pub fn glTextureBarrierNV();
28683}
28684pub type PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC = ::std::option::Option<
28685    unsafe extern "C" fn(
28686        target: GLenum,
28687        coverageSamples: GLsizei,
28688        colorSamples: GLsizei,
28689        internalFormat: GLint,
28690        width: GLsizei,
28691        height: GLsizei,
28692        fixedSampleLocations: GLboolean,
28693    ),
28694>;
28695pub type PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC = ::std::option::Option<
28696    unsafe extern "C" fn(
28697        target: GLenum,
28698        coverageSamples: GLsizei,
28699        colorSamples: GLsizei,
28700        internalFormat: GLint,
28701        width: GLsizei,
28702        height: GLsizei,
28703        depth: GLsizei,
28704        fixedSampleLocations: GLboolean,
28705    ),
28706>;
28707pub type PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC = ::std::option::Option<
28708    unsafe extern "C" fn(
28709        texture: GLuint,
28710        target: GLenum,
28711        samples: GLsizei,
28712        internalFormat: GLint,
28713        width: GLsizei,
28714        height: GLsizei,
28715        fixedSampleLocations: GLboolean,
28716    ),
28717>;
28718pub type PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC = ::std::option::Option<
28719    unsafe extern "C" fn(
28720        texture: GLuint,
28721        target: GLenum,
28722        samples: GLsizei,
28723        internalFormat: GLint,
28724        width: GLsizei,
28725        height: GLsizei,
28726        depth: GLsizei,
28727        fixedSampleLocations: GLboolean,
28728    ),
28729>;
28730pub type PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC = ::std::option::Option<
28731    unsafe extern "C" fn(
28732        texture: GLuint,
28733        target: GLenum,
28734        coverageSamples: GLsizei,
28735        colorSamples: GLsizei,
28736        internalFormat: GLint,
28737        width: GLsizei,
28738        height: GLsizei,
28739        fixedSampleLocations: GLboolean,
28740    ),
28741>;
28742pub type PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC = ::std::option::Option<
28743    unsafe extern "C" fn(
28744        texture: GLuint,
28745        target: GLenum,
28746        coverageSamples: GLsizei,
28747        colorSamples: GLsizei,
28748        internalFormat: GLint,
28749        width: GLsizei,
28750        height: GLsizei,
28751        depth: GLsizei,
28752        fixedSampleLocations: GLboolean,
28753    ),
28754>;
28755extern "C" {
28756    pub fn glTexImage2DMultisampleCoverageNV(
28757        target: GLenum,
28758        coverageSamples: GLsizei,
28759        colorSamples: GLsizei,
28760        internalFormat: GLint,
28761        width: GLsizei,
28762        height: GLsizei,
28763        fixedSampleLocations: GLboolean,
28764    );
28765}
28766extern "C" {
28767    pub fn glTexImage3DMultisampleCoverageNV(
28768        target: GLenum,
28769        coverageSamples: GLsizei,
28770        colorSamples: GLsizei,
28771        internalFormat: GLint,
28772        width: GLsizei,
28773        height: GLsizei,
28774        depth: GLsizei,
28775        fixedSampleLocations: GLboolean,
28776    );
28777}
28778extern "C" {
28779    pub fn glTextureImage2DMultisampleNV(
28780        texture: GLuint,
28781        target: GLenum,
28782        samples: GLsizei,
28783        internalFormat: GLint,
28784        width: GLsizei,
28785        height: GLsizei,
28786        fixedSampleLocations: GLboolean,
28787    );
28788}
28789extern "C" {
28790    pub fn glTextureImage3DMultisampleNV(
28791        texture: GLuint,
28792        target: GLenum,
28793        samples: GLsizei,
28794        internalFormat: GLint,
28795        width: GLsizei,
28796        height: GLsizei,
28797        depth: GLsizei,
28798        fixedSampleLocations: GLboolean,
28799    );
28800}
28801extern "C" {
28802    pub fn glTextureImage2DMultisampleCoverageNV(
28803        texture: GLuint,
28804        target: GLenum,
28805        coverageSamples: GLsizei,
28806        colorSamples: GLsizei,
28807        internalFormat: GLint,
28808        width: GLsizei,
28809        height: GLsizei,
28810        fixedSampleLocations: GLboolean,
28811    );
28812}
28813extern "C" {
28814    pub fn glTextureImage3DMultisampleCoverageNV(
28815        texture: GLuint,
28816        target: GLenum,
28817        coverageSamples: GLsizei,
28818        colorSamples: GLsizei,
28819        internalFormat: GLint,
28820        width: GLsizei,
28821        height: GLsizei,
28822        depth: GLsizei,
28823        fixedSampleLocations: GLboolean,
28824    );
28825}
28826pub type PFNGLBEGINTRANSFORMFEEDBACKNVPROC =
28827    ::std::option::Option<unsafe extern "C" fn(primitiveMode: GLenum)>;
28828pub type PFNGLENDTRANSFORMFEEDBACKNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
28829pub type PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC = ::std::option::Option<
28830    unsafe extern "C" fn(count: GLsizei, attribs: *const GLint, bufferMode: GLenum),
28831>;
28832pub type PFNGLBINDBUFFERRANGENVPROC = ::std::option::Option<
28833    unsafe extern "C" fn(
28834        target: GLenum,
28835        index: GLuint,
28836        buffer: GLuint,
28837        offset: GLintptr,
28838        size: GLsizeiptr,
28839    ),
28840>;
28841pub type PFNGLBINDBUFFEROFFSETNVPROC = ::std::option::Option<
28842    unsafe extern "C" fn(target: GLenum, index: GLuint, buffer: GLuint, offset: GLintptr),
28843>;
28844pub type PFNGLBINDBUFFERBASENVPROC =
28845    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, buffer: GLuint)>;
28846pub type PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC = ::std::option::Option<
28847    unsafe extern "C" fn(
28848        program: GLuint,
28849        count: GLsizei,
28850        locations: *const GLint,
28851        bufferMode: GLenum,
28852    ),
28853>;
28854pub type PFNGLACTIVEVARYINGNVPROC =
28855    ::std::option::Option<unsafe extern "C" fn(program: GLuint, name: *const GLchar)>;
28856pub type PFNGLGETVARYINGLOCATIONNVPROC =
28857    ::std::option::Option<unsafe extern "C" fn(program: GLuint, name: *const GLchar) -> GLint>;
28858pub type PFNGLGETACTIVEVARYINGNVPROC = ::std::option::Option<
28859    unsafe extern "C" fn(
28860        program: GLuint,
28861        index: GLuint,
28862        bufSize: GLsizei,
28863        length: *mut GLsizei,
28864        size: *mut GLsizei,
28865        type_: *mut GLenum,
28866        name: *mut GLchar,
28867    ),
28868>;
28869pub type PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC = ::std::option::Option<
28870    unsafe extern "C" fn(program: GLuint, index: GLuint, location: *mut GLint),
28871>;
28872pub type PFNGLTRANSFORMFEEDBACKSTREAMATTRIBSNVPROC = ::std::option::Option<
28873    unsafe extern "C" fn(
28874        count: GLsizei,
28875        attribs: *const GLint,
28876        nbuffers: GLsizei,
28877        bufstreams: *const GLint,
28878        bufferMode: GLenum,
28879    ),
28880>;
28881extern "C" {
28882    pub fn glBeginTransformFeedbackNV(primitiveMode: GLenum);
28883}
28884extern "C" {
28885    pub fn glEndTransformFeedbackNV();
28886}
28887extern "C" {
28888    pub fn glTransformFeedbackAttribsNV(count: GLsizei, attribs: *const GLint, bufferMode: GLenum);
28889}
28890extern "C" {
28891    pub fn glBindBufferRangeNV(
28892        target: GLenum,
28893        index: GLuint,
28894        buffer: GLuint,
28895        offset: GLintptr,
28896        size: GLsizeiptr,
28897    );
28898}
28899extern "C" {
28900    pub fn glBindBufferOffsetNV(target: GLenum, index: GLuint, buffer: GLuint, offset: GLintptr);
28901}
28902extern "C" {
28903    pub fn glBindBufferBaseNV(target: GLenum, index: GLuint, buffer: GLuint);
28904}
28905extern "C" {
28906    pub fn glTransformFeedbackVaryingsNV(
28907        program: GLuint,
28908        count: GLsizei,
28909        locations: *const GLint,
28910        bufferMode: GLenum,
28911    );
28912}
28913extern "C" {
28914    pub fn glActiveVaryingNV(program: GLuint, name: *const GLchar);
28915}
28916extern "C" {
28917    pub fn glGetVaryingLocationNV(program: GLuint, name: *const GLchar) -> GLint;
28918}
28919extern "C" {
28920    pub fn glGetActiveVaryingNV(
28921        program: GLuint,
28922        index: GLuint,
28923        bufSize: GLsizei,
28924        length: *mut GLsizei,
28925        size: *mut GLsizei,
28926        type_: *mut GLenum,
28927        name: *mut GLchar,
28928    );
28929}
28930extern "C" {
28931    pub fn glGetTransformFeedbackVaryingNV(program: GLuint, index: GLuint, location: *mut GLint);
28932}
28933extern "C" {
28934    pub fn glTransformFeedbackStreamAttribsNV(
28935        count: GLsizei,
28936        attribs: *const GLint,
28937        nbuffers: GLsizei,
28938        bufstreams: *const GLint,
28939        bufferMode: GLenum,
28940    );
28941}
28942pub type PFNGLBINDTRANSFORMFEEDBACKNVPROC =
28943    ::std::option::Option<unsafe extern "C" fn(target: GLenum, id: GLuint)>;
28944pub type PFNGLDELETETRANSFORMFEEDBACKSNVPROC =
28945    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *const GLuint)>;
28946pub type PFNGLGENTRANSFORMFEEDBACKSNVPROC =
28947    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, ids: *mut GLuint)>;
28948pub type PFNGLISTRANSFORMFEEDBACKNVPROC =
28949    ::std::option::Option<unsafe extern "C" fn(id: GLuint) -> GLboolean>;
28950pub type PFNGLPAUSETRANSFORMFEEDBACKNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
28951pub type PFNGLRESUMETRANSFORMFEEDBACKNVPROC = ::std::option::Option<unsafe extern "C" fn()>;
28952pub type PFNGLDRAWTRANSFORMFEEDBACKNVPROC =
28953    ::std::option::Option<unsafe extern "C" fn(mode: GLenum, id: GLuint)>;
28954extern "C" {
28955    pub fn glBindTransformFeedbackNV(target: GLenum, id: GLuint);
28956}
28957extern "C" {
28958    pub fn glDeleteTransformFeedbacksNV(n: GLsizei, ids: *const GLuint);
28959}
28960extern "C" {
28961    pub fn glGenTransformFeedbacksNV(n: GLsizei, ids: *mut GLuint);
28962}
28963extern "C" {
28964    pub fn glIsTransformFeedbackNV(id: GLuint) -> GLboolean;
28965}
28966extern "C" {
28967    pub fn glPauseTransformFeedbackNV();
28968}
28969extern "C" {
28970    pub fn glResumeTransformFeedbackNV();
28971}
28972extern "C" {
28973    pub fn glDrawTransformFeedbackNV(mode: GLenum, id: GLuint);
28974}
28975pub type GLvdpauSurfaceNV = GLintptr;
28976pub type PFNGLVDPAUINITNVPROC = ::std::option::Option<
28977    unsafe extern "C" fn(
28978        vdpDevice: *const ::std::os::raw::c_void,
28979        getProcAddress: *const ::std::os::raw::c_void,
28980    ),
28981>;
28982pub type PFNGLVDPAUFININVPROC = ::std::option::Option<unsafe extern "C" fn()>;
28983pub type PFNGLVDPAUREGISTERVIDEOSURFACENVPROC = ::std::option::Option<
28984    unsafe extern "C" fn(
28985        vdpSurface: *const ::std::os::raw::c_void,
28986        target: GLenum,
28987        numTextureNames: GLsizei,
28988        textureNames: *const GLuint,
28989    ) -> GLvdpauSurfaceNV,
28990>;
28991pub type PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC = ::std::option::Option<
28992    unsafe extern "C" fn(
28993        vdpSurface: *const ::std::os::raw::c_void,
28994        target: GLenum,
28995        numTextureNames: GLsizei,
28996        textureNames: *const GLuint,
28997    ) -> GLvdpauSurfaceNV,
28998>;
28999pub type PFNGLVDPAUISSURFACENVPROC =
29000    ::std::option::Option<unsafe extern "C" fn(surface: GLvdpauSurfaceNV) -> GLboolean>;
29001pub type PFNGLVDPAUUNREGISTERSURFACENVPROC =
29002    ::std::option::Option<unsafe extern "C" fn(surface: GLvdpauSurfaceNV)>;
29003pub type PFNGLVDPAUGETSURFACEIVNVPROC = ::std::option::Option<
29004    unsafe extern "C" fn(
29005        surface: GLvdpauSurfaceNV,
29006        pname: GLenum,
29007        bufSize: GLsizei,
29008        length: *mut GLsizei,
29009        values: *mut GLint,
29010    ),
29011>;
29012pub type PFNGLVDPAUSURFACEACCESSNVPROC =
29013    ::std::option::Option<unsafe extern "C" fn(surface: GLvdpauSurfaceNV, access: GLenum)>;
29014pub type PFNGLVDPAUMAPSURFACESNVPROC = ::std::option::Option<
29015    unsafe extern "C" fn(numSurfaces: GLsizei, surfaces: *const GLvdpauSurfaceNV),
29016>;
29017pub type PFNGLVDPAUUNMAPSURFACESNVPROC = ::std::option::Option<
29018    unsafe extern "C" fn(numSurface: GLsizei, surfaces: *const GLvdpauSurfaceNV),
29019>;
29020extern "C" {
29021    pub fn glVDPAUInitNV(
29022        vdpDevice: *const ::std::os::raw::c_void,
29023        getProcAddress: *const ::std::os::raw::c_void,
29024    );
29025}
29026extern "C" {
29027    pub fn glVDPAUFiniNV();
29028}
29029extern "C" {
29030    pub fn glVDPAURegisterVideoSurfaceNV(
29031        vdpSurface: *const ::std::os::raw::c_void,
29032        target: GLenum,
29033        numTextureNames: GLsizei,
29034        textureNames: *const GLuint,
29035    ) -> GLvdpauSurfaceNV;
29036}
29037extern "C" {
29038    pub fn glVDPAURegisterOutputSurfaceNV(
29039        vdpSurface: *const ::std::os::raw::c_void,
29040        target: GLenum,
29041        numTextureNames: GLsizei,
29042        textureNames: *const GLuint,
29043    ) -> GLvdpauSurfaceNV;
29044}
29045extern "C" {
29046    pub fn glVDPAUIsSurfaceNV(surface: GLvdpauSurfaceNV) -> GLboolean;
29047}
29048extern "C" {
29049    pub fn glVDPAUUnregisterSurfaceNV(surface: GLvdpauSurfaceNV);
29050}
29051extern "C" {
29052    pub fn glVDPAUGetSurfaceivNV(
29053        surface: GLvdpauSurfaceNV,
29054        pname: GLenum,
29055        bufSize: GLsizei,
29056        length: *mut GLsizei,
29057        values: *mut GLint,
29058    );
29059}
29060extern "C" {
29061    pub fn glVDPAUSurfaceAccessNV(surface: GLvdpauSurfaceNV, access: GLenum);
29062}
29063extern "C" {
29064    pub fn glVDPAUMapSurfacesNV(numSurfaces: GLsizei, surfaces: *const GLvdpauSurfaceNV);
29065}
29066extern "C" {
29067    pub fn glVDPAUUnmapSurfacesNV(numSurface: GLsizei, surfaces: *const GLvdpauSurfaceNV);
29068}
29069pub type PFNGLVDPAUREGISTERVIDEOSURFACEWITHPICTURESTRUCTURENVPROC = ::std::option::Option<
29070    unsafe extern "C" fn(
29071        vdpSurface: *const ::std::os::raw::c_void,
29072        target: GLenum,
29073        numTextureNames: GLsizei,
29074        textureNames: *const GLuint,
29075        isFrameStructure: GLboolean,
29076    ) -> GLvdpauSurfaceNV,
29077>;
29078extern "C" {
29079    pub fn glVDPAURegisterVideoSurfaceWithPictureStructureNV(
29080        vdpSurface: *const ::std::os::raw::c_void,
29081        target: GLenum,
29082        numTextureNames: GLsizei,
29083        textureNames: *const GLuint,
29084        isFrameStructure: GLboolean,
29085    ) -> GLvdpauSurfaceNV;
29086}
29087pub type PFNGLFLUSHVERTEXARRAYRANGENVPROC = ::std::option::Option<unsafe extern "C" fn()>;
29088pub type PFNGLVERTEXARRAYRANGENVPROC = ::std::option::Option<
29089    unsafe extern "C" fn(length: GLsizei, pointer: *const ::std::os::raw::c_void),
29090>;
29091extern "C" {
29092    pub fn glFlushVertexArrayRangeNV();
29093}
29094extern "C" {
29095    pub fn glVertexArrayRangeNV(length: GLsizei, pointer: *const ::std::os::raw::c_void);
29096}
29097pub type PFNGLVERTEXATTRIBL1I64NVPROC =
29098    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint64EXT)>;
29099pub type PFNGLVERTEXATTRIBL2I64NVPROC =
29100    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint64EXT, y: GLint64EXT)>;
29101pub type PFNGLVERTEXATTRIBL3I64NVPROC = ::std::option::Option<
29102    unsafe extern "C" fn(index: GLuint, x: GLint64EXT, y: GLint64EXT, z: GLint64EXT),
29103>;
29104pub type PFNGLVERTEXATTRIBL4I64NVPROC = ::std::option::Option<
29105    unsafe extern "C" fn(index: GLuint, x: GLint64EXT, y: GLint64EXT, z: GLint64EXT, w: GLint64EXT),
29106>;
29107pub type PFNGLVERTEXATTRIBL1I64VNVPROC =
29108    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint64EXT)>;
29109pub type PFNGLVERTEXATTRIBL2I64VNVPROC =
29110    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint64EXT)>;
29111pub type PFNGLVERTEXATTRIBL3I64VNVPROC =
29112    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint64EXT)>;
29113pub type PFNGLVERTEXATTRIBL4I64VNVPROC =
29114    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint64EXT)>;
29115pub type PFNGLVERTEXATTRIBL1UI64NVPROC =
29116    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint64EXT)>;
29117pub type PFNGLVERTEXATTRIBL2UI64NVPROC =
29118    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint64EXT, y: GLuint64EXT)>;
29119pub type PFNGLVERTEXATTRIBL3UI64NVPROC = ::std::option::Option<
29120    unsafe extern "C" fn(index: GLuint, x: GLuint64EXT, y: GLuint64EXT, z: GLuint64EXT),
29121>;
29122pub type PFNGLVERTEXATTRIBL4UI64NVPROC = ::std::option::Option<
29123    unsafe extern "C" fn(
29124        index: GLuint,
29125        x: GLuint64EXT,
29126        y: GLuint64EXT,
29127        z: GLuint64EXT,
29128        w: GLuint64EXT,
29129    ),
29130>;
29131pub type PFNGLVERTEXATTRIBL1UI64VNVPROC =
29132    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint64EXT)>;
29133pub type PFNGLVERTEXATTRIBL2UI64VNVPROC =
29134    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint64EXT)>;
29135pub type PFNGLVERTEXATTRIBL3UI64VNVPROC =
29136    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint64EXT)>;
29137pub type PFNGLVERTEXATTRIBL4UI64VNVPROC =
29138    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint64EXT)>;
29139pub type PFNGLGETVERTEXATTRIBLI64VNVPROC = ::std::option::Option<
29140    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLint64EXT),
29141>;
29142pub type PFNGLGETVERTEXATTRIBLUI64VNVPROC = ::std::option::Option<
29143    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLuint64EXT),
29144>;
29145pub type PFNGLVERTEXATTRIBLFORMATNVPROC = ::std::option::Option<
29146    unsafe extern "C" fn(index: GLuint, size: GLint, type_: GLenum, stride: GLsizei),
29147>;
29148extern "C" {
29149    pub fn glVertexAttribL1i64NV(index: GLuint, x: GLint64EXT);
29150}
29151extern "C" {
29152    pub fn glVertexAttribL2i64NV(index: GLuint, x: GLint64EXT, y: GLint64EXT);
29153}
29154extern "C" {
29155    pub fn glVertexAttribL3i64NV(index: GLuint, x: GLint64EXT, y: GLint64EXT, z: GLint64EXT);
29156}
29157extern "C" {
29158    pub fn glVertexAttribL4i64NV(
29159        index: GLuint,
29160        x: GLint64EXT,
29161        y: GLint64EXT,
29162        z: GLint64EXT,
29163        w: GLint64EXT,
29164    );
29165}
29166extern "C" {
29167    pub fn glVertexAttribL1i64vNV(index: GLuint, v: *const GLint64EXT);
29168}
29169extern "C" {
29170    pub fn glVertexAttribL2i64vNV(index: GLuint, v: *const GLint64EXT);
29171}
29172extern "C" {
29173    pub fn glVertexAttribL3i64vNV(index: GLuint, v: *const GLint64EXT);
29174}
29175extern "C" {
29176    pub fn glVertexAttribL4i64vNV(index: GLuint, v: *const GLint64EXT);
29177}
29178extern "C" {
29179    pub fn glVertexAttribL1ui64NV(index: GLuint, x: GLuint64EXT);
29180}
29181extern "C" {
29182    pub fn glVertexAttribL2ui64NV(index: GLuint, x: GLuint64EXT, y: GLuint64EXT);
29183}
29184extern "C" {
29185    pub fn glVertexAttribL3ui64NV(index: GLuint, x: GLuint64EXT, y: GLuint64EXT, z: GLuint64EXT);
29186}
29187extern "C" {
29188    pub fn glVertexAttribL4ui64NV(
29189        index: GLuint,
29190        x: GLuint64EXT,
29191        y: GLuint64EXT,
29192        z: GLuint64EXT,
29193        w: GLuint64EXT,
29194    );
29195}
29196extern "C" {
29197    pub fn glVertexAttribL1ui64vNV(index: GLuint, v: *const GLuint64EXT);
29198}
29199extern "C" {
29200    pub fn glVertexAttribL2ui64vNV(index: GLuint, v: *const GLuint64EXT);
29201}
29202extern "C" {
29203    pub fn glVertexAttribL3ui64vNV(index: GLuint, v: *const GLuint64EXT);
29204}
29205extern "C" {
29206    pub fn glVertexAttribL4ui64vNV(index: GLuint, v: *const GLuint64EXT);
29207}
29208extern "C" {
29209    pub fn glGetVertexAttribLi64vNV(index: GLuint, pname: GLenum, params: *mut GLint64EXT);
29210}
29211extern "C" {
29212    pub fn glGetVertexAttribLui64vNV(index: GLuint, pname: GLenum, params: *mut GLuint64EXT);
29213}
29214extern "C" {
29215    pub fn glVertexAttribLFormatNV(index: GLuint, size: GLint, type_: GLenum, stride: GLsizei);
29216}
29217pub type PFNGLBUFFERADDRESSRANGENVPROC = ::std::option::Option<
29218    unsafe extern "C" fn(pname: GLenum, index: GLuint, address: GLuint64EXT, length: GLsizeiptr),
29219>;
29220pub type PFNGLVERTEXFORMATNVPROC =
29221    ::std::option::Option<unsafe extern "C" fn(size: GLint, type_: GLenum, stride: GLsizei)>;
29222pub type PFNGLNORMALFORMATNVPROC =
29223    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, stride: GLsizei)>;
29224pub type PFNGLCOLORFORMATNVPROC =
29225    ::std::option::Option<unsafe extern "C" fn(size: GLint, type_: GLenum, stride: GLsizei)>;
29226pub type PFNGLINDEXFORMATNVPROC =
29227    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, stride: GLsizei)>;
29228pub type PFNGLTEXCOORDFORMATNVPROC =
29229    ::std::option::Option<unsafe extern "C" fn(size: GLint, type_: GLenum, stride: GLsizei)>;
29230pub type PFNGLEDGEFLAGFORMATNVPROC = ::std::option::Option<unsafe extern "C" fn(stride: GLsizei)>;
29231pub type PFNGLSECONDARYCOLORFORMATNVPROC =
29232    ::std::option::Option<unsafe extern "C" fn(size: GLint, type_: GLenum, stride: GLsizei)>;
29233pub type PFNGLFOGCOORDFORMATNVPROC =
29234    ::std::option::Option<unsafe extern "C" fn(type_: GLenum, stride: GLsizei)>;
29235pub type PFNGLVERTEXATTRIBFORMATNVPROC = ::std::option::Option<
29236    unsafe extern "C" fn(
29237        index: GLuint,
29238        size: GLint,
29239        type_: GLenum,
29240        normalized: GLboolean,
29241        stride: GLsizei,
29242    ),
29243>;
29244pub type PFNGLVERTEXATTRIBIFORMATNVPROC = ::std::option::Option<
29245    unsafe extern "C" fn(index: GLuint, size: GLint, type_: GLenum, stride: GLsizei),
29246>;
29247pub type PFNGLGETINTEGERUI64I_VNVPROC = ::std::option::Option<
29248    unsafe extern "C" fn(value: GLenum, index: GLuint, result: *mut GLuint64EXT),
29249>;
29250extern "C" {
29251    pub fn glBufferAddressRangeNV(
29252        pname: GLenum,
29253        index: GLuint,
29254        address: GLuint64EXT,
29255        length: GLsizeiptr,
29256    );
29257}
29258extern "C" {
29259    pub fn glVertexFormatNV(size: GLint, type_: GLenum, stride: GLsizei);
29260}
29261extern "C" {
29262    pub fn glNormalFormatNV(type_: GLenum, stride: GLsizei);
29263}
29264extern "C" {
29265    pub fn glColorFormatNV(size: GLint, type_: GLenum, stride: GLsizei);
29266}
29267extern "C" {
29268    pub fn glIndexFormatNV(type_: GLenum, stride: GLsizei);
29269}
29270extern "C" {
29271    pub fn glTexCoordFormatNV(size: GLint, type_: GLenum, stride: GLsizei);
29272}
29273extern "C" {
29274    pub fn glEdgeFlagFormatNV(stride: GLsizei);
29275}
29276extern "C" {
29277    pub fn glSecondaryColorFormatNV(size: GLint, type_: GLenum, stride: GLsizei);
29278}
29279extern "C" {
29280    pub fn glFogCoordFormatNV(type_: GLenum, stride: GLsizei);
29281}
29282extern "C" {
29283    pub fn glVertexAttribFormatNV(
29284        index: GLuint,
29285        size: GLint,
29286        type_: GLenum,
29287        normalized: GLboolean,
29288        stride: GLsizei,
29289    );
29290}
29291extern "C" {
29292    pub fn glVertexAttribIFormatNV(index: GLuint, size: GLint, type_: GLenum, stride: GLsizei);
29293}
29294extern "C" {
29295    pub fn glGetIntegerui64i_vNV(value: GLenum, index: GLuint, result: *mut GLuint64EXT);
29296}
29297pub type PFNGLAREPROGRAMSRESIDENTNVPROC = ::std::option::Option<
29298    unsafe extern "C" fn(
29299        n: GLsizei,
29300        programs: *const GLuint,
29301        residences: *mut GLboolean,
29302    ) -> GLboolean,
29303>;
29304pub type PFNGLBINDPROGRAMNVPROC =
29305    ::std::option::Option<unsafe extern "C" fn(target: GLenum, id: GLuint)>;
29306pub type PFNGLDELETEPROGRAMSNVPROC =
29307    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, programs: *const GLuint)>;
29308pub type PFNGLEXECUTEPROGRAMNVPROC =
29309    ::std::option::Option<unsafe extern "C" fn(target: GLenum, id: GLuint, params: *const GLfloat)>;
29310pub type PFNGLGENPROGRAMSNVPROC =
29311    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, programs: *mut GLuint)>;
29312pub type PFNGLGETPROGRAMPARAMETERDVNVPROC = ::std::option::Option<
29313    unsafe extern "C" fn(target: GLenum, index: GLuint, pname: GLenum, params: *mut GLdouble),
29314>;
29315pub type PFNGLGETPROGRAMPARAMETERFVNVPROC = ::std::option::Option<
29316    unsafe extern "C" fn(target: GLenum, index: GLuint, pname: GLenum, params: *mut GLfloat),
29317>;
29318pub type PFNGLGETPROGRAMIVNVPROC =
29319    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, params: *mut GLint)>;
29320pub type PFNGLGETPROGRAMSTRINGNVPROC =
29321    ::std::option::Option<unsafe extern "C" fn(id: GLuint, pname: GLenum, program: *mut GLubyte)>;
29322pub type PFNGLGETTRACKMATRIXIVNVPROC = ::std::option::Option<
29323    unsafe extern "C" fn(target: GLenum, address: GLuint, pname: GLenum, params: *mut GLint),
29324>;
29325pub type PFNGLGETVERTEXATTRIBDVNVPROC = ::std::option::Option<
29326    unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLdouble),
29327>;
29328pub type PFNGLGETVERTEXATTRIBFVNVPROC =
29329    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLfloat)>;
29330pub type PFNGLGETVERTEXATTRIBIVNVPROC =
29331    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLint)>;
29332pub type PFNGLGETVERTEXATTRIBPOINTERVNVPROC = ::std::option::Option<
29333    unsafe extern "C" fn(index: GLuint, pname: GLenum, pointer: *mut *mut ::std::os::raw::c_void),
29334>;
29335pub type PFNGLISPROGRAMNVPROC =
29336    ::std::option::Option<unsafe extern "C" fn(id: GLuint) -> GLboolean>;
29337pub type PFNGLLOADPROGRAMNVPROC = ::std::option::Option<
29338    unsafe extern "C" fn(target: GLenum, id: GLuint, len: GLsizei, program: *const GLubyte),
29339>;
29340pub type PFNGLPROGRAMPARAMETER4DNVPROC = ::std::option::Option<
29341    unsafe extern "C" fn(
29342        target: GLenum,
29343        index: GLuint,
29344        x: GLdouble,
29345        y: GLdouble,
29346        z: GLdouble,
29347        w: GLdouble,
29348    ),
29349>;
29350pub type PFNGLPROGRAMPARAMETER4DVNVPROC =
29351    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, v: *const GLdouble)>;
29352pub type PFNGLPROGRAMPARAMETER4FNVPROC = ::std::option::Option<
29353    unsafe extern "C" fn(
29354        target: GLenum,
29355        index: GLuint,
29356        x: GLfloat,
29357        y: GLfloat,
29358        z: GLfloat,
29359        w: GLfloat,
29360    ),
29361>;
29362pub type PFNGLPROGRAMPARAMETER4FVNVPROC =
29363    ::std::option::Option<unsafe extern "C" fn(target: GLenum, index: GLuint, v: *const GLfloat)>;
29364pub type PFNGLPROGRAMPARAMETERS4DVNVPROC = ::std::option::Option<
29365    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, v: *const GLdouble),
29366>;
29367pub type PFNGLPROGRAMPARAMETERS4FVNVPROC = ::std::option::Option<
29368    unsafe extern "C" fn(target: GLenum, index: GLuint, count: GLsizei, v: *const GLfloat),
29369>;
29370pub type PFNGLREQUESTRESIDENTPROGRAMSNVPROC =
29371    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, programs: *const GLuint)>;
29372pub type PFNGLTRACKMATRIXNVPROC = ::std::option::Option<
29373    unsafe extern "C" fn(target: GLenum, address: GLuint, matrix: GLenum, transform: GLenum),
29374>;
29375pub type PFNGLVERTEXATTRIBPOINTERNVPROC = ::std::option::Option<
29376    unsafe extern "C" fn(
29377        index: GLuint,
29378        fsize: GLint,
29379        type_: GLenum,
29380        stride: GLsizei,
29381        pointer: *const ::std::os::raw::c_void,
29382    ),
29383>;
29384pub type PFNGLVERTEXATTRIB1DNVPROC =
29385    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble)>;
29386pub type PFNGLVERTEXATTRIB1DVNVPROC =
29387    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
29388pub type PFNGLVERTEXATTRIB1FNVPROC =
29389    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat)>;
29390pub type PFNGLVERTEXATTRIB1FVNVPROC =
29391    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
29392pub type PFNGLVERTEXATTRIB1SNVPROC =
29393    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort)>;
29394pub type PFNGLVERTEXATTRIB1SVNVPROC =
29395    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
29396pub type PFNGLVERTEXATTRIB2DNVPROC =
29397    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble)>;
29398pub type PFNGLVERTEXATTRIB2DVNVPROC =
29399    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
29400pub type PFNGLVERTEXATTRIB2FNVPROC =
29401    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat)>;
29402pub type PFNGLVERTEXATTRIB2FVNVPROC =
29403    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
29404pub type PFNGLVERTEXATTRIB2SNVPROC =
29405    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort)>;
29406pub type PFNGLVERTEXATTRIB2SVNVPROC =
29407    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
29408pub type PFNGLVERTEXATTRIB3DNVPROC = ::std::option::Option<
29409    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble),
29410>;
29411pub type PFNGLVERTEXATTRIB3DVNVPROC =
29412    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
29413pub type PFNGLVERTEXATTRIB3FNVPROC =
29414    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat)>;
29415pub type PFNGLVERTEXATTRIB3FVNVPROC =
29416    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
29417pub type PFNGLVERTEXATTRIB3SNVPROC =
29418    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort, z: GLshort)>;
29419pub type PFNGLVERTEXATTRIB3SVNVPROC =
29420    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
29421pub type PFNGLVERTEXATTRIB4DNVPROC = ::std::option::Option<
29422    unsafe extern "C" fn(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble),
29423>;
29424pub type PFNGLVERTEXATTRIB4DVNVPROC =
29425    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLdouble)>;
29426pub type PFNGLVERTEXATTRIB4FNVPROC = ::std::option::Option<
29427    unsafe extern "C" fn(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat),
29428>;
29429pub type PFNGLVERTEXATTRIB4FVNVPROC =
29430    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLfloat)>;
29431pub type PFNGLVERTEXATTRIB4SNVPROC = ::std::option::Option<
29432    unsafe extern "C" fn(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort),
29433>;
29434pub type PFNGLVERTEXATTRIB4SVNVPROC =
29435    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
29436pub type PFNGLVERTEXATTRIB4UBNVPROC = ::std::option::Option<
29437    unsafe extern "C" fn(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte),
29438>;
29439pub type PFNGLVERTEXATTRIB4UBVNVPROC =
29440    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLubyte)>;
29441pub type PFNGLVERTEXATTRIBS1DVNVPROC =
29442    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLdouble)>;
29443pub type PFNGLVERTEXATTRIBS1FVNVPROC =
29444    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLfloat)>;
29445pub type PFNGLVERTEXATTRIBS1SVNVPROC =
29446    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLshort)>;
29447pub type PFNGLVERTEXATTRIBS2DVNVPROC =
29448    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLdouble)>;
29449pub type PFNGLVERTEXATTRIBS2FVNVPROC =
29450    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLfloat)>;
29451pub type PFNGLVERTEXATTRIBS2SVNVPROC =
29452    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLshort)>;
29453pub type PFNGLVERTEXATTRIBS3DVNVPROC =
29454    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLdouble)>;
29455pub type PFNGLVERTEXATTRIBS3FVNVPROC =
29456    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLfloat)>;
29457pub type PFNGLVERTEXATTRIBS3SVNVPROC =
29458    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLshort)>;
29459pub type PFNGLVERTEXATTRIBS4DVNVPROC =
29460    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLdouble)>;
29461pub type PFNGLVERTEXATTRIBS4FVNVPROC =
29462    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLfloat)>;
29463pub type PFNGLVERTEXATTRIBS4SVNVPROC =
29464    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLshort)>;
29465pub type PFNGLVERTEXATTRIBS4UBVNVPROC =
29466    ::std::option::Option<unsafe extern "C" fn(index: GLuint, count: GLsizei, v: *const GLubyte)>;
29467extern "C" {
29468    pub fn glAreProgramsResidentNV(
29469        n: GLsizei,
29470        programs: *const GLuint,
29471        residences: *mut GLboolean,
29472    ) -> GLboolean;
29473}
29474extern "C" {
29475    pub fn glBindProgramNV(target: GLenum, id: GLuint);
29476}
29477extern "C" {
29478    pub fn glDeleteProgramsNV(n: GLsizei, programs: *const GLuint);
29479}
29480extern "C" {
29481    pub fn glExecuteProgramNV(target: GLenum, id: GLuint, params: *const GLfloat);
29482}
29483extern "C" {
29484    pub fn glGenProgramsNV(n: GLsizei, programs: *mut GLuint);
29485}
29486extern "C" {
29487    pub fn glGetProgramParameterdvNV(
29488        target: GLenum,
29489        index: GLuint,
29490        pname: GLenum,
29491        params: *mut GLdouble,
29492    );
29493}
29494extern "C" {
29495    pub fn glGetProgramParameterfvNV(
29496        target: GLenum,
29497        index: GLuint,
29498        pname: GLenum,
29499        params: *mut GLfloat,
29500    );
29501}
29502extern "C" {
29503    pub fn glGetProgramivNV(id: GLuint, pname: GLenum, params: *mut GLint);
29504}
29505extern "C" {
29506    pub fn glGetProgramStringNV(id: GLuint, pname: GLenum, program: *mut GLubyte);
29507}
29508extern "C" {
29509    pub fn glGetTrackMatrixivNV(target: GLenum, address: GLuint, pname: GLenum, params: *mut GLint);
29510}
29511extern "C" {
29512    pub fn glGetVertexAttribdvNV(index: GLuint, pname: GLenum, params: *mut GLdouble);
29513}
29514extern "C" {
29515    pub fn glGetVertexAttribfvNV(index: GLuint, pname: GLenum, params: *mut GLfloat);
29516}
29517extern "C" {
29518    pub fn glGetVertexAttribivNV(index: GLuint, pname: GLenum, params: *mut GLint);
29519}
29520extern "C" {
29521    pub fn glGetVertexAttribPointervNV(
29522        index: GLuint,
29523        pname: GLenum,
29524        pointer: *mut *mut ::std::os::raw::c_void,
29525    );
29526}
29527extern "C" {
29528    pub fn glIsProgramNV(id: GLuint) -> GLboolean;
29529}
29530extern "C" {
29531    pub fn glLoadProgramNV(target: GLenum, id: GLuint, len: GLsizei, program: *const GLubyte);
29532}
29533extern "C" {
29534    pub fn glProgramParameter4dNV(
29535        target: GLenum,
29536        index: GLuint,
29537        x: GLdouble,
29538        y: GLdouble,
29539        z: GLdouble,
29540        w: GLdouble,
29541    );
29542}
29543extern "C" {
29544    pub fn glProgramParameter4dvNV(target: GLenum, index: GLuint, v: *const GLdouble);
29545}
29546extern "C" {
29547    pub fn glProgramParameter4fNV(
29548        target: GLenum,
29549        index: GLuint,
29550        x: GLfloat,
29551        y: GLfloat,
29552        z: GLfloat,
29553        w: GLfloat,
29554    );
29555}
29556extern "C" {
29557    pub fn glProgramParameter4fvNV(target: GLenum, index: GLuint, v: *const GLfloat);
29558}
29559extern "C" {
29560    pub fn glProgramParameters4dvNV(
29561        target: GLenum,
29562        index: GLuint,
29563        count: GLsizei,
29564        v: *const GLdouble,
29565    );
29566}
29567extern "C" {
29568    pub fn glProgramParameters4fvNV(
29569        target: GLenum,
29570        index: GLuint,
29571        count: GLsizei,
29572        v: *const GLfloat,
29573    );
29574}
29575extern "C" {
29576    pub fn glRequestResidentProgramsNV(n: GLsizei, programs: *const GLuint);
29577}
29578extern "C" {
29579    pub fn glTrackMatrixNV(target: GLenum, address: GLuint, matrix: GLenum, transform: GLenum);
29580}
29581extern "C" {
29582    pub fn glVertexAttribPointerNV(
29583        index: GLuint,
29584        fsize: GLint,
29585        type_: GLenum,
29586        stride: GLsizei,
29587        pointer: *const ::std::os::raw::c_void,
29588    );
29589}
29590extern "C" {
29591    pub fn glVertexAttrib1dNV(index: GLuint, x: GLdouble);
29592}
29593extern "C" {
29594    pub fn glVertexAttrib1dvNV(index: GLuint, v: *const GLdouble);
29595}
29596extern "C" {
29597    pub fn glVertexAttrib1fNV(index: GLuint, x: GLfloat);
29598}
29599extern "C" {
29600    pub fn glVertexAttrib1fvNV(index: GLuint, v: *const GLfloat);
29601}
29602extern "C" {
29603    pub fn glVertexAttrib1sNV(index: GLuint, x: GLshort);
29604}
29605extern "C" {
29606    pub fn glVertexAttrib1svNV(index: GLuint, v: *const GLshort);
29607}
29608extern "C" {
29609    pub fn glVertexAttrib2dNV(index: GLuint, x: GLdouble, y: GLdouble);
29610}
29611extern "C" {
29612    pub fn glVertexAttrib2dvNV(index: GLuint, v: *const GLdouble);
29613}
29614extern "C" {
29615    pub fn glVertexAttrib2fNV(index: GLuint, x: GLfloat, y: GLfloat);
29616}
29617extern "C" {
29618    pub fn glVertexAttrib2fvNV(index: GLuint, v: *const GLfloat);
29619}
29620extern "C" {
29621    pub fn glVertexAttrib2sNV(index: GLuint, x: GLshort, y: GLshort);
29622}
29623extern "C" {
29624    pub fn glVertexAttrib2svNV(index: GLuint, v: *const GLshort);
29625}
29626extern "C" {
29627    pub fn glVertexAttrib3dNV(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble);
29628}
29629extern "C" {
29630    pub fn glVertexAttrib3dvNV(index: GLuint, v: *const GLdouble);
29631}
29632extern "C" {
29633    pub fn glVertexAttrib3fNV(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat);
29634}
29635extern "C" {
29636    pub fn glVertexAttrib3fvNV(index: GLuint, v: *const GLfloat);
29637}
29638extern "C" {
29639    pub fn glVertexAttrib3sNV(index: GLuint, x: GLshort, y: GLshort, z: GLshort);
29640}
29641extern "C" {
29642    pub fn glVertexAttrib3svNV(index: GLuint, v: *const GLshort);
29643}
29644extern "C" {
29645    pub fn glVertexAttrib4dNV(index: GLuint, x: GLdouble, y: GLdouble, z: GLdouble, w: GLdouble);
29646}
29647extern "C" {
29648    pub fn glVertexAttrib4dvNV(index: GLuint, v: *const GLdouble);
29649}
29650extern "C" {
29651    pub fn glVertexAttrib4fNV(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat);
29652}
29653extern "C" {
29654    pub fn glVertexAttrib4fvNV(index: GLuint, v: *const GLfloat);
29655}
29656extern "C" {
29657    pub fn glVertexAttrib4sNV(index: GLuint, x: GLshort, y: GLshort, z: GLshort, w: GLshort);
29658}
29659extern "C" {
29660    pub fn glVertexAttrib4svNV(index: GLuint, v: *const GLshort);
29661}
29662extern "C" {
29663    pub fn glVertexAttrib4ubNV(index: GLuint, x: GLubyte, y: GLubyte, z: GLubyte, w: GLubyte);
29664}
29665extern "C" {
29666    pub fn glVertexAttrib4ubvNV(index: GLuint, v: *const GLubyte);
29667}
29668extern "C" {
29669    pub fn glVertexAttribs1dvNV(index: GLuint, count: GLsizei, v: *const GLdouble);
29670}
29671extern "C" {
29672    pub fn glVertexAttribs1fvNV(index: GLuint, count: GLsizei, v: *const GLfloat);
29673}
29674extern "C" {
29675    pub fn glVertexAttribs1svNV(index: GLuint, count: GLsizei, v: *const GLshort);
29676}
29677extern "C" {
29678    pub fn glVertexAttribs2dvNV(index: GLuint, count: GLsizei, v: *const GLdouble);
29679}
29680extern "C" {
29681    pub fn glVertexAttribs2fvNV(index: GLuint, count: GLsizei, v: *const GLfloat);
29682}
29683extern "C" {
29684    pub fn glVertexAttribs2svNV(index: GLuint, count: GLsizei, v: *const GLshort);
29685}
29686extern "C" {
29687    pub fn glVertexAttribs3dvNV(index: GLuint, count: GLsizei, v: *const GLdouble);
29688}
29689extern "C" {
29690    pub fn glVertexAttribs3fvNV(index: GLuint, count: GLsizei, v: *const GLfloat);
29691}
29692extern "C" {
29693    pub fn glVertexAttribs3svNV(index: GLuint, count: GLsizei, v: *const GLshort);
29694}
29695extern "C" {
29696    pub fn glVertexAttribs4dvNV(index: GLuint, count: GLsizei, v: *const GLdouble);
29697}
29698extern "C" {
29699    pub fn glVertexAttribs4fvNV(index: GLuint, count: GLsizei, v: *const GLfloat);
29700}
29701extern "C" {
29702    pub fn glVertexAttribs4svNV(index: GLuint, count: GLsizei, v: *const GLshort);
29703}
29704extern "C" {
29705    pub fn glVertexAttribs4ubvNV(index: GLuint, count: GLsizei, v: *const GLubyte);
29706}
29707pub type PFNGLVERTEXATTRIBI1IEXTPROC =
29708    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint)>;
29709pub type PFNGLVERTEXATTRIBI2IEXTPROC =
29710    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint, y: GLint)>;
29711pub type PFNGLVERTEXATTRIBI3IEXTPROC =
29712    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLint, y: GLint, z: GLint)>;
29713pub type PFNGLVERTEXATTRIBI4IEXTPROC = ::std::option::Option<
29714    unsafe extern "C" fn(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint),
29715>;
29716pub type PFNGLVERTEXATTRIBI1UIEXTPROC =
29717    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint)>;
29718pub type PFNGLVERTEXATTRIBI2UIEXTPROC =
29719    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint, y: GLuint)>;
29720pub type PFNGLVERTEXATTRIBI3UIEXTPROC =
29721    ::std::option::Option<unsafe extern "C" fn(index: GLuint, x: GLuint, y: GLuint, z: GLuint)>;
29722pub type PFNGLVERTEXATTRIBI4UIEXTPROC = ::std::option::Option<
29723    unsafe extern "C" fn(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint),
29724>;
29725pub type PFNGLVERTEXATTRIBI1IVEXTPROC =
29726    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
29727pub type PFNGLVERTEXATTRIBI2IVEXTPROC =
29728    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
29729pub type PFNGLVERTEXATTRIBI3IVEXTPROC =
29730    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
29731pub type PFNGLVERTEXATTRIBI4IVEXTPROC =
29732    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLint)>;
29733pub type PFNGLVERTEXATTRIBI1UIVEXTPROC =
29734    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
29735pub type PFNGLVERTEXATTRIBI2UIVEXTPROC =
29736    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
29737pub type PFNGLVERTEXATTRIBI3UIVEXTPROC =
29738    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
29739pub type PFNGLVERTEXATTRIBI4UIVEXTPROC =
29740    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLuint)>;
29741pub type PFNGLVERTEXATTRIBI4BVEXTPROC =
29742    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLbyte)>;
29743pub type PFNGLVERTEXATTRIBI4SVEXTPROC =
29744    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLshort)>;
29745pub type PFNGLVERTEXATTRIBI4UBVEXTPROC =
29746    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLubyte)>;
29747pub type PFNGLVERTEXATTRIBI4USVEXTPROC =
29748    ::std::option::Option<unsafe extern "C" fn(index: GLuint, v: *const GLushort)>;
29749pub type PFNGLVERTEXATTRIBIPOINTEREXTPROC = ::std::option::Option<
29750    unsafe extern "C" fn(
29751        index: GLuint,
29752        size: GLint,
29753        type_: GLenum,
29754        stride: GLsizei,
29755        pointer: *const ::std::os::raw::c_void,
29756    ),
29757>;
29758pub type PFNGLGETVERTEXATTRIBIIVEXTPROC =
29759    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLint)>;
29760pub type PFNGLGETVERTEXATTRIBIUIVEXTPROC =
29761    ::std::option::Option<unsafe extern "C" fn(index: GLuint, pname: GLenum, params: *mut GLuint)>;
29762extern "C" {
29763    pub fn glVertexAttribI1iEXT(index: GLuint, x: GLint);
29764}
29765extern "C" {
29766    pub fn glVertexAttribI2iEXT(index: GLuint, x: GLint, y: GLint);
29767}
29768extern "C" {
29769    pub fn glVertexAttribI3iEXT(index: GLuint, x: GLint, y: GLint, z: GLint);
29770}
29771extern "C" {
29772    pub fn glVertexAttribI4iEXT(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint);
29773}
29774extern "C" {
29775    pub fn glVertexAttribI1uiEXT(index: GLuint, x: GLuint);
29776}
29777extern "C" {
29778    pub fn glVertexAttribI2uiEXT(index: GLuint, x: GLuint, y: GLuint);
29779}
29780extern "C" {
29781    pub fn glVertexAttribI3uiEXT(index: GLuint, x: GLuint, y: GLuint, z: GLuint);
29782}
29783extern "C" {
29784    pub fn glVertexAttribI4uiEXT(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint);
29785}
29786extern "C" {
29787    pub fn glVertexAttribI1ivEXT(index: GLuint, v: *const GLint);
29788}
29789extern "C" {
29790    pub fn glVertexAttribI2ivEXT(index: GLuint, v: *const GLint);
29791}
29792extern "C" {
29793    pub fn glVertexAttribI3ivEXT(index: GLuint, v: *const GLint);
29794}
29795extern "C" {
29796    pub fn glVertexAttribI4ivEXT(index: GLuint, v: *const GLint);
29797}
29798extern "C" {
29799    pub fn glVertexAttribI1uivEXT(index: GLuint, v: *const GLuint);
29800}
29801extern "C" {
29802    pub fn glVertexAttribI2uivEXT(index: GLuint, v: *const GLuint);
29803}
29804extern "C" {
29805    pub fn glVertexAttribI3uivEXT(index: GLuint, v: *const GLuint);
29806}
29807extern "C" {
29808    pub fn glVertexAttribI4uivEXT(index: GLuint, v: *const GLuint);
29809}
29810extern "C" {
29811    pub fn glVertexAttribI4bvEXT(index: GLuint, v: *const GLbyte);
29812}
29813extern "C" {
29814    pub fn glVertexAttribI4svEXT(index: GLuint, v: *const GLshort);
29815}
29816extern "C" {
29817    pub fn glVertexAttribI4ubvEXT(index: GLuint, v: *const GLubyte);
29818}
29819extern "C" {
29820    pub fn glVertexAttribI4usvEXT(index: GLuint, v: *const GLushort);
29821}
29822extern "C" {
29823    pub fn glVertexAttribIPointerEXT(
29824        index: GLuint,
29825        size: GLint,
29826        type_: GLenum,
29827        stride: GLsizei,
29828        pointer: *const ::std::os::raw::c_void,
29829    );
29830}
29831extern "C" {
29832    pub fn glGetVertexAttribIivEXT(index: GLuint, pname: GLenum, params: *mut GLint);
29833}
29834extern "C" {
29835    pub fn glGetVertexAttribIuivEXT(index: GLuint, pname: GLenum, params: *mut GLuint);
29836}
29837pub type PFNGLBEGINVIDEOCAPTURENVPROC =
29838    ::std::option::Option<unsafe extern "C" fn(video_capture_slot: GLuint)>;
29839pub type PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC = ::std::option::Option<
29840    unsafe extern "C" fn(
29841        video_capture_slot: GLuint,
29842        stream: GLuint,
29843        frame_region: GLenum,
29844        offset: GLintptrARB,
29845    ),
29846>;
29847pub type PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC = ::std::option::Option<
29848    unsafe extern "C" fn(
29849        video_capture_slot: GLuint,
29850        stream: GLuint,
29851        frame_region: GLenum,
29852        target: GLenum,
29853        texture: GLuint,
29854    ),
29855>;
29856pub type PFNGLENDVIDEOCAPTURENVPROC =
29857    ::std::option::Option<unsafe extern "C" fn(video_capture_slot: GLuint)>;
29858pub type PFNGLGETVIDEOCAPTUREIVNVPROC = ::std::option::Option<
29859    unsafe extern "C" fn(video_capture_slot: GLuint, pname: GLenum, params: *mut GLint),
29860>;
29861pub type PFNGLGETVIDEOCAPTURESTREAMIVNVPROC = ::std::option::Option<
29862    unsafe extern "C" fn(
29863        video_capture_slot: GLuint,
29864        stream: GLuint,
29865        pname: GLenum,
29866        params: *mut GLint,
29867    ),
29868>;
29869pub type PFNGLGETVIDEOCAPTURESTREAMFVNVPROC = ::std::option::Option<
29870    unsafe extern "C" fn(
29871        video_capture_slot: GLuint,
29872        stream: GLuint,
29873        pname: GLenum,
29874        params: *mut GLfloat,
29875    ),
29876>;
29877pub type PFNGLGETVIDEOCAPTURESTREAMDVNVPROC = ::std::option::Option<
29878    unsafe extern "C" fn(
29879        video_capture_slot: GLuint,
29880        stream: GLuint,
29881        pname: GLenum,
29882        params: *mut GLdouble,
29883    ),
29884>;
29885pub type PFNGLVIDEOCAPTURENVPROC = ::std::option::Option<
29886    unsafe extern "C" fn(
29887        video_capture_slot: GLuint,
29888        sequence_num: *mut GLuint,
29889        capture_time: *mut GLuint64EXT,
29890    ) -> GLenum,
29891>;
29892pub type PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC = ::std::option::Option<
29893    unsafe extern "C" fn(
29894        video_capture_slot: GLuint,
29895        stream: GLuint,
29896        pname: GLenum,
29897        params: *const GLint,
29898    ),
29899>;
29900pub type PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC = ::std::option::Option<
29901    unsafe extern "C" fn(
29902        video_capture_slot: GLuint,
29903        stream: GLuint,
29904        pname: GLenum,
29905        params: *const GLfloat,
29906    ),
29907>;
29908pub type PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC = ::std::option::Option<
29909    unsafe extern "C" fn(
29910        video_capture_slot: GLuint,
29911        stream: GLuint,
29912        pname: GLenum,
29913        params: *const GLdouble,
29914    ),
29915>;
29916extern "C" {
29917    pub fn glBeginVideoCaptureNV(video_capture_slot: GLuint);
29918}
29919extern "C" {
29920    pub fn glBindVideoCaptureStreamBufferNV(
29921        video_capture_slot: GLuint,
29922        stream: GLuint,
29923        frame_region: GLenum,
29924        offset: GLintptrARB,
29925    );
29926}
29927extern "C" {
29928    pub fn glBindVideoCaptureStreamTextureNV(
29929        video_capture_slot: GLuint,
29930        stream: GLuint,
29931        frame_region: GLenum,
29932        target: GLenum,
29933        texture: GLuint,
29934    );
29935}
29936extern "C" {
29937    pub fn glEndVideoCaptureNV(video_capture_slot: GLuint);
29938}
29939extern "C" {
29940    pub fn glGetVideoCaptureivNV(video_capture_slot: GLuint, pname: GLenum, params: *mut GLint);
29941}
29942extern "C" {
29943    pub fn glGetVideoCaptureStreamivNV(
29944        video_capture_slot: GLuint,
29945        stream: GLuint,
29946        pname: GLenum,
29947        params: *mut GLint,
29948    );
29949}
29950extern "C" {
29951    pub fn glGetVideoCaptureStreamfvNV(
29952        video_capture_slot: GLuint,
29953        stream: GLuint,
29954        pname: GLenum,
29955        params: *mut GLfloat,
29956    );
29957}
29958extern "C" {
29959    pub fn glGetVideoCaptureStreamdvNV(
29960        video_capture_slot: GLuint,
29961        stream: GLuint,
29962        pname: GLenum,
29963        params: *mut GLdouble,
29964    );
29965}
29966extern "C" {
29967    pub fn glVideoCaptureNV(
29968        video_capture_slot: GLuint,
29969        sequence_num: *mut GLuint,
29970        capture_time: *mut GLuint64EXT,
29971    ) -> GLenum;
29972}
29973extern "C" {
29974    pub fn glVideoCaptureStreamParameterivNV(
29975        video_capture_slot: GLuint,
29976        stream: GLuint,
29977        pname: GLenum,
29978        params: *const GLint,
29979    );
29980}
29981extern "C" {
29982    pub fn glVideoCaptureStreamParameterfvNV(
29983        video_capture_slot: GLuint,
29984        stream: GLuint,
29985        pname: GLenum,
29986        params: *const GLfloat,
29987    );
29988}
29989extern "C" {
29990    pub fn glVideoCaptureStreamParameterdvNV(
29991        video_capture_slot: GLuint,
29992        stream: GLuint,
29993        pname: GLenum,
29994        params: *const GLdouble,
29995    );
29996}
29997pub type PFNGLVIEWPORTSWIZZLENVPROC = ::std::option::Option<
29998    unsafe extern "C" fn(
29999        index: GLuint,
30000        swizzlex: GLenum,
30001        swizzley: GLenum,
30002        swizzlez: GLenum,
30003        swizzlew: GLenum,
30004    ),
30005>;
30006extern "C" {
30007    pub fn glViewportSwizzleNV(
30008        index: GLuint,
30009        swizzlex: GLenum,
30010        swizzley: GLenum,
30011        swizzlez: GLenum,
30012        swizzlew: GLenum,
30013    );
30014}
30015pub type PFNGLFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC = ::std::option::Option<
30016    unsafe extern "C" fn(
30017        target: GLenum,
30018        attachment: GLenum,
30019        texture: GLuint,
30020        level: GLint,
30021        baseViewIndex: GLint,
30022        numViews: GLsizei,
30023    ),
30024>;
30025extern "C" {
30026    pub fn glFramebufferTextureMultiviewOVR(
30027        target: GLenum,
30028        attachment: GLenum,
30029        texture: GLuint,
30030        level: GLint,
30031        baseViewIndex: GLint,
30032        numViews: GLsizei,
30033    );
30034}
30035pub type PFNGLHINTPGIPROC =
30036    ::std::option::Option<unsafe extern "C" fn(target: GLenum, mode: GLint)>;
30037extern "C" {
30038    pub fn glHintPGI(target: GLenum, mode: GLint);
30039}
30040pub type PFNGLDETAILTEXFUNCSGISPROC =
30041    ::std::option::Option<unsafe extern "C" fn(target: GLenum, n: GLsizei, points: *const GLfloat)>;
30042pub type PFNGLGETDETAILTEXFUNCSGISPROC =
30043    ::std::option::Option<unsafe extern "C" fn(target: GLenum, points: *mut GLfloat)>;
30044extern "C" {
30045    pub fn glDetailTexFuncSGIS(target: GLenum, n: GLsizei, points: *const GLfloat);
30046}
30047extern "C" {
30048    pub fn glGetDetailTexFuncSGIS(target: GLenum, points: *mut GLfloat);
30049}
30050pub type PFNGLFOGFUNCSGISPROC =
30051    ::std::option::Option<unsafe extern "C" fn(n: GLsizei, points: *const GLfloat)>;
30052pub type PFNGLGETFOGFUNCSGISPROC =
30053    ::std::option::Option<unsafe extern "C" fn(points: *mut GLfloat)>;
30054extern "C" {
30055    pub fn glFogFuncSGIS(n: GLsizei, points: *const GLfloat);
30056}
30057extern "C" {
30058    pub fn glGetFogFuncSGIS(points: *mut GLfloat);
30059}
30060pub type PFNGLSAMPLEMASKSGISPROC =
30061    ::std::option::Option<unsafe extern "C" fn(value: GLclampf, invert: GLboolean)>;
30062pub type PFNGLSAMPLEPATTERNSGISPROC = ::std::option::Option<unsafe extern "C" fn(pattern: GLenum)>;
30063extern "C" {
30064    pub fn glSampleMaskSGIS(value: GLclampf, invert: GLboolean);
30065}
30066extern "C" {
30067    pub fn glSamplePatternSGIS(pattern: GLenum);
30068}
30069pub type PFNGLPIXELTEXGENPARAMETERISGISPROC =
30070    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
30071pub type PFNGLPIXELTEXGENPARAMETERIVSGISPROC =
30072    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLint)>;
30073pub type PFNGLPIXELTEXGENPARAMETERFSGISPROC =
30074    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
30075pub type PFNGLPIXELTEXGENPARAMETERFVSGISPROC =
30076    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
30077pub type PFNGLGETPIXELTEXGENPARAMETERIVSGISPROC =
30078    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *mut GLint)>;
30079pub type PFNGLGETPIXELTEXGENPARAMETERFVSGISPROC =
30080    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *mut GLfloat)>;
30081extern "C" {
30082    pub fn glPixelTexGenParameteriSGIS(pname: GLenum, param: GLint);
30083}
30084extern "C" {
30085    pub fn glPixelTexGenParameterivSGIS(pname: GLenum, params: *const GLint);
30086}
30087extern "C" {
30088    pub fn glPixelTexGenParameterfSGIS(pname: GLenum, param: GLfloat);
30089}
30090extern "C" {
30091    pub fn glPixelTexGenParameterfvSGIS(pname: GLenum, params: *const GLfloat);
30092}
30093extern "C" {
30094    pub fn glGetPixelTexGenParameterivSGIS(pname: GLenum, params: *mut GLint);
30095}
30096extern "C" {
30097    pub fn glGetPixelTexGenParameterfvSGIS(pname: GLenum, params: *mut GLfloat);
30098}
30099pub type PFNGLPOINTPARAMETERFSGISPROC =
30100    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
30101pub type PFNGLPOINTPARAMETERFVSGISPROC =
30102    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
30103extern "C" {
30104    pub fn glPointParameterfSGIS(pname: GLenum, param: GLfloat);
30105}
30106extern "C" {
30107    pub fn glPointParameterfvSGIS(pname: GLenum, params: *const GLfloat);
30108}
30109pub type PFNGLSHARPENTEXFUNCSGISPROC =
30110    ::std::option::Option<unsafe extern "C" fn(target: GLenum, n: GLsizei, points: *const GLfloat)>;
30111pub type PFNGLGETSHARPENTEXFUNCSGISPROC =
30112    ::std::option::Option<unsafe extern "C" fn(target: GLenum, points: *mut GLfloat)>;
30113extern "C" {
30114    pub fn glSharpenTexFuncSGIS(target: GLenum, n: GLsizei, points: *const GLfloat);
30115}
30116extern "C" {
30117    pub fn glGetSharpenTexFuncSGIS(target: GLenum, points: *mut GLfloat);
30118}
30119pub type PFNGLTEXIMAGE4DSGISPROC = ::std::option::Option<
30120    unsafe extern "C" fn(
30121        target: GLenum,
30122        level: GLint,
30123        internalformat: GLenum,
30124        width: GLsizei,
30125        height: GLsizei,
30126        depth: GLsizei,
30127        size4d: GLsizei,
30128        border: GLint,
30129        format: GLenum,
30130        type_: GLenum,
30131        pixels: *const ::std::os::raw::c_void,
30132    ),
30133>;
30134pub type PFNGLTEXSUBIMAGE4DSGISPROC = ::std::option::Option<
30135    unsafe extern "C" fn(
30136        target: GLenum,
30137        level: GLint,
30138        xoffset: GLint,
30139        yoffset: GLint,
30140        zoffset: GLint,
30141        woffset: GLint,
30142        width: GLsizei,
30143        height: GLsizei,
30144        depth: GLsizei,
30145        size4d: GLsizei,
30146        format: GLenum,
30147        type_: GLenum,
30148        pixels: *const ::std::os::raw::c_void,
30149    ),
30150>;
30151extern "C" {
30152    pub fn glTexImage4DSGIS(
30153        target: GLenum,
30154        level: GLint,
30155        internalformat: GLenum,
30156        width: GLsizei,
30157        height: GLsizei,
30158        depth: GLsizei,
30159        size4d: GLsizei,
30160        border: GLint,
30161        format: GLenum,
30162        type_: GLenum,
30163        pixels: *const ::std::os::raw::c_void,
30164    );
30165}
30166extern "C" {
30167    pub fn glTexSubImage4DSGIS(
30168        target: GLenum,
30169        level: GLint,
30170        xoffset: GLint,
30171        yoffset: GLint,
30172        zoffset: GLint,
30173        woffset: GLint,
30174        width: GLsizei,
30175        height: GLsizei,
30176        depth: GLsizei,
30177        size4d: GLsizei,
30178        format: GLenum,
30179        type_: GLenum,
30180        pixels: *const ::std::os::raw::c_void,
30181    );
30182}
30183pub type PFNGLTEXTURECOLORMASKSGISPROC = ::std::option::Option<
30184    unsafe extern "C" fn(red: GLboolean, green: GLboolean, blue: GLboolean, alpha: GLboolean),
30185>;
30186extern "C" {
30187    pub fn glTextureColorMaskSGIS(
30188        red: GLboolean,
30189        green: GLboolean,
30190        blue: GLboolean,
30191        alpha: GLboolean,
30192    );
30193}
30194pub type PFNGLGETTEXFILTERFUNCSGISPROC = ::std::option::Option<
30195    unsafe extern "C" fn(target: GLenum, filter: GLenum, weights: *mut GLfloat),
30196>;
30197pub type PFNGLTEXFILTERFUNCSGISPROC = ::std::option::Option<
30198    unsafe extern "C" fn(target: GLenum, filter: GLenum, n: GLsizei, weights: *const GLfloat),
30199>;
30200extern "C" {
30201    pub fn glGetTexFilterFuncSGIS(target: GLenum, filter: GLenum, weights: *mut GLfloat);
30202}
30203extern "C" {
30204    pub fn glTexFilterFuncSGIS(target: GLenum, filter: GLenum, n: GLsizei, weights: *const GLfloat);
30205}
30206pub type PFNGLASYNCMARKERSGIXPROC = ::std::option::Option<unsafe extern "C" fn(marker: GLuint)>;
30207pub type PFNGLFINISHASYNCSGIXPROC =
30208    ::std::option::Option<unsafe extern "C" fn(markerp: *mut GLuint) -> GLint>;
30209pub type PFNGLPOLLASYNCSGIXPROC =
30210    ::std::option::Option<unsafe extern "C" fn(markerp: *mut GLuint) -> GLint>;
30211pub type PFNGLGENASYNCMARKERSSGIXPROC =
30212    ::std::option::Option<unsafe extern "C" fn(range: GLsizei) -> GLuint>;
30213pub type PFNGLDELETEASYNCMARKERSSGIXPROC =
30214    ::std::option::Option<unsafe extern "C" fn(marker: GLuint, range: GLsizei)>;
30215pub type PFNGLISASYNCMARKERSGIXPROC =
30216    ::std::option::Option<unsafe extern "C" fn(marker: GLuint) -> GLboolean>;
30217extern "C" {
30218    pub fn glAsyncMarkerSGIX(marker: GLuint);
30219}
30220extern "C" {
30221    pub fn glFinishAsyncSGIX(markerp: *mut GLuint) -> GLint;
30222}
30223extern "C" {
30224    pub fn glPollAsyncSGIX(markerp: *mut GLuint) -> GLint;
30225}
30226extern "C" {
30227    pub fn glGenAsyncMarkersSGIX(range: GLsizei) -> GLuint;
30228}
30229extern "C" {
30230    pub fn glDeleteAsyncMarkersSGIX(marker: GLuint, range: GLsizei);
30231}
30232extern "C" {
30233    pub fn glIsAsyncMarkerSGIX(marker: GLuint) -> GLboolean;
30234}
30235pub type PFNGLFLUSHRASTERSGIXPROC = ::std::option::Option<unsafe extern "C" fn()>;
30236extern "C" {
30237    pub fn glFlushRasterSGIX();
30238}
30239pub type PFNGLFRAGMENTCOLORMATERIALSGIXPROC =
30240    ::std::option::Option<unsafe extern "C" fn(face: GLenum, mode: GLenum)>;
30241pub type PFNGLFRAGMENTLIGHTFSGIXPROC =
30242    ::std::option::Option<unsafe extern "C" fn(light: GLenum, pname: GLenum, param: GLfloat)>;
30243pub type PFNGLFRAGMENTLIGHTFVSGIXPROC = ::std::option::Option<
30244    unsafe extern "C" fn(light: GLenum, pname: GLenum, params: *const GLfloat),
30245>;
30246pub type PFNGLFRAGMENTLIGHTISGIXPROC =
30247    ::std::option::Option<unsafe extern "C" fn(light: GLenum, pname: GLenum, param: GLint)>;
30248pub type PFNGLFRAGMENTLIGHTIVSGIXPROC =
30249    ::std::option::Option<unsafe extern "C" fn(light: GLenum, pname: GLenum, params: *const GLint)>;
30250pub type PFNGLFRAGMENTLIGHTMODELFSGIXPROC =
30251    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
30252pub type PFNGLFRAGMENTLIGHTMODELFVSGIXPROC =
30253    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
30254pub type PFNGLFRAGMENTLIGHTMODELISGIXPROC =
30255    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
30256pub type PFNGLFRAGMENTLIGHTMODELIVSGIXPROC =
30257    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLint)>;
30258pub type PFNGLFRAGMENTMATERIALFSGIXPROC =
30259    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, param: GLfloat)>;
30260pub type PFNGLFRAGMENTMATERIALFVSGIXPROC = ::std::option::Option<
30261    unsafe extern "C" fn(face: GLenum, pname: GLenum, params: *const GLfloat),
30262>;
30263pub type PFNGLFRAGMENTMATERIALISGIXPROC =
30264    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, param: GLint)>;
30265pub type PFNGLFRAGMENTMATERIALIVSGIXPROC =
30266    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, params: *const GLint)>;
30267pub type PFNGLGETFRAGMENTLIGHTFVSGIXPROC =
30268    ::std::option::Option<unsafe extern "C" fn(light: GLenum, pname: GLenum, params: *mut GLfloat)>;
30269pub type PFNGLGETFRAGMENTLIGHTIVSGIXPROC =
30270    ::std::option::Option<unsafe extern "C" fn(light: GLenum, pname: GLenum, params: *mut GLint)>;
30271pub type PFNGLGETFRAGMENTMATERIALFVSGIXPROC =
30272    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, params: *mut GLfloat)>;
30273pub type PFNGLGETFRAGMENTMATERIALIVSGIXPROC =
30274    ::std::option::Option<unsafe extern "C" fn(face: GLenum, pname: GLenum, params: *mut GLint)>;
30275pub type PFNGLLIGHTENVISGIXPROC =
30276    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
30277extern "C" {
30278    pub fn glFragmentColorMaterialSGIX(face: GLenum, mode: GLenum);
30279}
30280extern "C" {
30281    pub fn glFragmentLightfSGIX(light: GLenum, pname: GLenum, param: GLfloat);
30282}
30283extern "C" {
30284    pub fn glFragmentLightfvSGIX(light: GLenum, pname: GLenum, params: *const GLfloat);
30285}
30286extern "C" {
30287    pub fn glFragmentLightiSGIX(light: GLenum, pname: GLenum, param: GLint);
30288}
30289extern "C" {
30290    pub fn glFragmentLightivSGIX(light: GLenum, pname: GLenum, params: *const GLint);
30291}
30292extern "C" {
30293    pub fn glFragmentLightModelfSGIX(pname: GLenum, param: GLfloat);
30294}
30295extern "C" {
30296    pub fn glFragmentLightModelfvSGIX(pname: GLenum, params: *const GLfloat);
30297}
30298extern "C" {
30299    pub fn glFragmentLightModeliSGIX(pname: GLenum, param: GLint);
30300}
30301extern "C" {
30302    pub fn glFragmentLightModelivSGIX(pname: GLenum, params: *const GLint);
30303}
30304extern "C" {
30305    pub fn glFragmentMaterialfSGIX(face: GLenum, pname: GLenum, param: GLfloat);
30306}
30307extern "C" {
30308    pub fn glFragmentMaterialfvSGIX(face: GLenum, pname: GLenum, params: *const GLfloat);
30309}
30310extern "C" {
30311    pub fn glFragmentMaterialiSGIX(face: GLenum, pname: GLenum, param: GLint);
30312}
30313extern "C" {
30314    pub fn glFragmentMaterialivSGIX(face: GLenum, pname: GLenum, params: *const GLint);
30315}
30316extern "C" {
30317    pub fn glGetFragmentLightfvSGIX(light: GLenum, pname: GLenum, params: *mut GLfloat);
30318}
30319extern "C" {
30320    pub fn glGetFragmentLightivSGIX(light: GLenum, pname: GLenum, params: *mut GLint);
30321}
30322extern "C" {
30323    pub fn glGetFragmentMaterialfvSGIX(face: GLenum, pname: GLenum, params: *mut GLfloat);
30324}
30325extern "C" {
30326    pub fn glGetFragmentMaterialivSGIX(face: GLenum, pname: GLenum, params: *mut GLint);
30327}
30328extern "C" {
30329    pub fn glLightEnviSGIX(pname: GLenum, param: GLint);
30330}
30331pub type PFNGLFRAMEZOOMSGIXPROC = ::std::option::Option<unsafe extern "C" fn(factor: GLint)>;
30332extern "C" {
30333    pub fn glFrameZoomSGIX(factor: GLint);
30334}
30335pub type PFNGLIGLOOINTERFACESGIXPROC = ::std::option::Option<
30336    unsafe extern "C" fn(pname: GLenum, params: *const ::std::os::raw::c_void),
30337>;
30338extern "C" {
30339    pub fn glIglooInterfaceSGIX(pname: GLenum, params: *const ::std::os::raw::c_void);
30340}
30341pub type PFNGLGETINSTRUMENTSSGIXPROC = ::std::option::Option<unsafe extern "C" fn() -> GLint>;
30342pub type PFNGLINSTRUMENTSBUFFERSGIXPROC =
30343    ::std::option::Option<unsafe extern "C" fn(size: GLsizei, buffer: *mut GLint)>;
30344pub type PFNGLPOLLINSTRUMENTSSGIXPROC =
30345    ::std::option::Option<unsafe extern "C" fn(marker_p: *mut GLint) -> GLint>;
30346pub type PFNGLREADINSTRUMENTSSGIXPROC = ::std::option::Option<unsafe extern "C" fn(marker: GLint)>;
30347pub type PFNGLSTARTINSTRUMENTSSGIXPROC = ::std::option::Option<unsafe extern "C" fn()>;
30348pub type PFNGLSTOPINSTRUMENTSSGIXPROC = ::std::option::Option<unsafe extern "C" fn(marker: GLint)>;
30349extern "C" {
30350    pub fn glGetInstrumentsSGIX() -> GLint;
30351}
30352extern "C" {
30353    pub fn glInstrumentsBufferSGIX(size: GLsizei, buffer: *mut GLint);
30354}
30355extern "C" {
30356    pub fn glPollInstrumentsSGIX(marker_p: *mut GLint) -> GLint;
30357}
30358extern "C" {
30359    pub fn glReadInstrumentsSGIX(marker: GLint);
30360}
30361extern "C" {
30362    pub fn glStartInstrumentsSGIX();
30363}
30364extern "C" {
30365    pub fn glStopInstrumentsSGIX(marker: GLint);
30366}
30367pub type PFNGLGETLISTPARAMETERFVSGIXPROC =
30368    ::std::option::Option<unsafe extern "C" fn(list: GLuint, pname: GLenum, params: *mut GLfloat)>;
30369pub type PFNGLGETLISTPARAMETERIVSGIXPROC =
30370    ::std::option::Option<unsafe extern "C" fn(list: GLuint, pname: GLenum, params: *mut GLint)>;
30371pub type PFNGLLISTPARAMETERFSGIXPROC =
30372    ::std::option::Option<unsafe extern "C" fn(list: GLuint, pname: GLenum, param: GLfloat)>;
30373pub type PFNGLLISTPARAMETERFVSGIXPROC = ::std::option::Option<
30374    unsafe extern "C" fn(list: GLuint, pname: GLenum, params: *const GLfloat),
30375>;
30376pub type PFNGLLISTPARAMETERISGIXPROC =
30377    ::std::option::Option<unsafe extern "C" fn(list: GLuint, pname: GLenum, param: GLint)>;
30378pub type PFNGLLISTPARAMETERIVSGIXPROC =
30379    ::std::option::Option<unsafe extern "C" fn(list: GLuint, pname: GLenum, params: *const GLint)>;
30380extern "C" {
30381    pub fn glGetListParameterfvSGIX(list: GLuint, pname: GLenum, params: *mut GLfloat);
30382}
30383extern "C" {
30384    pub fn glGetListParameterivSGIX(list: GLuint, pname: GLenum, params: *mut GLint);
30385}
30386extern "C" {
30387    pub fn glListParameterfSGIX(list: GLuint, pname: GLenum, param: GLfloat);
30388}
30389extern "C" {
30390    pub fn glListParameterfvSGIX(list: GLuint, pname: GLenum, params: *const GLfloat);
30391}
30392extern "C" {
30393    pub fn glListParameteriSGIX(list: GLuint, pname: GLenum, param: GLint);
30394}
30395extern "C" {
30396    pub fn glListParameterivSGIX(list: GLuint, pname: GLenum, params: *const GLint);
30397}
30398pub type PFNGLPIXELTEXGENSGIXPROC = ::std::option::Option<unsafe extern "C" fn(mode: GLenum)>;
30399extern "C" {
30400    pub fn glPixelTexGenSGIX(mode: GLenum);
30401}
30402pub type PFNGLDEFORMATIONMAP3DSGIXPROC = ::std::option::Option<
30403    unsafe extern "C" fn(
30404        target: GLenum,
30405        u1: GLdouble,
30406        u2: GLdouble,
30407        ustride: GLint,
30408        uorder: GLint,
30409        v1: GLdouble,
30410        v2: GLdouble,
30411        vstride: GLint,
30412        vorder: GLint,
30413        w1: GLdouble,
30414        w2: GLdouble,
30415        wstride: GLint,
30416        worder: GLint,
30417        points: *const GLdouble,
30418    ),
30419>;
30420pub type PFNGLDEFORMATIONMAP3FSGIXPROC = ::std::option::Option<
30421    unsafe extern "C" fn(
30422        target: GLenum,
30423        u1: GLfloat,
30424        u2: GLfloat,
30425        ustride: GLint,
30426        uorder: GLint,
30427        v1: GLfloat,
30428        v2: GLfloat,
30429        vstride: GLint,
30430        vorder: GLint,
30431        w1: GLfloat,
30432        w2: GLfloat,
30433        wstride: GLint,
30434        worder: GLint,
30435        points: *const GLfloat,
30436    ),
30437>;
30438pub type PFNGLDEFORMSGIXPROC = ::std::option::Option<unsafe extern "C" fn(mask: GLbitfield)>;
30439pub type PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC =
30440    ::std::option::Option<unsafe extern "C" fn(mask: GLbitfield)>;
30441extern "C" {
30442    pub fn glDeformationMap3dSGIX(
30443        target: GLenum,
30444        u1: GLdouble,
30445        u2: GLdouble,
30446        ustride: GLint,
30447        uorder: GLint,
30448        v1: GLdouble,
30449        v2: GLdouble,
30450        vstride: GLint,
30451        vorder: GLint,
30452        w1: GLdouble,
30453        w2: GLdouble,
30454        wstride: GLint,
30455        worder: GLint,
30456        points: *const GLdouble,
30457    );
30458}
30459extern "C" {
30460    pub fn glDeformationMap3fSGIX(
30461        target: GLenum,
30462        u1: GLfloat,
30463        u2: GLfloat,
30464        ustride: GLint,
30465        uorder: GLint,
30466        v1: GLfloat,
30467        v2: GLfloat,
30468        vstride: GLint,
30469        vorder: GLint,
30470        w1: GLfloat,
30471        w2: GLfloat,
30472        wstride: GLint,
30473        worder: GLint,
30474        points: *const GLfloat,
30475    );
30476}
30477extern "C" {
30478    pub fn glDeformSGIX(mask: GLbitfield);
30479}
30480extern "C" {
30481    pub fn glLoadIdentityDeformationMapSGIX(mask: GLbitfield);
30482}
30483pub type PFNGLREFERENCEPLANESGIXPROC =
30484    ::std::option::Option<unsafe extern "C" fn(equation: *const GLdouble)>;
30485extern "C" {
30486    pub fn glReferencePlaneSGIX(equation: *const GLdouble);
30487}
30488pub type PFNGLSPRITEPARAMETERFSGIXPROC =
30489    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLfloat)>;
30490pub type PFNGLSPRITEPARAMETERFVSGIXPROC =
30491    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLfloat)>;
30492pub type PFNGLSPRITEPARAMETERISGIXPROC =
30493    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, param: GLint)>;
30494pub type PFNGLSPRITEPARAMETERIVSGIXPROC =
30495    ::std::option::Option<unsafe extern "C" fn(pname: GLenum, params: *const GLint)>;
30496extern "C" {
30497    pub fn glSpriteParameterfSGIX(pname: GLenum, param: GLfloat);
30498}
30499extern "C" {
30500    pub fn glSpriteParameterfvSGIX(pname: GLenum, params: *const GLfloat);
30501}
30502extern "C" {
30503    pub fn glSpriteParameteriSGIX(pname: GLenum, param: GLint);
30504}
30505extern "C" {
30506    pub fn glSpriteParameterivSGIX(pname: GLenum, params: *const GLint);
30507}
30508pub type PFNGLTAGSAMPLEBUFFERSGIXPROC = ::std::option::Option<unsafe extern "C" fn()>;
30509extern "C" {
30510    pub fn glTagSampleBufferSGIX();
30511}
30512pub type PFNGLCOLORTABLESGIPROC = ::std::option::Option<
30513    unsafe extern "C" fn(
30514        target: GLenum,
30515        internalformat: GLenum,
30516        width: GLsizei,
30517        format: GLenum,
30518        type_: GLenum,
30519        table: *const ::std::os::raw::c_void,
30520    ),
30521>;
30522pub type PFNGLCOLORTABLEPARAMETERFVSGIPROC = ::std::option::Option<
30523    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLfloat),
30524>;
30525pub type PFNGLCOLORTABLEPARAMETERIVSGIPROC = ::std::option::Option<
30526    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *const GLint),
30527>;
30528pub type PFNGLCOPYCOLORTABLESGIPROC = ::std::option::Option<
30529    unsafe extern "C" fn(
30530        target: GLenum,
30531        internalformat: GLenum,
30532        x: GLint,
30533        y: GLint,
30534        width: GLsizei,
30535    ),
30536>;
30537pub type PFNGLGETCOLORTABLESGIPROC = ::std::option::Option<
30538    unsafe extern "C" fn(
30539        target: GLenum,
30540        format: GLenum,
30541        type_: GLenum,
30542        table: *mut ::std::os::raw::c_void,
30543    ),
30544>;
30545pub type PFNGLGETCOLORTABLEPARAMETERFVSGIPROC = ::std::option::Option<
30546    unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLfloat),
30547>;
30548pub type PFNGLGETCOLORTABLEPARAMETERIVSGIPROC =
30549    ::std::option::Option<unsafe extern "C" fn(target: GLenum, pname: GLenum, params: *mut GLint)>;
30550extern "C" {
30551    pub fn glColorTableSGI(
30552        target: GLenum,
30553        internalformat: GLenum,
30554        width: GLsizei,
30555        format: GLenum,
30556        type_: GLenum,
30557        table: *const ::std::os::raw::c_void,
30558    );
30559}
30560extern "C" {
30561    pub fn glColorTableParameterfvSGI(target: GLenum, pname: GLenum, params: *const GLfloat);
30562}
30563extern "C" {
30564    pub fn glColorTableParameterivSGI(target: GLenum, pname: GLenum, params: *const GLint);
30565}
30566extern "C" {
30567    pub fn glCopyColorTableSGI(
30568        target: GLenum,
30569        internalformat: GLenum,
30570        x: GLint,
30571        y: GLint,
30572        width: GLsizei,
30573    );
30574}
30575extern "C" {
30576    pub fn glGetColorTableSGI(
30577        target: GLenum,
30578        format: GLenum,
30579        type_: GLenum,
30580        table: *mut ::std::os::raw::c_void,
30581    );
30582}
30583extern "C" {
30584    pub fn glGetColorTableParameterfvSGI(target: GLenum, pname: GLenum, params: *mut GLfloat);
30585}
30586extern "C" {
30587    pub fn glGetColorTableParameterivSGI(target: GLenum, pname: GLenum, params: *mut GLint);
30588}
30589pub type PFNGLFINISHTEXTURESUNXPROC = ::std::option::Option<unsafe extern "C" fn()>;
30590extern "C" {
30591    pub fn glFinishTextureSUNX();
30592}
30593pub type PFNGLGLOBALALPHAFACTORBSUNPROC =
30594    ::std::option::Option<unsafe extern "C" fn(factor: GLbyte)>;
30595pub type PFNGLGLOBALALPHAFACTORSSUNPROC =
30596    ::std::option::Option<unsafe extern "C" fn(factor: GLshort)>;
30597pub type PFNGLGLOBALALPHAFACTORISUNPROC =
30598    ::std::option::Option<unsafe extern "C" fn(factor: GLint)>;
30599pub type PFNGLGLOBALALPHAFACTORFSUNPROC =
30600    ::std::option::Option<unsafe extern "C" fn(factor: GLfloat)>;
30601pub type PFNGLGLOBALALPHAFACTORDSUNPROC =
30602    ::std::option::Option<unsafe extern "C" fn(factor: GLdouble)>;
30603pub type PFNGLGLOBALALPHAFACTORUBSUNPROC =
30604    ::std::option::Option<unsafe extern "C" fn(factor: GLubyte)>;
30605pub type PFNGLGLOBALALPHAFACTORUSSUNPROC =
30606    ::std::option::Option<unsafe extern "C" fn(factor: GLushort)>;
30607pub type PFNGLGLOBALALPHAFACTORUISUNPROC =
30608    ::std::option::Option<unsafe extern "C" fn(factor: GLuint)>;
30609extern "C" {
30610    pub fn glGlobalAlphaFactorbSUN(factor: GLbyte);
30611}
30612extern "C" {
30613    pub fn glGlobalAlphaFactorsSUN(factor: GLshort);
30614}
30615extern "C" {
30616    pub fn glGlobalAlphaFactoriSUN(factor: GLint);
30617}
30618extern "C" {
30619    pub fn glGlobalAlphaFactorfSUN(factor: GLfloat);
30620}
30621extern "C" {
30622    pub fn glGlobalAlphaFactordSUN(factor: GLdouble);
30623}
30624extern "C" {
30625    pub fn glGlobalAlphaFactorubSUN(factor: GLubyte);
30626}
30627extern "C" {
30628    pub fn glGlobalAlphaFactorusSUN(factor: GLushort);
30629}
30630extern "C" {
30631    pub fn glGlobalAlphaFactoruiSUN(factor: GLuint);
30632}
30633pub type PFNGLDRAWMESHARRAYSSUNPROC = ::std::option::Option<
30634    unsafe extern "C" fn(mode: GLenum, first: GLint, count: GLsizei, width: GLsizei),
30635>;
30636extern "C" {
30637    pub fn glDrawMeshArraysSUN(mode: GLenum, first: GLint, count: GLsizei, width: GLsizei);
30638}
30639pub type PFNGLREPLACEMENTCODEUISUNPROC = ::std::option::Option<unsafe extern "C" fn(code: GLuint)>;
30640pub type PFNGLREPLACEMENTCODEUSSUNPROC =
30641    ::std::option::Option<unsafe extern "C" fn(code: GLushort)>;
30642pub type PFNGLREPLACEMENTCODEUBSUNPROC = ::std::option::Option<unsafe extern "C" fn(code: GLubyte)>;
30643pub type PFNGLREPLACEMENTCODEUIVSUNPROC =
30644    ::std::option::Option<unsafe extern "C" fn(code: *const GLuint)>;
30645pub type PFNGLREPLACEMENTCODEUSVSUNPROC =
30646    ::std::option::Option<unsafe extern "C" fn(code: *const GLushort)>;
30647pub type PFNGLREPLACEMENTCODEUBVSUNPROC =
30648    ::std::option::Option<unsafe extern "C" fn(code: *const GLubyte)>;
30649pub type PFNGLREPLACEMENTCODEPOINTERSUNPROC = ::std::option::Option<
30650    unsafe extern "C" fn(
30651        type_: GLenum,
30652        stride: GLsizei,
30653        pointer: *mut *const ::std::os::raw::c_void,
30654    ),
30655>;
30656extern "C" {
30657    pub fn glReplacementCodeuiSUN(code: GLuint);
30658}
30659extern "C" {
30660    pub fn glReplacementCodeusSUN(code: GLushort);
30661}
30662extern "C" {
30663    pub fn glReplacementCodeubSUN(code: GLubyte);
30664}
30665extern "C" {
30666    pub fn glReplacementCodeuivSUN(code: *const GLuint);
30667}
30668extern "C" {
30669    pub fn glReplacementCodeusvSUN(code: *const GLushort);
30670}
30671extern "C" {
30672    pub fn glReplacementCodeubvSUN(code: *const GLubyte);
30673}
30674extern "C" {
30675    pub fn glReplacementCodePointerSUN(
30676        type_: GLenum,
30677        stride: GLsizei,
30678        pointer: *mut *const ::std::os::raw::c_void,
30679    );
30680}
30681pub type PFNGLCOLOR4UBVERTEX2FSUNPROC = ::std::option::Option<
30682    unsafe extern "C" fn(r: GLubyte, g: GLubyte, b: GLubyte, a: GLubyte, x: GLfloat, y: GLfloat),
30683>;
30684pub type PFNGLCOLOR4UBVERTEX2FVSUNPROC =
30685    ::std::option::Option<unsafe extern "C" fn(c: *const GLubyte, v: *const GLfloat)>;
30686pub type PFNGLCOLOR4UBVERTEX3FSUNPROC = ::std::option::Option<
30687    unsafe extern "C" fn(
30688        r: GLubyte,
30689        g: GLubyte,
30690        b: GLubyte,
30691        a: GLubyte,
30692        x: GLfloat,
30693        y: GLfloat,
30694        z: GLfloat,
30695    ),
30696>;
30697pub type PFNGLCOLOR4UBVERTEX3FVSUNPROC =
30698    ::std::option::Option<unsafe extern "C" fn(c: *const GLubyte, v: *const GLfloat)>;
30699pub type PFNGLCOLOR3FVERTEX3FSUNPROC = ::std::option::Option<
30700    unsafe extern "C" fn(r: GLfloat, g: GLfloat, b: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat),
30701>;
30702pub type PFNGLCOLOR3FVERTEX3FVSUNPROC =
30703    ::std::option::Option<unsafe extern "C" fn(c: *const GLfloat, v: *const GLfloat)>;
30704pub type PFNGLNORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30705    unsafe extern "C" fn(nx: GLfloat, ny: GLfloat, nz: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat),
30706>;
30707pub type PFNGLNORMAL3FVERTEX3FVSUNPROC =
30708    ::std::option::Option<unsafe extern "C" fn(n: *const GLfloat, v: *const GLfloat)>;
30709pub type PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30710    unsafe extern "C" fn(
30711        r: GLfloat,
30712        g: GLfloat,
30713        b: GLfloat,
30714        a: GLfloat,
30715        nx: GLfloat,
30716        ny: GLfloat,
30717        nz: GLfloat,
30718        x: GLfloat,
30719        y: GLfloat,
30720        z: GLfloat,
30721    ),
30722>;
30723pub type PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC = ::std::option::Option<
30724    unsafe extern "C" fn(c: *const GLfloat, n: *const GLfloat, v: *const GLfloat),
30725>;
30726pub type PFNGLTEXCOORD2FVERTEX3FSUNPROC = ::std::option::Option<
30727    unsafe extern "C" fn(s: GLfloat, t: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat),
30728>;
30729pub type PFNGLTEXCOORD2FVERTEX3FVSUNPROC =
30730    ::std::option::Option<unsafe extern "C" fn(tc: *const GLfloat, v: *const GLfloat)>;
30731pub type PFNGLTEXCOORD4FVERTEX4FSUNPROC = ::std::option::Option<
30732    unsafe extern "C" fn(
30733        s: GLfloat,
30734        t: GLfloat,
30735        p: GLfloat,
30736        q: GLfloat,
30737        x: GLfloat,
30738        y: GLfloat,
30739        z: GLfloat,
30740        w: GLfloat,
30741    ),
30742>;
30743pub type PFNGLTEXCOORD4FVERTEX4FVSUNPROC =
30744    ::std::option::Option<unsafe extern "C" fn(tc: *const GLfloat, v: *const GLfloat)>;
30745pub type PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC = ::std::option::Option<
30746    unsafe extern "C" fn(
30747        s: GLfloat,
30748        t: GLfloat,
30749        r: GLubyte,
30750        g: GLubyte,
30751        b: GLubyte,
30752        a: GLubyte,
30753        x: GLfloat,
30754        y: GLfloat,
30755        z: GLfloat,
30756    ),
30757>;
30758pub type PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC = ::std::option::Option<
30759    unsafe extern "C" fn(tc: *const GLfloat, c: *const GLubyte, v: *const GLfloat),
30760>;
30761pub type PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC = ::std::option::Option<
30762    unsafe extern "C" fn(
30763        s: GLfloat,
30764        t: GLfloat,
30765        r: GLfloat,
30766        g: GLfloat,
30767        b: GLfloat,
30768        x: GLfloat,
30769        y: GLfloat,
30770        z: GLfloat,
30771    ),
30772>;
30773pub type PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC = ::std::option::Option<
30774    unsafe extern "C" fn(tc: *const GLfloat, c: *const GLfloat, v: *const GLfloat),
30775>;
30776pub type PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30777    unsafe extern "C" fn(
30778        s: GLfloat,
30779        t: GLfloat,
30780        nx: GLfloat,
30781        ny: GLfloat,
30782        nz: GLfloat,
30783        x: GLfloat,
30784        y: GLfloat,
30785        z: GLfloat,
30786    ),
30787>;
30788pub type PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC = ::std::option::Option<
30789    unsafe extern "C" fn(tc: *const GLfloat, n: *const GLfloat, v: *const GLfloat),
30790>;
30791pub type PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30792    unsafe extern "C" fn(
30793        s: GLfloat,
30794        t: GLfloat,
30795        r: GLfloat,
30796        g: GLfloat,
30797        b: GLfloat,
30798        a: GLfloat,
30799        nx: GLfloat,
30800        ny: GLfloat,
30801        nz: GLfloat,
30802        x: GLfloat,
30803        y: GLfloat,
30804        z: GLfloat,
30805    ),
30806>;
30807pub type PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC = ::std::option::Option<
30808    unsafe extern "C" fn(
30809        tc: *const GLfloat,
30810        c: *const GLfloat,
30811        n: *const GLfloat,
30812        v: *const GLfloat,
30813    ),
30814>;
30815pub type PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC = ::std::option::Option<
30816    unsafe extern "C" fn(
30817        s: GLfloat,
30818        t: GLfloat,
30819        p: GLfloat,
30820        q: GLfloat,
30821        r: GLfloat,
30822        g: GLfloat,
30823        b: GLfloat,
30824        a: GLfloat,
30825        nx: GLfloat,
30826        ny: GLfloat,
30827        nz: GLfloat,
30828        x: GLfloat,
30829        y: GLfloat,
30830        z: GLfloat,
30831        w: GLfloat,
30832    ),
30833>;
30834pub type PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC = ::std::option::Option<
30835    unsafe extern "C" fn(
30836        tc: *const GLfloat,
30837        c: *const GLfloat,
30838        n: *const GLfloat,
30839        v: *const GLfloat,
30840    ),
30841>;
30842pub type PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC =
30843    ::std::option::Option<unsafe extern "C" fn(rc: GLuint, x: GLfloat, y: GLfloat, z: GLfloat)>;
30844pub type PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC =
30845    ::std::option::Option<unsafe extern "C" fn(rc: *const GLuint, v: *const GLfloat)>;
30846pub type PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC = ::std::option::Option<
30847    unsafe extern "C" fn(
30848        rc: GLuint,
30849        r: GLubyte,
30850        g: GLubyte,
30851        b: GLubyte,
30852        a: GLubyte,
30853        x: GLfloat,
30854        y: GLfloat,
30855        z: GLfloat,
30856    ),
30857>;
30858pub type PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC = ::std::option::Option<
30859    unsafe extern "C" fn(rc: *const GLuint, c: *const GLubyte, v: *const GLfloat),
30860>;
30861pub type PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC = ::std::option::Option<
30862    unsafe extern "C" fn(
30863        rc: GLuint,
30864        r: GLfloat,
30865        g: GLfloat,
30866        b: GLfloat,
30867        x: GLfloat,
30868        y: GLfloat,
30869        z: GLfloat,
30870    ),
30871>;
30872pub type PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC = ::std::option::Option<
30873    unsafe extern "C" fn(rc: *const GLuint, c: *const GLfloat, v: *const GLfloat),
30874>;
30875pub type PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30876    unsafe extern "C" fn(
30877        rc: GLuint,
30878        nx: GLfloat,
30879        ny: GLfloat,
30880        nz: GLfloat,
30881        x: GLfloat,
30882        y: GLfloat,
30883        z: GLfloat,
30884    ),
30885>;
30886pub type PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC = ::std::option::Option<
30887    unsafe extern "C" fn(rc: *const GLuint, n: *const GLfloat, v: *const GLfloat),
30888>;
30889pub type PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30890    unsafe extern "C" fn(
30891        rc: GLuint,
30892        r: GLfloat,
30893        g: GLfloat,
30894        b: GLfloat,
30895        a: GLfloat,
30896        nx: GLfloat,
30897        ny: GLfloat,
30898        nz: GLfloat,
30899        x: GLfloat,
30900        y: GLfloat,
30901        z: GLfloat,
30902    ),
30903>;
30904pub type PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC = ::std::option::Option<
30905    unsafe extern "C" fn(
30906        rc: *const GLuint,
30907        c: *const GLfloat,
30908        n: *const GLfloat,
30909        v: *const GLfloat,
30910    ),
30911>;
30912pub type PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC = ::std::option::Option<
30913    unsafe extern "C" fn(rc: GLuint, s: GLfloat, t: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat),
30914>;
30915pub type PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC = ::std::option::Option<
30916    unsafe extern "C" fn(rc: *const GLuint, tc: *const GLfloat, v: *const GLfloat),
30917>;
30918pub type PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30919    unsafe extern "C" fn(
30920        rc: GLuint,
30921        s: GLfloat,
30922        t: GLfloat,
30923        nx: GLfloat,
30924        ny: GLfloat,
30925        nz: GLfloat,
30926        x: GLfloat,
30927        y: GLfloat,
30928        z: GLfloat,
30929    ),
30930>;
30931pub type PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC = ::std::option::Option<
30932    unsafe extern "C" fn(
30933        rc: *const GLuint,
30934        tc: *const GLfloat,
30935        n: *const GLfloat,
30936        v: *const GLfloat,
30937    ),
30938>;
30939pub type PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC = ::std::option::Option<
30940    unsafe extern "C" fn(
30941        rc: GLuint,
30942        s: GLfloat,
30943        t: GLfloat,
30944        r: GLfloat,
30945        g: GLfloat,
30946        b: GLfloat,
30947        a: GLfloat,
30948        nx: GLfloat,
30949        ny: GLfloat,
30950        nz: GLfloat,
30951        x: GLfloat,
30952        y: GLfloat,
30953        z: GLfloat,
30954    ),
30955>;
30956pub type PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC = ::std::option::Option<
30957    unsafe extern "C" fn(
30958        rc: *const GLuint,
30959        tc: *const GLfloat,
30960        c: *const GLfloat,
30961        n: *const GLfloat,
30962        v: *const GLfloat,
30963    ),
30964>;
30965extern "C" {
30966    pub fn glColor4ubVertex2fSUN(
30967        r: GLubyte,
30968        g: GLubyte,
30969        b: GLubyte,
30970        a: GLubyte,
30971        x: GLfloat,
30972        y: GLfloat,
30973    );
30974}
30975extern "C" {
30976    pub fn glColor4ubVertex2fvSUN(c: *const GLubyte, v: *const GLfloat);
30977}
30978extern "C" {
30979    pub fn glColor4ubVertex3fSUN(
30980        r: GLubyte,
30981        g: GLubyte,
30982        b: GLubyte,
30983        a: GLubyte,
30984        x: GLfloat,
30985        y: GLfloat,
30986        z: GLfloat,
30987    );
30988}
30989extern "C" {
30990    pub fn glColor4ubVertex3fvSUN(c: *const GLubyte, v: *const GLfloat);
30991}
30992extern "C" {
30993    pub fn glColor3fVertex3fSUN(
30994        r: GLfloat,
30995        g: GLfloat,
30996        b: GLfloat,
30997        x: GLfloat,
30998        y: GLfloat,
30999        z: GLfloat,
31000    );
31001}
31002extern "C" {
31003    pub fn glColor3fVertex3fvSUN(c: *const GLfloat, v: *const GLfloat);
31004}
31005extern "C" {
31006    pub fn glNormal3fVertex3fSUN(
31007        nx: GLfloat,
31008        ny: GLfloat,
31009        nz: GLfloat,
31010        x: GLfloat,
31011        y: GLfloat,
31012        z: GLfloat,
31013    );
31014}
31015extern "C" {
31016    pub fn glNormal3fVertex3fvSUN(n: *const GLfloat, v: *const GLfloat);
31017}
31018extern "C" {
31019    pub fn glColor4fNormal3fVertex3fSUN(
31020        r: GLfloat,
31021        g: GLfloat,
31022        b: GLfloat,
31023        a: GLfloat,
31024        nx: GLfloat,
31025        ny: GLfloat,
31026        nz: GLfloat,
31027        x: GLfloat,
31028        y: GLfloat,
31029        z: GLfloat,
31030    );
31031}
31032extern "C" {
31033    pub fn glColor4fNormal3fVertex3fvSUN(c: *const GLfloat, n: *const GLfloat, v: *const GLfloat);
31034}
31035extern "C" {
31036    pub fn glTexCoord2fVertex3fSUN(s: GLfloat, t: GLfloat, x: GLfloat, y: GLfloat, z: GLfloat);
31037}
31038extern "C" {
31039    pub fn glTexCoord2fVertex3fvSUN(tc: *const GLfloat, v: *const GLfloat);
31040}
31041extern "C" {
31042    pub fn glTexCoord4fVertex4fSUN(
31043        s: GLfloat,
31044        t: GLfloat,
31045        p: GLfloat,
31046        q: GLfloat,
31047        x: GLfloat,
31048        y: GLfloat,
31049        z: GLfloat,
31050        w: GLfloat,
31051    );
31052}
31053extern "C" {
31054    pub fn glTexCoord4fVertex4fvSUN(tc: *const GLfloat, v: *const GLfloat);
31055}
31056extern "C" {
31057    pub fn glTexCoord2fColor4ubVertex3fSUN(
31058        s: GLfloat,
31059        t: GLfloat,
31060        r: GLubyte,
31061        g: GLubyte,
31062        b: GLubyte,
31063        a: GLubyte,
31064        x: GLfloat,
31065        y: GLfloat,
31066        z: GLfloat,
31067    );
31068}
31069extern "C" {
31070    pub fn glTexCoord2fColor4ubVertex3fvSUN(
31071        tc: *const GLfloat,
31072        c: *const GLubyte,
31073        v: *const GLfloat,
31074    );
31075}
31076extern "C" {
31077    pub fn glTexCoord2fColor3fVertex3fSUN(
31078        s: GLfloat,
31079        t: GLfloat,
31080        r: GLfloat,
31081        g: GLfloat,
31082        b: GLfloat,
31083        x: GLfloat,
31084        y: GLfloat,
31085        z: GLfloat,
31086    );
31087}
31088extern "C" {
31089    pub fn glTexCoord2fColor3fVertex3fvSUN(
31090        tc: *const GLfloat,
31091        c: *const GLfloat,
31092        v: *const GLfloat,
31093    );
31094}
31095extern "C" {
31096    pub fn glTexCoord2fNormal3fVertex3fSUN(
31097        s: GLfloat,
31098        t: GLfloat,
31099        nx: GLfloat,
31100        ny: GLfloat,
31101        nz: GLfloat,
31102        x: GLfloat,
31103        y: GLfloat,
31104        z: GLfloat,
31105    );
31106}
31107extern "C" {
31108    pub fn glTexCoord2fNormal3fVertex3fvSUN(
31109        tc: *const GLfloat,
31110        n: *const GLfloat,
31111        v: *const GLfloat,
31112    );
31113}
31114extern "C" {
31115    pub fn glTexCoord2fColor4fNormal3fVertex3fSUN(
31116        s: GLfloat,
31117        t: GLfloat,
31118        r: GLfloat,
31119        g: GLfloat,
31120        b: GLfloat,
31121        a: GLfloat,
31122        nx: GLfloat,
31123        ny: GLfloat,
31124        nz: GLfloat,
31125        x: GLfloat,
31126        y: GLfloat,
31127        z: GLfloat,
31128    );
31129}
31130extern "C" {
31131    pub fn glTexCoord2fColor4fNormal3fVertex3fvSUN(
31132        tc: *const GLfloat,
31133        c: *const GLfloat,
31134        n: *const GLfloat,
31135        v: *const GLfloat,
31136    );
31137}
31138extern "C" {
31139    pub fn glTexCoord4fColor4fNormal3fVertex4fSUN(
31140        s: GLfloat,
31141        t: GLfloat,
31142        p: GLfloat,
31143        q: GLfloat,
31144        r: GLfloat,
31145        g: GLfloat,
31146        b: GLfloat,
31147        a: GLfloat,
31148        nx: GLfloat,
31149        ny: GLfloat,
31150        nz: GLfloat,
31151        x: GLfloat,
31152        y: GLfloat,
31153        z: GLfloat,
31154        w: GLfloat,
31155    );
31156}
31157extern "C" {
31158    pub fn glTexCoord4fColor4fNormal3fVertex4fvSUN(
31159        tc: *const GLfloat,
31160        c: *const GLfloat,
31161        n: *const GLfloat,
31162        v: *const GLfloat,
31163    );
31164}
31165extern "C" {
31166    pub fn glReplacementCodeuiVertex3fSUN(rc: GLuint, x: GLfloat, y: GLfloat, z: GLfloat);
31167}
31168extern "C" {
31169    pub fn glReplacementCodeuiVertex3fvSUN(rc: *const GLuint, v: *const GLfloat);
31170}
31171extern "C" {
31172    pub fn glReplacementCodeuiColor4ubVertex3fSUN(
31173        rc: GLuint,
31174        r: GLubyte,
31175        g: GLubyte,
31176        b: GLubyte,
31177        a: GLubyte,
31178        x: GLfloat,
31179        y: GLfloat,
31180        z: GLfloat,
31181    );
31182}
31183extern "C" {
31184    pub fn glReplacementCodeuiColor4ubVertex3fvSUN(
31185        rc: *const GLuint,
31186        c: *const GLubyte,
31187        v: *const GLfloat,
31188    );
31189}
31190extern "C" {
31191    pub fn glReplacementCodeuiColor3fVertex3fSUN(
31192        rc: GLuint,
31193        r: GLfloat,
31194        g: GLfloat,
31195        b: GLfloat,
31196        x: GLfloat,
31197        y: GLfloat,
31198        z: GLfloat,
31199    );
31200}
31201extern "C" {
31202    pub fn glReplacementCodeuiColor3fVertex3fvSUN(
31203        rc: *const GLuint,
31204        c: *const GLfloat,
31205        v: *const GLfloat,
31206    );
31207}
31208extern "C" {
31209    pub fn glReplacementCodeuiNormal3fVertex3fSUN(
31210        rc: GLuint,
31211        nx: GLfloat,
31212        ny: GLfloat,
31213        nz: GLfloat,
31214        x: GLfloat,
31215        y: GLfloat,
31216        z: GLfloat,
31217    );
31218}
31219extern "C" {
31220    pub fn glReplacementCodeuiNormal3fVertex3fvSUN(
31221        rc: *const GLuint,
31222        n: *const GLfloat,
31223        v: *const GLfloat,
31224    );
31225}
31226extern "C" {
31227    pub fn glReplacementCodeuiColor4fNormal3fVertex3fSUN(
31228        rc: GLuint,
31229        r: GLfloat,
31230        g: GLfloat,
31231        b: GLfloat,
31232        a: GLfloat,
31233        nx: GLfloat,
31234        ny: GLfloat,
31235        nz: GLfloat,
31236        x: GLfloat,
31237        y: GLfloat,
31238        z: GLfloat,
31239    );
31240}
31241extern "C" {
31242    pub fn glReplacementCodeuiColor4fNormal3fVertex3fvSUN(
31243        rc: *const GLuint,
31244        c: *const GLfloat,
31245        n: *const GLfloat,
31246        v: *const GLfloat,
31247    );
31248}
31249extern "C" {
31250    pub fn glReplacementCodeuiTexCoord2fVertex3fSUN(
31251        rc: GLuint,
31252        s: GLfloat,
31253        t: GLfloat,
31254        x: GLfloat,
31255        y: GLfloat,
31256        z: GLfloat,
31257    );
31258}
31259extern "C" {
31260    pub fn glReplacementCodeuiTexCoord2fVertex3fvSUN(
31261        rc: *const GLuint,
31262        tc: *const GLfloat,
31263        v: *const GLfloat,
31264    );
31265}
31266extern "C" {
31267    pub fn glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(
31268        rc: GLuint,
31269        s: GLfloat,
31270        t: GLfloat,
31271        nx: GLfloat,
31272        ny: GLfloat,
31273        nz: GLfloat,
31274        x: GLfloat,
31275        y: GLfloat,
31276        z: GLfloat,
31277    );
31278}
31279extern "C" {
31280    pub fn glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(
31281        rc: *const GLuint,
31282        tc: *const GLfloat,
31283        n: *const GLfloat,
31284        v: *const GLfloat,
31285    );
31286}
31287extern "C" {
31288    pub fn glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(
31289        rc: GLuint,
31290        s: GLfloat,
31291        t: GLfloat,
31292        r: GLfloat,
31293        g: GLfloat,
31294        b: GLfloat,
31295        a: GLfloat,
31296        nx: GLfloat,
31297        ny: GLfloat,
31298        nz: GLfloat,
31299        x: GLfloat,
31300        y: GLfloat,
31301        z: GLfloat,
31302    );
31303}
31304extern "C" {
31305    pub fn glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(
31306        rc: *const GLuint,
31307        tc: *const GLfloat,
31308        c: *const GLfloat,
31309        n: *const GLfloat,
31310        v: *const GLfloat,
31311    );
31312}
31313extern "C" {
31314    pub fn glBlendEquationSeparateATI(modeRGB: GLenum, modeA: GLenum);
31315}
31316pub type PFNGLBLENDEQUATIONSEPARATEATIPROC =
31317    ::std::option::Option<unsafe extern "C" fn(modeRGB: GLenum, modeA: GLenum)>;
31318extern "C" {
31319    pub fn glEGLImageTargetTexture2DOES(target: GLenum, image: GLeglImageOES);
31320}
31321extern "C" {
31322    pub fn glEGLImageTargetRenderbufferStorageOES(target: GLenum, image: GLeglImageOES);
31323}
31324pub type PFNGLEGLIMAGETARGETTEXTURE2DOESPROC =
31325    ::std::option::Option<unsafe extern "C" fn(target: GLenum, image: GLeglImageOES)>;
31326pub type PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC =
31327    ::std::option::Option<unsafe extern "C" fn(target: GLenum, image: GLeglImageOES)>;