Advertisement
Guest User

glf.h

a guest
Nov 1st, 2014
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 351.95 KB | None | 0 0
  1. /* GLFunctions header. Generated by SGH's GLFunctions. (c) 2014.
  2.  * GLFunctions reads glcorearb.h and creates a C++ wrapper class.
  3.  * The generated header's typedefs need to be corrected.
  4.  * Also, you need to adapt CGLFProcLoader for your platform.
  5.  */
  6. #pragma once
  7. #include <stddef.h>
  8. #include <memory>
  9.  
  10. #if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__)
  11. #ifndef WIN32_LEAN_AND_MEAN
  12. #define WIN32_LEAN_AND_MEAN 1
  13. #endif
  14. #include <windows.h>
  15. #undef near
  16. #undef far
  17. #endif
  18. #ifndef APIENTRY
  19. #define APIENTRY
  20. #endif
  21. #ifndef APIENTRYP
  22. #define APIENTRYP APIENTRY *
  23. #endif
  24.  
  25. typedef void (*GLPP_PROC)();
  26.  
  27. class CGLFProcLoader {
  28.     CGLFProcLoader(const CGLFProcLoader&) =delete;
  29.     CGLFProcLoader& operator= (const CGLFProcLoader&) =delete;
  30. public:
  31.     CGLFProcLoader();
  32.     virtual ~CGLFProcLoader();
  33.     virtual CGLFProcLoader* Move() =0;
  34.     virtual bool Init() =0;
  35.     virtual void FreeProcs() =0;
  36.     virtual GLPP_PROC GetOptimalProc(const char*) =0;
  37. };
  38.  
  39. /* Definitions */
  40. #define GL_VERSION_1_0 1
  41. #define GL_VERSION_1_1 1
  42. #define GL_VERSION_1_2 1
  43. #define GL_VERSION_1_3 1
  44. #define GL_VERSION_1_4 1
  45. #define GL_VERSION_1_5 1
  46. #define GL_VERSION_2_0 1
  47. #define GL_VERSION_2_1 1
  48. #define GL_VERSION_3_0 1
  49. #define GL_VERSION_3_1 1
  50. #define GL_VERSION_3_2 1
  51. #define GL_VERSION_3_3 1
  52. #define GL_VERSION_4_0 1
  53. #define GL_VERSION_4_1 1
  54. #define GL_VERSION_4_2 1
  55. #define GL_VERSION_4_3 1
  56. #define GL_VERSION_4_4 1
  57. #define GL_VERSION_4_5 1
  58. /* End of Definitions */
  59.  
  60. /* Typedefs */
  61. typedef void GLvoid;
  62. typedef unsigned int GLenum;
  63. typedef float GLfloat;
  64. typedef int GLint;
  65. typedef int GLsizei;
  66. typedef unsigned int GLbitfield;
  67. typedef double GLdouble;
  68. typedef unsigned int GLuint;
  69. typedef unsigned char GLboolean;
  70. typedef unsigned char GLubyte;
  71. typedef float GLclampf;
  72. typedef double GLclampd;
  73. typedef ptrdiff_t GLsizeiptr;
  74. typedef ptrdiff_t GLintptr;
  75. typedef char GLchar;
  76. typedef short GLshort;
  77. typedef signed char GLbyte;
  78. typedef unsigned short GLushort;
  79. typedef unsigned short GLhalf;
  80. typedef struct __GLsync * GLsync;
  81. typedef long long int int64_t;
  82. typedef unsigned long long int uint64_t;
  83. typedef uint64_t GLuint64;
  84. typedef int64_t GLint64;
  85. typedef uint64_t GLuint64EXT;
  86. /* End of Typedefs*/
  87.  
  88. /* Booleans */
  89. const bool GL_ARB_ES2_compatibility = 1;
  90. const bool GL_ARB_ES3_1_compatibility = 1;
  91. const bool GL_ARB_ES3_compatibility = 1;
  92. const bool GL_ARB_arrays_of_arrays = 1;
  93. const bool GL_ARB_base_instance = 1;
  94. const bool GL_ARB_bindless_texture = 1;
  95. const bool GL_ARB_blend_func_extended = 1;
  96. const bool GL_ARB_buffer_storage = 1;
  97. const bool GL_ARB_cl_event = 1;
  98. const bool GL_ARB_clear_buffer_object = 1;
  99. const bool GL_ARB_clear_texture = 1;
  100. const bool GL_ARB_clip_control = 1;
  101. const bool GL_ARB_compressed_texture_pixel_storage = 1;
  102. const bool GL_ARB_compute_shader = 1;
  103. const bool GL_ARB_compute_variable_group_size = 1;
  104. const bool GL_ARB_conditional_render_inverted = 1;
  105. const bool GL_ARB_conservative_depth = 1;
  106. const bool GL_ARB_copy_buffer = 1;
  107. const bool GL_ARB_copy_image = 1;
  108. const bool GL_ARB_cull_distance = 1;
  109. const bool GL_ARB_debug_output = 1;
  110. const bool GL_ARB_depth_buffer_float = 1;
  111. const bool GL_ARB_depth_clamp = 1;
  112. const bool GL_ARB_derivative_control = 1;
  113. const bool GL_ARB_direct_state_access = 1;
  114. const bool GL_ARB_draw_buffers_blend = 1;
  115. const bool GL_ARB_draw_elements_base_vertex = 1;
  116. const bool GL_ARB_draw_indirect = 1;
  117. const bool GL_ARB_enhanced_layouts = 1;
  118. const bool GL_ARB_explicit_attrib_location = 1;
  119. const bool GL_ARB_explicit_uniform_location = 1;
  120. const bool GL_ARB_fragment_coord_conventions = 1;
  121. const bool GL_ARB_fragment_layer_viewport = 1;
  122. const bool GL_ARB_framebuffer_no_attachments = 1;
  123. const bool GL_ARB_framebuffer_object = 1;
  124. const bool GL_ARB_framebuffer_sRGB = 1;
  125. const bool GL_ARB_get_program_binary = 1;
  126. const bool GL_ARB_get_texture_sub_image = 1;
  127. const bool GL_ARB_gpu_shader5 = 1;
  128. const bool GL_ARB_gpu_shader_fp64 = 1;
  129. const bool GL_ARB_half_float_vertex = 1;
  130. const bool GL_ARB_imaging = 1;
  131. const bool GL_ARB_indirect_parameters = 1;
  132. const bool GL_ARB_internalformat_query = 1;
  133. const bool GL_ARB_internalformat_query2 = 1;
  134. const bool GL_ARB_invalidate_subdata = 1;
  135. const bool GL_ARB_map_buffer_alignment = 1;
  136. const bool GL_ARB_map_buffer_range = 1;
  137. const bool GL_ARB_multi_bind = 1;
  138. const bool GL_ARB_multi_draw_indirect = 1;
  139. const bool GL_ARB_occlusion_query2 = 1;
  140. const bool GL_ARB_pipeline_statistics_query = 1;
  141. const bool GL_ARB_program_interface_query = 1;
  142. const bool GL_ARB_provoking_vertex = 1;
  143. const bool GL_ARB_query_buffer_object = 1;
  144. const bool GL_ARB_robust_buffer_access_behavior = 1;
  145. const bool GL_ARB_robustness = 1;
  146. const bool GL_ARB_robustness_isolation = 1;
  147. const bool GL_ARB_sample_shading = 1;
  148. const bool GL_ARB_sampler_objects = 1;
  149. const bool GL_ARB_seamless_cube_map = 1;
  150. const bool GL_ARB_seamless_cubemap_per_texture = 1;
  151. const bool GL_ARB_separate_shader_objects = 1;
  152. const bool GL_ARB_shader_atomic_counters = 1;
  153. const bool GL_ARB_shader_bit_encoding = 1;
  154. const bool GL_ARB_shader_draw_parameters = 1;
  155. const bool GL_ARB_shader_group_vote = 1;
  156. const bool GL_ARB_shader_image_load_store = 1;
  157. const bool GL_ARB_shader_image_size = 1;
  158. const bool GL_ARB_shader_precision = 1;
  159. const bool GL_ARB_shader_stencil_export = 1;
  160. const bool GL_ARB_shader_storage_buffer_object = 1;
  161. const bool GL_ARB_shader_subroutine = 1;
  162. const bool GL_ARB_shader_texture_image_samples = 1;
  163. const bool GL_ARB_shading_language_420pack = 1;
  164. const bool GL_ARB_shading_language_include = 1;
  165. const bool GL_ARB_shading_language_packing = 1;
  166. const bool GL_ARB_sparse_buffer = 1;
  167. const bool GL_ARB_sparse_texture = 1;
  168. const bool GL_ARB_stencil_texturing = 1;
  169. const bool GL_ARB_sync = 1;
  170. const bool GL_ARB_tessellation_shader = 1;
  171. const bool GL_ARB_texture_barrier = 1;
  172. const bool GL_ARB_texture_buffer_object_rgb32 = 1;
  173. const bool GL_ARB_texture_buffer_range = 1;
  174. const bool GL_ARB_texture_compression_bptc = 1;
  175. const bool GL_ARB_texture_compression_rgtc = 1;
  176. const bool GL_ARB_texture_cube_map_array = 1;
  177. const bool GL_ARB_texture_gather = 1;
  178. const bool GL_ARB_texture_mirror_clamp_to_edge = 1;
  179. const bool GL_ARB_texture_multisample = 1;
  180. const bool GL_ARB_texture_query_levels = 1;
  181. const bool GL_ARB_texture_query_lod = 1;
  182. const bool GL_ARB_texture_rg = 1;
  183. const bool GL_ARB_texture_rgb10_a2ui = 1;
  184. const bool GL_ARB_texture_stencil8 = 1;
  185. const bool GL_ARB_texture_storage = 1;
  186. const bool GL_ARB_texture_storage_multisample = 1;
  187. const bool GL_ARB_texture_swizzle = 1;
  188. const bool GL_ARB_texture_view = 1;
  189. const bool GL_ARB_timer_query = 1;
  190. const bool GL_ARB_transform_feedback2 = 1;
  191. const bool GL_ARB_transform_feedback3 = 1;
  192. const bool GL_ARB_transform_feedback_instanced = 1;
  193. const bool GL_ARB_transform_feedback_overflow_query = 1;
  194. const bool GL_ARB_uniform_buffer_object = 1;
  195. const bool GL_ARB_vertex_array_bgra = 1;
  196. const bool GL_ARB_vertex_array_object = 1;
  197. const bool GL_ARB_vertex_attrib_64bit = 1;
  198. const bool GL_ARB_vertex_attrib_binding = 1;
  199. const bool GL_ARB_vertex_type_10f_11f_11f_rev = 1;
  200. const bool GL_ARB_vertex_type_2_10_10_10_rev = 1;
  201. const bool GL_ARB_viewport_array = 1;
  202. const bool GL_KHR_context_flush_control = 1;
  203. const bool GL_KHR_debug = 1;
  204. const bool GL_KHR_robust_buffer_access_behavior = 1;
  205. const bool GL_KHR_robustness = 1;
  206. const bool GL_KHR_texture_compression_astc_hdr = 1;
  207. const bool GL_KHR_texture_compression_astc_ldr = 1;
  208. /* End of Booleans */
  209.  
  210. /* Enumerations */
  211. const GLenum GL_DEPTH_BUFFER_BIT = 0x00000100;
  212. const GLenum GL_STENCIL_BUFFER_BIT = 0x00000400;
  213. const GLenum GL_COLOR_BUFFER_BIT = 0x00004000;
  214. const GLenum GL_FALSE = 0;
  215. const GLenum GL_TRUE = 1;
  216. const GLenum GL_POINTS = 0x0000;
  217. const GLenum GL_LINES = 0x0001;
  218. const GLenum GL_LINE_LOOP = 0x0002;
  219. const GLenum GL_LINE_STRIP = 0x0003;
  220. const GLenum GL_TRIANGLES = 0x0004;
  221. const GLenum GL_TRIANGLE_STRIP = 0x0005;
  222. const GLenum GL_TRIANGLE_FAN = 0x0006;
  223. const GLenum GL_QUADS = 0x0007;
  224. const GLenum GL_NEVER = 0x0200;
  225. const GLenum GL_LESS = 0x0201;
  226. const GLenum GL_EQUAL = 0x0202;
  227. const GLenum GL_LEQUAL = 0x0203;
  228. const GLenum GL_GREATER = 0x0204;
  229. const GLenum GL_NOTEQUAL = 0x0205;
  230. const GLenum GL_GEQUAL = 0x0206;
  231. const GLenum GL_ALWAYS = 0x0207;
  232. const GLenum GL_ZERO = 0;
  233. const GLenum GL_ONE = 1;
  234. const GLenum GL_SRC_COLOR = 0x0300;
  235. const GLenum GL_ONE_MINUS_SRC_COLOR = 0x0301;
  236. const GLenum GL_SRC_ALPHA = 0x0302;
  237. const GLenum GL_ONE_MINUS_SRC_ALPHA = 0x0303;
  238. const GLenum GL_DST_ALPHA = 0x0304;
  239. const GLenum GL_ONE_MINUS_DST_ALPHA = 0x0305;
  240. const GLenum GL_DST_COLOR = 0x0306;
  241. const GLenum GL_ONE_MINUS_DST_COLOR = 0x0307;
  242. const GLenum GL_SRC_ALPHA_SATURATE = 0x0308;
  243. const GLenum GL_NONE = 0;
  244. const GLenum GL_FRONT_LEFT = 0x0400;
  245. const GLenum GL_FRONT_RIGHT = 0x0401;
  246. const GLenum GL_BACK_LEFT = 0x0402;
  247. const GLenum GL_BACK_RIGHT = 0x0403;
  248. const GLenum GL_FRONT = 0x0404;
  249. const GLenum GL_BACK = 0x0405;
  250. const GLenum GL_LEFT = 0x0406;
  251. const GLenum GL_RIGHT = 0x0407;
  252. const GLenum GL_FRONT_AND_BACK = 0x0408;
  253. const GLenum GL_NO_ERROR = 0;
  254. const GLenum GL_INVALID_ENUM = 0x0500;
  255. const GLenum GL_INVALID_VALUE = 0x0501;
  256. const GLenum GL_INVALID_OPERATION = 0x0502;
  257. const GLenum GL_OUT_OF_MEMORY = 0x0505;
  258. const GLenum GL_CW = 0x0900;
  259. const GLenum GL_CCW = 0x0901;
  260. const GLenum GL_POINT_SIZE = 0x0B11;
  261. const GLenum GL_POINT_SIZE_RANGE = 0x0B12;
  262. const GLenum GL_POINT_SIZE_GRANULARITY = 0x0B13;
  263. const GLenum GL_LINE_SMOOTH = 0x0B20;
  264. const GLenum GL_LINE_WIDTH = 0x0B21;
  265. const GLenum GL_LINE_WIDTH_RANGE = 0x0B22;
  266. const GLenum GL_LINE_WIDTH_GRANULARITY = 0x0B23;
  267. const GLenum GL_POLYGON_MODE = 0x0B40;
  268. const GLenum GL_POLYGON_SMOOTH = 0x0B41;
  269. const GLenum GL_CULL_FACE = 0x0B44;
  270. const GLenum GL_CULL_FACE_MODE = 0x0B45;
  271. const GLenum GL_FRONT_FACE = 0x0B46;
  272. const GLenum GL_DEPTH_RANGE = 0x0B70;
  273. const GLenum GL_DEPTH_TEST = 0x0B71;
  274. const GLenum GL_DEPTH_WRITEMASK = 0x0B72;
  275. const GLenum GL_DEPTH_CLEAR_VALUE = 0x0B73;
  276. const GLenum GL_DEPTH_FUNC = 0x0B74;
  277. const GLenum GL_STENCIL_TEST = 0x0B90;
  278. const GLenum GL_STENCIL_CLEAR_VALUE = 0x0B91;
  279. const GLenum GL_STENCIL_FUNC = 0x0B92;
  280. const GLenum GL_STENCIL_VALUE_MASK = 0x0B93;
  281. const GLenum GL_STENCIL_FAIL = 0x0B94;
  282. const GLenum GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95;
  283. const GLenum GL_STENCIL_PASS_DEPTH_PASS = 0x0B96;
  284. const GLenum GL_STENCIL_REF = 0x0B97;
  285. const GLenum GL_STENCIL_WRITEMASK = 0x0B98;
  286. const GLenum GL_VIEWPORT = 0x0BA2;
  287. const GLenum GL_DITHER = 0x0BD0;
  288. const GLenum GL_BLEND_DST = 0x0BE0;
  289. const GLenum GL_BLEND_SRC = 0x0BE1;
  290. const GLenum GL_BLEND = 0x0BE2;
  291. const GLenum GL_LOGIC_OP_MODE = 0x0BF0;
  292. const GLenum GL_COLOR_LOGIC_OP = 0x0BF2;
  293. const GLenum GL_DRAW_BUFFER = 0x0C01;
  294. const GLenum GL_READ_BUFFER = 0x0C02;
  295. const GLenum GL_SCISSOR_BOX = 0x0C10;
  296. const GLenum GL_SCISSOR_TEST = 0x0C11;
  297. const GLenum GL_COLOR_CLEAR_VALUE = 0x0C22;
  298. const GLenum GL_COLOR_WRITEMASK = 0x0C23;
  299. const GLenum GL_DOUBLEBUFFER = 0x0C32;
  300. const GLenum GL_STEREO = 0x0C33;
  301. const GLenum GL_LINE_SMOOTH_HINT = 0x0C52;
  302. const GLenum GL_POLYGON_SMOOTH_HINT = 0x0C53;
  303. const GLenum GL_UNPACK_SWAP_BYTES = 0x0CF0;
  304. const GLenum GL_UNPACK_LSB_FIRST = 0x0CF1;
  305. const GLenum GL_UNPACK_ROW_LENGTH = 0x0CF2;
  306. const GLenum GL_UNPACK_SKIP_ROWS = 0x0CF3;
  307. const GLenum GL_UNPACK_SKIP_PIXELS = 0x0CF4;
  308. const GLenum GL_UNPACK_ALIGNMENT = 0x0CF5;
  309. const GLenum GL_PACK_SWAP_BYTES = 0x0D00;
  310. const GLenum GL_PACK_LSB_FIRST = 0x0D01;
  311. const GLenum GL_PACK_ROW_LENGTH = 0x0D02;
  312. const GLenum GL_PACK_SKIP_ROWS = 0x0D03;
  313. const GLenum GL_PACK_SKIP_PIXELS = 0x0D04;
  314. const GLenum GL_PACK_ALIGNMENT = 0x0D05;
  315. const GLenum GL_MAX_TEXTURE_SIZE = 0x0D33;
  316. const GLenum GL_MAX_VIEWPORT_DIMS = 0x0D3A;
  317. const GLenum GL_SUBPIXEL_BITS = 0x0D50;
  318. const GLenum GL_TEXTURE_1D = 0x0DE0;
  319. const GLenum GL_TEXTURE_2D = 0x0DE1;
  320. const GLenum GL_POLYGON_OFFSET_UNITS = 0x2A00;
  321. const GLenum GL_POLYGON_OFFSET_POINT = 0x2A01;
  322. const GLenum GL_POLYGON_OFFSET_LINE = 0x2A02;
  323. const GLenum GL_POLYGON_OFFSET_FILL = 0x8037;
  324. const GLenum GL_POLYGON_OFFSET_FACTOR = 0x8038;
  325. const GLenum GL_TEXTURE_BINDING_1D = 0x8068;
  326. const GLenum GL_TEXTURE_BINDING_2D = 0x8069;
  327. const GLenum GL_TEXTURE_WIDTH = 0x1000;
  328. const GLenum GL_TEXTURE_HEIGHT = 0x1001;
  329. const GLenum GL_TEXTURE_INTERNAL_FORMAT = 0x1003;
  330. const GLenum GL_TEXTURE_BORDER_COLOR = 0x1004;
  331. const GLenum GL_TEXTURE_RED_SIZE = 0x805C;
  332. const GLenum GL_TEXTURE_GREEN_SIZE = 0x805D;
  333. const GLenum GL_TEXTURE_BLUE_SIZE = 0x805E;
  334. const GLenum GL_TEXTURE_ALPHA_SIZE = 0x805F;
  335. const GLenum GL_DONT_CARE = 0x1100;
  336. const GLenum GL_FASTEST = 0x1101;
  337. const GLenum GL_NICEST = 0x1102;
  338. const GLenum GL_BYTE = 0x1400;
  339. const GLenum GL_UNSIGNED_BYTE = 0x1401;
  340. const GLenum GL_SHORT = 0x1402;
  341. const GLenum GL_UNSIGNED_SHORT = 0x1403;
  342. const GLenum GL_INT = 0x1404;
  343. const GLenum GL_UNSIGNED_INT = 0x1405;
  344. const GLenum GL_FLOAT = 0x1406;
  345. const GLenum GL_DOUBLE = 0x140A;
  346. const GLenum GL_STACK_OVERFLOW = 0x0503;
  347. const GLenum GL_STACK_UNDERFLOW = 0x0504;
  348. const GLenum GL_CLEAR = 0x1500;
  349. const GLenum GL_AND = 0x1501;
  350. const GLenum GL_AND_REVERSE = 0x1502;
  351. const GLenum GL_COPY = 0x1503;
  352. const GLenum GL_AND_INVERTED = 0x1504;
  353. const GLenum GL_NOOP = 0x1505;
  354. const GLenum GL_XOR = 0x1506;
  355. const GLenum GL_OR = 0x1507;
  356. const GLenum GL_NOR = 0x1508;
  357. const GLenum GL_EQUIV = 0x1509;
  358. const GLenum GL_INVERT = 0x150A;
  359. const GLenum GL_OR_REVERSE = 0x150B;
  360. const GLenum GL_COPY_INVERTED = 0x150C;
  361. const GLenum GL_OR_INVERTED = 0x150D;
  362. const GLenum GL_NAND = 0x150E;
  363. const GLenum GL_SET = 0x150F;
  364. const GLenum GL_TEXTURE = 0x1702;
  365. const GLenum GL_COLOR = 0x1800;
  366. const GLenum GL_DEPTH = 0x1801;
  367. const GLenum GL_STENCIL = 0x1802;
  368. const GLenum GL_STENCIL_INDEX = 0x1901;
  369. const GLenum GL_DEPTH_COMPONENT = 0x1902;
  370. const GLenum GL_RED = 0x1903;
  371. const GLenum GL_GREEN = 0x1904;
  372. const GLenum GL_BLUE = 0x1905;
  373. const GLenum GL_ALPHA = 0x1906;
  374. const GLenum GL_RGB = 0x1907;
  375. const GLenum GL_RGBA = 0x1908;
  376. const GLenum GL_POINT = 0x1B00;
  377. const GLenum GL_LINE = 0x1B01;
  378. const GLenum GL_FILL = 0x1B02;
  379. const GLenum GL_KEEP = 0x1E00;
  380. const GLenum GL_REPLACE = 0x1E01;
  381. const GLenum GL_INCR = 0x1E02;
  382. const GLenum GL_DECR = 0x1E03;
  383. const GLenum GL_VENDOR = 0x1F00;
  384. const GLenum GL_RENDERER = 0x1F01;
  385. const GLenum GL_VERSION = 0x1F02;
  386. const GLenum GL_EXTENSIONS = 0x1F03;
  387. const GLenum GL_NEAREST = 0x2600;
  388. const GLenum GL_LINEAR = 0x2601;
  389. const GLenum GL_NEAREST_MIPMAP_NEAREST = 0x2700;
  390. const GLenum GL_LINEAR_MIPMAP_NEAREST = 0x2701;
  391. const GLenum GL_NEAREST_MIPMAP_LINEAR = 0x2702;
  392. const GLenum GL_LINEAR_MIPMAP_LINEAR = 0x2703;
  393. const GLenum GL_TEXTURE_MAG_FILTER = 0x2800;
  394. const GLenum GL_TEXTURE_MIN_FILTER = 0x2801;
  395. const GLenum GL_TEXTURE_WRAP_S = 0x2802;
  396. const GLenum GL_TEXTURE_WRAP_T = 0x2803;
  397. const GLenum GL_PROXY_TEXTURE_1D = 0x8063;
  398. const GLenum GL_PROXY_TEXTURE_2D = 0x8064;
  399. const GLenum GL_REPEAT = 0x2901;
  400. const GLenum GL_R3_G3_B2 = 0x2A10;
  401. const GLenum GL_RGB4 = 0x804F;
  402. const GLenum GL_RGB5 = 0x8050;
  403. const GLenum GL_RGB8 = 0x8051;
  404. const GLenum GL_RGB10 = 0x8052;
  405. const GLenum GL_RGB12 = 0x8053;
  406. const GLenum GL_RGB16 = 0x8054;
  407. const GLenum GL_RGBA2 = 0x8055;
  408. const GLenum GL_RGBA4 = 0x8056;
  409. const GLenum GL_RGB5_A1 = 0x8057;
  410. const GLenum GL_RGBA8 = 0x8058;
  411. const GLenum GL_RGB10_A2 = 0x8059;
  412. const GLenum GL_RGBA12 = 0x805A;
  413. const GLenum GL_RGBA16 = 0x805B;
  414. const GLenum GL_VERTEX_ARRAY = 0x8074;
  415. const GLenum GL_UNSIGNED_BYTE_3_3_2 = 0x8032;
  416. const GLenum GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033;
  417. const GLenum GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034;
  418. const GLenum GL_UNSIGNED_INT_8_8_8_8 = 0x8035;
  419. const GLenum GL_UNSIGNED_INT_10_10_10_2 = 0x8036;
  420. const GLenum GL_TEXTURE_BINDING_3D = 0x806A;
  421. const GLenum GL_PACK_SKIP_IMAGES = 0x806B;
  422. const GLenum GL_PACK_IMAGE_HEIGHT = 0x806C;
  423. const GLenum GL_UNPACK_SKIP_IMAGES = 0x806D;
  424. const GLenum GL_UNPACK_IMAGE_HEIGHT = 0x806E;
  425. const GLenum GL_TEXTURE_3D = 0x806F;
  426. const GLenum GL_PROXY_TEXTURE_3D = 0x8070;
  427. const GLenum GL_TEXTURE_DEPTH = 0x8071;
  428. const GLenum GL_TEXTURE_WRAP_R = 0x8072;
  429. const GLenum GL_MAX_3D_TEXTURE_SIZE = 0x8073;
  430. const GLenum GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362;
  431. const GLenum GL_UNSIGNED_SHORT_5_6_5 = 0x8363;
  432. const GLenum GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364;
  433. const GLenum GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365;
  434. const GLenum GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366;
  435. const GLenum GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367;
  436. const GLenum GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368;
  437. const GLenum GL_BGR = 0x80E0;
  438. const GLenum GL_BGRA = 0x80E1;
  439. const GLenum GL_MAX_ELEMENTS_VERTICES = 0x80E8;
  440. const GLenum GL_MAX_ELEMENTS_INDICES = 0x80E9;
  441. const GLenum GL_CLAMP_TO_EDGE = 0x812F;
  442. const GLenum GL_TEXTURE_MIN_LOD = 0x813A;
  443. const GLenum GL_TEXTURE_MAX_LOD = 0x813B;
  444. const GLenum GL_TEXTURE_BASE_LEVEL = 0x813C;
  445. const GLenum GL_TEXTURE_MAX_LEVEL = 0x813D;
  446. const GLenum GL_SMOOTH_POINT_SIZE_RANGE = 0x0B12;
  447. const GLenum GL_SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13;
  448. const GLenum GL_SMOOTH_LINE_WIDTH_RANGE = 0x0B22;
  449. const GLenum GL_SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23;
  450. const GLenum GL_ALIASED_LINE_WIDTH_RANGE = 0x846E;
  451. const GLenum GL_TEXTURE0 = 0x84C0;
  452. const GLenum GL_TEXTURE1 = 0x84C1;
  453. const GLenum GL_TEXTURE2 = 0x84C2;
  454. const GLenum GL_TEXTURE3 = 0x84C3;
  455. const GLenum GL_TEXTURE4 = 0x84C4;
  456. const GLenum GL_TEXTURE5 = 0x84C5;
  457. const GLenum GL_TEXTURE6 = 0x84C6;
  458. const GLenum GL_TEXTURE7 = 0x84C7;
  459. const GLenum GL_TEXTURE8 = 0x84C8;
  460. const GLenum GL_TEXTURE9 = 0x84C9;
  461. const GLenum GL_TEXTURE10 = 0x84CA;
  462. const GLenum GL_TEXTURE11 = 0x84CB;
  463. const GLenum GL_TEXTURE12 = 0x84CC;
  464. const GLenum GL_TEXTURE13 = 0x84CD;
  465. const GLenum GL_TEXTURE14 = 0x84CE;
  466. const GLenum GL_TEXTURE15 = 0x84CF;
  467. const GLenum GL_TEXTURE16 = 0x84D0;
  468. const GLenum GL_TEXTURE17 = 0x84D1;
  469. const GLenum GL_TEXTURE18 = 0x84D2;
  470. const GLenum GL_TEXTURE19 = 0x84D3;
  471. const GLenum GL_TEXTURE20 = 0x84D4;
  472. const GLenum GL_TEXTURE21 = 0x84D5;
  473. const GLenum GL_TEXTURE22 = 0x84D6;
  474. const GLenum GL_TEXTURE23 = 0x84D7;
  475. const GLenum GL_TEXTURE24 = 0x84D8;
  476. const GLenum GL_TEXTURE25 = 0x84D9;
  477. const GLenum GL_TEXTURE26 = 0x84DA;
  478. const GLenum GL_TEXTURE27 = 0x84DB;
  479. const GLenum GL_TEXTURE28 = 0x84DC;
  480. const GLenum GL_TEXTURE29 = 0x84DD;
  481. const GLenum GL_TEXTURE30 = 0x84DE;
  482. const GLenum GL_TEXTURE31 = 0x84DF;
  483. const GLenum GL_ACTIVE_TEXTURE = 0x84E0;
  484. const GLenum GL_MULTISAMPLE = 0x809D;
  485. const GLenum GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E;
  486. const GLenum GL_SAMPLE_ALPHA_TO_ONE = 0x809F;
  487. const GLenum GL_SAMPLE_COVERAGE = 0x80A0;
  488. const GLenum GL_SAMPLE_BUFFERS = 0x80A8;
  489. const GLenum GL_SAMPLES = 0x80A9;
  490. const GLenum GL_SAMPLE_COVERAGE_VALUE = 0x80AA;
  491. const GLenum GL_SAMPLE_COVERAGE_INVERT = 0x80AB;
  492. const GLenum GL_TEXTURE_CUBE_MAP = 0x8513;
  493. const GLenum GL_TEXTURE_BINDING_CUBE_MAP = 0x8514;
  494. const GLenum GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515;
  495. const GLenum GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516;
  496. const GLenum GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517;
  497. const GLenum GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518;
  498. const GLenum GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519;
  499. const GLenum GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A;
  500. const GLenum GL_PROXY_TEXTURE_CUBE_MAP = 0x851B;
  501. const GLenum GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C;
  502. const GLenum GL_COMPRESSED_RGB = 0x84ED;
  503. const GLenum GL_COMPRESSED_RGBA = 0x84EE;
  504. const GLenum GL_TEXTURE_COMPRESSION_HINT = 0x84EF;
  505. const GLenum GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0;
  506. const GLenum GL_TEXTURE_COMPRESSED = 0x86A1;
  507. const GLenum GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2;
  508. const GLenum GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3;
  509. const GLenum GL_CLAMP_TO_BORDER = 0x812D;
  510. const GLenum GL_BLEND_DST_RGB = 0x80C8;
  511. const GLenum GL_BLEND_SRC_RGB = 0x80C9;
  512. const GLenum GL_BLEND_DST_ALPHA = 0x80CA;
  513. const GLenum GL_BLEND_SRC_ALPHA = 0x80CB;
  514. const GLenum GL_POINT_FADE_THRESHOLD_SIZE = 0x8128;
  515. const GLenum GL_DEPTH_COMPONENT16 = 0x81A5;
  516. const GLenum GL_DEPTH_COMPONENT24 = 0x81A6;
  517. const GLenum GL_DEPTH_COMPONENT32 = 0x81A7;
  518. const GLenum GL_MIRRORED_REPEAT = 0x8370;
  519. const GLenum GL_MAX_TEXTURE_LOD_BIAS = 0x84FD;
  520. const GLenum GL_TEXTURE_LOD_BIAS = 0x8501;
  521. const GLenum GL_INCR_WRAP = 0x8507;
  522. const GLenum GL_DECR_WRAP = 0x8508;
  523. const GLenum GL_TEXTURE_DEPTH_SIZE = 0x884A;
  524. const GLenum GL_TEXTURE_COMPARE_MODE = 0x884C;
  525. const GLenum GL_TEXTURE_COMPARE_FUNC = 0x884D;
  526. const GLenum GL_FUNC_ADD = 0x8006;
  527. const GLenum GL_FUNC_SUBTRACT = 0x800A;
  528. const GLenum GL_FUNC_REVERSE_SUBTRACT = 0x800B;
  529. const GLenum GL_MIN = 0x8007;
  530. const GLenum GL_MAX = 0x8008;
  531. const GLenum GL_CONSTANT_COLOR = 0x8001;
  532. const GLenum GL_ONE_MINUS_CONSTANT_COLOR = 0x8002;
  533. const GLenum GL_CONSTANT_ALPHA = 0x8003;
  534. const GLenum GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004;
  535. const GLenum GL_BUFFER_SIZE = 0x8764;
  536. const GLenum GL_BUFFER_USAGE = 0x8765;
  537. const GLenum GL_QUERY_COUNTER_BITS = 0x8864;
  538. const GLenum GL_CURRENT_QUERY = 0x8865;
  539. const GLenum GL_QUERY_RESULT = 0x8866;
  540. const GLenum GL_QUERY_RESULT_AVAILABLE = 0x8867;
  541. const GLenum GL_ARRAY_BUFFER = 0x8892;
  542. const GLenum GL_ELEMENT_ARRAY_BUFFER = 0x8893;
  543. const GLenum GL_ARRAY_BUFFER_BINDING = 0x8894;
  544. const GLenum GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895;
  545. const GLenum GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F;
  546. const GLenum GL_READ_ONLY = 0x88B8;
  547. const GLenum GL_WRITE_ONLY = 0x88B9;
  548. const GLenum GL_READ_WRITE = 0x88BA;
  549. const GLenum GL_BUFFER_ACCESS = 0x88BB;
  550. const GLenum GL_BUFFER_MAPPED = 0x88BC;
  551. const GLenum GL_BUFFER_MAP_POINTER = 0x88BD;
  552. const GLenum GL_STREAM_DRAW = 0x88E0;
  553. const GLenum GL_STREAM_READ = 0x88E1;
  554. const GLenum GL_STREAM_COPY = 0x88E2;
  555. const GLenum GL_STATIC_DRAW = 0x88E4;
  556. const GLenum GL_STATIC_READ = 0x88E5;
  557. const GLenum GL_STATIC_COPY = 0x88E6;
  558. const GLenum GL_DYNAMIC_DRAW = 0x88E8;
  559. const GLenum GL_DYNAMIC_READ = 0x88E9;
  560. const GLenum GL_DYNAMIC_COPY = 0x88EA;
  561. const GLenum GL_SAMPLES_PASSED = 0x8914;
  562. const GLenum GL_SRC1_ALPHA = 0x8589;
  563. const GLenum GL_BLEND_EQUATION_RGB = 0x8009;
  564. const GLenum GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622;
  565. const GLenum GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623;
  566. const GLenum GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624;
  567. const GLenum GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625;
  568. const GLenum GL_CURRENT_VERTEX_ATTRIB = 0x8626;
  569. const GLenum GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642;
  570. const GLenum GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645;
  571. const GLenum GL_STENCIL_BACK_FUNC = 0x8800;
  572. const GLenum GL_STENCIL_BACK_FAIL = 0x8801;
  573. const GLenum GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802;
  574. const GLenum GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803;
  575. const GLenum GL_MAX_DRAW_BUFFERS = 0x8824;
  576. const GLenum GL_DRAW_BUFFER0 = 0x8825;
  577. const GLenum GL_DRAW_BUFFER1 = 0x8826;
  578. const GLenum GL_DRAW_BUFFER2 = 0x8827;
  579. const GLenum GL_DRAW_BUFFER3 = 0x8828;
  580. const GLenum GL_DRAW_BUFFER4 = 0x8829;
  581. const GLenum GL_DRAW_BUFFER5 = 0x882A;
  582. const GLenum GL_DRAW_BUFFER6 = 0x882B;
  583. const GLenum GL_DRAW_BUFFER7 = 0x882C;
  584. const GLenum GL_DRAW_BUFFER8 = 0x882D;
  585. const GLenum GL_DRAW_BUFFER9 = 0x882E;
  586. const GLenum GL_DRAW_BUFFER10 = 0x882F;
  587. const GLenum GL_DRAW_BUFFER11 = 0x8830;
  588. const GLenum GL_DRAW_BUFFER12 = 0x8831;
  589. const GLenum GL_DRAW_BUFFER13 = 0x8832;
  590. const GLenum GL_DRAW_BUFFER14 = 0x8833;
  591. const GLenum GL_DRAW_BUFFER15 = 0x8834;
  592. const GLenum GL_BLEND_EQUATION_ALPHA = 0x883D;
  593. const GLenum GL_MAX_VERTEX_ATTRIBS = 0x8869;
  594. const GLenum GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A;
  595. const GLenum GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872;
  596. const GLenum GL_FRAGMENT_SHADER = 0x8B30;
  597. const GLenum GL_VERTEX_SHADER = 0x8B31;
  598. const GLenum GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49;
  599. const GLenum GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A;
  600. const GLenum GL_MAX_VARYING_FLOATS = 0x8B4B;
  601. const GLenum GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C;
  602. const GLenum GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D;
  603. const GLenum GL_SHADER_TYPE = 0x8B4F;
  604. const GLenum GL_FLOAT_VEC2 = 0x8B50;
  605. const GLenum GL_FLOAT_VEC3 = 0x8B51;
  606. const GLenum GL_FLOAT_VEC4 = 0x8B52;
  607. const GLenum GL_INT_VEC2 = 0x8B53;
  608. const GLenum GL_INT_VEC3 = 0x8B54;
  609. const GLenum GL_INT_VEC4 = 0x8B55;
  610. const GLenum GL_BOOL = 0x8B56;
  611. const GLenum GL_BOOL_VEC2 = 0x8B57;
  612. const GLenum GL_BOOL_VEC3 = 0x8B58;
  613. const GLenum GL_BOOL_VEC4 = 0x8B59;
  614. const GLenum GL_FLOAT_MAT2 = 0x8B5A;
  615. const GLenum GL_FLOAT_MAT3 = 0x8B5B;
  616. const GLenum GL_FLOAT_MAT4 = 0x8B5C;
  617. const GLenum GL_SAMPLER_1D = 0x8B5D;
  618. const GLenum GL_SAMPLER_2D = 0x8B5E;
  619. const GLenum GL_SAMPLER_3D = 0x8B5F;
  620. const GLenum GL_SAMPLER_CUBE = 0x8B60;
  621. const GLenum GL_SAMPLER_1D_SHADOW = 0x8B61;
  622. const GLenum GL_SAMPLER_2D_SHADOW = 0x8B62;
  623. const GLenum GL_DELETE_STATUS = 0x8B80;
  624. const GLenum GL_COMPILE_STATUS = 0x8B81;
  625. const GLenum GL_LINK_STATUS = 0x8B82;
  626. const GLenum GL_VALIDATE_STATUS = 0x8B83;
  627. const GLenum GL_INFO_LOG_LENGTH = 0x8B84;
  628. const GLenum GL_ATTACHED_SHADERS = 0x8B85;
  629. const GLenum GL_ACTIVE_UNIFORMS = 0x8B86;
  630. const GLenum GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87;
  631. const GLenum GL_SHADER_SOURCE_LENGTH = 0x8B88;
  632. const GLenum GL_ACTIVE_ATTRIBUTES = 0x8B89;
  633. const GLenum GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A;
  634. const GLenum GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B;
  635. const GLenum GL_SHADING_LANGUAGE_VERSION = 0x8B8C;
  636. const GLenum GL_CURRENT_PROGRAM = 0x8B8D;
  637. const GLenum GL_POINT_SPRITE_COORD_ORIGIN = 0x8CA0;
  638. const GLenum GL_LOWER_LEFT = 0x8CA1;
  639. const GLenum GL_UPPER_LEFT = 0x8CA2;
  640. const GLenum GL_STENCIL_BACK_REF = 0x8CA3;
  641. const GLenum GL_STENCIL_BACK_VALUE_MASK = 0x8CA4;
  642. const GLenum GL_STENCIL_BACK_WRITEMASK = 0x8CA5;
  643. const GLenum GL_PIXEL_PACK_BUFFER = 0x88EB;
  644. const GLenum GL_PIXEL_UNPACK_BUFFER = 0x88EC;
  645. const GLenum GL_PIXEL_PACK_BUFFER_BINDING = 0x88ED;
  646. const GLenum GL_PIXEL_UNPACK_BUFFER_BINDING = 0x88EF;
  647. const GLenum GL_FLOAT_MAT2x3 = 0x8B65;
  648. const GLenum GL_FLOAT_MAT2x4 = 0x8B66;
  649. const GLenum GL_FLOAT_MAT3x2 = 0x8B67;
  650. const GLenum GL_FLOAT_MAT3x4 = 0x8B68;
  651. const GLenum GL_FLOAT_MAT4x2 = 0x8B69;
  652. const GLenum GL_FLOAT_MAT4x3 = 0x8B6A;
  653. const GLenum GL_SRGB = 0x8C40;
  654. const GLenum GL_SRGB8 = 0x8C41;
  655. const GLenum GL_SRGB_ALPHA = 0x8C42;
  656. const GLenum GL_SRGB8_ALPHA8 = 0x8C43;
  657. const GLenum GL_COMPRESSED_SRGB = 0x8C48;
  658. const GLenum GL_COMPRESSED_SRGB_ALPHA = 0x8C49;
  659. const GLenum GL_COMPARE_REF_TO_TEXTURE = 0x884E;
  660. const GLenum GL_CLIP_DISTANCE0 = 0x3000;
  661. const GLenum GL_CLIP_DISTANCE1 = 0x3001;
  662. const GLenum GL_CLIP_DISTANCE2 = 0x3002;
  663. const GLenum GL_CLIP_DISTANCE3 = 0x3003;
  664. const GLenum GL_CLIP_DISTANCE4 = 0x3004;
  665. const GLenum GL_CLIP_DISTANCE5 = 0x3005;
  666. const GLenum GL_CLIP_DISTANCE6 = 0x3006;
  667. const GLenum GL_CLIP_DISTANCE7 = 0x3007;
  668. const GLenum GL_MAX_CLIP_DISTANCES = 0x0D32;
  669. const GLenum GL_MAJOR_VERSION = 0x821B;
  670. const GLenum GL_MINOR_VERSION = 0x821C;
  671. const GLenum GL_NUM_EXTENSIONS = 0x821D;
  672. const GLenum GL_CONTEXT_FLAGS = 0x821E;
  673. const GLenum GL_COMPRESSED_RED = 0x8225;
  674. const GLenum GL_COMPRESSED_RG = 0x8226;
  675. const GLenum GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x00000001;
  676. const GLenum GL_RGBA32F = 0x8814;
  677. const GLenum GL_RGB32F = 0x8815;
  678. const GLenum GL_RGBA16F = 0x881A;
  679. const GLenum GL_RGB16F = 0x881B;
  680. const GLenum GL_VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD;
  681. const GLenum GL_MAX_ARRAY_TEXTURE_LAYERS = 0x88FF;
  682. const GLenum GL_MIN_PROGRAM_TEXEL_OFFSET = 0x8904;
  683. const GLenum GL_MAX_PROGRAM_TEXEL_OFFSET = 0x8905;
  684. const GLenum GL_CLAMP_READ_COLOR = 0x891C;
  685. const GLenum GL_FIXED_ONLY = 0x891D;
  686. const GLenum GL_MAX_VARYING_COMPONENTS = 0x8B4B;
  687. const GLenum GL_TEXTURE_1D_ARRAY = 0x8C18;
  688. const GLenum GL_PROXY_TEXTURE_1D_ARRAY = 0x8C19;
  689. const GLenum GL_TEXTURE_2D_ARRAY = 0x8C1A;
  690. const GLenum GL_PROXY_TEXTURE_2D_ARRAY = 0x8C1B;
  691. const GLenum GL_TEXTURE_BINDING_1D_ARRAY = 0x8C1C;
  692. const GLenum GL_TEXTURE_BINDING_2D_ARRAY = 0x8C1D;
  693. const GLenum GL_R11F_G11F_B10F = 0x8C3A;
  694. const GLenum GL_UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B;
  695. const GLenum GL_RGB9_E5 = 0x8C3D;
  696. const GLenum GL_UNSIGNED_INT_5_9_9_9_REV = 0x8C3E;
  697. const GLenum GL_TEXTURE_SHARED_SIZE = 0x8C3F;
  698. const GLenum GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76;
  699. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F;
  700. const GLenum GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80;
  701. const GLenum GL_TRANSFORM_FEEDBACK_VARYINGS = 0x8C83;
  702. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84;
  703. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85;
  704. const GLenum GL_PRIMITIVES_GENERATED = 0x8C87;
  705. const GLenum GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88;
  706. const GLenum GL_RASTERIZER_DISCARD = 0x8C89;
  707. const GLenum GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A;
  708. const GLenum GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B;
  709. const GLenum GL_INTERLEAVED_ATTRIBS = 0x8C8C;
  710. const GLenum GL_SEPARATE_ATTRIBS = 0x8C8D;
  711. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E;
  712. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F;
  713. const GLenum GL_RGBA32UI = 0x8D70;
  714. const GLenum GL_RGB32UI = 0x8D71;
  715. const GLenum GL_RGBA16UI = 0x8D76;
  716. const GLenum GL_RGB16UI = 0x8D77;
  717. const GLenum GL_RGBA8UI = 0x8D7C;
  718. const GLenum GL_RGB8UI = 0x8D7D;
  719. const GLenum GL_RGBA32I = 0x8D82;
  720. const GLenum GL_RGB32I = 0x8D83;
  721. const GLenum GL_RGBA16I = 0x8D88;
  722. const GLenum GL_RGB16I = 0x8D89;
  723. const GLenum GL_RGBA8I = 0x8D8E;
  724. const GLenum GL_RGB8I = 0x8D8F;
  725. const GLenum GL_RED_INTEGER = 0x8D94;
  726. const GLenum GL_GREEN_INTEGER = 0x8D95;
  727. const GLenum GL_BLUE_INTEGER = 0x8D96;
  728. const GLenum GL_RGB_INTEGER = 0x8D98;
  729. const GLenum GL_RGBA_INTEGER = 0x8D99;
  730. const GLenum GL_BGR_INTEGER = 0x8D9A;
  731. const GLenum GL_BGRA_INTEGER = 0x8D9B;
  732. const GLenum GL_SAMPLER_1D_ARRAY = 0x8DC0;
  733. const GLenum GL_SAMPLER_2D_ARRAY = 0x8DC1;
  734. const GLenum GL_SAMPLER_1D_ARRAY_SHADOW = 0x8DC3;
  735. const GLenum GL_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4;
  736. const GLenum GL_SAMPLER_CUBE_SHADOW = 0x8DC5;
  737. const GLenum GL_UNSIGNED_INT_VEC2 = 0x8DC6;
  738. const GLenum GL_UNSIGNED_INT_VEC3 = 0x8DC7;
  739. const GLenum GL_UNSIGNED_INT_VEC4 = 0x8DC8;
  740. const GLenum GL_INT_SAMPLER_1D = 0x8DC9;
  741. const GLenum GL_INT_SAMPLER_2D = 0x8DCA;
  742. const GLenum GL_INT_SAMPLER_3D = 0x8DCB;
  743. const GLenum GL_INT_SAMPLER_CUBE = 0x8DCC;
  744. const GLenum GL_INT_SAMPLER_1D_ARRAY = 0x8DCE;
  745. const GLenum GL_INT_SAMPLER_2D_ARRAY = 0x8DCF;
  746. const GLenum GL_UNSIGNED_INT_SAMPLER_1D = 0x8DD1;
  747. const GLenum GL_UNSIGNED_INT_SAMPLER_2D = 0x8DD2;
  748. const GLenum GL_UNSIGNED_INT_SAMPLER_3D = 0x8DD3;
  749. const GLenum GL_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4;
  750. const GLenum GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6;
  751. const GLenum GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7;
  752. const GLenum GL_QUERY_WAIT = 0x8E13;
  753. const GLenum GL_QUERY_NO_WAIT = 0x8E14;
  754. const GLenum GL_QUERY_BY_REGION_WAIT = 0x8E15;
  755. const GLenum GL_QUERY_BY_REGION_NO_WAIT = 0x8E16;
  756. const GLenum GL_BUFFER_ACCESS_FLAGS = 0x911F;
  757. const GLenum GL_BUFFER_MAP_LENGTH = 0x9120;
  758. const GLenum GL_BUFFER_MAP_OFFSET = 0x9121;
  759. const GLenum GL_DEPTH_COMPONENT32F = 0x8CAC;
  760. const GLenum GL_DEPTH32F_STENCIL8 = 0x8CAD;
  761. const GLenum GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD;
  762. const GLenum GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506;
  763. const GLenum GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210;
  764. const GLenum GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211;
  765. const GLenum GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212;
  766. const GLenum GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213;
  767. const GLenum GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214;
  768. const GLenum GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215;
  769. const GLenum GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216;
  770. const GLenum GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217;
  771. const GLenum GL_FRAMEBUFFER_DEFAULT = 0x8218;
  772. const GLenum GL_FRAMEBUFFER_UNDEFINED = 0x8219;
  773. const GLenum GL_DEPTH_STENCIL_ATTACHMENT = 0x821A;
  774. const GLenum GL_MAX_RENDERBUFFER_SIZE = 0x84E8;
  775. const GLenum GL_DEPTH_STENCIL = 0x84F9;
  776. const GLenum GL_UNSIGNED_INT_24_8 = 0x84FA;
  777. const GLenum GL_DEPTH24_STENCIL8 = 0x88F0;
  778. const GLenum GL_TEXTURE_STENCIL_SIZE = 0x88F1;
  779. const GLenum GL_TEXTURE_RED_TYPE = 0x8C10;
  780. const GLenum GL_TEXTURE_GREEN_TYPE = 0x8C11;
  781. const GLenum GL_TEXTURE_BLUE_TYPE = 0x8C12;
  782. const GLenum GL_TEXTURE_ALPHA_TYPE = 0x8C13;
  783. const GLenum GL_TEXTURE_DEPTH_TYPE = 0x8C16;
  784. const GLenum GL_UNSIGNED_NORMALIZED = 0x8C17;
  785. const GLenum GL_FRAMEBUFFER_BINDING = 0x8CA6;
  786. const GLenum GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6;
  787. const GLenum GL_RENDERBUFFER_BINDING = 0x8CA7;
  788. const GLenum GL_READ_FRAMEBUFFER = 0x8CA8;
  789. const GLenum GL_DRAW_FRAMEBUFFER = 0x8CA9;
  790. const GLenum GL_READ_FRAMEBUFFER_BINDING = 0x8CAA;
  791. const GLenum GL_RENDERBUFFER_SAMPLES = 0x8CAB;
  792. const GLenum GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0;
  793. const GLenum GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1;
  794. const GLenum GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2;
  795. const GLenum GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3;
  796. const GLenum GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4;
  797. const GLenum GL_FRAMEBUFFER_COMPLETE = 0x8CD5;
  798. const GLenum GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6;
  799. const GLenum GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7;
  800. const GLenum GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB;
  801. const GLenum GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC;
  802. const GLenum GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD;
  803. const GLenum GL_MAX_COLOR_ATTACHMENTS = 0x8CDF;
  804. const GLenum GL_COLOR_ATTACHMENT0 = 0x8CE0;
  805. const GLenum GL_COLOR_ATTACHMENT1 = 0x8CE1;
  806. const GLenum GL_COLOR_ATTACHMENT2 = 0x8CE2;
  807. const GLenum GL_COLOR_ATTACHMENT3 = 0x8CE3;
  808. const GLenum GL_COLOR_ATTACHMENT4 = 0x8CE4;
  809. const GLenum GL_COLOR_ATTACHMENT5 = 0x8CE5;
  810. const GLenum GL_COLOR_ATTACHMENT6 = 0x8CE6;
  811. const GLenum GL_COLOR_ATTACHMENT7 = 0x8CE7;
  812. const GLenum GL_COLOR_ATTACHMENT8 = 0x8CE8;
  813. const GLenum GL_COLOR_ATTACHMENT9 = 0x8CE9;
  814. const GLenum GL_COLOR_ATTACHMENT10 = 0x8CEA;
  815. const GLenum GL_COLOR_ATTACHMENT11 = 0x8CEB;
  816. const GLenum GL_COLOR_ATTACHMENT12 = 0x8CEC;
  817. const GLenum GL_COLOR_ATTACHMENT13 = 0x8CED;
  818. const GLenum GL_COLOR_ATTACHMENT14 = 0x8CEE;
  819. const GLenum GL_COLOR_ATTACHMENT15 = 0x8CEF;
  820. const GLenum GL_DEPTH_ATTACHMENT = 0x8D00;
  821. const GLenum GL_STENCIL_ATTACHMENT = 0x8D20;
  822. const GLenum GL_FRAMEBUFFER = 0x8D40;
  823. const GLenum GL_RENDERBUFFER = 0x8D41;
  824. const GLenum GL_RENDERBUFFER_WIDTH = 0x8D42;
  825. const GLenum GL_RENDERBUFFER_HEIGHT = 0x8D43;
  826. const GLenum GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44;
  827. const GLenum GL_STENCIL_INDEX1 = 0x8D46;
  828. const GLenum GL_STENCIL_INDEX4 = 0x8D47;
  829. const GLenum GL_STENCIL_INDEX8 = 0x8D48;
  830. const GLenum GL_STENCIL_INDEX16 = 0x8D49;
  831. const GLenum GL_RENDERBUFFER_RED_SIZE = 0x8D50;
  832. const GLenum GL_RENDERBUFFER_GREEN_SIZE = 0x8D51;
  833. const GLenum GL_RENDERBUFFER_BLUE_SIZE = 0x8D52;
  834. const GLenum GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53;
  835. const GLenum GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54;
  836. const GLenum GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55;
  837. const GLenum GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56;
  838. const GLenum GL_MAX_SAMPLES = 0x8D57;
  839. const GLenum GL_FRAMEBUFFER_SRGB = 0x8DB9;
  840. const GLenum GL_HALF_FLOAT = 0x140B;
  841. const GLenum GL_MAP_READ_BIT = 0x0001;
  842. const GLenum GL_MAP_WRITE_BIT = 0x0002;
  843. const GLenum GL_MAP_INVALIDATE_RANGE_BIT = 0x0004;
  844. const GLenum GL_MAP_INVALIDATE_BUFFER_BIT = 0x0008;
  845. const GLenum GL_MAP_FLUSH_EXPLICIT_BIT = 0x0010;
  846. const GLenum GL_MAP_UNSYNCHRONIZED_BIT = 0x0020;
  847. const GLenum GL_COMPRESSED_RED_RGTC1 = 0x8DBB;
  848. const GLenum GL_COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC;
  849. const GLenum GL_COMPRESSED_RG_RGTC2 = 0x8DBD;
  850. const GLenum GL_COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE;
  851. const GLenum GL_RG = 0x8227;
  852. const GLenum GL_RG_INTEGER = 0x8228;
  853. const GLenum GL_R8 = 0x8229;
  854. const GLenum GL_R16 = 0x822A;
  855. const GLenum GL_RG8 = 0x822B;
  856. const GLenum GL_RG16 = 0x822C;
  857. const GLenum GL_R16F = 0x822D;
  858. const GLenum GL_R32F = 0x822E;
  859. const GLenum GL_RG16F = 0x822F;
  860. const GLenum GL_RG32F = 0x8230;
  861. const GLenum GL_R8I = 0x8231;
  862. const GLenum GL_R8UI = 0x8232;
  863. const GLenum GL_R16I = 0x8233;
  864. const GLenum GL_R16UI = 0x8234;
  865. const GLenum GL_R32I = 0x8235;
  866. const GLenum GL_R32UI = 0x8236;
  867. const GLenum GL_RG8I = 0x8237;
  868. const GLenum GL_RG8UI = 0x8238;
  869. const GLenum GL_RG16I = 0x8239;
  870. const GLenum GL_RG16UI = 0x823A;
  871. const GLenum GL_RG32I = 0x823B;
  872. const GLenum GL_RG32UI = 0x823C;
  873. const GLenum GL_VERTEX_ARRAY_BINDING = 0x85B5;
  874. const GLenum GL_SAMPLER_2D_RECT = 0x8B63;
  875. const GLenum GL_SAMPLER_2D_RECT_SHADOW = 0x8B64;
  876. const GLenum GL_SAMPLER_BUFFER = 0x8DC2;
  877. const GLenum GL_INT_SAMPLER_2D_RECT = 0x8DCD;
  878. const GLenum GL_INT_SAMPLER_BUFFER = 0x8DD0;
  879. const GLenum GL_UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5;
  880. const GLenum GL_UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8;
  881. const GLenum GL_TEXTURE_BUFFER = 0x8C2A;
  882. const GLenum GL_MAX_TEXTURE_BUFFER_SIZE = 0x8C2B;
  883. const GLenum GL_TEXTURE_BINDING_BUFFER = 0x8C2C;
  884. const GLenum GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D;
  885. const GLenum GL_TEXTURE_RECTANGLE = 0x84F5;
  886. const GLenum GL_TEXTURE_BINDING_RECTANGLE = 0x84F6;
  887. const GLenum GL_PROXY_TEXTURE_RECTANGLE = 0x84F7;
  888. const GLenum GL_MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8;
  889. const GLenum GL_R8_SNORM = 0x8F94;
  890. const GLenum GL_RG8_SNORM = 0x8F95;
  891. const GLenum GL_RGB8_SNORM = 0x8F96;
  892. const GLenum GL_RGBA8_SNORM = 0x8F97;
  893. const GLenum GL_R16_SNORM = 0x8F98;
  894. const GLenum GL_RG16_SNORM = 0x8F99;
  895. const GLenum GL_RGB16_SNORM = 0x8F9A;
  896. const GLenum GL_RGBA16_SNORM = 0x8F9B;
  897. const GLenum GL_SIGNED_NORMALIZED = 0x8F9C;
  898. const GLenum GL_PRIMITIVE_RESTART = 0x8F9D;
  899. const GLenum GL_PRIMITIVE_RESTART_INDEX = 0x8F9E;
  900. const GLenum GL_COPY_READ_BUFFER = 0x8F36;
  901. const GLenum GL_COPY_WRITE_BUFFER = 0x8F37;
  902. const GLenum GL_UNIFORM_BUFFER = 0x8A11;
  903. const GLenum GL_UNIFORM_BUFFER_BINDING = 0x8A28;
  904. const GLenum GL_UNIFORM_BUFFER_START = 0x8A29;
  905. const GLenum GL_UNIFORM_BUFFER_SIZE = 0x8A2A;
  906. const GLenum GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B;
  907. const GLenum GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C;
  908. const GLenum GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D;
  909. const GLenum GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E;
  910. const GLenum GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F;
  911. const GLenum GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30;
  912. const GLenum GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31;
  913. const GLenum GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32;
  914. const GLenum GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33;
  915. const GLenum GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34;
  916. const GLenum GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35;
  917. const GLenum GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36;
  918. const GLenum GL_UNIFORM_TYPE = 0x8A37;
  919. const GLenum GL_UNIFORM_SIZE = 0x8A38;
  920. const GLenum GL_UNIFORM_NAME_LENGTH = 0x8A39;
  921. const GLenum GL_UNIFORM_BLOCK_INDEX = 0x8A3A;
  922. const GLenum GL_UNIFORM_OFFSET = 0x8A3B;
  923. const GLenum GL_UNIFORM_ARRAY_STRIDE = 0x8A3C;
  924. const GLenum GL_UNIFORM_MATRIX_STRIDE = 0x8A3D;
  925. const GLenum GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E;
  926. const GLenum GL_UNIFORM_BLOCK_BINDING = 0x8A3F;
  927. const GLenum GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40;
  928. const GLenum GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41;
  929. const GLenum GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42;
  930. const GLenum GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43;
  931. const GLenum GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44;
  932. const GLenum GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45;
  933. const GLenum GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46;
  934. const GLenum GL_INVALID_INDEX = 0xFFFFFFFFu;
  935. const GLenum GL_CONTEXT_CORE_PROFILE_BIT = 0x00000001;
  936. const GLenum GL_CONTEXT_COMPATIBILITY_PROFILE_BIT = 0x00000002;
  937. const GLenum GL_LINES_ADJACENCY = 0x000A;
  938. const GLenum GL_LINE_STRIP_ADJACENCY = 0x000B;
  939. const GLenum GL_TRIANGLES_ADJACENCY = 0x000C;
  940. const GLenum GL_TRIANGLE_STRIP_ADJACENCY = 0x000D;
  941. const GLenum GL_PROGRAM_POINT_SIZE = 0x8642;
  942. const GLenum GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29;
  943. const GLenum GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7;
  944. const GLenum GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8;
  945. const GLenum GL_GEOMETRY_SHADER = 0x8DD9;
  946. const GLenum GL_GEOMETRY_VERTICES_OUT = 0x8916;
  947. const GLenum GL_GEOMETRY_INPUT_TYPE = 0x8917;
  948. const GLenum GL_GEOMETRY_OUTPUT_TYPE = 0x8918;
  949. const GLenum GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF;
  950. const GLenum GL_MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0;
  951. const GLenum GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1;
  952. const GLenum GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122;
  953. const GLenum GL_MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123;
  954. const GLenum GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124;
  955. const GLenum GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125;
  956. const GLenum GL_CONTEXT_PROFILE_MASK = 0x9126;
  957. const GLenum GL_DEPTH_CLAMP = 0x864F;
  958. const GLenum GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C;
  959. const GLenum GL_FIRST_VERTEX_CONVENTION = 0x8E4D;
  960. const GLenum GL_LAST_VERTEX_CONVENTION = 0x8E4E;
  961. const GLenum GL_PROVOKING_VERTEX = 0x8E4F;
  962. const GLenum GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F;
  963. const GLenum GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111;
  964. const GLenum GL_OBJECT_TYPE = 0x9112;
  965. const GLenum GL_SYNC_CONDITION = 0x9113;
  966. const GLenum GL_SYNC_STATUS = 0x9114;
  967. const GLenum GL_SYNC_FLAGS = 0x9115;
  968. const GLenum GL_SYNC_FENCE = 0x9116;
  969. const GLenum GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117;
  970. const GLenum GL_UNSIGNALED = 0x9118;
  971. const GLenum GL_SIGNALED = 0x9119;
  972. const GLenum GL_ALREADY_SIGNALED = 0x911A;
  973. const GLenum GL_TIMEOUT_EXPIRED = 0x911B;
  974. const GLenum GL_CONDITION_SATISFIED = 0x911C;
  975. const GLenum GL_WAIT_FAILED = 0x911D;
  976. const GLuint64 GL_TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFFull;
  977. const GLenum GL_SYNC_FLUSH_COMMANDS_BIT = 0x00000001;
  978. const GLenum GL_SAMPLE_POSITION = 0x8E50;
  979. const GLenum GL_SAMPLE_MASK = 0x8E51;
  980. const GLenum GL_SAMPLE_MASK_VALUE = 0x8E52;
  981. const GLenum GL_MAX_SAMPLE_MASK_WORDS = 0x8E59;
  982. const GLenum GL_TEXTURE_2D_MULTISAMPLE = 0x9100;
  983. const GLenum GL_PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101;
  984. const GLenum GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102;
  985. const GLenum GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103;
  986. const GLenum GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104;
  987. const GLenum GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105;
  988. const GLenum GL_TEXTURE_SAMPLES = 0x9106;
  989. const GLenum GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107;
  990. const GLenum GL_SAMPLER_2D_MULTISAMPLE = 0x9108;
  991. const GLenum GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109;
  992. const GLenum GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A;
  993. const GLenum GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B;
  994. const GLenum GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C;
  995. const GLenum GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D;
  996. const GLenum GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E;
  997. const GLenum GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F;
  998. const GLenum GL_MAX_INTEGER_SAMPLES = 0x9110;
  999. const GLenum GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE;
  1000. const GLenum GL_SRC1_COLOR = 0x88F9;
  1001. const GLenum GL_ONE_MINUS_SRC1_COLOR = 0x88FA;
  1002. const GLenum GL_ONE_MINUS_SRC1_ALPHA = 0x88FB;
  1003. const GLenum GL_MAX_DUAL_SOURCE_DRAW_BUFFERS = 0x88FC;
  1004. const GLenum GL_ANY_SAMPLES_PASSED = 0x8C2F;
  1005. const GLenum GL_SAMPLER_BINDING = 0x8919;
  1006. const GLenum GL_RGB10_A2UI = 0x906F;
  1007. const GLenum GL_TEXTURE_SWIZZLE_R = 0x8E42;
  1008. const GLenum GL_TEXTURE_SWIZZLE_G = 0x8E43;
  1009. const GLenum GL_TEXTURE_SWIZZLE_B = 0x8E44;
  1010. const GLenum GL_TEXTURE_SWIZZLE_A = 0x8E45;
  1011. const GLenum GL_TEXTURE_SWIZZLE_RGBA = 0x8E46;
  1012. const GLenum GL_TIME_ELAPSED = 0x88BF;
  1013. const GLenum GL_TIMESTAMP = 0x8E28;
  1014. const GLenum GL_INT_2_10_10_10_REV = 0x8D9F;
  1015. const GLenum GL_SAMPLE_SHADING = 0x8C36;
  1016. const GLenum GL_MIN_SAMPLE_SHADING_VALUE = 0x8C37;
  1017. const GLenum GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5E;
  1018. const GLenum GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5F;
  1019. const GLenum GL_TEXTURE_CUBE_MAP_ARRAY = 0x9009;
  1020. const GLenum GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = 0x900A;
  1021. const GLenum GL_PROXY_TEXTURE_CUBE_MAP_ARRAY = 0x900B;
  1022. const GLenum GL_SAMPLER_CUBE_MAP_ARRAY = 0x900C;
  1023. const GLenum GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = 0x900D;
  1024. const GLenum GL_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900E;
  1025. const GLenum GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900F;
  1026. const GLenum GL_DRAW_INDIRECT_BUFFER = 0x8F3F;
  1027. const GLenum GL_DRAW_INDIRECT_BUFFER_BINDING = 0x8F43;
  1028. const GLenum GL_GEOMETRY_SHADER_INVOCATIONS = 0x887F;
  1029. const GLenum GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 0x8E5A;
  1030. const GLenum GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5B;
  1031. const GLenum GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5C;
  1032. const GLenum GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 0x8E5D;
  1033. const GLenum GL_MAX_VERTEX_STREAMS = 0x8E71;
  1034. const GLenum GL_DOUBLE_VEC2 = 0x8FFC;
  1035. const GLenum GL_DOUBLE_VEC3 = 0x8FFD;
  1036. const GLenum GL_DOUBLE_VEC4 = 0x8FFE;
  1037. const GLenum GL_DOUBLE_MAT2 = 0x8F46;
  1038. const GLenum GL_DOUBLE_MAT3 = 0x8F47;
  1039. const GLenum GL_DOUBLE_MAT4 = 0x8F48;
  1040. const GLenum GL_DOUBLE_MAT2x3 = 0x8F49;
  1041. const GLenum GL_DOUBLE_MAT2x4 = 0x8F4A;
  1042. const GLenum GL_DOUBLE_MAT3x2 = 0x8F4B;
  1043. const GLenum GL_DOUBLE_MAT3x4 = 0x8F4C;
  1044. const GLenum GL_DOUBLE_MAT4x2 = 0x8F4D;
  1045. const GLenum GL_DOUBLE_MAT4x3 = 0x8F4E;
  1046. const GLenum GL_ACTIVE_SUBROUTINES = 0x8DE5;
  1047. const GLenum GL_ACTIVE_SUBROUTINE_UNIFORMS = 0x8DE6;
  1048. const GLenum GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = 0x8E47;
  1049. const GLenum GL_ACTIVE_SUBROUTINE_MAX_LENGTH = 0x8E48;
  1050. const GLenum GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = 0x8E49;
  1051. const GLenum GL_MAX_SUBROUTINES = 0x8DE7;
  1052. const GLenum GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS = 0x8DE8;
  1053. const GLenum GL_NUM_COMPATIBLE_SUBROUTINES = 0x8E4A;
  1054. const GLenum GL_COMPATIBLE_SUBROUTINES = 0x8E4B;
  1055. const GLenum GL_PATCHES = 0x000E;
  1056. const GLenum GL_PATCH_VERTICES = 0x8E72;
  1057. const GLenum GL_PATCH_DEFAULT_INNER_LEVEL = 0x8E73;
  1058. const GLenum GL_PATCH_DEFAULT_OUTER_LEVEL = 0x8E74;
  1059. const GLenum GL_TESS_CONTROL_OUTPUT_VERTICES = 0x8E75;
  1060. const GLenum GL_TESS_GEN_MODE = 0x8E76;
  1061. const GLenum GL_TESS_GEN_SPACING = 0x8E77;
  1062. const GLenum GL_TESS_GEN_VERTEX_ORDER = 0x8E78;
  1063. const GLenum GL_TESS_GEN_POINT_MODE = 0x8E79;
  1064. const GLenum GL_ISOLINES = 0x8E7A;
  1065. const GLenum GL_FRACTIONAL_ODD = 0x8E7B;
  1066. const GLenum GL_FRACTIONAL_EVEN = 0x8E7C;
  1067. const GLenum GL_MAX_PATCH_VERTICES = 0x8E7D;
  1068. const GLenum GL_MAX_TESS_GEN_LEVEL = 0x8E7E;
  1069. const GLenum GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E7F;
  1070. const GLenum GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E80;
  1071. const GLenum GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 0x8E81;
  1072. const GLenum GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 0x8E82;
  1073. const GLenum GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 0x8E83;
  1074. const GLenum GL_MAX_TESS_PATCH_COMPONENTS = 0x8E84;
  1075. const GLenum GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 0x8E85;
  1076. const GLenum GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 0x8E86;
  1077. const GLenum GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 0x8E89;
  1078. const GLenum GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 0x8E8A;
  1079. const GLenum GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 0x886C;
  1080. const GLenum GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 0x886D;
  1081. const GLenum GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E1E;
  1082. const GLenum GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E1F;
  1083. const GLenum GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = 0x84F0;
  1084. const GLenum GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x84F1;
  1085. const GLenum GL_TESS_EVALUATION_SHADER = 0x8E87;
  1086. const GLenum GL_TESS_CONTROL_SHADER = 0x8E88;
  1087. const GLenum GL_TRANSFORM_FEEDBACK = 0x8E22;
  1088. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED = 0x8E23;
  1089. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE = 0x8E24;
  1090. const GLenum GL_TRANSFORM_FEEDBACK_BINDING = 0x8E25;
  1091. const GLenum GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = 0x8E70;
  1092. const GLenum GL_FIXED = 0x140C;
  1093. const GLenum GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A;
  1094. const GLenum GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B;
  1095. const GLenum GL_LOW_FLOAT = 0x8DF0;
  1096. const GLenum GL_MEDIUM_FLOAT = 0x8DF1;
  1097. const GLenum GL_HIGH_FLOAT = 0x8DF2;
  1098. const GLenum GL_LOW_INT = 0x8DF3;
  1099. const GLenum GL_MEDIUM_INT = 0x8DF4;
  1100. const GLenum GL_HIGH_INT = 0x8DF5;
  1101. const GLenum GL_SHADER_COMPILER = 0x8DFA;
  1102. const GLenum GL_SHADER_BINARY_FORMATS = 0x8DF8;
  1103. const GLenum GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9;
  1104. const GLenum GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB;
  1105. const GLenum GL_MAX_VARYING_VECTORS = 0x8DFC;
  1106. const GLenum GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD;
  1107. const GLenum GL_RGB565 = 0x8D62;
  1108. const GLenum GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257;
  1109. const GLenum GL_PROGRAM_BINARY_LENGTH = 0x8741;
  1110. const GLenum GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE;
  1111. const GLenum GL_PROGRAM_BINARY_FORMATS = 0x87FF;
  1112. const GLenum GL_VERTEX_SHADER_BIT = 0x00000001;
  1113. const GLenum GL_FRAGMENT_SHADER_BIT = 0x00000002;
  1114. const GLenum GL_GEOMETRY_SHADER_BIT = 0x00000004;
  1115. const GLenum GL_TESS_CONTROL_SHADER_BIT = 0x00000008;
  1116. const GLenum GL_TESS_EVALUATION_SHADER_BIT = 0x00000010;
  1117. const GLenum GL_ALL_SHADER_BITS = 0xFFFFFFFF;
  1118. const GLenum GL_PROGRAM_SEPARABLE = 0x8258;
  1119. const GLenum GL_ACTIVE_PROGRAM = 0x8259;
  1120. const GLenum GL_PROGRAM_PIPELINE_BINDING = 0x825A;
  1121. const GLenum GL_MAX_VIEWPORTS = 0x825B;
  1122. const GLenum GL_VIEWPORT_SUBPIXEL_BITS = 0x825C;
  1123. const GLenum GL_VIEWPORT_BOUNDS_RANGE = 0x825D;
  1124. const GLenum GL_LAYER_PROVOKING_VERTEX = 0x825E;
  1125. const GLenum GL_VIEWPORT_INDEX_PROVOKING_VERTEX = 0x825F;
  1126. const GLenum GL_UNDEFINED_VERTEX = 0x8260;
  1127. const GLenum GL_COPY_READ_BUFFER_BINDING = 0x8F36;
  1128. const GLenum GL_COPY_WRITE_BUFFER_BINDING = 0x8F37;
  1129. const GLenum GL_TRANSFORM_FEEDBACK_ACTIVE = 0x8E24;
  1130. const GLenum GL_TRANSFORM_FEEDBACK_PAUSED = 0x8E23;
  1131. const GLenum GL_UNPACK_COMPRESSED_BLOCK_WIDTH = 0x9127;
  1132. const GLenum GL_UNPACK_COMPRESSED_BLOCK_HEIGHT = 0x9128;
  1133. const GLenum GL_UNPACK_COMPRESSED_BLOCK_DEPTH = 0x9129;
  1134. const GLenum GL_UNPACK_COMPRESSED_BLOCK_SIZE = 0x912A;
  1135. const GLenum GL_PACK_COMPRESSED_BLOCK_WIDTH = 0x912B;
  1136. const GLenum GL_PACK_COMPRESSED_BLOCK_HEIGHT = 0x912C;
  1137. const GLenum GL_PACK_COMPRESSED_BLOCK_DEPTH = 0x912D;
  1138. const GLenum GL_PACK_COMPRESSED_BLOCK_SIZE = 0x912E;
  1139. const GLenum GL_NUM_SAMPLE_COUNTS = 0x9380;
  1140. const GLenum GL_MIN_MAP_BUFFER_ALIGNMENT = 0x90BC;
  1141. const GLenum GL_ATOMIC_COUNTER_BUFFER = 0x92C0;
  1142. const GLenum GL_ATOMIC_COUNTER_BUFFER_BINDING = 0x92C1;
  1143. const GLenum GL_ATOMIC_COUNTER_BUFFER_START = 0x92C2;
  1144. const GLenum GL_ATOMIC_COUNTER_BUFFER_SIZE = 0x92C3;
  1145. const GLenum GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE = 0x92C4;
  1146. const GLenum GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = 0x92C5;
  1147. const GLenum GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = 0x92C6;
  1148. const GLenum GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = 0x92C7;
  1149. const GLenum GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = 0x92C8;
  1150. const GLenum GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x92C9;
  1151. const GLenum GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = 0x92CA;
  1152. const GLenum GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = 0x92CB;
  1153. const GLenum GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 0x92CC;
  1154. const GLenum GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 0x92CD;
  1155. const GLenum GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 0x92CE;
  1156. const GLenum GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 0x92CF;
  1157. const GLenum GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 0x92D0;
  1158. const GLenum GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 0x92D1;
  1159. const GLenum GL_MAX_VERTEX_ATOMIC_COUNTERS = 0x92D2;
  1160. const GLenum GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 0x92D3;
  1161. const GLenum GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 0x92D4;
  1162. const GLenum GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 0x92D5;
  1163. const GLenum GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 0x92D6;
  1164. const GLenum GL_MAX_COMBINED_ATOMIC_COUNTERS = 0x92D7;
  1165. const GLenum GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 0x92D8;
  1166. const GLenum GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 0x92DC;
  1167. const GLenum GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 0x92D9;
  1168. const GLenum GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = 0x92DA;
  1169. const GLenum GL_UNSIGNED_INT_ATOMIC_COUNTER = 0x92DB;
  1170. const GLenum GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 0x00000001;
  1171. const GLenum GL_ELEMENT_ARRAY_BARRIER_BIT = 0x00000002;
  1172. const GLenum GL_UNIFORM_BARRIER_BIT = 0x00000004;
  1173. const GLenum GL_TEXTURE_FETCH_BARRIER_BIT = 0x00000008;
  1174. const GLenum GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 0x00000020;
  1175. const GLenum GL_COMMAND_BARRIER_BIT = 0x00000040;
  1176. const GLenum GL_PIXEL_BUFFER_BARRIER_BIT = 0x00000080;
  1177. const GLenum GL_TEXTURE_UPDATE_BARRIER_BIT = 0x00000100;
  1178. const GLenum GL_BUFFER_UPDATE_BARRIER_BIT = 0x00000200;
  1179. const GLenum GL_FRAMEBUFFER_BARRIER_BIT = 0x00000400;
  1180. const GLenum GL_TRANSFORM_FEEDBACK_BARRIER_BIT = 0x00000800;
  1181. const GLenum GL_ATOMIC_COUNTER_BARRIER_BIT = 0x00001000;
  1182. const GLenum GL_ALL_BARRIER_BITS = 0xFFFFFFFF;
  1183. const GLenum GL_MAX_IMAGE_UNITS = 0x8F38;
  1184. const GLenum GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS = 0x8F39;
  1185. const GLenum GL_IMAGE_BINDING_NAME = 0x8F3A;
  1186. const GLenum GL_IMAGE_BINDING_LEVEL = 0x8F3B;
  1187. const GLenum GL_IMAGE_BINDING_LAYERED = 0x8F3C;
  1188. const GLenum GL_IMAGE_BINDING_LAYER = 0x8F3D;
  1189. const GLenum GL_IMAGE_BINDING_ACCESS = 0x8F3E;
  1190. const GLenum GL_IMAGE_1D = 0x904C;
  1191. const GLenum GL_IMAGE_2D = 0x904D;
  1192. const GLenum GL_IMAGE_3D = 0x904E;
  1193. const GLenum GL_IMAGE_2D_RECT = 0x904F;
  1194. const GLenum GL_IMAGE_CUBE = 0x9050;
  1195. const GLenum GL_IMAGE_BUFFER = 0x9051;
  1196. const GLenum GL_IMAGE_1D_ARRAY = 0x9052;
  1197. const GLenum GL_IMAGE_2D_ARRAY = 0x9053;
  1198. const GLenum GL_IMAGE_CUBE_MAP_ARRAY = 0x9054;
  1199. const GLenum GL_IMAGE_2D_MULTISAMPLE = 0x9055;
  1200. const GLenum GL_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9056;
  1201. const GLenum GL_INT_IMAGE_1D = 0x9057;
  1202. const GLenum GL_INT_IMAGE_2D = 0x9058;
  1203. const GLenum GL_INT_IMAGE_3D = 0x9059;
  1204. const GLenum GL_INT_IMAGE_2D_RECT = 0x905A;
  1205. const GLenum GL_INT_IMAGE_CUBE = 0x905B;
  1206. const GLenum GL_INT_IMAGE_BUFFER = 0x905C;
  1207. const GLenum GL_INT_IMAGE_1D_ARRAY = 0x905D;
  1208. const GLenum GL_INT_IMAGE_2D_ARRAY = 0x905E;
  1209. const GLenum GL_INT_IMAGE_CUBE_MAP_ARRAY = 0x905F;
  1210. const GLenum GL_INT_IMAGE_2D_MULTISAMPLE = 0x9060;
  1211. const GLenum GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9061;
  1212. const GLenum GL_UNSIGNED_INT_IMAGE_1D = 0x9062;
  1213. const GLenum GL_UNSIGNED_INT_IMAGE_2D = 0x9063;
  1214. const GLenum GL_UNSIGNED_INT_IMAGE_3D = 0x9064;
  1215. const GLenum GL_UNSIGNED_INT_IMAGE_2D_RECT = 0x9065;
  1216. const GLenum GL_UNSIGNED_INT_IMAGE_CUBE = 0x9066;
  1217. const GLenum GL_UNSIGNED_INT_IMAGE_BUFFER = 0x9067;
  1218. const GLenum GL_UNSIGNED_INT_IMAGE_1D_ARRAY = 0x9068;
  1219. const GLenum GL_UNSIGNED_INT_IMAGE_2D_ARRAY = 0x9069;
  1220. const GLenum GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 0x906A;
  1221. const GLenum GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = 0x906B;
  1222. const GLenum GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x906C;
  1223. const GLenum GL_MAX_IMAGE_SAMPLES = 0x906D;
  1224. const GLenum GL_IMAGE_BINDING_FORMAT = 0x906E;
  1225. const GLenum GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = 0x90C7;
  1226. const GLenum GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 0x90C8;
  1227. const GLenum GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 0x90C9;
  1228. const GLenum GL_MAX_VERTEX_IMAGE_UNIFORMS = 0x90CA;
  1229. const GLenum GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 0x90CB;
  1230. const GLenum GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 0x90CC;
  1231. const GLenum GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 0x90CD;
  1232. const GLenum GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 0x90CE;
  1233. const GLenum GL_MAX_COMBINED_IMAGE_UNIFORMS = 0x90CF;
  1234. const GLenum GL_COMPRESSED_RGBA_BPTC_UNORM = 0x8E8C;
  1235. const GLenum GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM = 0x8E8D;
  1236. const GLenum GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT = 0x8E8E;
  1237. const GLenum GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = 0x8E8F;
  1238. const GLenum GL_TEXTURE_IMMUTABLE_FORMAT = 0x912F;
  1239. const GLenum GL_NUM_SHADING_LANGUAGE_VERSIONS = 0x82E9;
  1240. const GLenum GL_VERTEX_ATTRIB_ARRAY_LONG = 0x874E;
  1241. const GLenum GL_COMPRESSED_RGB8_ETC2 = 0x9274;
  1242. const GLenum GL_COMPRESSED_SRGB8_ETC2 = 0x9275;
  1243. const GLenum GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276;
  1244. const GLenum GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277;
  1245. const GLenum GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278;
  1246. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279;
  1247. const GLenum GL_COMPRESSED_R11_EAC = 0x9270;
  1248. const GLenum GL_COMPRESSED_SIGNED_R11_EAC = 0x9271;
  1249. const GLenum GL_COMPRESSED_RG11_EAC = 0x9272;
  1250. const GLenum GL_COMPRESSED_SIGNED_RG11_EAC = 0x9273;
  1251. const GLenum GL_PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69;
  1252. const GLenum GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A;
  1253. const GLenum GL_MAX_ELEMENT_INDEX = 0x8D6B;
  1254. const GLenum GL_COMPUTE_SHADER = 0x91B9;
  1255. const GLenum GL_MAX_COMPUTE_UNIFORM_BLOCKS = 0x91BB;
  1256. const GLenum GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 0x91BC;
  1257. const GLenum GL_MAX_COMPUTE_IMAGE_UNIFORMS = 0x91BD;
  1258. const GLenum GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 0x8262;
  1259. const GLenum GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 0x8263;
  1260. const GLenum GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 0x8264;
  1261. const GLenum GL_MAX_COMPUTE_ATOMIC_COUNTERS = 0x8265;
  1262. const GLenum GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 0x8266;
  1263. const GLenum GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 0x90EB;
  1264. const GLenum GL_MAX_COMPUTE_WORK_GROUP_COUNT = 0x91BE;
  1265. const GLenum GL_MAX_COMPUTE_WORK_GROUP_SIZE = 0x91BF;
  1266. const GLenum GL_COMPUTE_WORK_GROUP_SIZE = 0x8267;
  1267. const GLenum GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = 0x90EC;
  1268. const GLenum GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = 0x90ED;
  1269. const GLenum GL_DISPATCH_INDIRECT_BUFFER = 0x90EE;
  1270. const GLenum GL_DISPATCH_INDIRECT_BUFFER_BINDING = 0x90EF;
  1271. const GLenum GL_COMPUTE_SHADER_BIT = 0x00000020;
  1272. const GLenum GL_DEBUG_OUTPUT_SYNCHRONOUS = 0x8242;
  1273. const GLenum GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243;
  1274. const GLenum GL_DEBUG_CALLBACK_FUNCTION = 0x8244;
  1275. const GLenum GL_DEBUG_CALLBACK_USER_PARAM = 0x8245;
  1276. const GLenum GL_DEBUG_SOURCE_API = 0x8246;
  1277. const GLenum GL_DEBUG_SOURCE_WINDOW_SYSTEM = 0x8247;
  1278. const GLenum GL_DEBUG_SOURCE_SHADER_COMPILER = 0x8248;
  1279. const GLenum GL_DEBUG_SOURCE_THIRD_PARTY = 0x8249;
  1280. const GLenum GL_DEBUG_SOURCE_APPLICATION = 0x824A;
  1281. const GLenum GL_DEBUG_SOURCE_OTHER = 0x824B;
  1282. const GLenum GL_DEBUG_TYPE_ERROR = 0x824C;
  1283. const GLenum GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = 0x824D;
  1284. const GLenum GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = 0x824E;
  1285. const GLenum GL_DEBUG_TYPE_PORTABILITY = 0x824F;
  1286. const GLenum GL_DEBUG_TYPE_PERFORMANCE = 0x8250;
  1287. const GLenum GL_DEBUG_TYPE_OTHER = 0x8251;
  1288. const GLenum GL_MAX_DEBUG_MESSAGE_LENGTH = 0x9143;
  1289. const GLenum GL_MAX_DEBUG_LOGGED_MESSAGES = 0x9144;
  1290. const GLenum GL_DEBUG_LOGGED_MESSAGES = 0x9145;
  1291. const GLenum GL_DEBUG_SEVERITY_HIGH = 0x9146;
  1292. const GLenum GL_DEBUG_SEVERITY_MEDIUM = 0x9147;
  1293. const GLenum GL_DEBUG_SEVERITY_LOW = 0x9148;
  1294. const GLenum GL_DEBUG_TYPE_MARKER = 0x8268;
  1295. const GLenum GL_DEBUG_TYPE_PUSH_GROUP = 0x8269;
  1296. const GLenum GL_DEBUG_TYPE_POP_GROUP = 0x826A;
  1297. const GLenum GL_DEBUG_SEVERITY_NOTIFICATION = 0x826B;
  1298. const GLenum GL_MAX_DEBUG_GROUP_STACK_DEPTH = 0x826C;
  1299. const GLenum GL_DEBUG_GROUP_STACK_DEPTH = 0x826D;
  1300. const GLenum GL_BUFFER = 0x82E0;
  1301. const GLenum GL_SHADER = 0x82E1;
  1302. const GLenum GL_PROGRAM = 0x82E2;
  1303. const GLenum GL_QUERY = 0x82E3;
  1304. const GLenum GL_PROGRAM_PIPELINE = 0x82E4;
  1305. const GLenum GL_SAMPLER = 0x82E6;
  1306. const GLenum GL_MAX_LABEL_LENGTH = 0x82E8;
  1307. const GLenum GL_DEBUG_OUTPUT = 0x92E0;
  1308. const GLenum GL_CONTEXT_FLAG_DEBUG_BIT = 0x00000002;
  1309. const GLenum GL_MAX_UNIFORM_LOCATIONS = 0x826E;
  1310. const GLenum GL_FRAMEBUFFER_DEFAULT_WIDTH = 0x9310;
  1311. const GLenum GL_FRAMEBUFFER_DEFAULT_HEIGHT = 0x9311;
  1312. const GLenum GL_FRAMEBUFFER_DEFAULT_LAYERS = 0x9312;
  1313. const GLenum GL_FRAMEBUFFER_DEFAULT_SAMPLES = 0x9313;
  1314. const GLenum GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 0x9314;
  1315. const GLenum GL_MAX_FRAMEBUFFER_WIDTH = 0x9315;
  1316. const GLenum GL_MAX_FRAMEBUFFER_HEIGHT = 0x9316;
  1317. const GLenum GL_MAX_FRAMEBUFFER_LAYERS = 0x9317;
  1318. const GLenum GL_MAX_FRAMEBUFFER_SAMPLES = 0x9318;
  1319. const GLenum GL_INTERNALFORMAT_SUPPORTED = 0x826F;
  1320. const GLenum GL_INTERNALFORMAT_PREFERRED = 0x8270;
  1321. const GLenum GL_INTERNALFORMAT_RED_SIZE = 0x8271;
  1322. const GLenum GL_INTERNALFORMAT_GREEN_SIZE = 0x8272;
  1323. const GLenum GL_INTERNALFORMAT_BLUE_SIZE = 0x8273;
  1324. const GLenum GL_INTERNALFORMAT_ALPHA_SIZE = 0x8274;
  1325. const GLenum GL_INTERNALFORMAT_DEPTH_SIZE = 0x8275;
  1326. const GLenum GL_INTERNALFORMAT_STENCIL_SIZE = 0x8276;
  1327. const GLenum GL_INTERNALFORMAT_SHARED_SIZE = 0x8277;
  1328. const GLenum GL_INTERNALFORMAT_RED_TYPE = 0x8278;
  1329. const GLenum GL_INTERNALFORMAT_GREEN_TYPE = 0x8279;
  1330. const GLenum GL_INTERNALFORMAT_BLUE_TYPE = 0x827A;
  1331. const GLenum GL_INTERNALFORMAT_ALPHA_TYPE = 0x827B;
  1332. const GLenum GL_INTERNALFORMAT_DEPTH_TYPE = 0x827C;
  1333. const GLenum GL_INTERNALFORMAT_STENCIL_TYPE = 0x827D;
  1334. const GLenum GL_MAX_WIDTH = 0x827E;
  1335. const GLenum GL_MAX_HEIGHT = 0x827F;
  1336. const GLenum GL_MAX_DEPTH = 0x8280;
  1337. const GLenum GL_MAX_LAYERS = 0x8281;
  1338. const GLenum GL_MAX_COMBINED_DIMENSIONS = 0x8282;
  1339. const GLenum GL_COLOR_COMPONENTS = 0x8283;
  1340. const GLenum GL_DEPTH_COMPONENTS = 0x8284;
  1341. const GLenum GL_STENCIL_COMPONENTS = 0x8285;
  1342. const GLenum GL_COLOR_RENDERABLE = 0x8286;
  1343. const GLenum GL_DEPTH_RENDERABLE = 0x8287;
  1344. const GLenum GL_STENCIL_RENDERABLE = 0x8288;
  1345. const GLenum GL_FRAMEBUFFER_RENDERABLE = 0x8289;
  1346. const GLenum GL_FRAMEBUFFER_RENDERABLE_LAYERED = 0x828A;
  1347. const GLenum GL_FRAMEBUFFER_BLEND = 0x828B;
  1348. const GLenum GL_READ_PIXELS = 0x828C;
  1349. const GLenum GL_READ_PIXELS_FORMAT = 0x828D;
  1350. const GLenum GL_READ_PIXELS_TYPE = 0x828E;
  1351. const GLenum GL_TEXTURE_IMAGE_FORMAT = 0x828F;
  1352. const GLenum GL_TEXTURE_IMAGE_TYPE = 0x8290;
  1353. const GLenum GL_GET_TEXTURE_IMAGE_FORMAT = 0x8291;
  1354. const GLenum GL_GET_TEXTURE_IMAGE_TYPE = 0x8292;
  1355. const GLenum GL_MIPMAP = 0x8293;
  1356. const GLenum GL_MANUAL_GENERATE_MIPMAP = 0x8294;
  1357. const GLenum GL_AUTO_GENERATE_MIPMAP = 0x8295;
  1358. const GLenum GL_COLOR_ENCODING = 0x8296;
  1359. const GLenum GL_SRGB_READ = 0x8297;
  1360. const GLenum GL_SRGB_WRITE = 0x8298;
  1361. const GLenum GL_FILTER = 0x829A;
  1362. const GLenum GL_VERTEX_TEXTURE = 0x829B;
  1363. const GLenum GL_TESS_CONTROL_TEXTURE = 0x829C;
  1364. const GLenum GL_TESS_EVALUATION_TEXTURE = 0x829D;
  1365. const GLenum GL_GEOMETRY_TEXTURE = 0x829E;
  1366. const GLenum GL_FRAGMENT_TEXTURE = 0x829F;
  1367. const GLenum GL_COMPUTE_TEXTURE = 0x82A0;
  1368. const GLenum GL_TEXTURE_SHADOW = 0x82A1;
  1369. const GLenum GL_TEXTURE_GATHER = 0x82A2;
  1370. const GLenum GL_TEXTURE_GATHER_SHADOW = 0x82A3;
  1371. const GLenum GL_SHADER_IMAGE_LOAD = 0x82A4;
  1372. const GLenum GL_SHADER_IMAGE_STORE = 0x82A5;
  1373. const GLenum GL_SHADER_IMAGE_ATOMIC = 0x82A6;
  1374. const GLenum GL_IMAGE_TEXEL_SIZE = 0x82A7;
  1375. const GLenum GL_IMAGE_COMPATIBILITY_CLASS = 0x82A8;
  1376. const GLenum GL_IMAGE_PIXEL_FORMAT = 0x82A9;
  1377. const GLenum GL_IMAGE_PIXEL_TYPE = 0x82AA;
  1378. const GLenum GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = 0x82AC;
  1379. const GLenum GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = 0x82AD;
  1380. const GLenum GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = 0x82AE;
  1381. const GLenum GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = 0x82AF;
  1382. const GLenum GL_TEXTURE_COMPRESSED_BLOCK_WIDTH = 0x82B1;
  1383. const GLenum GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT = 0x82B2;
  1384. const GLenum GL_TEXTURE_COMPRESSED_BLOCK_SIZE = 0x82B3;
  1385. const GLenum GL_CLEAR_BUFFER = 0x82B4;
  1386. const GLenum GL_TEXTURE_VIEW = 0x82B5;
  1387. const GLenum GL_VIEW_COMPATIBILITY_CLASS = 0x82B6;
  1388. const GLenum GL_FULL_SUPPORT = 0x82B7;
  1389. const GLenum GL_CAVEAT_SUPPORT = 0x82B8;
  1390. const GLenum GL_IMAGE_CLASS_4_X_32 = 0x82B9;
  1391. const GLenum GL_IMAGE_CLASS_2_X_32 = 0x82BA;
  1392. const GLenum GL_IMAGE_CLASS_1_X_32 = 0x82BB;
  1393. const GLenum GL_IMAGE_CLASS_4_X_16 = 0x82BC;
  1394. const GLenum GL_IMAGE_CLASS_2_X_16 = 0x82BD;
  1395. const GLenum GL_IMAGE_CLASS_1_X_16 = 0x82BE;
  1396. const GLenum GL_IMAGE_CLASS_4_X_8 = 0x82BF;
  1397. const GLenum GL_IMAGE_CLASS_2_X_8 = 0x82C0;
  1398. const GLenum GL_IMAGE_CLASS_1_X_8 = 0x82C1;
  1399. const GLenum GL_IMAGE_CLASS_11_11_10 = 0x82C2;
  1400. const GLenum GL_IMAGE_CLASS_10_10_10_2 = 0x82C3;
  1401. const GLenum GL_VIEW_CLASS_128_BITS = 0x82C4;
  1402. const GLenum GL_VIEW_CLASS_96_BITS = 0x82C5;
  1403. const GLenum GL_VIEW_CLASS_64_BITS = 0x82C6;
  1404. const GLenum GL_VIEW_CLASS_48_BITS = 0x82C7;
  1405. const GLenum GL_VIEW_CLASS_32_BITS = 0x82C8;
  1406. const GLenum GL_VIEW_CLASS_24_BITS = 0x82C9;
  1407. const GLenum GL_VIEW_CLASS_16_BITS = 0x82CA;
  1408. const GLenum GL_VIEW_CLASS_8_BITS = 0x82CB;
  1409. const GLenum GL_VIEW_CLASS_S3TC_DXT1_RGB = 0x82CC;
  1410. const GLenum GL_VIEW_CLASS_S3TC_DXT1_RGBA = 0x82CD;
  1411. const GLenum GL_VIEW_CLASS_S3TC_DXT3_RGBA = 0x82CE;
  1412. const GLenum GL_VIEW_CLASS_S3TC_DXT5_RGBA = 0x82CF;
  1413. const GLenum GL_VIEW_CLASS_RGTC1_RED = 0x82D0;
  1414. const GLenum GL_VIEW_CLASS_RGTC2_RG = 0x82D1;
  1415. const GLenum GL_VIEW_CLASS_BPTC_UNORM = 0x82D2;
  1416. const GLenum GL_VIEW_CLASS_BPTC_FLOAT = 0x82D3;
  1417. const GLenum GL_UNIFORM = 0x92E1;
  1418. const GLenum GL_UNIFORM_BLOCK = 0x92E2;
  1419. const GLenum GL_PROGRAM_INPUT = 0x92E3;
  1420. const GLenum GL_PROGRAM_OUTPUT = 0x92E4;
  1421. const GLenum GL_BUFFER_VARIABLE = 0x92E5;
  1422. const GLenum GL_SHADER_STORAGE_BLOCK = 0x92E6;
  1423. const GLenum GL_VERTEX_SUBROUTINE = 0x92E8;
  1424. const GLenum GL_TESS_CONTROL_SUBROUTINE = 0x92E9;
  1425. const GLenum GL_TESS_EVALUATION_SUBROUTINE = 0x92EA;
  1426. const GLenum GL_GEOMETRY_SUBROUTINE = 0x92EB;
  1427. const GLenum GL_FRAGMENT_SUBROUTINE = 0x92EC;
  1428. const GLenum GL_COMPUTE_SUBROUTINE = 0x92ED;
  1429. const GLenum GL_VERTEX_SUBROUTINE_UNIFORM = 0x92EE;
  1430. const GLenum GL_TESS_CONTROL_SUBROUTINE_UNIFORM = 0x92EF;
  1431. const GLenum GL_TESS_EVALUATION_SUBROUTINE_UNIFORM = 0x92F0;
  1432. const GLenum GL_GEOMETRY_SUBROUTINE_UNIFORM = 0x92F1;
  1433. const GLenum GL_FRAGMENT_SUBROUTINE_UNIFORM = 0x92F2;
  1434. const GLenum GL_COMPUTE_SUBROUTINE_UNIFORM = 0x92F3;
  1435. const GLenum GL_TRANSFORM_FEEDBACK_VARYING = 0x92F4;
  1436. const GLenum GL_ACTIVE_RESOURCES = 0x92F5;
  1437. const GLenum GL_MAX_NAME_LENGTH = 0x92F6;
  1438. const GLenum GL_MAX_NUM_ACTIVE_VARIABLES = 0x92F7;
  1439. const GLenum GL_MAX_NUM_COMPATIBLE_SUBROUTINES = 0x92F8;
  1440. const GLenum GL_NAME_LENGTH = 0x92F9;
  1441. const GLenum GL_TYPE = 0x92FA;
  1442. const GLenum GL_ARRAY_SIZE = 0x92FB;
  1443. const GLenum GL_OFFSET = 0x92FC;
  1444. const GLenum GL_BLOCK_INDEX = 0x92FD;
  1445. const GLenum GL_ARRAY_STRIDE = 0x92FE;
  1446. const GLenum GL_MATRIX_STRIDE = 0x92FF;
  1447. const GLenum GL_IS_ROW_MAJOR = 0x9300;
  1448. const GLenum GL_ATOMIC_COUNTER_BUFFER_INDEX = 0x9301;
  1449. const GLenum GL_BUFFER_BINDING = 0x9302;
  1450. const GLenum GL_BUFFER_DATA_SIZE = 0x9303;
  1451. const GLenum GL_NUM_ACTIVE_VARIABLES = 0x9304;
  1452. const GLenum GL_ACTIVE_VARIABLES = 0x9305;
  1453. const GLenum GL_REFERENCED_BY_VERTEX_SHADER = 0x9306;
  1454. const GLenum GL_REFERENCED_BY_TESS_CONTROL_SHADER = 0x9307;
  1455. const GLenum GL_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x9308;
  1456. const GLenum GL_REFERENCED_BY_GEOMETRY_SHADER = 0x9309;
  1457. const GLenum GL_REFERENCED_BY_FRAGMENT_SHADER = 0x930A;
  1458. const GLenum GL_REFERENCED_BY_COMPUTE_SHADER = 0x930B;
  1459. const GLenum GL_TOP_LEVEL_ARRAY_SIZE = 0x930C;
  1460. const GLenum GL_TOP_LEVEL_ARRAY_STRIDE = 0x930D;
  1461. const GLenum GL_LOCATION = 0x930E;
  1462. const GLenum GL_LOCATION_INDEX = 0x930F;
  1463. const GLenum GL_IS_PER_PATCH = 0x92E7;
  1464. const GLenum GL_SHADER_STORAGE_BUFFER = 0x90D2;
  1465. const GLenum GL_SHADER_STORAGE_BUFFER_BINDING = 0x90D3;
  1466. const GLenum GL_SHADER_STORAGE_BUFFER_START = 0x90D4;
  1467. const GLenum GL_SHADER_STORAGE_BUFFER_SIZE = 0x90D5;
  1468. const GLenum GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 0x90D6;
  1469. const GLenum GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 0x90D7;
  1470. const GLenum GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 0x90D8;
  1471. const GLenum GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 0x90D9;
  1472. const GLenum GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 0x90DA;
  1473. const GLenum GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 0x90DB;
  1474. const GLenum GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 0x90DC;
  1475. const GLenum GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 0x90DD;
  1476. const GLenum GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 0x90DE;
  1477. const GLenum GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 0x90DF;
  1478. const GLenum GL_SHADER_STORAGE_BARRIER_BIT = 0x00002000;
  1479. const GLenum GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 0x8F39;
  1480. const GLenum GL_DEPTH_STENCIL_TEXTURE_MODE = 0x90EA;
  1481. const GLenum GL_TEXTURE_BUFFER_OFFSET = 0x919D;
  1482. const GLenum GL_TEXTURE_BUFFER_SIZE = 0x919E;
  1483. const GLenum GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 0x919F;
  1484. const GLenum GL_TEXTURE_VIEW_MIN_LEVEL = 0x82DB;
  1485. const GLenum GL_TEXTURE_VIEW_NUM_LEVELS = 0x82DC;
  1486. const GLenum GL_TEXTURE_VIEW_MIN_LAYER = 0x82DD;
  1487. const GLenum GL_TEXTURE_VIEW_NUM_LAYERS = 0x82DE;
  1488. const GLenum GL_TEXTURE_IMMUTABLE_LEVELS = 0x82DF;
  1489. const GLenum GL_VERTEX_ATTRIB_BINDING = 0x82D4;
  1490. const GLenum GL_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D5;
  1491. const GLenum GL_VERTEX_BINDING_DIVISOR = 0x82D6;
  1492. const GLenum GL_VERTEX_BINDING_OFFSET = 0x82D7;
  1493. const GLenum GL_VERTEX_BINDING_STRIDE = 0x82D8;
  1494. const GLenum GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D9;
  1495. const GLenum GL_MAX_VERTEX_ATTRIB_BINDINGS = 0x82DA;
  1496. const GLenum GL_VERTEX_BINDING_BUFFER = 0x8F4F;
  1497. const GLenum GL_MAX_VERTEX_ATTRIB_STRIDE = 0x82E5;
  1498. const GLenum GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 0x8221;
  1499. const GLenum GL_TEXTURE_BUFFER_BINDING = 0x8C2A;
  1500. const GLenum GL_MAP_PERSISTENT_BIT = 0x0040;
  1501. const GLenum GL_MAP_COHERENT_BIT = 0x0080;
  1502. const GLenum GL_DYNAMIC_STORAGE_BIT = 0x0100;
  1503. const GLenum GL_CLIENT_STORAGE_BIT = 0x0200;
  1504. const GLenum GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = 0x00004000;
  1505. const GLenum GL_BUFFER_IMMUTABLE_STORAGE = 0x821F;
  1506. const GLenum GL_BUFFER_STORAGE_FLAGS = 0x8220;
  1507. const GLenum GL_CLEAR_TEXTURE = 0x9365;
  1508. const GLenum GL_LOCATION_COMPONENT = 0x934A;
  1509. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = 0x934B;
  1510. const GLenum GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = 0x934C;
  1511. const GLenum GL_QUERY_BUFFER = 0x9192;
  1512. const GLenum GL_QUERY_BUFFER_BARRIER_BIT = 0x00008000;
  1513. const GLenum GL_QUERY_BUFFER_BINDING = 0x9193;
  1514. const GLenum GL_QUERY_RESULT_NO_WAIT = 0x9194;
  1515. const GLenum GL_MIRROR_CLAMP_TO_EDGE = 0x8743;
  1516. const GLenum GL_CONTEXT_LOST = 0x0507;
  1517. const GLenum GL_NEGATIVE_ONE_TO_ONE = 0x935E;
  1518. const GLenum GL_ZERO_TO_ONE = 0x935F;
  1519. const GLenum GL_CLIP_ORIGIN = 0x935C;
  1520. const GLenum GL_CLIP_DEPTH_MODE = 0x935D;
  1521. const GLenum GL_QUERY_WAIT_INVERTED = 0x8E17;
  1522. const GLenum GL_QUERY_NO_WAIT_INVERTED = 0x8E18;
  1523. const GLenum GL_QUERY_BY_REGION_WAIT_INVERTED = 0x8E19;
  1524. const GLenum GL_QUERY_BY_REGION_NO_WAIT_INVERTED = 0x8E1A;
  1525. const GLenum GL_MAX_CULL_DISTANCES = 0x82F9;
  1526. const GLenum GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES = 0x82FA;
  1527. const GLenum GL_TEXTURE_TARGET = 0x1006;
  1528. const GLenum GL_QUERY_TARGET = 0x82EA;
  1529. const GLenum GL_TEXTURE_BINDING = 0x82EB;
  1530. const GLenum GL_GUILTY_CONTEXT_RESET = 0x8253;
  1531. const GLenum GL_INNOCENT_CONTEXT_RESET = 0x8254;
  1532. const GLenum GL_UNKNOWN_CONTEXT_RESET = 0x8255;
  1533. const GLenum GL_RESET_NOTIFICATION_STRATEGY = 0x8256;
  1534. const GLenum GL_LOSE_CONTEXT_ON_RESET = 0x8252;
  1535. const GLenum GL_NO_RESET_NOTIFICATION = 0x8261;
  1536. const GLenum GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 0x00000004;
  1537. const GLenum GL_CONTEXT_RELEASE_BEHAVIOR = 0x82FB;
  1538. const GLenum GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x82FC;
  1539. const GLenum GL_UNSIGNED_INT64_ARB = 0x140F;
  1540. const GLenum GL_SYNC_CL_EVENT_ARB = 0x8240;
  1541. const GLenum GL_SYNC_CL_EVENT_COMPLETE_ARB = 0x8241;
  1542. const GLenum GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB = 0x9344;
  1543. const GLenum GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB = 0x90EB;
  1544. const GLenum GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB = 0x9345;
  1545. const GLenum GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB = 0x91BF;
  1546. const GLenum GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB = 0x8242;
  1547. const GLenum GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB = 0x8243;
  1548. const GLenum GL_DEBUG_CALLBACK_FUNCTION_ARB = 0x8244;
  1549. const GLenum GL_DEBUG_CALLBACK_USER_PARAM_ARB = 0x8245;
  1550. const GLenum GL_DEBUG_SOURCE_API_ARB = 0x8246;
  1551. const GLenum GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB = 0x8247;
  1552. const GLenum GL_DEBUG_SOURCE_SHADER_COMPILER_ARB = 0x8248;
  1553. const GLenum GL_DEBUG_SOURCE_THIRD_PARTY_ARB = 0x8249;
  1554. const GLenum GL_DEBUG_SOURCE_APPLICATION_ARB = 0x824A;
  1555. const GLenum GL_DEBUG_SOURCE_OTHER_ARB = 0x824B;
  1556. const GLenum GL_DEBUG_TYPE_ERROR_ARB = 0x824C;
  1557. const GLenum GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB = 0x824D;
  1558. const GLenum GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB = 0x824E;
  1559. const GLenum GL_DEBUG_TYPE_PORTABILITY_ARB = 0x824F;
  1560. const GLenum GL_DEBUG_TYPE_PERFORMANCE_ARB = 0x8250;
  1561. const GLenum GL_DEBUG_TYPE_OTHER_ARB = 0x8251;
  1562. const GLenum GL_MAX_DEBUG_MESSAGE_LENGTH_ARB = 0x9143;
  1563. const GLenum GL_MAX_DEBUG_LOGGED_MESSAGES_ARB = 0x9144;
  1564. const GLenum GL_DEBUG_LOGGED_MESSAGES_ARB = 0x9145;
  1565. const GLenum GL_DEBUG_SEVERITY_HIGH_ARB = 0x9146;
  1566. const GLenum GL_DEBUG_SEVERITY_MEDIUM_ARB = 0x9147;
  1567. const GLenum GL_DEBUG_SEVERITY_LOW_ARB = 0x9148;
  1568. const GLenum GL_BLEND_COLOR = 0x8005;
  1569. const GLenum GL_BLEND_EQUATION = 0x8009;
  1570. const GLenum GL_PARAMETER_BUFFER_ARB = 0x80EE;
  1571. const GLenum GL_PARAMETER_BUFFER_BINDING_ARB = 0x80EF;
  1572. const GLenum GL_SRGB_DECODE_ARB = 0x8299;
  1573. const GLenum GL_VERTICES_SUBMITTED_ARB = 0x82EE;
  1574. const GLenum GL_PRIMITIVES_SUBMITTED_ARB = 0x82EF;
  1575. const GLenum GL_VERTEX_SHADER_INVOCATIONS_ARB = 0x82F0;
  1576. const GLenum GL_TESS_CONTROL_SHADER_PATCHES_ARB = 0x82F1;
  1577. const GLenum GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB = 0x82F2;
  1578. const GLenum GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB = 0x82F3;
  1579. const GLenum GL_FRAGMENT_SHADER_INVOCATIONS_ARB = 0x82F4;
  1580. const GLenum GL_COMPUTE_SHADER_INVOCATIONS_ARB = 0x82F5;
  1581. const GLenum GL_CLIPPING_INPUT_PRIMITIVES_ARB = 0x82F6;
  1582. const GLenum GL_CLIPPING_OUTPUT_PRIMITIVES_ARB = 0x82F7;
  1583. const GLenum GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB = 0x00000004;
  1584. const GLenum GL_LOSE_CONTEXT_ON_RESET_ARB = 0x8252;
  1585. const GLenum GL_GUILTY_CONTEXT_RESET_ARB = 0x8253;
  1586. const GLenum GL_INNOCENT_CONTEXT_RESET_ARB = 0x8254;
  1587. const GLenum GL_UNKNOWN_CONTEXT_RESET_ARB = 0x8255;
  1588. const GLenum GL_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256;
  1589. const GLenum GL_NO_RESET_NOTIFICATION_ARB = 0x8261;
  1590. const GLenum GL_SAMPLE_SHADING_ARB = 0x8C36;
  1591. const GLenum GL_MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37;
  1592. const GLenum GL_SHADER_INCLUDE_ARB = 0x8DAE;
  1593. const GLenum GL_NAMED_STRING_LENGTH_ARB = 0x8DE9;
  1594. const GLenum GL_NAMED_STRING_TYPE_ARB = 0x8DEA;
  1595. const GLenum GL_SPARSE_STORAGE_BIT_ARB = 0x0400;
  1596. const GLenum GL_SPARSE_BUFFER_PAGE_SIZE_ARB = 0x82F8;
  1597. const GLenum GL_TEXTURE_SPARSE_ARB = 0x91A6;
  1598. const GLenum GL_VIRTUAL_PAGE_SIZE_INDEX_ARB = 0x91A7;
  1599. const GLenum GL_NUM_SPARSE_LEVELS_ARB = 0x91AA;
  1600. const GLenum GL_NUM_VIRTUAL_PAGE_SIZES_ARB = 0x91A8;
  1601. const GLenum GL_VIRTUAL_PAGE_SIZE_X_ARB = 0x9195;
  1602. const GLenum GL_VIRTUAL_PAGE_SIZE_Y_ARB = 0x9196;
  1603. const GLenum GL_VIRTUAL_PAGE_SIZE_Z_ARB = 0x9197;
  1604. const GLenum GL_MAX_SPARSE_TEXTURE_SIZE_ARB = 0x9198;
  1605. const GLenum GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB = 0x9199;
  1606. const GLenum GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB = 0x919A;
  1607. const GLenum GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB = 0x91A9;
  1608. const GLenum GL_COMPRESSED_RGBA_BPTC_UNORM_ARB = 0x8E8C;
  1609. const GLenum GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = 0x8E8D;
  1610. const GLenum GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB = 0x8E8E;
  1611. const GLenum GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB = 0x8E8F;
  1612. const GLenum GL_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x9009;
  1613. const GLenum GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = 0x900A;
  1614. const GLenum GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x900B;
  1615. const GLenum GL_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900C;
  1616. const GLenum GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB = 0x900D;
  1617. const GLenum GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900E;
  1618. const GLenum GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900F;
  1619. const GLenum GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5E;
  1620. const GLenum GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5F;
  1621. const GLenum GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB = 0x8F9F;
  1622. const GLenum GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB = 0x82EC;
  1623. const GLenum GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB = 0x82ED;
  1624. const GLenum GL_CONTEXT_ROBUST_ACCESS = 0x90F3;
  1625. const GLenum GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0;
  1626. const GLenum GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1;
  1627. const GLenum GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93B2;
  1628. const GLenum GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93B3;
  1629. const GLenum GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93B4;
  1630. const GLenum GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93B5;
  1631. const GLenum GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93B6;
  1632. const GLenum GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93B7;
  1633. const GLenum GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93B8;
  1634. const GLenum GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93B9;
  1635. const GLenum GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93BA;
  1636. const GLenum GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93BB;
  1637. const GLenum GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93BC;
  1638. const GLenum GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93BD;
  1639. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93D0;
  1640. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93D1;
  1641. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93D2;
  1642. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93D3;
  1643. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93D4;
  1644. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93D5;
  1645. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93D6;
  1646. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93D7;
  1647. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93D8;
  1648. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93D9;
  1649. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93DA;
  1650. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93DB;
  1651. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93DC;
  1652. const GLenum GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93DD;
  1653. /* End of Enumerations */
  1654.  
  1655. /* Function Typedefs */
  1656. typedef void (APIENTRYP PFNGLCULLFACEPROC) (GLenum mode);
  1657. typedef void (APIENTRYP PFNGLFRONTFACEPROC) (GLenum mode);
  1658. typedef void (APIENTRYP PFNGLHINTPROC) (GLenum target, GLenum mode);
  1659. typedef void (APIENTRYP PFNGLLINEWIDTHPROC) (GLfloat width);
  1660. typedef void (APIENTRYP PFNGLPOINTSIZEPROC) (GLfloat size);
  1661. typedef void (APIENTRYP PFNGLPOLYGONMODEPROC) (GLenum face, GLenum mode);
  1662. typedef void (APIENTRYP PFNGLSCISSORPROC) (GLint x, GLint y, GLsizei width, GLsizei height);
  1663. typedef void (APIENTRYP PFNGLTEXPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat param);
  1664. typedef void (APIENTRYP PFNGLTEXPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat * params);
  1665. typedef void (APIENTRYP PFNGLTEXPARAMETERIPROC) (GLenum target, GLenum pname, GLint param);
  1666. typedef void (APIENTRYP PFNGLTEXPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint * params);
  1667. typedef void (APIENTRYP PFNGLTEXIMAGE1DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void * pixels);
  1668. typedef void (APIENTRYP PFNGLTEXIMAGE2DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void * pixels);
  1669. typedef void (APIENTRYP PFNGLDRAWBUFFERPROC) (GLenum buf);
  1670. typedef void (APIENTRYP PFNGLCLEARPROC) (GLbitfield mask);
  1671. typedef void (APIENTRYP PFNGLCLEARCOLORPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  1672. typedef void (APIENTRYP PFNGLCLEARSTENCILPROC) (GLint s);
  1673. typedef void (APIENTRYP PFNGLCLEARDEPTHPROC) (GLdouble depth);
  1674. typedef void (APIENTRYP PFNGLSTENCILMASKPROC) (GLuint mask);
  1675. typedef void (APIENTRYP PFNGLCOLORMASKPROC) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
  1676. typedef void (APIENTRYP PFNGLDEPTHMASKPROC) (GLboolean flag);
  1677. typedef void (APIENTRYP PFNGLDISABLEPROC) (GLenum cap);
  1678. typedef void (APIENTRYP PFNGLENABLEPROC) (GLenum cap);
  1679. typedef void (APIENTRYP PFNGLFINISHPROC) (void);
  1680. typedef void (APIENTRYP PFNGLFLUSHPROC) (void);
  1681. typedef void (APIENTRYP PFNGLBLENDFUNCPROC) (GLenum sfactor, GLenum dfactor);
  1682. typedef void (APIENTRYP PFNGLLOGICOPPROC) (GLenum opcode);
  1683. typedef void (APIENTRYP PFNGLSTENCILFUNCPROC) (GLenum func, GLint ref, GLuint mask);
  1684. typedef void (APIENTRYP PFNGLSTENCILOPPROC) (GLenum fail, GLenum zfail, GLenum zpass);
  1685. typedef void (APIENTRYP PFNGLDEPTHFUNCPROC) (GLenum func);
  1686. typedef void (APIENTRYP PFNGLPIXELSTOREFPROC) (GLenum pname, GLfloat param);
  1687. typedef void (APIENTRYP PFNGLPIXELSTOREIPROC) (GLenum pname, GLint param);
  1688. typedef void (APIENTRYP PFNGLREADBUFFERPROC) (GLenum src);
  1689. typedef void (APIENTRYP PFNGLREADPIXELSPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void * pixels);
  1690. typedef void (APIENTRYP PFNGLGETBOOLEANVPROC) (GLenum pname, GLboolean * data);
  1691. typedef void (APIENTRYP PFNGLGETDOUBLEVPROC) (GLenum pname, GLdouble * data);
  1692. typedef GLenum (APIENTRYP PFNGLGETERRORPROC) (void);
  1693. typedef void (APIENTRYP PFNGLGETFLOATVPROC) (GLenum pname, GLfloat * data);
  1694. typedef void (APIENTRYP PFNGLGETINTEGERVPROC) (GLenum pname, GLint * data);
  1695. typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGPROC) (GLenum name);
  1696. typedef void (APIENTRYP PFNGLGETTEXIMAGEPROC) (GLenum target, GLint level, GLenum format, GLenum type, void * pixels);
  1697. typedef void (APIENTRYP PFNGLGETTEXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat * params);
  1698. typedef void (APIENTRYP PFNGLGETTEXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint * params);
  1699. typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERFVPROC) (GLenum target, GLint level, GLenum pname, GLfloat * params);
  1700. typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERIVPROC) (GLenum target, GLint level, GLenum pname, GLint * params);
  1701. typedef GLboolean (APIENTRYP PFNGLISENABLEDPROC) (GLenum cap);
  1702. typedef void (APIENTRYP PFNGLDEPTHRANGEPROC) (GLdouble near, GLdouble far);
  1703. typedef void (APIENTRYP PFNGLVIEWPORTPROC) (GLint x, GLint y, GLsizei width, GLsizei height);
  1704. typedef void (APIENTRYP PFNGLDRAWARRAYSPROC) (GLenum mode, GLint first, GLsizei count);
  1705. typedef void (APIENTRYP PFNGLDRAWELEMENTSPROC) (GLenum mode, GLsizei count, GLenum type, const void * indices);
  1706. typedef void (APIENTRYP PFNGLGETPOINTERVPROC) (GLenum pname, void * * params);
  1707. typedef void (APIENTRYP PFNGLPOLYGONOFFSETPROC) (GLfloat factor, GLfloat units);
  1708. typedef void (APIENTRYP PFNGLCOPYTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
  1709. typedef void (APIENTRYP PFNGLCOPYTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
  1710. typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
  1711. typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
  1712. typedef void (APIENTRYP PFNGLTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void * pixels);
  1713. typedef void (APIENTRYP PFNGLTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * pixels);
  1714. typedef void (APIENTRYP PFNGLBINDTEXTUREPROC) (GLenum target, GLuint texture);
  1715. typedef void (APIENTRYP PFNGLDELETETEXTURESPROC) (GLsizei n, const GLuint * textures);
  1716. typedef void (APIENTRYP PFNGLGENTEXTURESPROC) (GLsizei n, GLuint * textures);
  1717. typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC) (GLuint texture);
  1718. typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void * indices);
  1719. typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void * pixels);
  1720. typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * pixels);
  1721. typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
  1722. typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture);
  1723. typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLfloat value, GLboolean invert);
  1724. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void * data);
  1725. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void * data);
  1726. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void * data);
  1727. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void * data);
  1728. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void * data);
  1729. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void * data);
  1730. typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, void * img);
  1731. typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
  1732. typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint * first, const GLsizei * count, GLsizei drawcount);
  1733. typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei * count, GLenum type, const void * const * indices, GLsizei drawcount);
  1734. typedef void (APIENTRYP PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param);
  1735. typedef void (APIENTRYP PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat * params);
  1736. typedef void (APIENTRYP PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param);
  1737. typedef void (APIENTRYP PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint * params);
  1738. typedef void (APIENTRYP PFNGLBLENDCOLORPROC) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  1739. typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);
  1740. typedef void (APIENTRYP PFNGLGENQUERIESPROC) (GLsizei n, GLuint * ids);
  1741. typedef void (APIENTRYP PFNGLDELETEQUERIESPROC) (GLsizei n, const GLuint * ids);
  1742. typedef GLboolean (APIENTRYP PFNGLISQUERYPROC) (GLuint id);
  1743. typedef void (APIENTRYP PFNGLBEGINQUERYPROC) (GLenum target, GLuint id);
  1744. typedef void (APIENTRYP PFNGLENDQUERYPROC) (GLenum target);
  1745. typedef void (APIENTRYP PFNGLGETQUERYIVPROC) (GLenum target, GLenum pname, GLint * params);
  1746. typedef void (APIENTRYP PFNGLGETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint * params);
  1747. typedef void (APIENTRYP PFNGLGETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint * params);
  1748. typedef void (APIENTRYP PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer);
  1749. typedef void (APIENTRYP PFNGLDELETEBUFFERSPROC) (GLsizei n, const GLuint * buffers);
  1750. typedef void (APIENTRYP PFNGLGENBUFFERSPROC) (GLsizei n, GLuint * buffers);
  1751. typedef GLboolean (APIENTRYP PFNGLISBUFFERPROC) (GLuint buffer);
  1752. typedef void (APIENTRYP PFNGLBUFFERDATAPROC) (GLenum target, GLsizeiptr size, const void * data, GLenum usage);
  1753. typedef void (APIENTRYP PFNGLBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const void * data);
  1754. typedef void (APIENTRYP PFNGLGETBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, void * data);
  1755. typedef void * (APIENTRYP PFNGLMAPBUFFERPROC) (GLenum target, GLenum access);
  1756. typedef GLboolean (APIENTRYP PFNGLUNMAPBUFFERPROC) (GLenum target);
  1757. typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint * params);
  1758. typedef void (APIENTRYP PFNGLGETBUFFERPOINTERVPROC) (GLenum target, GLenum pname, void * * params);
  1759. typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEPROC) (GLenum modeRGB, GLenum modeAlpha);
  1760. typedef void (APIENTRYP PFNGLDRAWBUFFERSPROC) (GLsizei n, const GLenum * bufs);
  1761. typedef void (APIENTRYP PFNGLSTENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
  1762. typedef void (APIENTRYP PFNGLSTENCILFUNCSEPARATEPROC) (GLenum face, GLenum func, GLint ref, GLuint mask);
  1763. typedef void (APIENTRYP PFNGLSTENCILMASKSEPARATEPROC) (GLenum face, GLuint mask);
  1764. typedef void (APIENTRYP PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader);
  1765. typedef void (APIENTRYP PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar * name);
  1766. typedef void (APIENTRYP PFNGLCOMPILESHADERPROC) (GLuint shader);
  1767. typedef GLuint (APIENTRYP PFNGLCREATEPROGRAMPROC) (void);
  1768. typedef GLuint (APIENTRYP PFNGLCREATESHADERPROC) (GLenum type);
  1769. typedef void (APIENTRYP PFNGLDELETEPROGRAMPROC) (GLuint program);
  1770. typedef void (APIENTRYP PFNGLDELETESHADERPROC) (GLuint shader);
  1771. typedef void (APIENTRYP PFNGLDETACHSHADERPROC) (GLuint program, GLuint shader);
  1772. typedef void (APIENTRYP PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint index);
  1773. typedef void (APIENTRYP PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index);
  1774. typedef void (APIENTRYP PFNGLGETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name);
  1775. typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name);
  1776. typedef void (APIENTRYP PFNGLGETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei * count, GLuint * shaders);
  1777. typedef GLint (APIENTRYP PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const GLchar * name);
  1778. typedef void (APIENTRYP PFNGLGETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint * params);
  1779. typedef void (APIENTRYP PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei * length, GLchar * infoLog);
  1780. typedef void (APIENTRYP PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint * params);
  1781. typedef void (APIENTRYP PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * infoLog);
  1782. typedef void (APIENTRYP PFNGLGETSHADERSOURCEPROC) (GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * source);
  1783. typedef GLint (APIENTRYP PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const GLchar * name);
  1784. typedef void (APIENTRYP PFNGLGETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat * params);
  1785. typedef void (APIENTRYP PFNGLGETUNIFORMIVPROC) (GLuint program, GLint location, GLint * params);
  1786. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBDVPROC) (GLuint index, GLenum pname, GLdouble * params);
  1787. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBFVPROC) (GLuint index, GLenum pname, GLfloat * params);
  1788. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIVPROC) (GLuint index, GLenum pname, GLint * params);
  1789. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint index, GLenum pname, void * * pointer);
  1790. typedef GLboolean (APIENTRYP PFNGLISPROGRAMPROC) (GLuint program);
  1791. typedef GLboolean (APIENTRYP PFNGLISSHADERPROC) (GLuint shader);
  1792. typedef void (APIENTRYP PFNGLLINKPROGRAMPROC) (GLuint program);
  1793. typedef void (APIENTRYP PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar * const * string, const GLint * length);
  1794. typedef void (APIENTRYP PFNGLUSEPROGRAMPROC) (GLuint program);
  1795. typedef void (APIENTRYP PFNGLUNIFORM1FPROC) (GLint location, GLfloat v0);
  1796. typedef void (APIENTRYP PFNGLUNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1);
  1797. typedef void (APIENTRYP PFNGLUNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
  1798. typedef void (APIENTRYP PFNGLUNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
  1799. typedef void (APIENTRYP PFNGLUNIFORM1IPROC) (GLint location, GLint v0);
  1800. typedef void (APIENTRYP PFNGLUNIFORM2IPROC) (GLint location, GLint v0, GLint v1);
  1801. typedef void (APIENTRYP PFNGLUNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2);
  1802. typedef void (APIENTRYP PFNGLUNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
  1803. typedef void (APIENTRYP PFNGLUNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat * value);
  1804. typedef void (APIENTRYP PFNGLUNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat * value);
  1805. typedef void (APIENTRYP PFNGLUNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat * value);
  1806. typedef void (APIENTRYP PFNGLUNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat * value);
  1807. typedef void (APIENTRYP PFNGLUNIFORM1IVPROC) (GLint location, GLsizei count, const GLint * value);
  1808. typedef void (APIENTRYP PFNGLUNIFORM2IVPROC) (GLint location, GLsizei count, const GLint * value);
  1809. typedef void (APIENTRYP PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint * value);
  1810. typedef void (APIENTRYP PFNGLUNIFORM4IVPROC) (GLint location, GLsizei count, const GLint * value);
  1811. typedef void (APIENTRYP PFNGLUNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1812. typedef void (APIENTRYP PFNGLUNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1813. typedef void (APIENTRYP PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1814. typedef void (APIENTRYP PFNGLVALIDATEPROGRAMPROC) (GLuint program);
  1815. typedef void (APIENTRYP PFNGLVERTEXATTRIB1DPROC) (GLuint index, GLdouble x);
  1816. typedef void (APIENTRYP PFNGLVERTEXATTRIB1DVPROC) (GLuint index, const GLdouble * v);
  1817. typedef void (APIENTRYP PFNGLVERTEXATTRIB1FPROC) (GLuint index, GLfloat x);
  1818. typedef void (APIENTRYP PFNGLVERTEXATTRIB1FVPROC) (GLuint index, const GLfloat * v);
  1819. typedef void (APIENTRYP PFNGLVERTEXATTRIB1SPROC) (GLuint index, GLshort x);
  1820. typedef void (APIENTRYP PFNGLVERTEXATTRIB1SVPROC) (GLuint index, const GLshort * v);
  1821. typedef void (APIENTRYP PFNGLVERTEXATTRIB2DPROC) (GLuint index, GLdouble x, GLdouble y);
  1822. typedef void (APIENTRYP PFNGLVERTEXATTRIB2DVPROC) (GLuint index, const GLdouble * v);
  1823. typedef void (APIENTRYP PFNGLVERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y);
  1824. typedef void (APIENTRYP PFNGLVERTEXATTRIB2FVPROC) (GLuint index, const GLfloat * v);
  1825. typedef void (APIENTRYP PFNGLVERTEXATTRIB2SPROC) (GLuint index, GLshort x, GLshort y);
  1826. typedef void (APIENTRYP PFNGLVERTEXATTRIB2SVPROC) (GLuint index, const GLshort * v);
  1827. typedef void (APIENTRYP PFNGLVERTEXATTRIB3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
  1828. typedef void (APIENTRYP PFNGLVERTEXATTRIB3DVPROC) (GLuint index, const GLdouble * v);
  1829. typedef void (APIENTRYP PFNGLVERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
  1830. typedef void (APIENTRYP PFNGLVERTEXATTRIB3FVPROC) (GLuint index, const GLfloat * v);
  1831. typedef void (APIENTRYP PFNGLVERTEXATTRIB3SPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
  1832. typedef void (APIENTRYP PFNGLVERTEXATTRIB3SVPROC) (GLuint index, const GLshort * v);
  1833. typedef void (APIENTRYP PFNGLVERTEXATTRIB4NBVPROC) (GLuint index, const GLbyte * v);
  1834. typedef void (APIENTRYP PFNGLVERTEXATTRIB4NIVPROC) (GLuint index, const GLint * v);
  1835. typedef void (APIENTRYP PFNGLVERTEXATTRIB4NSVPROC) (GLuint index, const GLshort * v);
  1836. typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
  1837. typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBVPROC) (GLuint index, const GLubyte * v);
  1838. typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUIVPROC) (GLuint index, const GLuint * v);
  1839. typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUSVPROC) (GLuint index, const GLushort * v);
  1840. typedef void (APIENTRYP PFNGLVERTEXATTRIB4BVPROC) (GLuint index, const GLbyte * v);
  1841. typedef void (APIENTRYP PFNGLVERTEXATTRIB4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  1842. typedef void (APIENTRYP PFNGLVERTEXATTRIB4DVPROC) (GLuint index, const GLdouble * v);
  1843. typedef void (APIENTRYP PFNGLVERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
  1844. typedef void (APIENTRYP PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat * v);
  1845. typedef void (APIENTRYP PFNGLVERTEXATTRIB4IVPROC) (GLuint index, const GLint * v);
  1846. typedef void (APIENTRYP PFNGLVERTEXATTRIB4SPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
  1847. typedef void (APIENTRYP PFNGLVERTEXATTRIB4SVPROC) (GLuint index, const GLshort * v);
  1848. typedef void (APIENTRYP PFNGLVERTEXATTRIB4UBVPROC) (GLuint index, const GLubyte * v);
  1849. typedef void (APIENTRYP PFNGLVERTEXATTRIB4UIVPROC) (GLuint index, const GLuint * v);
  1850. typedef void (APIENTRYP PFNGLVERTEXATTRIB4USVPROC) (GLuint index, const GLushort * v);
  1851. typedef void (APIENTRYP PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void * pointer);
  1852. typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1853. typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1854. typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1855. typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1856. typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1857. typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  1858. typedef void (APIENTRYP PFNGLCOLORMASKIPROC) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
  1859. typedef void (APIENTRYP PFNGLGETBOOLEANI_VPROC) (GLenum target, GLuint index, GLboolean * data);
  1860. typedef void (APIENTRYP PFNGLGETINTEGERI_VPROC) (GLenum target, GLuint index, GLint * data);
  1861. typedef void (APIENTRYP PFNGLENABLEIPROC) (GLenum target, GLuint index);
  1862. typedef void (APIENTRYP PFNGLDISABLEIPROC) (GLenum target, GLuint index);
  1863. typedef GLboolean (APIENTRYP PFNGLISENABLEDIPROC) (GLenum target, GLuint index);
  1864. typedef void (APIENTRYP PFNGLBEGINTRANSFORMFEEDBACKPROC) (GLenum primitiveMode);
  1865. typedef void (APIENTRYP PFNGLENDTRANSFORMFEEDBACKPROC) (void);
  1866. typedef void (APIENTRYP PFNGLBINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
  1867. typedef void (APIENTRYP PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer);
  1868. typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKVARYINGSPROC) (GLuint program, GLsizei count, const GLchar * const * varyings, GLenum bufferMode);
  1869. typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name);
  1870. typedef void (APIENTRYP PFNGLCLAMPCOLORPROC) (GLenum target, GLenum clamp);
  1871. typedef void (APIENTRYP PFNGLBEGINCONDITIONALRENDERPROC) (GLuint id, GLenum mode);
  1872. typedef void (APIENTRYP PFNGLENDCONDITIONALRENDERPROC) (void);
  1873. typedef void (APIENTRYP PFNGLVERTEXATTRIBIPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void * pointer);
  1874. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIIVPROC) (GLuint index, GLenum pname, GLint * params);
  1875. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIUIVPROC) (GLuint index, GLenum pname, GLuint * params);
  1876. typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IPROC) (GLuint index, GLint x);
  1877. typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IPROC) (GLuint index, GLint x, GLint y);
  1878. typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IPROC) (GLuint index, GLint x, GLint y, GLint z);
  1879. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);
  1880. typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIPROC) (GLuint index, GLuint x);
  1881. typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIPROC) (GLuint index, GLuint x, GLuint y);
  1882. typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z);
  1883. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
  1884. typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IVPROC) (GLuint index, const GLint * v);
  1885. typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IVPROC) (GLuint index, const GLint * v);
  1886. typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IVPROC) (GLuint index, const GLint * v);
  1887. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IVPROC) (GLuint index, const GLint * v);
  1888. typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIVPROC) (GLuint index, const GLuint * v);
  1889. typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIVPROC) (GLuint index, const GLuint * v);
  1890. typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIVPROC) (GLuint index, const GLuint * v);
  1891. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIVPROC) (GLuint index, const GLuint * v);
  1892. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4BVPROC) (GLuint index, const GLbyte * v);
  1893. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4SVPROC) (GLuint index, const GLshort * v);
  1894. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UBVPROC) (GLuint index, const GLubyte * v);
  1895. typedef void (APIENTRYP PFNGLVERTEXATTRIBI4USVPROC) (GLuint index, const GLushort * v);
  1896. typedef void (APIENTRYP PFNGLGETUNIFORMUIVPROC) (GLuint program, GLint location, GLuint * params);
  1897. typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONPROC) (GLuint program, GLuint color, const GLchar * name);
  1898. typedef GLint (APIENTRYP PFNGLGETFRAGDATALOCATIONPROC) (GLuint program, const GLchar * name);
  1899. typedef void (APIENTRYP PFNGLUNIFORM1UIPROC) (GLint location, GLuint v0);
  1900. typedef void (APIENTRYP PFNGLUNIFORM2UIPROC) (GLint location, GLuint v0, GLuint v1);
  1901. typedef void (APIENTRYP PFNGLUNIFORM3UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);
  1902. typedef void (APIENTRYP PFNGLUNIFORM4UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
  1903. typedef void (APIENTRYP PFNGLUNIFORM1UIVPROC) (GLint location, GLsizei count, const GLuint * value);
  1904. typedef void (APIENTRYP PFNGLUNIFORM2UIVPROC) (GLint location, GLsizei count, const GLuint * value);
  1905. typedef void (APIENTRYP PFNGLUNIFORM3UIVPROC) (GLint location, GLsizei count, const GLuint * value);
  1906. typedef void (APIENTRYP PFNGLUNIFORM4UIVPROC) (GLint location, GLsizei count, const GLuint * value);
  1907. typedef void (APIENTRYP PFNGLTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, const GLint * params);
  1908. typedef void (APIENTRYP PFNGLTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, const GLuint * params);
  1909. typedef void (APIENTRYP PFNGLGETTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, GLint * params);
  1910. typedef void (APIENTRYP PFNGLGETTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, GLuint * params);
  1911. typedef void (APIENTRYP PFNGLCLEARBUFFERIVPROC) (GLenum buffer, GLint drawbuffer, const GLint * value);
  1912. typedef void (APIENTRYP PFNGLCLEARBUFFERUIVPROC) (GLenum buffer, GLint drawbuffer, const GLuint * value);
  1913. typedef void (APIENTRYP PFNGLCLEARBUFFERFVPROC) (GLenum buffer, GLint drawbuffer, const GLfloat * value);
  1914. typedef void (APIENTRYP PFNGLCLEARBUFFERFIPROC) (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
  1915. typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGIPROC) (GLenum name, GLuint index);
  1916. typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFERPROC) (GLuint renderbuffer);
  1917. typedef void (APIENTRYP PFNGLBINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer);
  1918. typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSPROC) (GLsizei n, const GLuint * renderbuffers);
  1919. typedef void (APIENTRYP PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint * renderbuffers);
  1920. typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
  1921. typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint * params);
  1922. typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFERPROC) (GLuint framebuffer);
  1923. typedef void (APIENTRYP PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer);
  1924. typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint * framebuffers);
  1925. typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSPROC) (GLsizei n, GLuint * framebuffers);
  1926. typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target);
  1927. typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
  1928. typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
  1929. typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
  1930. typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
  1931. typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint * params);
  1932. typedef void (APIENTRYP PFNGLGENERATEMIPMAPPROC) (GLenum target);
  1933. typedef void (APIENTRYP PFNGLBLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
  1934. typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
  1935. typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURELAYERPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
  1936. typedef void * (APIENTRYP PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
  1937. typedef void (APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
  1938. typedef void (APIENTRYP PFNGLBINDVERTEXARRAYPROC) (GLuint array);
  1939. typedef void (APIENTRYP PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint * arrays);
  1940. typedef void (APIENTRYP PFNGLGENVERTEXARRAYSPROC) (GLsizei n, GLuint * arrays);
  1941. typedef GLboolean (APIENTRYP PFNGLISVERTEXARRAYPROC) (GLuint array);
  1942. typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
  1943. typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount);
  1944. typedef void (APIENTRYP PFNGLTEXBUFFERPROC) (GLenum target, GLenum internalformat, GLuint buffer);
  1945. typedef void (APIENTRYP PFNGLPRIMITIVERESTARTINDEXPROC) (GLuint index);
  1946. typedef void (APIENTRYP PFNGLCOPYBUFFERSUBDATAPROC) (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
  1947. typedef void (APIENTRYP PFNGLGETUNIFORMINDICESPROC) (GLuint program, GLsizei uniformCount, const GLchar * const * uniformNames, GLuint * uniformIndices);
  1948. typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMSIVPROC) (GLuint program, GLsizei uniformCount, const GLuint * uniformIndices, GLenum pname, GLint * params);
  1949. typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMNAMEPROC) (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei * length, GLchar * uniformName);
  1950. typedef GLuint (APIENTRYP PFNGLGETUNIFORMBLOCKINDEXPROC) (GLuint program, const GLchar * uniformBlockName);
  1951. typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKIVPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint * params);
  1952. typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei * length, GLchar * uniformBlockName);
  1953. typedef void (APIENTRYP PFNGLUNIFORMBLOCKBINDINGPROC) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
  1954. typedef void (APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void * indices, GLint basevertex);
  1955. typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void * indices, GLint basevertex);
  1956. typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLint basevertex);
  1957. typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, const GLsizei * count, GLenum type, const void * const * indices, GLsizei drawcount, const GLint * basevertex);
  1958. typedef void (APIENTRYP PFNGLPROVOKINGVERTEXPROC) (GLenum mode);
  1959. typedef GLsync (APIENTRYP PFNGLFENCESYNCPROC) (GLenum condition, GLbitfield flags);
  1960. typedef GLboolean (APIENTRYP PFNGLISSYNCPROC) (GLsync sync);
  1961. typedef void (APIENTRYP PFNGLDELETESYNCPROC) (GLsync sync);
  1962. typedef GLenum (APIENTRYP PFNGLCLIENTWAITSYNCPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
  1963. typedef void (APIENTRYP PFNGLWAITSYNCPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
  1964. typedef void (APIENTRYP PFNGLGETINTEGER64VPROC) (GLenum pname, GLint64 * data);
  1965. typedef void (APIENTRYP PFNGLGETSYNCIVPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values);
  1966. typedef void (APIENTRYP PFNGLGETINTEGER64I_VPROC) (GLenum target, GLuint index, GLint64 * data);
  1967. typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERI64VPROC) (GLenum target, GLenum pname, GLint64 * params);
  1968. typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTUREPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
  1969. typedef void (APIENTRYP PFNGLTEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
  1970. typedef void (APIENTRYP PFNGLTEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
  1971. typedef void (APIENTRYP PFNGLGETMULTISAMPLEFVPROC) (GLenum pname, GLuint index, GLfloat * val);
  1972. typedef void (APIENTRYP PFNGLSAMPLEMASKIPROC) (GLuint maskNumber, GLbitfield mask);
  1973. typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONINDEXEDPROC) (GLuint program, GLuint colorNumber, GLuint index, const GLchar * name);
  1974. typedef GLint (APIENTRYP PFNGLGETFRAGDATAINDEXPROC) (GLuint program, const GLchar * name);
  1975. typedef void (APIENTRYP PFNGLGENSAMPLERSPROC) (GLsizei count, GLuint * samplers);
  1976. typedef void (APIENTRYP PFNGLDELETESAMPLERSPROC) (GLsizei count, const GLuint * samplers);
  1977. typedef GLboolean (APIENTRYP PFNGLISSAMPLERPROC) (GLuint sampler);
  1978. typedef void (APIENTRYP PFNGLBINDSAMPLERPROC) (GLuint unit, GLuint sampler);
  1979. typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIPROC) (GLuint sampler, GLenum pname, GLint param);
  1980. typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, const GLint * param);
  1981. typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFPROC) (GLuint sampler, GLenum pname, GLfloat param);
  1982. typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, const GLfloat * param);
  1983. typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, const GLint * param);
  1984. typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, const GLuint * param);
  1985. typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, GLint * params);
  1986. typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, GLint * params);
  1987. typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, GLfloat * params);
  1988. typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, GLuint * params);
  1989. typedef void (APIENTRYP PFNGLQUERYCOUNTERPROC) (GLuint id, GLenum target);
  1990. typedef void (APIENTRYP PFNGLGETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64 * params);
  1991. typedef void (APIENTRYP PFNGLGETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64 * params);
  1992. typedef void (APIENTRYP PFNGLVERTEXATTRIBDIVISORPROC) (GLuint index, GLuint divisor);
  1993. typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
  1994. typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint * value);
  1995. typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
  1996. typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint * value);
  1997. typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
  1998. typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint * value);
  1999. typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
  2000. typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint * value);
  2001. typedef void (APIENTRYP PFNGLMINSAMPLESHADINGPROC) (GLfloat value);
  2002. typedef void (APIENTRYP PFNGLBLENDEQUATIONIPROC) (GLuint buf, GLenum mode);
  2003. typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEIPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
  2004. typedef void (APIENTRYP PFNGLBLENDFUNCIPROC) (GLuint buf, GLenum src, GLenum dst);
  2005. typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
  2006. typedef void (APIENTRYP PFNGLDRAWARRAYSINDIRECTPROC) (GLenum mode, const void * indirect);
  2007. typedef void (APIENTRYP PFNGLDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void * indirect);
  2008. typedef void (APIENTRYP PFNGLUNIFORM1DPROC) (GLint location, GLdouble x);
  2009. typedef void (APIENTRYP PFNGLUNIFORM2DPROC) (GLint location, GLdouble x, GLdouble y);
  2010. typedef void (APIENTRYP PFNGLUNIFORM3DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z);
  2011. typedef void (APIENTRYP PFNGLUNIFORM4DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  2012. typedef void (APIENTRYP PFNGLUNIFORM1DVPROC) (GLint location, GLsizei count, const GLdouble * value);
  2013. typedef void (APIENTRYP PFNGLUNIFORM2DVPROC) (GLint location, GLsizei count, const GLdouble * value);
  2014. typedef void (APIENTRYP PFNGLUNIFORM3DVPROC) (GLint location, GLsizei count, const GLdouble * value);
  2015. typedef void (APIENTRYP PFNGLUNIFORM4DVPROC) (GLint location, GLsizei count, const GLdouble * value);
  2016. typedef void (APIENTRYP PFNGLUNIFORMMATRIX2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2017. typedef void (APIENTRYP PFNGLUNIFORMMATRIX3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2018. typedef void (APIENTRYP PFNGLUNIFORMMATRIX4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2019. typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2020. typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2021. typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2022. typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2023. typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2024. typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2025. typedef void (APIENTRYP PFNGLGETUNIFORMDVPROC) (GLuint program, GLint location, GLdouble * params);
  2026. typedef GLint (APIENTRYP PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint program, GLenum shadertype, const GLchar * name);
  2027. typedef GLuint (APIENTRYP PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, GLenum shadertype, const GLchar * name);
  2028. typedef void (APIENTRYP PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC) (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint * values);
  2029. typedef void (APIENTRYP PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei * length, GLchar * name);
  2030. typedef void (APIENTRYP PFNGLGETACTIVESUBROUTINENAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei * length, GLchar * name);
  2031. typedef void (APIENTRYP PFNGLUNIFORMSUBROUTINESUIVPROC) (GLenum shadertype, GLsizei count, const GLuint * indices);
  2032. typedef void (APIENTRYP PFNGLGETUNIFORMSUBROUTINEUIVPROC) (GLenum shadertype, GLint location, GLuint * params);
  2033. typedef void (APIENTRYP PFNGLGETPROGRAMSTAGEIVPROC) (GLuint program, GLenum shadertype, GLenum pname, GLint * values);
  2034. typedef void (APIENTRYP PFNGLPATCHPARAMETERIPROC) (GLenum pname, GLint value);
  2035. typedef void (APIENTRYP PFNGLPATCHPARAMETERFVPROC) (GLenum pname, const GLfloat * values);
  2036. typedef void (APIENTRYP PFNGLBINDTRANSFORMFEEDBACKPROC) (GLenum target, GLuint id);
  2037. typedef void (APIENTRYP PFNGLDELETETRANSFORMFEEDBACKSPROC) (GLsizei n, const GLuint * ids);
  2038. typedef void (APIENTRYP PFNGLGENTRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint * ids);
  2039. typedef GLboolean (APIENTRYP PFNGLISTRANSFORMFEEDBACKPROC) (GLuint id);
  2040. typedef void (APIENTRYP PFNGLPAUSETRANSFORMFEEDBACKPROC) (void);
  2041. typedef void (APIENTRYP PFNGLRESUMETRANSFORMFEEDBACKPROC) (void);
  2042. typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKPROC) (GLenum mode, GLuint id);
  2043. typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC) (GLenum mode, GLuint id, GLuint stream);
  2044. typedef void (APIENTRYP PFNGLBEGINQUERYINDEXEDPROC) (GLenum target, GLuint index, GLuint id);
  2045. typedef void (APIENTRYP PFNGLENDQUERYINDEXEDPROC) (GLenum target, GLuint index);
  2046. typedef void (APIENTRYP PFNGLGETQUERYINDEXEDIVPROC) (GLenum target, GLuint index, GLenum pname, GLint * params);
  2047. typedef void (APIENTRYP PFNGLRELEASESHADERCOMPILERPROC) (void);
  2048. typedef void (APIENTRYP PFNGLSHADERBINARYPROC) (GLsizei count, const GLuint * shaders, GLenum binaryformat, const void * binary, GLsizei length);
  2049. typedef void (APIENTRYP PFNGLGETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision);
  2050. typedef void (APIENTRYP PFNGLDEPTHRANGEFPROC) (GLfloat n, GLfloat f);
  2051. typedef void (APIENTRYP PFNGLCLEARDEPTHFPROC) (GLfloat d);
  2052. typedef void (APIENTRYP PFNGLGETPROGRAMBINARYPROC) (GLuint program, GLsizei bufSize, GLsizei * length, GLenum * binaryFormat, void * binary);
  2053. typedef void (APIENTRYP PFNGLPROGRAMBINARYPROC) (GLuint program, GLenum binaryFormat, const void * binary, GLsizei length);
  2054. typedef void (APIENTRYP PFNGLPROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value);
  2055. typedef void (APIENTRYP PFNGLUSEPROGRAMSTAGESPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
  2056. typedef void (APIENTRYP PFNGLACTIVESHADERPROGRAMPROC) (GLuint pipeline, GLuint program);
  2057. typedef GLuint (APIENTRYP PFNGLCREATESHADERPROGRAMVPROC) (GLenum type, GLsizei count, const GLchar * const * strings);
  2058. typedef void (APIENTRYP PFNGLBINDPROGRAMPIPELINEPROC) (GLuint pipeline);
  2059. typedef void (APIENTRYP PFNGLDELETEPROGRAMPIPELINESPROC) (GLsizei n, const GLuint * pipelines);
  2060. typedef void (APIENTRYP PFNGLGENPROGRAMPIPELINESPROC) (GLsizei n, GLuint * pipelines);
  2061. typedef GLboolean (APIENTRYP PFNGLISPROGRAMPIPELINEPROC) (GLuint pipeline);
  2062. typedef void (APIENTRYP PFNGLGETPROGRAMPIPELINEIVPROC) (GLuint pipeline, GLenum pname, GLint * params);
  2063. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1IPROC) (GLuint program, GLint location, GLint v0);
  2064. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1IVPROC) (GLuint program, GLint location, GLsizei count, const GLint * value);
  2065. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1FPROC) (GLuint program, GLint location, GLfloat v0);
  2066. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat * value);
  2067. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1DPROC) (GLuint program, GLint location, GLdouble v0);
  2068. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble * value);
  2069. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1UIPROC) (GLuint program, GLint location, GLuint v0);
  2070. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM1UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint * value);
  2071. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2IPROC) (GLuint program, GLint location, GLint v0, GLint v1);
  2072. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2IVPROC) (GLuint program, GLint location, GLsizei count, const GLint * value);
  2073. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
  2074. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat * value);
  2075. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1);
  2076. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble * value);
  2077. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);
  2078. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM2UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint * value);
  2079. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
  2080. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3IVPROC) (GLuint program, GLint location, GLsizei count, const GLint * value);
  2081. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
  2082. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat * value);
  2083. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
  2084. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble * value);
  2085. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
  2086. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM3UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint * value);
  2087. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
  2088. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4IVPROC) (GLuint program, GLint location, GLsizei count, const GLint * value);
  2089. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
  2090. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat * value);
  2091. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
  2092. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble * value);
  2093. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
  2094. typedef void (APIENTRYP PFNGLPROGRAMUNIFORM4UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint * value);
  2095. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2096. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2097. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2098. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2099. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2100. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2101. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2102. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2103. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2104. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2105. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2106. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value);
  2107. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2108. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2109. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2110. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2111. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2112. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value);
  2113. typedef void (APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEPROC) (GLuint pipeline);
  2114. typedef void (APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGPROC) (GLuint pipeline, GLsizei bufSize, GLsizei * length, GLchar * infoLog);
  2115. typedef void (APIENTRYP PFNGLVERTEXATTRIBL1DPROC) (GLuint index, GLdouble x);
  2116. typedef void (APIENTRYP PFNGLVERTEXATTRIBL2DPROC) (GLuint index, GLdouble x, GLdouble y);
  2117. typedef void (APIENTRYP PFNGLVERTEXATTRIBL3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
  2118. typedef void (APIENTRYP PFNGLVERTEXATTRIBL4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  2119. typedef void (APIENTRYP PFNGLVERTEXATTRIBL1DVPROC) (GLuint index, const GLdouble * v);
  2120. typedef void (APIENTRYP PFNGLVERTEXATTRIBL2DVPROC) (GLuint index, const GLdouble * v);
  2121. typedef void (APIENTRYP PFNGLVERTEXATTRIBL3DVPROC) (GLuint index, const GLdouble * v);
  2122. typedef void (APIENTRYP PFNGLVERTEXATTRIBL4DVPROC) (GLuint index, const GLdouble * v);
  2123. typedef void (APIENTRYP PFNGLVERTEXATTRIBLPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void * pointer);
  2124. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBLDVPROC) (GLuint index, GLenum pname, GLdouble * params);
  2125. typedef void (APIENTRYP PFNGLVIEWPORTARRAYVPROC) (GLuint first, GLsizei count, const GLfloat * v);
  2126. typedef void (APIENTRYP PFNGLVIEWPORTINDEXEDFPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
  2127. typedef void (APIENTRYP PFNGLVIEWPORTINDEXEDFVPROC) (GLuint index, const GLfloat * v);
  2128. typedef void (APIENTRYP PFNGLSCISSORARRAYVPROC) (GLuint first, GLsizei count, const GLint * v);
  2129. typedef void (APIENTRYP PFNGLSCISSORINDEXEDPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
  2130. typedef void (APIENTRYP PFNGLSCISSORINDEXEDVPROC) (GLuint index, const GLint * v);
  2131. typedef void (APIENTRYP PFNGLDEPTHRANGEARRAYVPROC) (GLuint first, GLsizei count, const GLdouble * v);
  2132. typedef void (APIENTRYP PFNGLDEPTHRANGEINDEXEDPROC) (GLuint index, GLdouble n, GLdouble f);
  2133. typedef void (APIENTRYP PFNGLGETFLOATI_VPROC) (GLenum target, GLuint index, GLfloat * data);
  2134. typedef void (APIENTRYP PFNGLGETDOUBLEI_VPROC) (GLenum target, GLuint index, GLdouble * data);
  2135. typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
  2136. typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLuint baseinstance);
  2137. typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
  2138. typedef void (APIENTRYP PFNGLGETINTERNALFORMATIVPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint * params);
  2139. typedef void (APIENTRYP PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC) (GLuint program, GLuint bufferIndex, GLenum pname, GLint * params);
  2140. typedef void (APIENTRYP PFNGLBINDIMAGETEXTUREPROC) (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
  2141. typedef void (APIENTRYP PFNGLMEMORYBARRIERPROC) (GLbitfield barriers);
  2142. typedef void (APIENTRYP PFNGLTEXSTORAGE1DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
  2143. typedef void (APIENTRYP PFNGLTEXSTORAGE2DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
  2144. typedef void (APIENTRYP PFNGLTEXSTORAGE3DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
  2145. typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC) (GLenum mode, GLuint id, GLsizei instancecount);
  2146. typedef void (APIENTRYP PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC) (GLenum mode, GLuint id, GLuint stream, GLsizei instancecount);
  2147. typedef void (APIENTRYP GLDEBUGPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar * message, const void * userParam);
  2148. typedef void (APIENTRYP PFNGLCLEARBUFFERDATAPROC) (GLenum target, GLenum internalformat, GLenum format, GLenum type, const void * data);
  2149. typedef void (APIENTRYP PFNGLCLEARBUFFERSUBDATAPROC) (GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void * data);
  2150. typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
  2151. typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEINDIRECTPROC) (GLintptr indirect);
  2152. typedef void (APIENTRYP PFNGLCOPYIMAGESUBDATAPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth);
  2153. typedef void (APIENTRYP PFNGLFRAMEBUFFERPARAMETERIPROC) (GLenum target, GLenum pname, GLint param);
  2154. typedef void (APIENTRYP PFNGLGETFRAMEBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint * params);
  2155. typedef void (APIENTRYP PFNGLGETINTERNALFORMATI64VPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 * params);
  2156. typedef void (APIENTRYP PFNGLINVALIDATETEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth);
  2157. typedef void (APIENTRYP PFNGLINVALIDATETEXIMAGEPROC) (GLuint texture, GLint level);
  2158. typedef void (APIENTRYP PFNGLINVALIDATEBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);
  2159. typedef void (APIENTRYP PFNGLINVALIDATEBUFFERDATAPROC) (GLuint buffer);
  2160. typedef void (APIENTRYP PFNGLINVALIDATEFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum * attachments);
  2161. typedef void (APIENTRYP PFNGLINVALIDATESUBFRAMEBUFFERPROC) (GLenum target, GLsizei numAttachments, const GLenum * attachments, GLint x, GLint y, GLsizei width, GLsizei height);
  2162. typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTPROC) (GLenum mode, const void * indirect, GLsizei drawcount, GLsizei stride);
  2163. typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void * indirect, GLsizei drawcount, GLsizei stride);
  2164. typedef void (APIENTRYP PFNGLGETPROGRAMINTERFACEIVPROC) (GLuint program, GLenum programInterface, GLenum pname, GLint * params);
  2165. typedef GLuint (APIENTRYP PFNGLGETPROGRAMRESOURCEINDEXPROC) (GLuint program, GLenum programInterface, const GLchar * name);
  2166. typedef void (APIENTRYP PFNGLGETPROGRAMRESOURCENAMEPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei * length, GLchar * name);
  2167. typedef void (APIENTRYP PFNGLGETPROGRAMRESOURCEIVPROC) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum * props, GLsizei bufSize, GLsizei * length, GLint * params);
  2168. typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONPROC) (GLuint program, GLenum programInterface, const GLchar * name);
  2169. typedef GLint (APIENTRYP PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC) (GLuint program, GLenum programInterface, const GLchar * name);
  2170. typedef void (APIENTRYP PFNGLSHADERSTORAGEBLOCKBINDINGPROC) (GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding);
  2171. typedef void (APIENTRYP PFNGLTEXBUFFERRANGEPROC) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
  2172. typedef void (APIENTRYP PFNGLTEXSTORAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
  2173. typedef void (APIENTRYP PFNGLTEXSTORAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
  2174. typedef void (APIENTRYP PFNGLTEXTUREVIEWPROC) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
  2175. typedef void (APIENTRYP PFNGLBINDVERTEXBUFFERPROC) (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
  2176. typedef void (APIENTRYP PFNGLVERTEXATTRIBFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
  2177. typedef void (APIENTRYP PFNGLVERTEXATTRIBIFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
  2178. typedef void (APIENTRYP PFNGLVERTEXATTRIBLFORMATPROC) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
  2179. typedef void (APIENTRYP PFNGLVERTEXATTRIBBINDINGPROC) (GLuint attribindex, GLuint bindingindex);
  2180. typedef void (APIENTRYP PFNGLVERTEXBINDINGDIVISORPROC) (GLuint bindingindex, GLuint divisor);
  2181. typedef void (APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint * ids, GLboolean enabled);
  2182. typedef void (APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar * buf);
  2183. typedef void (APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC) (GLDEBUGPROC callback, const void * userParam);
  2184. typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC) (GLuint count, GLsizei bufSize, GLenum * sources, GLenum * types, GLuint * ids, GLenum * severities, GLsizei * lengths, GLchar * messageLog);
  2185. typedef void (APIENTRYP PFNGLPUSHDEBUGGROUPPROC) (GLenum source, GLuint id, GLsizei length, const GLchar * message);
  2186. typedef void (APIENTRYP PFNGLPOPDEBUGGROUPPROC) (void);
  2187. typedef void (APIENTRYP PFNGLOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar * label);
  2188. typedef void (APIENTRYP PFNGLGETOBJECTLABELPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei * length, GLchar * label);
  2189. typedef void (APIENTRYP PFNGLOBJECTPTRLABELPROC) (const void * ptr, GLsizei length, const GLchar * label);
  2190. typedef void (APIENTRYP PFNGLGETOBJECTPTRLABELPROC) (const void * ptr, GLsizei bufSize, GLsizei * length, GLchar * label);
  2191. typedef void (APIENTRYP PFNGLBUFFERSTORAGEPROC) (GLenum target, GLsizeiptr size, const void * data, GLbitfield flags);
  2192. typedef void (APIENTRYP PFNGLCLEARTEXIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, const void * data);
  2193. typedef void (APIENTRYP PFNGLCLEARTEXSUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data);
  2194. typedef void (APIENTRYP PFNGLBINDBUFFERSBASEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint * buffers);
  2195. typedef void (APIENTRYP PFNGLBINDBUFFERSRANGEPROC) (GLenum target, GLuint first, GLsizei count, const GLuint * buffers, const GLintptr * offsets, const GLsizeiptr * sizes);
  2196. typedef void (APIENTRYP PFNGLBINDTEXTURESPROC) (GLuint first, GLsizei count, const GLuint * textures);
  2197. typedef void (APIENTRYP PFNGLBINDSAMPLERSPROC) (GLuint first, GLsizei count, const GLuint * samplers);
  2198. typedef void (APIENTRYP PFNGLBINDIMAGETEXTURESPROC) (GLuint first, GLsizei count, const GLuint * textures);
  2199. typedef void (APIENTRYP PFNGLBINDVERTEXBUFFERSPROC) (GLuint first, GLsizei count, const GLuint * buffers, const GLintptr * offsets, const GLsizei * strides);
  2200. typedef void (APIENTRYP PFNGLCLIPCONTROLPROC) (GLenum origin, GLenum depth);
  2201. typedef void (APIENTRYP PFNGLCREATETRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint * ids);
  2202. typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC) (GLuint xfb, GLuint index, GLuint buffer);
  2203. typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC) (GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizei size);
  2204. typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKIVPROC) (GLuint xfb, GLenum pname, GLint * param);
  2205. typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKI_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint * param);
  2206. typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKI64_VPROC) (GLuint xfb, GLenum pname, GLuint index, GLint64 * param);
  2207. typedef void (APIENTRYP PFNGLCREATEBUFFERSPROC) (GLsizei n, GLuint * buffers);
  2208. typedef void (APIENTRYP PFNGLNAMEDBUFFERSTORAGEPROC) (GLuint buffer, GLsizei size, const void * data, GLbitfield flags);
  2209. typedef void (APIENTRYP PFNGLNAMEDBUFFERDATAPROC) (GLuint buffer, GLsizei size, const void * data, GLenum usage);
  2210. typedef void (APIENTRYP PFNGLNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizei size, const void * data);
  2211. typedef void (APIENTRYP PFNGLCOPYNAMEDBUFFERSUBDATAPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizei size);
  2212. typedef void (APIENTRYP PFNGLCLEARNAMEDBUFFERDATAPROC) (GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void * data);
  2213. typedef void (APIENTRYP PFNGLCLEARNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLenum internalformat, GLintptr offset, GLsizei size, GLenum format, GLenum type, const void * data);
  2214. typedef void * (APIENTRYP PFNGLMAPNAMEDBUFFERPROC) (GLuint buffer, GLenum access);
  2215. typedef void * (APIENTRYP PFNGLMAPNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizei length, GLbitfield access);
  2216. typedef GLboolean (APIENTRYP PFNGLUNMAPNAMEDBUFFERPROC) (GLuint buffer);
  2217. typedef void (APIENTRYP PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC) (GLuint buffer, GLintptr offset, GLsizei length);
  2218. typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPARAMETERIVPROC) (GLuint buffer, GLenum pname, GLint * params);
  2219. typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPARAMETERI64VPROC) (GLuint buffer, GLenum pname, GLint64 * params);
  2220. typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPOINTERVPROC) (GLuint buffer, GLenum pname, void * * params);
  2221. typedef void (APIENTRYP PFNGLGETNAMEDBUFFERSUBDATAPROC) (GLuint buffer, GLintptr offset, GLsizei size, void * data);
  2222. typedef void (APIENTRYP PFNGLCREATEFRAMEBUFFERSPROC) (GLsizei n, GLuint * framebuffers);
  2223. typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
  2224. typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC) (GLuint framebuffer, GLenum pname, GLint param);
  2225. typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTUREPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
  2226. typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
  2227. typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC) (GLuint framebuffer, GLenum buf);
  2228. typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC) (GLuint framebuffer, GLsizei n, const GLenum * bufs);
  2229. typedef void (APIENTRYP PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC) (GLuint framebuffer, GLenum src);
  2230. typedef void (APIENTRYP PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum * attachments);
  2231. typedef void (APIENTRYP PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC) (GLuint framebuffer, GLsizei numAttachments, const GLenum * attachments, GLint x, GLint y, GLsizei width, GLsizei height);
  2232. typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint * value);
  2233. typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint * value);
  2234. typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERFVPROC) (GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat * value);
  2235. typedef void (APIENTRYP PFNGLCLEARNAMEDFRAMEBUFFERFIPROC) (GLuint framebuffer, GLenum buffer, const GLfloat depth, GLint stencil);
  2236. typedef void (APIENTRYP PFNGLBLITNAMEDFRAMEBUFFERPROC) (GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
  2237. typedef GLenum (APIENTRYP PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC) (GLuint framebuffer, GLenum target);
  2238. typedef void (APIENTRYP PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC) (GLuint framebuffer, GLenum pname, GLint * param);
  2239. typedef void (APIENTRYP PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint * params);
  2240. typedef void (APIENTRYP PFNGLCREATERENDERBUFFERSPROC) (GLsizei n, GLuint * renderbuffers);
  2241. typedef void (APIENTRYP PFNGLNAMEDRENDERBUFFERSTORAGEPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
  2242. typedef void (APIENTRYP PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
  2243. typedef void (APIENTRYP PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC) (GLuint renderbuffer, GLenum pname, GLint * params);
  2244. typedef void (APIENTRYP PFNGLCREATETEXTURESPROC) (GLenum target, GLsizei n, GLuint * textures);
  2245. typedef void (APIENTRYP PFNGLTEXTUREBUFFERPROC) (GLuint texture, GLenum internalformat, GLuint buffer);
  2246. typedef void (APIENTRYP PFNGLTEXTUREBUFFERRANGEPROC) (GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizei size);
  2247. typedef void (APIENTRYP PFNGLTEXTURESTORAGE1DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width);
  2248. typedef void (APIENTRYP PFNGLTEXTURESTORAGE2DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
  2249. typedef void (APIENTRYP PFNGLTEXTURESTORAGE3DPROC) (GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
  2250. typedef void (APIENTRYP PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
  2251. typedef void (APIENTRYP PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC) (GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
  2252. typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void * pixels);
  2253. typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * pixels);
  2254. typedef void (APIENTRYP PFNGLTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * pixels);
  2255. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void * data);
  2256. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void * data);
  2257. typedef void (APIENTRYP PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void * data);
  2258. typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE1DPROC) (GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
  2259. typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE2DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
  2260. typedef void (APIENTRYP PFNGLCOPYTEXTURESUBIMAGE3DPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
  2261. typedef void (APIENTRYP PFNGLTEXTUREPARAMETERFPROC) (GLuint texture, GLenum pname, GLfloat param);
  2262. typedef void (APIENTRYP PFNGLTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, const GLfloat * param);
  2263. typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIPROC) (GLuint texture, GLenum pname, GLint param);
  2264. typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, const GLint * params);
  2265. typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, const GLuint * params);
  2266. typedef void (APIENTRYP PFNGLTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, const GLint * param);
  2267. typedef void (APIENTRYP PFNGLGENERATETEXTUREMIPMAPPROC) (GLuint texture);
  2268. typedef void (APIENTRYP PFNGLBINDTEXTUREUNITPROC) (GLuint unit, GLuint texture);
  2269. typedef void (APIENTRYP PFNGLGETTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void * pixels);
  2270. typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC) (GLuint texture, GLint level, GLsizei bufSize, void * pixels);
  2271. typedef void (APIENTRYP PFNGLGETTEXTURELEVELPARAMETERFVPROC) (GLuint texture, GLint level, GLenum pname, GLfloat * params);
  2272. typedef void (APIENTRYP PFNGLGETTEXTURELEVELPARAMETERIVPROC) (GLuint texture, GLint level, GLenum pname, GLint * params);
  2273. typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERFVPROC) (GLuint texture, GLenum pname, GLfloat * params);
  2274. typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIIVPROC) (GLuint texture, GLenum pname, GLint * params);
  2275. typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIUIVPROC) (GLuint texture, GLenum pname, GLuint * params);
  2276. typedef void (APIENTRYP PFNGLGETTEXTUREPARAMETERIVPROC) (GLuint texture, GLenum pname, GLint * params);
  2277. typedef void (APIENTRYP PFNGLCREATEVERTEXARRAYSPROC) (GLsizei n, GLuint * arrays);
  2278. typedef void (APIENTRYP PFNGLDISABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index);
  2279. typedef void (APIENTRYP PFNGLENABLEVERTEXARRAYATTRIBPROC) (GLuint vaobj, GLuint index);
  2280. typedef void (APIENTRYP PFNGLVERTEXARRAYELEMENTBUFFERPROC) (GLuint vaobj, GLuint buffer);
  2281. typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXBUFFERPROC) (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
  2282. typedef void (APIENTRYP PFNGLVERTEXARRAYVERTEXBUFFERSPROC) (GLuint vaobj, GLuint first, GLsizei count, const GLuint * buffers, const GLintptr * offsets, const GLsizei * strides);
  2283. typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBBINDINGPROC) (GLuint vaobj, GLuint attribindex, GLuint bindingindex);
  2284. typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
  2285. typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBIFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
  2286. typedef void (APIENTRYP PFNGLVERTEXARRAYATTRIBLFORMATPROC) (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
  2287. typedef void (APIENTRYP PFNGLVERTEXARRAYBINDINGDIVISORPROC) (GLuint vaobj, GLuint bindingindex, GLuint divisor);
  2288. typedef void (APIENTRYP PFNGLGETVERTEXARRAYIVPROC) (GLuint vaobj, GLenum pname, GLint * param);
  2289. typedef void (APIENTRYP PFNGLGETVERTEXARRAYINDEXEDIVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint * param);
  2290. typedef void (APIENTRYP PFNGLGETVERTEXARRAYINDEXED64IVPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint64 * param);
  2291. typedef void (APIENTRYP PFNGLCREATESAMPLERSPROC) (GLsizei n, GLuint * samplers);
  2292. typedef void (APIENTRYP PFNGLCREATEPROGRAMPIPELINESPROC) (GLsizei n, GLuint * pipelines);
  2293. typedef void (APIENTRYP PFNGLCREATEQUERIESPROC) (GLenum target, GLsizei n, GLuint * ids);
  2294. typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
  2295. typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
  2296. typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTUI64VPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
  2297. typedef void (APIENTRYP PFNGLGETQUERYBUFFEROBJECTUIVPROC) (GLuint id, GLuint buffer, GLenum pname, GLintptr offset);
  2298. typedef void (APIENTRYP PFNGLMEMORYBARRIERBYREGIONPROC) (GLbitfield barriers);
  2299. typedef void (APIENTRYP PFNGLGETTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void * pixels);
  2300. typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void * pixels);
  2301. typedef GLenum (APIENTRYP PFNGLGETGRAPHICSRESETSTATUSPROC) (void);
  2302. typedef void (APIENTRYP PFNGLGETNCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, GLsizei bufSize, void * pixels);
  2303. typedef void (APIENTRYP PFNGLGETNTEXIMAGEPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void * pixels);
  2304. typedef void (APIENTRYP PFNGLGETNUNIFORMDVPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble * params);
  2305. typedef void (APIENTRYP PFNGLGETNUNIFORMFVPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat * params);
  2306. typedef void (APIENTRYP PFNGLGETNUNIFORMIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLint * params);
  2307. typedef void (APIENTRYP PFNGLGETNUNIFORMUIVPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint * params);
  2308. typedef void (APIENTRYP PFNGLREADNPIXELSPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void * data);
  2309. typedef void (APIENTRYP PFNGLTEXTUREBARRIERPROC) (void);
  2310. typedef GLuint64 (APIENTRYP PFNGLGETTEXTUREHANDLEARBPROC) (GLuint texture);
  2311. typedef GLuint64 (APIENTRYP PFNGLGETTEXTURESAMPLERHANDLEARBPROC) (GLuint texture, GLuint sampler);
  2312. typedef void (APIENTRYP PFNGLMAKETEXTUREHANDLERESIDENTARBPROC) (GLuint64 handle);
  2313. typedef void (APIENTRYP PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC) (GLuint64 handle);
  2314. typedef GLuint64 (APIENTRYP PFNGLGETIMAGEHANDLEARBPROC) (GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format);
  2315. typedef void (APIENTRYP PFNGLMAKEIMAGEHANDLERESIDENTARBPROC) (GLuint64 handle, GLenum access);
  2316. typedef void (APIENTRYP PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC) (GLuint64 handle);
  2317. typedef void (APIENTRYP PFNGLUNIFORMHANDLEUI64ARBPROC) (GLint location, GLuint64 value);
  2318. typedef void (APIENTRYP PFNGLUNIFORMHANDLEUI64VARBPROC) (GLint location, GLsizei count, const GLuint64 * value);
  2319. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC) (GLuint program, GLint location, GLuint64 value);
  2320. typedef void (APIENTRYP PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC) (GLuint program, GLint location, GLsizei count, const GLuint64 * values);
  2321. typedef GLboolean (APIENTRYP PFNGLISTEXTUREHANDLERESIDENTARBPROC) (GLuint64 handle);
  2322. typedef GLboolean (APIENTRYP PFNGLISIMAGEHANDLERESIDENTARBPROC) (GLuint64 handle);
  2323. typedef void (APIENTRYP PFNGLVERTEXATTRIBL1UI64ARBPROC) (GLuint index, GLuint64EXT x);
  2324. typedef void (APIENTRYP PFNGLVERTEXATTRIBL1UI64VARBPROC) (GLuint index, const GLuint64EXT * v);
  2325. typedef void (APIENTRYP PFNGLGETVERTEXATTRIBLUI64VARBPROC) (GLuint index, GLenum pname, GLuint64EXT * params);
  2326. typedef GLsync (APIENTRYP PFNGLCREATESYNCFROMCLEVENTARBPROC) (struct _cl_context * context, struct _cl_event * event, GLbitfield flags);
  2327. typedef void (APIENTRYP PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z, GLuint group_size_x, GLuint group_size_y, GLuint group_size_z);
  2328. typedef void (APIENTRYP GLDEBUGPROCARB) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar * message, const void * userParam);
  2329. typedef void (APIENTRYP PFNGLDEBUGMESSAGECONTROLARBPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint * ids, GLboolean enabled);
  2330. typedef void (APIENTRYP PFNGLDEBUGMESSAGEINSERTARBPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar * buf);
  2331. typedef void (APIENTRYP PFNGLDEBUGMESSAGECALLBACKARBPROC) (GLDEBUGPROCARB callback, const void * userParam);
  2332. typedef GLuint (APIENTRYP PFNGLGETDEBUGMESSAGELOGARBPROC) (GLuint count, GLsizei bufSize, GLenum * sources, GLenum * types, GLuint * ids, GLenum * severities, GLsizei * lengths, GLchar * messageLog);
  2333. typedef void (APIENTRYP PFNGLBLENDEQUATIONIARBPROC) (GLuint buf, GLenum mode);
  2334. typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEIARBPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
  2335. typedef void (APIENTRYP PFNGLBLENDFUNCIARBPROC) (GLuint buf, GLenum src, GLenum dst);
  2336. typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEIARBPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
  2337. typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC) (GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
  2338. typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC) (GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
  2339. typedef GLenum (APIENTRYP PFNGLGETGRAPHICSRESETSTATUSARBPROC) (void);
  2340. typedef void (APIENTRYP PFNGLGETNTEXIMAGEARBPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void * img);
  2341. typedef void (APIENTRYP PFNGLREADNPIXELSARBPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void * data);
  2342. typedef void (APIENTRYP PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, GLsizei bufSize, void * img);
  2343. typedef void (APIENTRYP PFNGLGETNUNIFORMFVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat * params);
  2344. typedef void (APIENTRYP PFNGLGETNUNIFORMIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLint * params);
  2345. typedef void (APIENTRYP PFNGLGETNUNIFORMUIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint * params);
  2346. typedef void (APIENTRYP PFNGLGETNUNIFORMDVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble * params);
  2347. typedef void (APIENTRYP PFNGLMINSAMPLESHADINGARBPROC) (GLfloat value);
  2348. typedef void (APIENTRYP PFNGLNAMEDSTRINGARBPROC) (GLenum type, GLint namelen, const GLchar * name, GLint stringlen, const GLchar * string);
  2349. typedef void (APIENTRYP PFNGLDELETENAMEDSTRINGARBPROC) (GLint namelen, const GLchar * name);
  2350. typedef void (APIENTRYP PFNGLCOMPILESHADERINCLUDEARBPROC) (GLuint shader, GLsizei count, const GLchar * const * path, const GLint * length);
  2351. typedef GLboolean (APIENTRYP PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, const GLchar * name);
  2352. typedef void (APIENTRYP PFNGLGETNAMEDSTRINGARBPROC) (GLint namelen, const GLchar * name, GLsizei bufSize, GLint * stringlen, GLchar * string);
  2353. typedef void (APIENTRYP PFNGLGETNAMEDSTRINGIVARBPROC) (GLint namelen, const GLchar * name, GLenum pname, GLint * params);
  2354. typedef void (APIENTRYP PFNGLBUFFERPAGECOMMITMENTARBPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLboolean commit);
  2355. typedef void (APIENTRYP PFNGLNAMEDBUFFERPAGECOMMITMENTEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit);
  2356. typedef void (APIENTRYP PFNGLNAMEDBUFFERPAGECOMMITMENTARBPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit);
  2357. typedef void (APIENTRYP PFNGLTEXPAGECOMMITMENTARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean resident);
  2358. /* End of Function Typedefs */
  2359.  
  2360. class CGLFProcLoader;
  2361. class GLFunctions {
  2362.     std::shared_ptr<CGLFProcLoader> m_ProcLoader;
  2363. public:
  2364.     GLFunctions();
  2365.     ~GLFunctions();
  2366.     GLuint LoadProcs(CGLFProcLoader*);
  2367.     void FreeProcs();
  2368. private:
  2369.     PFNGLCULLFACEPROC m_glCullFace;
  2370.     PFNGLFRONTFACEPROC m_glFrontFace;
  2371.     PFNGLHINTPROC m_glHint;
  2372.     PFNGLLINEWIDTHPROC m_glLineWidth;
  2373.     PFNGLPOINTSIZEPROC m_glPointSize;
  2374.     PFNGLPOLYGONMODEPROC m_glPolygonMode;
  2375.     PFNGLSCISSORPROC m_glScissor;
  2376.     PFNGLTEXPARAMETERFPROC m_glTexParameterf;
  2377.     PFNGLTEXPARAMETERFVPROC m_glTexParameterfv;
  2378.     PFNGLTEXPARAMETERIPROC m_glTexParameteri;
  2379.     PFNGLTEXPARAMETERIVPROC m_glTexParameteriv;
  2380.     PFNGLTEXIMAGE1DPROC m_glTexImage1D;
  2381.     PFNGLTEXIMAGE2DPROC m_glTexImage2D;
  2382.     PFNGLDRAWBUFFERPROC m_glDrawBuffer;
  2383.     PFNGLCLEARPROC m_glClear;
  2384.     PFNGLCLEARCOLORPROC m_glClearColor;
  2385.     PFNGLCLEARSTENCILPROC m_glClearStencil;
  2386.     PFNGLCLEARDEPTHPROC m_glClearDepth;
  2387.     PFNGLSTENCILMASKPROC m_glStencilMask;
  2388.     PFNGLCOLORMASKPROC m_glColorMask;
  2389.     PFNGLDEPTHMASKPROC m_glDepthMask;
  2390.     PFNGLDISABLEPROC m_glDisable;
  2391.     PFNGLENABLEPROC m_glEnable;
  2392.     PFNGLFINISHPROC m_glFinish;
  2393.     PFNGLFLUSHPROC m_glFlush;
  2394.     PFNGLBLENDFUNCPROC m_glBlendFunc;
  2395.     PFNGLLOGICOPPROC m_glLogicOp;
  2396.     PFNGLSTENCILFUNCPROC m_glStencilFunc;
  2397.     PFNGLSTENCILOPPROC m_glStencilOp;
  2398.     PFNGLDEPTHFUNCPROC m_glDepthFunc;
  2399.     PFNGLPIXELSTOREFPROC m_glPixelStoref;
  2400.     PFNGLPIXELSTOREIPROC m_glPixelStorei;
  2401.     PFNGLREADBUFFERPROC m_glReadBuffer;
  2402.     PFNGLREADPIXELSPROC m_glReadPixels;
  2403.     PFNGLGETBOOLEANVPROC m_glGetBooleanv;
  2404.     PFNGLGETDOUBLEVPROC m_glGetDoublev;
  2405.     PFNGLGETERRORPROC m_glGetError;
  2406.     PFNGLGETFLOATVPROC m_glGetFloatv;
  2407.     PFNGLGETINTEGERVPROC m_glGetIntegerv;
  2408.     PFNGLGETSTRINGPROC m_glGetString;
  2409.     PFNGLGETTEXIMAGEPROC m_glGetTexImage;
  2410.     PFNGLGETTEXPARAMETERFVPROC m_glGetTexParameterfv;
  2411.     PFNGLGETTEXPARAMETERIVPROC m_glGetTexParameteriv;
  2412.     PFNGLGETTEXLEVELPARAMETERFVPROC m_glGetTexLevelParameterfv;
  2413.     PFNGLGETTEXLEVELPARAMETERIVPROC m_glGetTexLevelParameteriv;
  2414.     PFNGLISENABLEDPROC m_glIsEnabled;
  2415.     PFNGLDEPTHRANGEPROC m_glDepthRange;
  2416.     PFNGLVIEWPORTPROC m_glViewport;
  2417.     PFNGLDRAWARRAYSPROC m_glDrawArrays;
  2418.     PFNGLDRAWELEMENTSPROC m_glDrawElements;
  2419.     PFNGLGETPOINTERVPROC m_glGetPointerv;
  2420.     PFNGLPOLYGONOFFSETPROC m_glPolygonOffset;
  2421.     PFNGLCOPYTEXIMAGE1DPROC m_glCopyTexImage1D;
  2422.     PFNGLCOPYTEXIMAGE2DPROC m_glCopyTexImage2D;
  2423.     PFNGLCOPYTEXSUBIMAGE1DPROC m_glCopyTexSubImage1D;
  2424.     PFNGLCOPYTEXSUBIMAGE2DPROC m_glCopyTexSubImage2D;
  2425.     PFNGLTEXSUBIMAGE1DPROC m_glTexSubImage1D;
  2426.     PFNGLTEXSUBIMAGE2DPROC m_glTexSubImage2D;
  2427.     PFNGLBINDTEXTUREPROC m_glBindTexture;
  2428.     PFNGLDELETETEXTURESPROC m_glDeleteTextures;
  2429.     PFNGLGENTEXTURESPROC m_glGenTextures;
  2430.     PFNGLISTEXTUREPROC m_glIsTexture;
  2431.     PFNGLDRAWRANGEELEMENTSPROC m_glDrawRangeElements;
  2432.     PFNGLTEXIMAGE3DPROC m_glTexImage3D;
  2433.     PFNGLTEXSUBIMAGE3DPROC m_glTexSubImage3D;
  2434.     PFNGLCOPYTEXSUBIMAGE3DPROC m_glCopyTexSubImage3D;
  2435.     PFNGLACTIVETEXTUREPROC m_glActiveTexture;
  2436.     PFNGLSAMPLECOVERAGEPROC m_glSampleCoverage;
  2437.     PFNGLCOMPRESSEDTEXIMAGE3DPROC m_glCompressedTexImage3D;
  2438.     PFNGLCOMPRESSEDTEXIMAGE2DPROC m_glCompressedTexImage2D;
  2439.     PFNGLCOMPRESSEDTEXIMAGE1DPROC m_glCompressedTexImage1D;
  2440.     PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC m_glCompressedTexSubImage3D;
  2441.     PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC m_glCompressedTexSubImage2D;
  2442.     PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC m_glCompressedTexSubImage1D;
  2443.     PFNGLGETCOMPRESSEDTEXIMAGEPROC m_glGetCompressedTexImage;
  2444.     PFNGLBLENDFUNCSEPARATEPROC m_glBlendFuncSeparate;
  2445.     PFNGLMULTIDRAWARRAYSPROC m_glMultiDrawArrays;
  2446.     PFNGLMULTIDRAWELEMENTSPROC m_glMultiDrawElements;
  2447.     PFNGLPOINTPARAMETERFPROC m_glPointParameterf;
  2448.     PFNGLPOINTPARAMETERFVPROC m_glPointParameterfv;
  2449.     PFNGLPOINTPARAMETERIPROC m_glPointParameteri;
  2450.     PFNGLPOINTPARAMETERIVPROC m_glPointParameteriv;
  2451.     PFNGLBLENDCOLORPROC m_glBlendColor;
  2452.     PFNGLBLENDEQUATIONPROC m_glBlendEquation;
  2453.     PFNGLGENQUERIESPROC m_glGenQueries;
  2454.     PFNGLDELETEQUERIESPROC m_glDeleteQueries;
  2455.     PFNGLISQUERYPROC m_glIsQuery;
  2456.     PFNGLBEGINQUERYPROC m_glBeginQuery;
  2457.     PFNGLENDQUERYPROC m_glEndQuery;
  2458.     PFNGLGETQUERYIVPROC m_glGetQueryiv;
  2459.     PFNGLGETQUERYOBJECTIVPROC m_glGetQueryObjectiv;
  2460.     PFNGLGETQUERYOBJECTUIVPROC m_glGetQueryObjectuiv;
  2461.     PFNGLBINDBUFFERPROC m_glBindBuffer;
  2462.     PFNGLDELETEBUFFERSPROC m_glDeleteBuffers;
  2463.     PFNGLGENBUFFERSPROC m_glGenBuffers;
  2464.     PFNGLISBUFFERPROC m_glIsBuffer;
  2465.     PFNGLBUFFERDATAPROC m_glBufferData;
  2466.     PFNGLBUFFERSUBDATAPROC m_glBufferSubData;
  2467.     PFNGLGETBUFFERSUBDATAPROC m_glGetBufferSubData;
  2468.     PFNGLMAPBUFFERPROC m_glMapBuffer;
  2469.     PFNGLUNMAPBUFFERPROC m_glUnmapBuffer;
  2470.     PFNGLGETBUFFERPARAMETERIVPROC m_glGetBufferParameteriv;
  2471.     PFNGLGETBUFFERPOINTERVPROC m_glGetBufferPointerv;
  2472.     PFNGLBLENDEQUATIONSEPARATEPROC m_glBlendEquationSeparate;
  2473.     PFNGLDRAWBUFFERSPROC m_glDrawBuffers;
  2474.     PFNGLSTENCILOPSEPARATEPROC m_glStencilOpSeparate;
  2475.     PFNGLSTENCILFUNCSEPARATEPROC m_glStencilFuncSeparate;
  2476.     PFNGLSTENCILMASKSEPARATEPROC m_glStencilMaskSeparate;
  2477.     PFNGLATTACHSHADERPROC m_glAttachShader;
  2478.     PFNGLBINDATTRIBLOCATIONPROC m_glBindAttribLocation;
  2479.     PFNGLCOMPILESHADERPROC m_glCompileShader;
  2480.     PFNGLCREATEPROGRAMPROC m_glCreateProgram;
  2481.     PFNGLCREATESHADERPROC m_glCreateShader;
  2482.     PFNGLDELETEPROGRAMPROC m_glDeleteProgram;
  2483.     PFNGLDELETESHADERPROC m_glDeleteShader;
  2484.     PFNGLDETACHSHADERPROC m_glDetachShader;
  2485.     PFNGLDISABLEVERTEXATTRIBARRAYPROC m_glDisableVertexAttribArray;
  2486.     PFNGLENABLEVERTEXATTRIBARRAYPROC m_glEnableVertexAttribArray;
  2487.     PFNGLGETACTIVEATTRIBPROC m_glGetActiveAttrib;
  2488.     PFNGLGETACTIVEUNIFORMPROC m_glGetActiveUniform;
  2489.     PFNGLGETATTACHEDSHADERSPROC m_glGetAttachedShaders;
  2490.     PFNGLGETATTRIBLOCATIONPROC m_glGetAttribLocation;
  2491.     PFNGLGETPROGRAMIVPROC m_glGetProgramiv;
  2492.     PFNGLGETPROGRAMINFOLOGPROC m_glGetProgramInfoLog;
  2493.     PFNGLGETSHADERIVPROC m_glGetShaderiv;
  2494.     PFNGLGETSHADERINFOLOGPROC m_glGetShaderInfoLog;
  2495.     PFNGLGETSHADERSOURCEPROC m_glGetShaderSource;
  2496.     PFNGLGETUNIFORMLOCATIONPROC m_glGetUniformLocation;
  2497.     PFNGLGETUNIFORMFVPROC m_glGetUniformfv;
  2498.     PFNGLGETUNIFORMIVPROC m_glGetUniformiv;
  2499.     PFNGLGETVERTEXATTRIBDVPROC m_glGetVertexAttribdv;
  2500.     PFNGLGETVERTEXATTRIBFVPROC m_glGetVertexAttribfv;
  2501.     PFNGLGETVERTEXATTRIBIVPROC m_glGetVertexAttribiv;
  2502.     PFNGLGETVERTEXATTRIBPOINTERVPROC m_glGetVertexAttribPointerv;
  2503.     PFNGLISPROGRAMPROC m_glIsProgram;
  2504.     PFNGLISSHADERPROC m_glIsShader;
  2505.     PFNGLLINKPROGRAMPROC m_glLinkProgram;
  2506.     PFNGLSHADERSOURCEPROC m_glShaderSource;
  2507.     PFNGLUSEPROGRAMPROC m_glUseProgram;
  2508.     PFNGLUNIFORM1FPROC m_glUniform1f;
  2509.     PFNGLUNIFORM2FPROC m_glUniform2f;
  2510.     PFNGLUNIFORM3FPROC m_glUniform3f;
  2511.     PFNGLUNIFORM4FPROC m_glUniform4f;
  2512.     PFNGLUNIFORM1IPROC m_glUniform1i;
  2513.     PFNGLUNIFORM2IPROC m_glUniform2i;
  2514.     PFNGLUNIFORM3IPROC m_glUniform3i;
  2515.     PFNGLUNIFORM4IPROC m_glUniform4i;
  2516.     PFNGLUNIFORM1FVPROC m_glUniform1fv;
  2517.     PFNGLUNIFORM2FVPROC m_glUniform2fv;
  2518.     PFNGLUNIFORM3FVPROC m_glUniform3fv;
  2519.     PFNGLUNIFORM4FVPROC m_glUniform4fv;
  2520.     PFNGLUNIFORM1IVPROC m_glUniform1iv;
  2521.     PFNGLUNIFORM2IVPROC m_glUniform2iv;
  2522.     PFNGLUNIFORM3IVPROC m_glUniform3iv;
  2523.     PFNGLUNIFORM4IVPROC m_glUniform4iv;
  2524.     PFNGLUNIFORMMATRIX2FVPROC m_glUniformMatrix2fv;
  2525.     PFNGLUNIFORMMATRIX3FVPROC m_glUniformMatrix3fv;
  2526.     PFNGLUNIFORMMATRIX4FVPROC m_glUniformMatrix4fv;
  2527.     PFNGLVALIDATEPROGRAMPROC m_glValidateProgram;
  2528.     PFNGLVERTEXATTRIB1DPROC m_glVertexAttrib1d;
  2529.     PFNGLVERTEXATTRIB1DVPROC m_glVertexAttrib1dv;
  2530.     PFNGLVERTEXATTRIB1FPROC m_glVertexAttrib1f;
  2531.     PFNGLVERTEXATTRIB1FVPROC m_glVertexAttrib1fv;
  2532.     PFNGLVERTEXATTRIB1SPROC m_glVertexAttrib1s;
  2533.     PFNGLVERTEXATTRIB1SVPROC m_glVertexAttrib1sv;
  2534.     PFNGLVERTEXATTRIB2DPROC m_glVertexAttrib2d;
  2535.     PFNGLVERTEXATTRIB2DVPROC m_glVertexAttrib2dv;
  2536.     PFNGLVERTEXATTRIB2FPROC m_glVertexAttrib2f;
  2537.     PFNGLVERTEXATTRIB2FVPROC m_glVertexAttrib2fv;
  2538.     PFNGLVERTEXATTRIB2SPROC m_glVertexAttrib2s;
  2539.     PFNGLVERTEXATTRIB2SVPROC m_glVertexAttrib2sv;
  2540.     PFNGLVERTEXATTRIB3DPROC m_glVertexAttrib3d;
  2541.     PFNGLVERTEXATTRIB3DVPROC m_glVertexAttrib3dv;
  2542.     PFNGLVERTEXATTRIB3FPROC m_glVertexAttrib3f;
  2543.     PFNGLVERTEXATTRIB3FVPROC m_glVertexAttrib3fv;
  2544.     PFNGLVERTEXATTRIB3SPROC m_glVertexAttrib3s;
  2545.     PFNGLVERTEXATTRIB3SVPROC m_glVertexAttrib3sv;
  2546.     PFNGLVERTEXATTRIB4NBVPROC m_glVertexAttrib4Nbv;
  2547.     PFNGLVERTEXATTRIB4NIVPROC m_glVertexAttrib4Niv;
  2548.     PFNGLVERTEXATTRIB4NSVPROC m_glVertexAttrib4Nsv;
  2549.     PFNGLVERTEXATTRIB4NUBPROC m_glVertexAttrib4Nub;
  2550.     PFNGLVERTEXATTRIB4NUBVPROC m_glVertexAttrib4Nubv;
  2551.     PFNGLVERTEXATTRIB4NUIVPROC m_glVertexAttrib4Nuiv;
  2552.     PFNGLVERTEXATTRIB4NUSVPROC m_glVertexAttrib4Nusv;
  2553.     PFNGLVERTEXATTRIB4BVPROC m_glVertexAttrib4bv;
  2554.     PFNGLVERTEXATTRIB4DPROC m_glVertexAttrib4d;
  2555.     PFNGLVERTEXATTRIB4DVPROC m_glVertexAttrib4dv;
  2556.     PFNGLVERTEXATTRIB4FPROC m_glVertexAttrib4f;
  2557.     PFNGLVERTEXATTRIB4FVPROC m_glVertexAttrib4fv;
  2558.     PFNGLVERTEXATTRIB4IVPROC m_glVertexAttrib4iv;
  2559.     PFNGLVERTEXATTRIB4SPROC m_glVertexAttrib4s;
  2560.     PFNGLVERTEXATTRIB4SVPROC m_glVertexAttrib4sv;
  2561.     PFNGLVERTEXATTRIB4UBVPROC m_glVertexAttrib4ubv;
  2562.     PFNGLVERTEXATTRIB4UIVPROC m_glVertexAttrib4uiv;
  2563.     PFNGLVERTEXATTRIB4USVPROC m_glVertexAttrib4usv;
  2564.     PFNGLVERTEXATTRIBPOINTERPROC m_glVertexAttribPointer;
  2565.     PFNGLUNIFORMMATRIX2X3FVPROC m_glUniformMatrix2x3fv;
  2566.     PFNGLUNIFORMMATRIX3X2FVPROC m_glUniformMatrix3x2fv;
  2567.     PFNGLUNIFORMMATRIX2X4FVPROC m_glUniformMatrix2x4fv;
  2568.     PFNGLUNIFORMMATRIX4X2FVPROC m_glUniformMatrix4x2fv;
  2569.     PFNGLUNIFORMMATRIX3X4FVPROC m_glUniformMatrix3x4fv;
  2570.     PFNGLUNIFORMMATRIX4X3FVPROC m_glUniformMatrix4x3fv;
  2571.     PFNGLCOLORMASKIPROC m_glColorMaski;
  2572.     PFNGLGETBOOLEANI_VPROC m_glGetBooleani_v;
  2573.     PFNGLGETINTEGERI_VPROC m_glGetIntegeri_v;
  2574.     PFNGLENABLEIPROC m_glEnablei;
  2575.     PFNGLDISABLEIPROC m_glDisablei;
  2576.     PFNGLISENABLEDIPROC m_glIsEnabledi;
  2577.     PFNGLBEGINTRANSFORMFEEDBACKPROC m_glBeginTransformFeedback;
  2578.     PFNGLENDTRANSFORMFEEDBACKPROC m_glEndTransformFeedback;
  2579.     PFNGLBINDBUFFERRANGEPROC m_glBindBufferRange;
  2580.     PFNGLBINDBUFFERBASEPROC m_glBindBufferBase;
  2581.     PFNGLTRANSFORMFEEDBACKVARYINGSPROC m_glTransformFeedbackVaryings;
  2582.     PFNGLGETTRANSFORMFEEDBACKVARYINGPROC m_glGetTransformFeedbackVarying;
  2583.     PFNGLCLAMPCOLORPROC m_glClampColor;
  2584.     PFNGLBEGINCONDITIONALRENDERPROC m_glBeginConditionalRender;
  2585.     PFNGLENDCONDITIONALRENDERPROC m_glEndConditionalRender;
  2586.     PFNGLVERTEXATTRIBIPOINTERPROC m_glVertexAttribIPointer;
  2587.     PFNGLGETVERTEXATTRIBIIVPROC m_glGetVertexAttribIiv;
  2588.     PFNGLGETVERTEXATTRIBIUIVPROC m_glGetVertexAttribIuiv;
  2589.     PFNGLVERTEXATTRIBI1IPROC m_glVertexAttribI1i;
  2590.     PFNGLVERTEXATTRIBI2IPROC m_glVertexAttribI2i;
  2591.     PFNGLVERTEXATTRIBI3IPROC m_glVertexAttribI3i;
  2592.     PFNGLVERTEXATTRIBI4IPROC m_glVertexAttribI4i;
  2593.     PFNGLVERTEXATTRIBI1UIPROC m_glVertexAttribI1ui;
  2594.     PFNGLVERTEXATTRIBI2UIPROC m_glVertexAttribI2ui;
  2595.     PFNGLVERTEXATTRIBI3UIPROC m_glVertexAttribI3ui;
  2596.     PFNGLVERTEXATTRIBI4UIPROC m_glVertexAttribI4ui;
  2597.     PFNGLVERTEXATTRIBI1IVPROC m_glVertexAttribI1iv;
  2598.     PFNGLVERTEXATTRIBI2IVPROC m_glVertexAttribI2iv;
  2599.     PFNGLVERTEXATTRIBI3IVPROC m_glVertexAttribI3iv;
  2600.     PFNGLVERTEXATTRIBI4IVPROC m_glVertexAttribI4iv;
  2601.     PFNGLVERTEXATTRIBI1UIVPROC m_glVertexAttribI1uiv;
  2602.     PFNGLVERTEXATTRIBI2UIVPROC m_glVertexAttribI2uiv;
  2603.     PFNGLVERTEXATTRIBI3UIVPROC m_glVertexAttribI3uiv;
  2604.     PFNGLVERTEXATTRIBI4UIVPROC m_glVertexAttribI4uiv;
  2605.     PFNGLVERTEXATTRIBI4BVPROC m_glVertexAttribI4bv;
  2606.     PFNGLVERTEXATTRIBI4SVPROC m_glVertexAttribI4sv;
  2607.     PFNGLVERTEXATTRIBI4UBVPROC m_glVertexAttribI4ubv;
  2608.     PFNGLVERTEXATTRIBI4USVPROC m_glVertexAttribI4usv;
  2609.     PFNGLGETUNIFORMUIVPROC m_glGetUniformuiv;
  2610.     PFNGLBINDFRAGDATALOCATIONPROC m_glBindFragDataLocation;
  2611.     PFNGLGETFRAGDATALOCATIONPROC m_glGetFragDataLocation;
  2612.     PFNGLUNIFORM1UIPROC m_glUniform1ui;
  2613.     PFNGLUNIFORM2UIPROC m_glUniform2ui;
  2614.     PFNGLUNIFORM3UIPROC m_glUniform3ui;
  2615.     PFNGLUNIFORM4UIPROC m_glUniform4ui;
  2616.     PFNGLUNIFORM1UIVPROC m_glUniform1uiv;
  2617.     PFNGLUNIFORM2UIVPROC m_glUniform2uiv;
  2618.     PFNGLUNIFORM3UIVPROC m_glUniform3uiv;
  2619.     PFNGLUNIFORM4UIVPROC m_glUniform4uiv;
  2620.     PFNGLTEXPARAMETERIIVPROC m_glTexParameterIiv;
  2621.     PFNGLTEXPARAMETERIUIVPROC m_glTexParameterIuiv;
  2622.     PFNGLGETTEXPARAMETERIIVPROC m_glGetTexParameterIiv;
  2623.     PFNGLGETTEXPARAMETERIUIVPROC m_glGetTexParameterIuiv;
  2624.     PFNGLCLEARBUFFERIVPROC m_glClearBufferiv;
  2625.     PFNGLCLEARBUFFERUIVPROC m_glClearBufferuiv;
  2626.     PFNGLCLEARBUFFERFVPROC m_glClearBufferfv;
  2627.     PFNGLCLEARBUFFERFIPROC m_glClearBufferfi;
  2628.     PFNGLGETSTRINGIPROC m_glGetStringi;
  2629.     PFNGLISRENDERBUFFERPROC m_glIsRenderbuffer;
  2630.     PFNGLBINDRENDERBUFFERPROC m_glBindRenderbuffer;
  2631.     PFNGLDELETERENDERBUFFERSPROC m_glDeleteRenderbuffers;
  2632.     PFNGLGENRENDERBUFFERSPROC m_glGenRenderbuffers;
  2633.     PFNGLRENDERBUFFERSTORAGEPROC m_glRenderbufferStorage;
  2634.     PFNGLGETRENDERBUFFERPARAMETERIVPROC m_glGetRenderbufferParameteriv;
  2635.     PFNGLISFRAMEBUFFERPROC m_glIsFramebuffer;
  2636.     PFNGLBINDFRAMEBUFFERPROC m_glBindFramebuffer;
  2637.     PFNGLDELETEFRAMEBUFFERSPROC m_glDeleteFramebuffers;
  2638.     PFNGLGENFRAMEBUFFERSPROC m_glGenFramebuffers;
  2639.     PFNGLCHECKFRAMEBUFFERSTATUSPROC m_glCheckFramebufferStatus;
  2640.     PFNGLFRAMEBUFFERTEXTURE1DPROC m_glFramebufferTexture1D;
  2641.     PFNGLFRAMEBUFFERTEXTURE2DPROC m_glFramebufferTexture2D;
  2642.     PFNGLFRAMEBUFFERTEXTURE3DPROC m_glFramebufferTexture3D;
  2643.     PFNGLFRAMEBUFFERRENDERBUFFERPROC m_glFramebufferRenderbuffer;
  2644.     PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC m_glGetFramebufferAttachmentParameteriv;
  2645.     PFNGLGENERATEMIPMAPPROC m_glGenerateMipmap;
  2646.     PFNGLBLITFRAMEBUFFERPROC m_glBlitFramebuffer;
  2647.     PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC m_glRenderbufferStorageMultisample;
  2648.     PFNGLFRAMEBUFFERTEXTURELAYERPROC m_glFramebufferTextureLayer;
  2649.     PFNGLMAPBUFFERRANGEPROC m_glMapBufferRange;
  2650.     PFNGLFLUSHMAPPEDBUFFERRANGEPROC m_glFlushMappedBufferRange;
  2651.     PFNGLBINDVERTEXARRAYPROC m_glBindVertexArray;
  2652.     PFNGLDELETEVERTEXARRAYSPROC m_glDeleteVertexArrays;
  2653.     PFNGLGENVERTEXARRAYSPROC m_glGenVertexArrays;
  2654.     PFNGLISVERTEXARRAYPROC m_glIsVertexArray;
  2655.     PFNGLDRAWARRAYSINSTANCEDPROC m_glDrawArraysInstanced;
  2656.     PFNGLDRAWELEMENTSINSTANCEDPROC m_glDrawElementsInstanced;
  2657.     PFNGLTEXBUFFERPROC m_glTexBuffer;
  2658.     PFNGLPRIMITIVERESTARTINDEXPROC m_glPrimitiveRestartIndex;
  2659.     PFNGLCOPYBUFFERSUBDATAPROC m_glCopyBufferSubData;
  2660.     PFNGLGETUNIFORMINDICESPROC m_glGetUniformIndices;
  2661.     PFNGLGETACTIVEUNIFORMSIVPROC m_glGetActiveUniformsiv;
  2662.     PFNGLGETACTIVEUNIFORMNAMEPROC m_glGetActiveUniformName;
  2663.     PFNGLGETUNIFORMBLOCKINDEXPROC m_glGetUniformBlockIndex;
  2664.     PFNGLGETACTIVEUNIFORMBLOCKIVPROC m_glGetActiveUniformBlockiv;
  2665.     PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC m_glGetActiveUniformBlockName;
  2666.     PFNGLUNIFORMBLOCKBINDINGPROC m_glUniformBlockBinding;
  2667.     PFNGLDRAWELEMENTSBASEVERTEXPROC m_glDrawElementsBaseVertex;
  2668.     PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC m_glDrawRangeElementsBaseVertex;
  2669.     PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC m_glDrawElementsInstancedBaseVertex;
  2670.     PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC m_glMultiDrawElementsBaseVertex;
  2671.     PFNGLPROVOKINGVERTEXPROC m_glProvokingVertex;
  2672.     PFNGLFENCESYNCPROC m_glFenceSync;
  2673.     PFNGLISSYNCPROC m_glIsSync;
  2674.     PFNGLDELETESYNCPROC m_glDeleteSync;
  2675.     PFNGLCLIENTWAITSYNCPROC m_glClientWaitSync;
  2676.     PFNGLWAITSYNCPROC m_glWaitSync;
  2677.     PFNGLGETINTEGER64VPROC m_glGetInteger64v;
  2678.     PFNGLGETSYNCIVPROC m_glGetSynciv;
  2679.     PFNGLGETINTEGER64I_VPROC m_glGetInteger64i_v;
  2680.     PFNGLGETBUFFERPARAMETERI64VPROC m_glGetBufferParameteri64v;
  2681.     PFNGLFRAMEBUFFERTEXTUREPROC m_glFramebufferTexture;
  2682.     PFNGLTEXIMAGE2DMULTISAMPLEPROC m_glTexImage2DMultisample;
  2683.     PFNGLTEXIMAGE3DMULTISAMPLEPROC m_glTexImage3DMultisample;
  2684.     PFNGLGETMULTISAMPLEFVPROC m_glGetMultisamplefv;
  2685.     PFNGLSAMPLEMASKIPROC m_glSampleMaski;
  2686.     PFNGLBINDFRAGDATALOCATIONINDEXEDPROC m_glBindFragDataLocationIndexed;
  2687.     PFNGLGETFRAGDATAINDEXPROC m_glGetFragDataIndex;
  2688.     PFNGLGENSAMPLERSPROC m_glGenSamplers;
  2689.     PFNGLDELETESAMPLERSPROC m_glDeleteSamplers;
  2690.     PFNGLISSAMPLERPROC m_glIsSampler;
  2691.     PFNGLBINDSAMPLERPROC m_glBindSampler;
  2692.     PFNGLSAMPLERPARAMETERIPROC m_glSamplerParameteri;
  2693.     PFNGLSAMPLERPARAMETERIVPROC m_glSamplerParameteriv;
  2694.     PFNGLSAMPLERPARAMETERFPROC m_glSamplerParameterf;
  2695.     PFNGLSAMPLERPARAMETERFVPROC m_glSamplerParameterfv;
  2696.     PFNGLSAMPLERPARAMETERIIVPROC m_glSamplerParameterIiv;
  2697.     PFNGLSAMPLERPARAMETERIUIVPROC m_glSamplerParameterIuiv;
  2698.     PFNGLGETSAMPLERPARAMETERIVPROC m_glGetSamplerParameteriv;
  2699.     PFNGLGETSAMPLERPARAMETERIIVPROC m_glGetSamplerParameterIiv;
  2700.     PFNGLGETSAMPLERPARAMETERFVPROC m_glGetSamplerParameterfv;
  2701.     PFNGLGETSAMPLERPARAMETERIUIVPROC m_glGetSamplerParameterIuiv;
  2702.     PFNGLQUERYCOUNTERPROC m_glQueryCounter;
  2703.     PFNGLGETQUERYOBJECTI64VPROC m_glGetQueryObjecti64v;
  2704.     PFNGLGETQUERYOBJECTUI64VPROC m_glGetQueryObjectui64v;
  2705.     PFNGLVERTEXATTRIBDIVISORPROC m_glVertexAttribDivisor;
  2706.     PFNGLVERTEXATTRIBP1UIPROC m_glVertexAttribP1ui;
  2707.     PFNGLVERTEXATTRIBP1UIVPROC m_glVertexAttribP1uiv;
  2708.     PFNGLVERTEXATTRIBP2UIPROC m_glVertexAttribP2ui;
  2709.     PFNGLVERTEXATTRIBP2UIVPROC m_glVertexAttribP2uiv;
  2710.     PFNGLVERTEXATTRIBP3UIPROC m_glVertexAttribP3ui;
  2711.     PFNGLVERTEXATTRIBP3UIVPROC m_glVertexAttribP3uiv;
  2712.     PFNGLVERTEXATTRIBP4UIPROC m_glVertexAttribP4ui;
  2713.     PFNGLVERTEXATTRIBP4UIVPROC m_glVertexAttribP4uiv;
  2714.     PFNGLMINSAMPLESHADINGPROC m_glMinSampleShading;
  2715.     PFNGLBLENDEQUATIONIPROC m_glBlendEquationi;
  2716.     PFNGLBLENDEQUATIONSEPARATEIPROC m_glBlendEquationSeparatei;
  2717.     PFNGLBLENDFUNCIPROC m_glBlendFunci;
  2718.     PFNGLBLENDFUNCSEPARATEIPROC m_glBlendFuncSeparatei;
  2719.     PFNGLDRAWARRAYSINDIRECTPROC m_glDrawArraysIndirect;
  2720.     PFNGLDRAWELEMENTSINDIRECTPROC m_glDrawElementsIndirect;
  2721.     PFNGLUNIFORM1DPROC m_glUniform1d;
  2722.     PFNGLUNIFORM2DPROC m_glUniform2d;
  2723.     PFNGLUNIFORM3DPROC m_glUniform3d;
  2724.     PFNGLUNIFORM4DPROC m_glUniform4d;
  2725.     PFNGLUNIFORM1DVPROC m_glUniform1dv;
  2726.     PFNGLUNIFORM2DVPROC m_glUniform2dv;
  2727.     PFNGLUNIFORM3DVPROC m_glUniform3dv;
  2728.     PFNGLUNIFORM4DVPROC m_glUniform4dv;
  2729.     PFNGLUNIFORMMATRIX2DVPROC m_glUniformMatrix2dv;
  2730.     PFNGLUNIFORMMATRIX3DVPROC m_glUniformMatrix3dv;
  2731.     PFNGLUNIFORMMATRIX4DVPROC m_glUniformMatrix4dv;
  2732.     PFNGLUNIFORMMATRIX2X3DVPROC m_glUniformMatrix2x3dv;
  2733.     PFNGLUNIFORMMATRIX2X4DVPROC m_glUniformMatrix2x4dv;
  2734.     PFNGLUNIFORMMATRIX3X2DVPROC m_glUniformMatrix3x2dv;
  2735.     PFNGLUNIFORMMATRIX3X4DVPROC m_glUniformMatrix3x4dv;
  2736.     PFNGLUNIFORMMATRIX4X2DVPROC m_glUniformMatrix4x2dv;
  2737.     PFNGLUNIFORMMATRIX4X3DVPROC m_glUniformMatrix4x3dv;
  2738.     PFNGLGETUNIFORMDVPROC m_glGetUniformdv;
  2739.     PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC m_glGetSubroutineUniformLocation;
  2740.     PFNGLGETSUBROUTINEINDEXPROC m_glGetSubroutineIndex;
  2741.     PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC m_glGetActiveSubroutineUniformiv;
  2742.     PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC m_glGetActiveSubroutineUniformName;
  2743.     PFNGLGETACTIVESUBROUTINENAMEPROC m_glGetActiveSubroutineName;
  2744.     PFNGLUNIFORMSUBROUTINESUIVPROC m_glUniformSubroutinesuiv;
  2745.     PFNGLGETUNIFORMSUBROUTINEUIVPROC m_glGetUniformSubroutineuiv;
  2746.     PFNGLGETPROGRAMSTAGEIVPROC m_glGetProgramStageiv;
  2747.     PFNGLPATCHPARAMETERIPROC m_glPatchParameteri;
  2748.     PFNGLPATCHPARAMETERFVPROC m_glPatchParameterfv;
  2749.     PFNGLBINDTRANSFORMFEEDBACKPROC m_glBindTransformFeedback;
  2750.     PFNGLDELETETRANSFORMFEEDBACKSPROC m_glDeleteTransformFeedbacks;
  2751.     PFNGLGENTRANSFORMFEEDBACKSPROC m_glGenTransformFeedbacks;
  2752.     PFNGLISTRANSFORMFEEDBACKPROC m_glIsTransformFeedback;
  2753.     PFNGLPAUSETRANSFORMFEEDBACKPROC m_glPauseTransformFeedback;
  2754.     PFNGLRESUMETRANSFORMFEEDBACKPROC m_glResumeTransformFeedback;
  2755.     PFNGLDRAWTRANSFORMFEEDBACKPROC m_glDrawTransformFeedback;
  2756.     PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC m_glDrawTransformFeedbackStream;
  2757.     PFNGLBEGINQUERYINDEXEDPROC m_glBeginQueryIndexed;
  2758.     PFNGLENDQUERYINDEXEDPROC m_glEndQueryIndexed;
  2759.     PFNGLGETQUERYINDEXEDIVPROC m_glGetQueryIndexediv;
  2760.     PFNGLRELEASESHADERCOMPILERPROC m_glReleaseShaderCompiler;
  2761.     PFNGLSHADERBINARYPROC m_glShaderBinary;
  2762.     PFNGLGETSHADERPRECISIONFORMATPROC m_glGetShaderPrecisionFormat;
  2763.     PFNGLDEPTHRANGEFPROC m_glDepthRangef;
  2764.     PFNGLCLEARDEPTHFPROC m_glClearDepthf;
  2765.     PFNGLGETPROGRAMBINARYPROC m_glGetProgramBinary;
  2766.     PFNGLPROGRAMBINARYPROC m_glProgramBinary;
  2767.     PFNGLPROGRAMPARAMETERIPROC m_glProgramParameteri;
  2768.     PFNGLUSEPROGRAMSTAGESPROC m_glUseProgramStages;
  2769.     PFNGLACTIVESHADERPROGRAMPROC m_glActiveShaderProgram;
  2770.     PFNGLCREATESHADERPROGRAMVPROC m_glCreateShaderProgramv;
  2771.     PFNGLBINDPROGRAMPIPELINEPROC m_glBindProgramPipeline;
  2772.     PFNGLDELETEPROGRAMPIPELINESPROC m_glDeleteProgramPipelines;
  2773.     PFNGLGENPROGRAMPIPELINESPROC m_glGenProgramPipelines;
  2774.     PFNGLISPROGRAMPIPELINEPROC m_glIsProgramPipeline;
  2775.     PFNGLGETPROGRAMPIPELINEIVPROC m_glGetProgramPipelineiv;
  2776.     PFNGLPROGRAMUNIFORM1IPROC m_glProgramUniform1i;
  2777.     PFNGLPROGRAMUNIFORM1IVPROC m_glProgramUniform1iv;
  2778.     PFNGLPROGRAMUNIFORM1FPROC m_glProgramUniform1f;
  2779.     PFNGLPROGRAMUNIFORM1FVPROC m_glProgramUniform1fv;
  2780.     PFNGLPROGRAMUNIFORM1DPROC m_glProgramUniform1d;
  2781.     PFNGLPROGRAMUNIFORM1DVPROC m_glProgramUniform1dv;
  2782.     PFNGLPROGRAMUNIFORM1UIPROC m_glProgramUniform1ui;
  2783.     PFNGLPROGRAMUNIFORM1UIVPROC m_glProgramUniform1uiv;
  2784.     PFNGLPROGRAMUNIFORM2IPROC m_glProgramUniform2i;
  2785.     PFNGLPROGRAMUNIFORM2IVPROC m_glProgramUniform2iv;
  2786.     PFNGLPROGRAMUNIFORM2FPROC m_glProgramUniform2f;
  2787.     PFNGLPROGRAMUNIFORM2FVPROC m_glProgramUniform2fv;
  2788.     PFNGLPROGRAMUNIFORM2DPROC m_glProgramUniform2d;
  2789.     PFNGLPROGRAMUNIFORM2DVPROC m_glProgramUniform2dv;
  2790.     PFNGLPROGRAMUNIFORM2UIPROC m_glProgramUniform2ui;
  2791.     PFNGLPROGRAMUNIFORM2UIVPROC m_glProgramUniform2uiv;
  2792.     PFNGLPROGRAMUNIFORM3IPROC m_glProgramUniform3i;
  2793.     PFNGLPROGRAMUNIFORM3IVPROC m_glProgramUniform3iv;
  2794.     PFNGLPROGRAMUNIFORM3FPROC m_glProgramUniform3f;
  2795.     PFNGLPROGRAMUNIFORM3FVPROC m_glProgramUniform3fv;
  2796.     PFNGLPROGRAMUNIFORM3DPROC m_glProgramUniform3d;
  2797.     PFNGLPROGRAMUNIFORM3DVPROC m_glProgramUniform3dv;
  2798.     PFNGLPROGRAMUNIFORM3UIPROC m_glProgramUniform3ui;
  2799.     PFNGLPROGRAMUNIFORM3UIVPROC m_glProgramUniform3uiv;
  2800.     PFNGLPROGRAMUNIFORM4IPROC m_glProgramUniform4i;
  2801.     PFNGLPROGRAMUNIFORM4IVPROC m_glProgramUniform4iv;
  2802.     PFNGLPROGRAMUNIFORM4FPROC m_glProgramUniform4f;
  2803.     PFNGLPROGRAMUNIFORM4FVPROC m_glProgramUniform4fv;
  2804.     PFNGLPROGRAMUNIFORM4DPROC m_glProgramUniform4d;
  2805.     PFNGLPROGRAMUNIFORM4DVPROC m_glProgramUniform4dv;
  2806.     PFNGLPROGRAMUNIFORM4UIPROC m_glProgramUniform4ui;
  2807.     PFNGLPROGRAMUNIFORM4UIVPROC m_glProgramUniform4uiv;
  2808.     PFNGLPROGRAMUNIFORMMATRIX2FVPROC m_glProgramUniformMatrix2fv;
  2809.     PFNGLPROGRAMUNIFORMMATRIX3FVPROC m_glProgramUniformMatrix3fv;
  2810.     PFNGLPROGRAMUNIFORMMATRIX4FVPROC m_glProgramUniformMatrix4fv;
  2811.     PFNGLPROGRAMUNIFORMMATRIX2DVPROC m_glProgramUniformMatrix2dv;
  2812.     PFNGLPROGRAMUNIFORMMATRIX3DVPROC m_glProgramUniformMatrix3dv;
  2813.     PFNGLPROGRAMUNIFORMMATRIX4DVPROC m_glProgramUniformMatrix4dv;
  2814.     PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC m_glProgramUniformMatrix2x3fv;
  2815.     PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC m_glProgramUniformMatrix3x2fv;
  2816.     PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC m_glProgramUniformMatrix2x4fv;
  2817.     PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC m_glProgramUniformMatrix4x2fv;
  2818.     PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC m_glProgramUniformMatrix3x4fv;
  2819.     PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC m_glProgramUniformMatrix4x3fv;
  2820.     PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC m_glProgramUniformMatrix2x3dv;
  2821.     PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC m_glProgramUniformMatrix3x2dv;
  2822.     PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC m_glProgramUniformMatrix2x4dv;
  2823.     PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC m_glProgramUniformMatrix4x2dv;
  2824.     PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC m_glProgramUniformMatrix3x4dv;
  2825.     PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC m_glProgramUniformMatrix4x3dv;
  2826.     PFNGLVALIDATEPROGRAMPIPELINEPROC m_glValidateProgramPipeline;
  2827.     PFNGLGETPROGRAMPIPELINEINFOLOGPROC m_glGetProgramPipelineInfoLog;
  2828.     PFNGLVERTEXATTRIBL1DPROC m_glVertexAttribL1d;
  2829.     PFNGLVERTEXATTRIBL2DPROC m_glVertexAttribL2d;
  2830.     PFNGLVERTEXATTRIBL3DPROC m_glVertexAttribL3d;
  2831.     PFNGLVERTEXATTRIBL4DPROC m_glVertexAttribL4d;
  2832.     PFNGLVERTEXATTRIBL1DVPROC m_glVertexAttribL1dv;
  2833.     PFNGLVERTEXATTRIBL2DVPROC m_glVertexAttribL2dv;
  2834.     PFNGLVERTEXATTRIBL3DVPROC m_glVertexAttribL3dv;
  2835.     PFNGLVERTEXATTRIBL4DVPROC m_glVertexAttribL4dv;
  2836.     PFNGLVERTEXATTRIBLPOINTERPROC m_glVertexAttribLPointer;
  2837.     PFNGLGETVERTEXATTRIBLDVPROC m_glGetVertexAttribLdv;
  2838.     PFNGLVIEWPORTARRAYVPROC m_glViewportArrayv;
  2839.     PFNGLVIEWPORTINDEXEDFPROC m_glViewportIndexedf;
  2840.     PFNGLVIEWPORTINDEXEDFVPROC m_glViewportIndexedfv;
  2841.     PFNGLSCISSORARRAYVPROC m_glScissorArrayv;
  2842.     PFNGLSCISSORINDEXEDPROC m_glScissorIndexed;
  2843.     PFNGLSCISSORINDEXEDVPROC m_glScissorIndexedv;
  2844.     PFNGLDEPTHRANGEARRAYVPROC m_glDepthRangeArrayv;
  2845.     PFNGLDEPTHRANGEINDEXEDPROC m_glDepthRangeIndexed;
  2846.     PFNGLGETFLOATI_VPROC m_glGetFloati_v;
  2847.     PFNGLGETDOUBLEI_VPROC m_glGetDoublei_v;
  2848.     PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC m_glDrawArraysInstancedBaseInstance;
  2849.     PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC m_glDrawElementsInstancedBaseInstance;
  2850.     PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC m_glDrawElementsInstancedBaseVertexBaseInstance;
  2851.     PFNGLGETINTERNALFORMATIVPROC m_glGetInternalformativ;
  2852.     PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC m_glGetActiveAtomicCounterBufferiv;
  2853.     PFNGLBINDIMAGETEXTUREPROC m_glBindImageTexture;
  2854.     PFNGLMEMORYBARRIERPROC m_glMemoryBarrier;
  2855.     PFNGLTEXSTORAGE1DPROC m_glTexStorage1D;
  2856.     PFNGLTEXSTORAGE2DPROC m_glTexStorage2D;
  2857.     PFNGLTEXSTORAGE3DPROC m_glTexStorage3D;
  2858.     PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC m_glDrawTransformFeedbackInstanced;
  2859.     PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC m_glDrawTransformFeedbackStreamInstanced;
  2860.     PFNGLCLEARBUFFERDATAPROC m_glClearBufferData;
  2861.     PFNGLCLEARBUFFERSUBDATAPROC m_glClearBufferSubData;
  2862.     PFNGLDISPATCHCOMPUTEPROC m_glDispatchCompute;
  2863.     PFNGLDISPATCHCOMPUTEINDIRECTPROC m_glDispatchComputeIndirect;
  2864.     PFNGLCOPYIMAGESUBDATAPROC m_glCopyImageSubData;
  2865.     PFNGLFRAMEBUFFERPARAMETERIPROC m_glFramebufferParameteri;
  2866.     PFNGLGETFRAMEBUFFERPARAMETERIVPROC m_glGetFramebufferParameteriv;
  2867.     PFNGLGETINTERNALFORMATI64VPROC m_glGetInternalformati64v;
  2868.     PFNGLINVALIDATETEXSUBIMAGEPROC m_glInvalidateTexSubImage;
  2869.     PFNGLINVALIDATETEXIMAGEPROC m_glInvalidateTexImage;
  2870.     PFNGLINVALIDATEBUFFERSUBDATAPROC m_glInvalidateBufferSubData;
  2871.     PFNGLINVALIDATEBUFFERDATAPROC m_glInvalidateBufferData;
  2872.     PFNGLINVALIDATEFRAMEBUFFERPROC m_glInvalidateFramebuffer;
  2873.     PFNGLINVALIDATESUBFRAMEBUFFERPROC m_glInvalidateSubFramebuffer;
  2874.     PFNGLMULTIDRAWARRAYSINDIRECTPROC m_glMultiDrawArraysIndirect;
  2875.     PFNGLMULTIDRAWELEMENTSINDIRECTPROC m_glMultiDrawElementsIndirect;
  2876.     PFNGLGETPROGRAMINTERFACEIVPROC m_glGetProgramInterfaceiv;
  2877.     PFNGLGETPROGRAMRESOURCEINDEXPROC m_glGetProgramResourceIndex;
  2878.     PFNGLGETPROGRAMRESOURCENAMEPROC m_glGetProgramResourceName;
  2879.     PFNGLGETPROGRAMRESOURCEIVPROC m_glGetProgramResourceiv;
  2880.     PFNGLGETPROGRAMRESOURCELOCATIONPROC m_glGetProgramResourceLocation;
  2881.     PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC m_glGetProgramResourceLocationIndex;
  2882.     PFNGLSHADERSTORAGEBLOCKBINDINGPROC m_glShaderStorageBlockBinding;
  2883.     PFNGLTEXBUFFERRANGEPROC m_glTexBufferRange;
  2884.     PFNGLTEXSTORAGE2DMULTISAMPLEPROC m_glTexStorage2DMultisample;
  2885.     PFNGLTEXSTORAGE3DMULTISAMPLEPROC m_glTexStorage3DMultisample;
  2886.     PFNGLTEXTUREVIEWPROC m_glTextureView;
  2887.     PFNGLBINDVERTEXBUFFERPROC m_glBindVertexBuffer;
  2888.     PFNGLVERTEXATTRIBFORMATPROC m_glVertexAttribFormat;
  2889.     PFNGLVERTEXATTRIBIFORMATPROC m_glVertexAttribIFormat;
  2890.     PFNGLVERTEXATTRIBLFORMATPROC m_glVertexAttribLFormat;
  2891.     PFNGLVERTEXATTRIBBINDINGPROC m_glVertexAttribBinding;
  2892.     PFNGLVERTEXBINDINGDIVISORPROC m_glVertexBindingDivisor;
  2893.     PFNGLDEBUGMESSAGECONTROLPROC m_glDebugMessageControl;
  2894.     PFNGLDEBUGMESSAGEINSERTPROC m_glDebugMessageInsert;
  2895.     PFNGLDEBUGMESSAGECALLBACKPROC m_glDebugMessageCallback;
  2896.     PFNGLGETDEBUGMESSAGELOGPROC m_glGetDebugMessageLog;
  2897.     PFNGLPUSHDEBUGGROUPPROC m_glPushDebugGroup;
  2898.     PFNGLPOPDEBUGGROUPPROC m_glPopDebugGroup;
  2899.     PFNGLOBJECTLABELPROC m_glObjectLabel;
  2900.     PFNGLGETOBJECTLABELPROC m_glGetObjectLabel;
  2901.     PFNGLOBJECTPTRLABELPROC m_glObjectPtrLabel;
  2902.     PFNGLGETOBJECTPTRLABELPROC m_glGetObjectPtrLabel;
  2903.     PFNGLBUFFERSTORAGEPROC m_glBufferStorage;
  2904.     PFNGLCLEARTEXIMAGEPROC m_glClearTexImage;
  2905.     PFNGLCLEARTEXSUBIMAGEPROC m_glClearTexSubImage;
  2906.     PFNGLBINDBUFFERSBASEPROC m_glBindBuffersBase;
  2907.     PFNGLBINDBUFFERSRANGEPROC m_glBindBuffersRange;
  2908.     PFNGLBINDTEXTURESPROC m_glBindTextures;
  2909.     PFNGLBINDSAMPLERSPROC m_glBindSamplers;
  2910.     PFNGLBINDIMAGETEXTURESPROC m_glBindImageTextures;
  2911.     PFNGLBINDVERTEXBUFFERSPROC m_glBindVertexBuffers;
  2912.     PFNGLCLIPCONTROLPROC m_glClipControl;
  2913.     PFNGLCREATETRANSFORMFEEDBACKSPROC m_glCreateTransformFeedbacks;
  2914.     PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC m_glTransformFeedbackBufferBase;
  2915.     PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC m_glTransformFeedbackBufferRange;
  2916.     PFNGLGETTRANSFORMFEEDBACKIVPROC m_glGetTransformFeedbackiv;
  2917.     PFNGLGETTRANSFORMFEEDBACKI_VPROC m_glGetTransformFeedbacki_v;
  2918.     PFNGLGETTRANSFORMFEEDBACKI64_VPROC m_glGetTransformFeedbacki64_v;
  2919.     PFNGLCREATEBUFFERSPROC m_glCreateBuffers;
  2920.     PFNGLNAMEDBUFFERSTORAGEPROC m_glNamedBufferStorage;
  2921.     PFNGLNAMEDBUFFERDATAPROC m_glNamedBufferData;
  2922.     PFNGLNAMEDBUFFERSUBDATAPROC m_glNamedBufferSubData;
  2923.     PFNGLCOPYNAMEDBUFFERSUBDATAPROC m_glCopyNamedBufferSubData;
  2924.     PFNGLCLEARNAMEDBUFFERDATAPROC m_glClearNamedBufferData;
  2925.     PFNGLCLEARNAMEDBUFFERSUBDATAPROC m_glClearNamedBufferSubData;
  2926.     PFNGLMAPNAMEDBUFFERPROC m_glMapNamedBuffer;
  2927.     PFNGLMAPNAMEDBUFFERRANGEPROC m_glMapNamedBufferRange;
  2928.     PFNGLUNMAPNAMEDBUFFERPROC m_glUnmapNamedBuffer;
  2929.     PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC m_glFlushMappedNamedBufferRange;
  2930.     PFNGLGETNAMEDBUFFERPARAMETERIVPROC m_glGetNamedBufferParameteriv;
  2931.     PFNGLGETNAMEDBUFFERPARAMETERI64VPROC m_glGetNamedBufferParameteri64v;
  2932.     PFNGLGETNAMEDBUFFERPOINTERVPROC m_glGetNamedBufferPointerv;
  2933.     PFNGLGETNAMEDBUFFERSUBDATAPROC m_glGetNamedBufferSubData;
  2934.     PFNGLCREATEFRAMEBUFFERSPROC m_glCreateFramebuffers;
  2935.     PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC m_glNamedFramebufferRenderbuffer;
  2936.     PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC m_glNamedFramebufferParameteri;
  2937.     PFNGLNAMEDFRAMEBUFFERTEXTUREPROC m_glNamedFramebufferTexture;
  2938.     PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC m_glNamedFramebufferTextureLayer;
  2939.     PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC m_glNamedFramebufferDrawBuffer;
  2940.     PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC m_glNamedFramebufferDrawBuffers;
  2941.     PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC m_glNamedFramebufferReadBuffer;
  2942.     PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC m_glInvalidateNamedFramebufferData;
  2943.     PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC m_glInvalidateNamedFramebufferSubData;
  2944.     PFNGLCLEARNAMEDFRAMEBUFFERIVPROC m_glClearNamedFramebufferiv;
  2945.     PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC m_glClearNamedFramebufferuiv;
  2946.     PFNGLCLEARNAMEDFRAMEBUFFERFVPROC m_glClearNamedFramebufferfv;
  2947.     PFNGLCLEARNAMEDFRAMEBUFFERFIPROC m_glClearNamedFramebufferfi;
  2948.     PFNGLBLITNAMEDFRAMEBUFFERPROC m_glBlitNamedFramebuffer;
  2949.     PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC m_glCheckNamedFramebufferStatus;
  2950.     PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC m_glGetNamedFramebufferParameteriv;
  2951.     PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC m_glGetNamedFramebufferAttachmentParameteriv;
  2952.     PFNGLCREATERENDERBUFFERSPROC m_glCreateRenderbuffers;
  2953.     PFNGLNAMEDRENDERBUFFERSTORAGEPROC m_glNamedRenderbufferStorage;
  2954.     PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC m_glNamedRenderbufferStorageMultisample;
  2955.     PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC m_glGetNamedRenderbufferParameteriv;
  2956.     PFNGLCREATETEXTURESPROC m_glCreateTextures;
  2957.     PFNGLTEXTUREBUFFERPROC m_glTextureBuffer;
  2958.     PFNGLTEXTUREBUFFERRANGEPROC m_glTextureBufferRange;
  2959.     PFNGLTEXTURESTORAGE1DPROC m_glTextureStorage1D;
  2960.     PFNGLTEXTURESTORAGE2DPROC m_glTextureStorage2D;
  2961.     PFNGLTEXTURESTORAGE3DPROC m_glTextureStorage3D;
  2962.     PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC m_glTextureStorage2DMultisample;
  2963.     PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC m_glTextureStorage3DMultisample;
  2964.     PFNGLTEXTURESUBIMAGE1DPROC m_glTextureSubImage1D;
  2965.     PFNGLTEXTURESUBIMAGE2DPROC m_glTextureSubImage2D;
  2966.     PFNGLTEXTURESUBIMAGE3DPROC m_glTextureSubImage3D;
  2967.     PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC m_glCompressedTextureSubImage1D;
  2968.     PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC m_glCompressedTextureSubImage2D;
  2969.     PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC m_glCompressedTextureSubImage3D;
  2970.     PFNGLCOPYTEXTURESUBIMAGE1DPROC m_glCopyTextureSubImage1D;
  2971.     PFNGLCOPYTEXTURESUBIMAGE2DPROC m_glCopyTextureSubImage2D;
  2972.     PFNGLCOPYTEXTURESUBIMAGE3DPROC m_glCopyTextureSubImage3D;
  2973.     PFNGLTEXTUREPARAMETERFPROC m_glTextureParameterf;
  2974.     PFNGLTEXTUREPARAMETERFVPROC m_glTextureParameterfv;
  2975.     PFNGLTEXTUREPARAMETERIPROC m_glTextureParameteri;
  2976.     PFNGLTEXTUREPARAMETERIIVPROC m_glTextureParameterIiv;
  2977.     PFNGLTEXTUREPARAMETERIUIVPROC m_glTextureParameterIuiv;
  2978.     PFNGLTEXTUREPARAMETERIVPROC m_glTextureParameteriv;
  2979.     PFNGLGENERATETEXTUREMIPMAPPROC m_glGenerateTextureMipmap;
  2980.     PFNGLBINDTEXTUREUNITPROC m_glBindTextureUnit;
  2981.     PFNGLGETTEXTUREIMAGEPROC m_glGetTextureImage;
  2982.     PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC m_glGetCompressedTextureImage;
  2983.     PFNGLGETTEXTURELEVELPARAMETERFVPROC m_glGetTextureLevelParameterfv;
  2984.     PFNGLGETTEXTURELEVELPARAMETERIVPROC m_glGetTextureLevelParameteriv;
  2985.     PFNGLGETTEXTUREPARAMETERFVPROC m_glGetTextureParameterfv;
  2986.     PFNGLGETTEXTUREPARAMETERIIVPROC m_glGetTextureParameterIiv;
  2987.     PFNGLGETTEXTUREPARAMETERIUIVPROC m_glGetTextureParameterIuiv;
  2988.     PFNGLGETTEXTUREPARAMETERIVPROC m_glGetTextureParameteriv;
  2989.     PFNGLCREATEVERTEXARRAYSPROC m_glCreateVertexArrays;
  2990.     PFNGLDISABLEVERTEXARRAYATTRIBPROC m_glDisableVertexArrayAttrib;
  2991.     PFNGLENABLEVERTEXARRAYATTRIBPROC m_glEnableVertexArrayAttrib;
  2992.     PFNGLVERTEXARRAYELEMENTBUFFERPROC m_glVertexArrayElementBuffer;
  2993.     PFNGLVERTEXARRAYVERTEXBUFFERPROC m_glVertexArrayVertexBuffer;
  2994.     PFNGLVERTEXARRAYVERTEXBUFFERSPROC m_glVertexArrayVertexBuffers;
  2995.     PFNGLVERTEXARRAYATTRIBBINDINGPROC m_glVertexArrayAttribBinding;
  2996.     PFNGLVERTEXARRAYATTRIBFORMATPROC m_glVertexArrayAttribFormat;
  2997.     PFNGLVERTEXARRAYATTRIBIFORMATPROC m_glVertexArrayAttribIFormat;
  2998.     PFNGLVERTEXARRAYATTRIBLFORMATPROC m_glVertexArrayAttribLFormat;
  2999.     PFNGLVERTEXARRAYBINDINGDIVISORPROC m_glVertexArrayBindingDivisor;
  3000.     PFNGLGETVERTEXARRAYIVPROC m_glGetVertexArrayiv;
  3001.     PFNGLGETVERTEXARRAYINDEXEDIVPROC m_glGetVertexArrayIndexediv;
  3002.     PFNGLGETVERTEXARRAYINDEXED64IVPROC m_glGetVertexArrayIndexed64iv;
  3003.     PFNGLCREATESAMPLERSPROC m_glCreateSamplers;
  3004.     PFNGLCREATEPROGRAMPIPELINESPROC m_glCreateProgramPipelines;
  3005.     PFNGLCREATEQUERIESPROC m_glCreateQueries;
  3006.     PFNGLGETQUERYBUFFEROBJECTI64VPROC m_glGetQueryBufferObjecti64v;
  3007.     PFNGLGETQUERYBUFFEROBJECTIVPROC m_glGetQueryBufferObjectiv;
  3008.     PFNGLGETQUERYBUFFEROBJECTUI64VPROC m_glGetQueryBufferObjectui64v;
  3009.     PFNGLGETQUERYBUFFEROBJECTUIVPROC m_glGetQueryBufferObjectuiv;
  3010.     PFNGLMEMORYBARRIERBYREGIONPROC m_glMemoryBarrierByRegion;
  3011.     PFNGLGETTEXTURESUBIMAGEPROC m_glGetTextureSubImage;
  3012.     PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC m_glGetCompressedTextureSubImage;
  3013.     PFNGLGETGRAPHICSRESETSTATUSPROC m_glGetGraphicsResetStatus;
  3014.     PFNGLGETNCOMPRESSEDTEXIMAGEPROC m_glGetnCompressedTexImage;
  3015.     PFNGLGETNTEXIMAGEPROC m_glGetnTexImage;
  3016.     PFNGLGETNUNIFORMDVPROC m_glGetnUniformdv;
  3017.     PFNGLGETNUNIFORMFVPROC m_glGetnUniformfv;
  3018.     PFNGLGETNUNIFORMIVPROC m_glGetnUniformiv;
  3019.     PFNGLGETNUNIFORMUIVPROC m_glGetnUniformuiv;
  3020.     PFNGLREADNPIXELSPROC m_glReadnPixels;
  3021.     PFNGLTEXTUREBARRIERPROC m_glTextureBarrier;
  3022.     PFNGLGETTEXTUREHANDLEARBPROC m_glGetTextureHandleARB;
  3023.     PFNGLGETTEXTURESAMPLERHANDLEARBPROC m_glGetTextureSamplerHandleARB;
  3024.     PFNGLMAKETEXTUREHANDLERESIDENTARBPROC m_glMakeTextureHandleResidentARB;
  3025.     PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC m_glMakeTextureHandleNonResidentARB;
  3026.     PFNGLGETIMAGEHANDLEARBPROC m_glGetImageHandleARB;
  3027.     PFNGLMAKEIMAGEHANDLERESIDENTARBPROC m_glMakeImageHandleResidentARB;
  3028.     PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC m_glMakeImageHandleNonResidentARB;
  3029.     PFNGLUNIFORMHANDLEUI64ARBPROC m_glUniformHandleui64ARB;
  3030.     PFNGLUNIFORMHANDLEUI64VARBPROC m_glUniformHandleui64vARB;
  3031.     PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC m_glProgramUniformHandleui64ARB;
  3032.     PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC m_glProgramUniformHandleui64vARB;
  3033.     PFNGLISTEXTUREHANDLERESIDENTARBPROC m_glIsTextureHandleResidentARB;
  3034.     PFNGLISIMAGEHANDLERESIDENTARBPROC m_glIsImageHandleResidentARB;
  3035.     PFNGLVERTEXATTRIBL1UI64ARBPROC m_glVertexAttribL1ui64ARB;
  3036.     PFNGLVERTEXATTRIBL1UI64VARBPROC m_glVertexAttribL1ui64vARB;
  3037.     PFNGLGETVERTEXATTRIBLUI64VARBPROC m_glGetVertexAttribLui64vARB;
  3038.     PFNGLCREATESYNCFROMCLEVENTARBPROC m_glCreateSyncFromCLeventARB;
  3039.     PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC m_glDispatchComputeGroupSizeARB;
  3040.     PFNGLDEBUGMESSAGECONTROLARBPROC m_glDebugMessageControlARB;
  3041.     PFNGLDEBUGMESSAGEINSERTARBPROC m_glDebugMessageInsertARB;
  3042.     PFNGLDEBUGMESSAGECALLBACKARBPROC m_glDebugMessageCallbackARB;
  3043.     PFNGLGETDEBUGMESSAGELOGARBPROC m_glGetDebugMessageLogARB;
  3044.     PFNGLBLENDEQUATIONIARBPROC m_glBlendEquationiARB;
  3045.     PFNGLBLENDEQUATIONSEPARATEIARBPROC m_glBlendEquationSeparateiARB;
  3046.     PFNGLBLENDFUNCIARBPROC m_glBlendFunciARB;
  3047.     PFNGLBLENDFUNCSEPARATEIARBPROC m_glBlendFuncSeparateiARB;
  3048.     PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC m_glMultiDrawArraysIndirectCountARB;
  3049.     PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC m_glMultiDrawElementsIndirectCountARB;
  3050.     PFNGLGETGRAPHICSRESETSTATUSARBPROC m_glGetGraphicsResetStatusARB;
  3051.     PFNGLGETNTEXIMAGEARBPROC m_glGetnTexImageARB;
  3052.     PFNGLREADNPIXELSARBPROC m_glReadnPixelsARB;
  3053.     PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC m_glGetnCompressedTexImageARB;
  3054.     PFNGLGETNUNIFORMFVARBPROC m_glGetnUniformfvARB;
  3055.     PFNGLGETNUNIFORMIVARBPROC m_glGetnUniformivARB;
  3056.     PFNGLGETNUNIFORMUIVARBPROC m_glGetnUniformuivARB;
  3057.     PFNGLGETNUNIFORMDVARBPROC m_glGetnUniformdvARB;
  3058.     PFNGLMINSAMPLESHADINGARBPROC m_glMinSampleShadingARB;
  3059.     PFNGLNAMEDSTRINGARBPROC m_glNamedStringARB;
  3060.     PFNGLDELETENAMEDSTRINGARBPROC m_glDeleteNamedStringARB;
  3061.     PFNGLCOMPILESHADERINCLUDEARBPROC m_glCompileShaderIncludeARB;
  3062.     PFNGLISNAMEDSTRINGARBPROC m_glIsNamedStringARB;
  3063.     PFNGLGETNAMEDSTRINGARBPROC m_glGetNamedStringARB;
  3064.     PFNGLGETNAMEDSTRINGIVARBPROC m_glGetNamedStringivARB;
  3065.     PFNGLBUFFERPAGECOMMITMENTARBPROC m_glBufferPageCommitmentARB;
  3066.     PFNGLNAMEDBUFFERPAGECOMMITMENTEXTPROC m_glNamedBufferPageCommitmentEXT;
  3067.     PFNGLNAMEDBUFFERPAGECOMMITMENTARBPROC m_glNamedBufferPageCommitmentARB;
  3068.     PFNGLTEXPAGECOMMITMENTARBPROC m_glTexPageCommitmentARB;
  3069. public:
  3070.     inline bool b_glCullFace() const  { return !!m_glCullFace; }
  3071.     inline bool b_glFrontFace() const  { return !!m_glFrontFace; }
  3072.     inline bool b_glHint() const  { return !!m_glHint; }
  3073.     inline bool b_glLineWidth() const  { return !!m_glLineWidth; }
  3074.     inline bool b_glPointSize() const  { return !!m_glPointSize; }
  3075.     inline bool b_glPolygonMode() const  { return !!m_glPolygonMode; }
  3076.     inline bool b_glScissor() const  { return !!m_glScissor; }
  3077.     inline bool b_glTexParameterf() const  { return !!m_glTexParameterf; }
  3078.     inline bool b_glTexParameterfv() const  { return !!m_glTexParameterfv; }
  3079.     inline bool b_glTexParameteri() const  { return !!m_glTexParameteri; }
  3080.     inline bool b_glTexParameteriv() const  { return !!m_glTexParameteriv; }
  3081.     inline bool b_glTexImage1D() const  { return !!m_glTexImage1D; }
  3082.     inline bool b_glTexImage2D() const  { return !!m_glTexImage2D; }
  3083.     inline bool b_glDrawBuffer() const  { return !!m_glDrawBuffer; }
  3084.     inline bool b_glClear() const  { return !!m_glClear; }
  3085.     inline bool b_glClearColor() const  { return !!m_glClearColor; }
  3086.     inline bool b_glClearStencil() const  { return !!m_glClearStencil; }
  3087.     inline bool b_glClearDepth() const  { return !!m_glClearDepth; }
  3088.     inline bool b_glStencilMask() const  { return !!m_glStencilMask; }
  3089.     inline bool b_glColorMask() const  { return !!m_glColorMask; }
  3090.     inline bool b_glDepthMask() const  { return !!m_glDepthMask; }
  3091.     inline bool b_glDisable() const  { return !!m_glDisable; }
  3092.     inline bool b_glEnable() const  { return !!m_glEnable; }
  3093.     inline bool b_glFinish() const  { return !!m_glFinish; }
  3094.     inline bool b_glFlush() const  { return !!m_glFlush; }
  3095.     inline bool b_glBlendFunc() const  { return !!m_glBlendFunc; }
  3096.     inline bool b_glLogicOp() const  { return !!m_glLogicOp; }
  3097.     inline bool b_glStencilFunc() const  { return !!m_glStencilFunc; }
  3098.     inline bool b_glStencilOp() const  { return !!m_glStencilOp; }
  3099.     inline bool b_glDepthFunc() const  { return !!m_glDepthFunc; }
  3100.     inline bool b_glPixelStoref() const  { return !!m_glPixelStoref; }
  3101.     inline bool b_glPixelStorei() const  { return !!m_glPixelStorei; }
  3102.     inline bool b_glReadBuffer() const  { return !!m_glReadBuffer; }
  3103.     inline bool b_glReadPixels() const  { return !!m_glReadPixels; }
  3104.     inline bool b_glGetBooleanv() const  { return !!m_glGetBooleanv; }
  3105.     inline bool b_glGetDoublev() const  { return !!m_glGetDoublev; }
  3106.     inline bool b_glGetError() const  { return !!m_glGetError; }
  3107.     inline bool b_glGetFloatv() const  { return !!m_glGetFloatv; }
  3108.     inline bool b_glGetIntegerv() const  { return !!m_glGetIntegerv; }
  3109.     inline bool b_glGetString() const  { return !!m_glGetString; }
  3110.     inline bool b_glGetTexImage() const  { return !!m_glGetTexImage; }
  3111.     inline bool b_glGetTexParameterfv() const  { return !!m_glGetTexParameterfv; }
  3112.     inline bool b_glGetTexParameteriv() const  { return !!m_glGetTexParameteriv; }
  3113.     inline bool b_glGetTexLevelParameterfv() const  { return !!m_glGetTexLevelParameterfv; }
  3114.     inline bool b_glGetTexLevelParameteriv() const  { return !!m_glGetTexLevelParameteriv; }
  3115.     inline bool b_glIsEnabled() const  { return !!m_glIsEnabled; }
  3116.     inline bool b_glDepthRange() const  { return !!m_glDepthRange; }
  3117.     inline bool b_glViewport() const  { return !!m_glViewport; }
  3118.     inline bool b_glDrawArrays() const  { return !!m_glDrawArrays; }
  3119.     inline bool b_glDrawElements() const  { return !!m_glDrawElements; }
  3120.     inline bool b_glGetPointerv() const  { return !!m_glGetPointerv; }
  3121.     inline bool b_glPolygonOffset() const  { return !!m_glPolygonOffset; }
  3122.     inline bool b_glCopyTexImage1D() const  { return !!m_glCopyTexImage1D; }
  3123.     inline bool b_glCopyTexImage2D() const  { return !!m_glCopyTexImage2D; }
  3124.     inline bool b_glCopyTexSubImage1D() const  { return !!m_glCopyTexSubImage1D; }
  3125.     inline bool b_glCopyTexSubImage2D() const  { return !!m_glCopyTexSubImage2D; }
  3126.     inline bool b_glTexSubImage1D() const  { return !!m_glTexSubImage1D; }
  3127.     inline bool b_glTexSubImage2D() const  { return !!m_glTexSubImage2D; }
  3128.     inline bool b_glBindTexture() const  { return !!m_glBindTexture; }
  3129.     inline bool b_glDeleteTextures() const  { return !!m_glDeleteTextures; }
  3130.     inline bool b_glGenTextures() const  { return !!m_glGenTextures; }
  3131.     inline bool b_glIsTexture() const  { return !!m_glIsTexture; }
  3132.     inline bool b_glDrawRangeElements() const  { return !!m_glDrawRangeElements; }
  3133.     inline bool b_glTexImage3D() const  { return !!m_glTexImage3D; }
  3134.     inline bool b_glTexSubImage3D() const  { return !!m_glTexSubImage3D; }
  3135.     inline bool b_glCopyTexSubImage3D() const  { return !!m_glCopyTexSubImage3D; }
  3136.     inline bool b_glActiveTexture() const  { return !!m_glActiveTexture; }
  3137.     inline bool b_glSampleCoverage() const  { return !!m_glSampleCoverage; }
  3138.     inline bool b_glCompressedTexImage3D() const  { return !!m_glCompressedTexImage3D; }
  3139.     inline bool b_glCompressedTexImage2D() const  { return !!m_glCompressedTexImage2D; }
  3140.     inline bool b_glCompressedTexImage1D() const  { return !!m_glCompressedTexImage1D; }
  3141.     inline bool b_glCompressedTexSubImage3D() const  { return !!m_glCompressedTexSubImage3D; }
  3142.     inline bool b_glCompressedTexSubImage2D() const  { return !!m_glCompressedTexSubImage2D; }
  3143.     inline bool b_glCompressedTexSubImage1D() const  { return !!m_glCompressedTexSubImage1D; }
  3144.     inline bool b_glGetCompressedTexImage() const  { return !!m_glGetCompressedTexImage; }
  3145.     inline bool b_glBlendFuncSeparate() const  { return !!m_glBlendFuncSeparate; }
  3146.     inline bool b_glMultiDrawArrays() const  { return !!m_glMultiDrawArrays; }
  3147.     inline bool b_glMultiDrawElements() const  { return !!m_glMultiDrawElements; }
  3148.     inline bool b_glPointParameterf() const  { return !!m_glPointParameterf; }
  3149.     inline bool b_glPointParameterfv() const  { return !!m_glPointParameterfv; }
  3150.     inline bool b_glPointParameteri() const  { return !!m_glPointParameteri; }
  3151.     inline bool b_glPointParameteriv() const  { return !!m_glPointParameteriv; }
  3152.     inline bool b_glBlendColor() const  { return !!m_glBlendColor; }
  3153.     inline bool b_glBlendEquation() const  { return !!m_glBlendEquation; }
  3154.     inline bool b_glGenQueries() const  { return !!m_glGenQueries; }
  3155.     inline bool b_glDeleteQueries() const  { return !!m_glDeleteQueries; }
  3156.     inline bool b_glIsQuery() const  { return !!m_glIsQuery; }
  3157.     inline bool b_glBeginQuery() const  { return !!m_glBeginQuery; }
  3158.     inline bool b_glEndQuery() const  { return !!m_glEndQuery; }
  3159.     inline bool b_glGetQueryiv() const  { return !!m_glGetQueryiv; }
  3160.     inline bool b_glGetQueryObjectiv() const  { return !!m_glGetQueryObjectiv; }
  3161.     inline bool b_glGetQueryObjectuiv() const  { return !!m_glGetQueryObjectuiv; }
  3162.     inline bool b_glBindBuffer() const  { return !!m_glBindBuffer; }
  3163.     inline bool b_glDeleteBuffers() const  { return !!m_glDeleteBuffers; }
  3164.     inline bool b_glGenBuffers() const  { return !!m_glGenBuffers; }
  3165.     inline bool b_glIsBuffer() const  { return !!m_glIsBuffer; }
  3166.     inline bool b_glBufferData() const  { return !!m_glBufferData; }
  3167.     inline bool b_glBufferSubData() const  { return !!m_glBufferSubData; }
  3168.     inline bool b_glGetBufferSubData() const  { return !!m_glGetBufferSubData; }
  3169.     inline bool b_glMapBuffer() const  { return !!m_glMapBuffer; }
  3170.     inline bool b_glUnmapBuffer() const  { return !!m_glUnmapBuffer; }
  3171.     inline bool b_glGetBufferParameteriv() const  { return !!m_glGetBufferParameteriv; }
  3172.     inline bool b_glGetBufferPointerv() const  { return !!m_glGetBufferPointerv; }
  3173.     inline bool b_glBlendEquationSeparate() const  { return !!m_glBlendEquationSeparate; }
  3174.     inline bool b_glDrawBuffers() const  { return !!m_glDrawBuffers; }
  3175.     inline bool b_glStencilOpSeparate() const  { return !!m_glStencilOpSeparate; }
  3176.     inline bool b_glStencilFuncSeparate() const  { return !!m_glStencilFuncSeparate; }
  3177.     inline bool b_glStencilMaskSeparate() const  { return !!m_glStencilMaskSeparate; }
  3178.     inline bool b_glAttachShader() const  { return !!m_glAttachShader; }
  3179.     inline bool b_glBindAttribLocation() const  { return !!m_glBindAttribLocation; }
  3180.     inline bool b_glCompileShader() const  { return !!m_glCompileShader; }
  3181.     inline bool b_glCreateProgram() const  { return !!m_glCreateProgram; }
  3182.     inline bool b_glCreateShader() const  { return !!m_glCreateShader; }
  3183.     inline bool b_glDeleteProgram() const  { return !!m_glDeleteProgram; }
  3184.     inline bool b_glDeleteShader() const  { return !!m_glDeleteShader; }
  3185.     inline bool b_glDetachShader() const  { return !!m_glDetachShader; }
  3186.     inline bool b_glDisableVertexAttribArray() const  { return !!m_glDisableVertexAttribArray; }
  3187.     inline bool b_glEnableVertexAttribArray() const  { return !!m_glEnableVertexAttribArray; }
  3188.     inline bool b_glGetActiveAttrib() const  { return !!m_glGetActiveAttrib; }
  3189.     inline bool b_glGetActiveUniform() const  { return !!m_glGetActiveUniform; }
  3190.     inline bool b_glGetAttachedShaders() const  { return !!m_glGetAttachedShaders; }
  3191.     inline bool b_glGetAttribLocation() const  { return !!m_glGetAttribLocation; }
  3192.     inline bool b_glGetProgramiv() const  { return !!m_glGetProgramiv; }
  3193.     inline bool b_glGetProgramInfoLog() const  { return !!m_glGetProgramInfoLog; }
  3194.     inline bool b_glGetShaderiv() const  { return !!m_glGetShaderiv; }
  3195.     inline bool b_glGetShaderInfoLog() const  { return !!m_glGetShaderInfoLog; }
  3196.     inline bool b_glGetShaderSource() const  { return !!m_glGetShaderSource; }
  3197.     inline bool b_glGetUniformLocation() const  { return !!m_glGetUniformLocation; }
  3198.     inline bool b_glGetUniformfv() const  { return !!m_glGetUniformfv; }
  3199.     inline bool b_glGetUniformiv() const  { return !!m_glGetUniformiv; }
  3200.     inline bool b_glGetVertexAttribdv() const  { return !!m_glGetVertexAttribdv; }
  3201.     inline bool b_glGetVertexAttribfv() const  { return !!m_glGetVertexAttribfv; }
  3202.     inline bool b_glGetVertexAttribiv() const  { return !!m_glGetVertexAttribiv; }
  3203.     inline bool b_glGetVertexAttribPointerv() const  { return !!m_glGetVertexAttribPointerv; }
  3204.     inline bool b_glIsProgram() const  { return !!m_glIsProgram; }
  3205.     inline bool b_glIsShader() const  { return !!m_glIsShader; }
  3206.     inline bool b_glLinkProgram() const  { return !!m_glLinkProgram; }
  3207.     inline bool b_glShaderSource() const  { return !!m_glShaderSource; }
  3208.     inline bool b_glUseProgram() const  { return !!m_glUseProgram; }
  3209.     inline bool b_glUniform1f() const  { return !!m_glUniform1f; }
  3210.     inline bool b_glUniform2f() const  { return !!m_glUniform2f; }
  3211.     inline bool b_glUniform3f() const  { return !!m_glUniform3f; }
  3212.     inline bool b_glUniform4f() const  { return !!m_glUniform4f; }
  3213.     inline bool b_glUniform1i() const  { return !!m_glUniform1i; }
  3214.     inline bool b_glUniform2i() const  { return !!m_glUniform2i; }
  3215.     inline bool b_glUniform3i() const  { return !!m_glUniform3i; }
  3216.     inline bool b_glUniform4i() const  { return !!m_glUniform4i; }
  3217.     inline bool b_glUniform1fv() const  { return !!m_glUniform1fv; }
  3218.     inline bool b_glUniform2fv() const  { return !!m_glUniform2fv; }
  3219.     inline bool b_glUniform3fv() const  { return !!m_glUniform3fv; }
  3220.     inline bool b_glUniform4fv() const  { return !!m_glUniform4fv; }
  3221.     inline bool b_glUniform1iv() const  { return !!m_glUniform1iv; }
  3222.     inline bool b_glUniform2iv() const  { return !!m_glUniform2iv; }
  3223.     inline bool b_glUniform3iv() const  { return !!m_glUniform3iv; }
  3224.     inline bool b_glUniform4iv() const  { return !!m_glUniform4iv; }
  3225.     inline bool b_glUniformMatrix2fv() const  { return !!m_glUniformMatrix2fv; }
  3226.     inline bool b_glUniformMatrix3fv() const  { return !!m_glUniformMatrix3fv; }
  3227.     inline bool b_glUniformMatrix4fv() const  { return !!m_glUniformMatrix4fv; }
  3228.     inline bool b_glValidateProgram() const  { return !!m_glValidateProgram; }
  3229.     inline bool b_glVertexAttrib1d() const  { return !!m_glVertexAttrib1d; }
  3230.     inline bool b_glVertexAttrib1dv() const  { return !!m_glVertexAttrib1dv; }
  3231.     inline bool b_glVertexAttrib1f() const  { return !!m_glVertexAttrib1f; }
  3232.     inline bool b_glVertexAttrib1fv() const  { return !!m_glVertexAttrib1fv; }
  3233.     inline bool b_glVertexAttrib1s() const  { return !!m_glVertexAttrib1s; }
  3234.     inline bool b_glVertexAttrib1sv() const  { return !!m_glVertexAttrib1sv; }
  3235.     inline bool b_glVertexAttrib2d() const  { return !!m_glVertexAttrib2d; }
  3236.     inline bool b_glVertexAttrib2dv() const  { return !!m_glVertexAttrib2dv; }
  3237.     inline bool b_glVertexAttrib2f() const  { return !!m_glVertexAttrib2f; }
  3238.     inline bool b_glVertexAttrib2fv() const  { return !!m_glVertexAttrib2fv; }
  3239.     inline bool b_glVertexAttrib2s() const  { return !!m_glVertexAttrib2s; }
  3240.     inline bool b_glVertexAttrib2sv() const  { return !!m_glVertexAttrib2sv; }
  3241.     inline bool b_glVertexAttrib3d() const  { return !!m_glVertexAttrib3d; }
  3242.     inline bool b_glVertexAttrib3dv() const  { return !!m_glVertexAttrib3dv; }
  3243.     inline bool b_glVertexAttrib3f() const  { return !!m_glVertexAttrib3f; }
  3244.     inline bool b_glVertexAttrib3fv() const  { return !!m_glVertexAttrib3fv; }
  3245.     inline bool b_glVertexAttrib3s() const  { return !!m_glVertexAttrib3s; }
  3246.     inline bool b_glVertexAttrib3sv() const  { return !!m_glVertexAttrib3sv; }
  3247.     inline bool b_glVertexAttrib4Nbv() const  { return !!m_glVertexAttrib4Nbv; }
  3248.     inline bool b_glVertexAttrib4Niv() const  { return !!m_glVertexAttrib4Niv; }
  3249.     inline bool b_glVertexAttrib4Nsv() const  { return !!m_glVertexAttrib4Nsv; }
  3250.     inline bool b_glVertexAttrib4Nub() const  { return !!m_glVertexAttrib4Nub; }
  3251.     inline bool b_glVertexAttrib4Nubv() const  { return !!m_glVertexAttrib4Nubv; }
  3252.     inline bool b_glVertexAttrib4Nuiv() const  { return !!m_glVertexAttrib4Nuiv; }
  3253.     inline bool b_glVertexAttrib4Nusv() const  { return !!m_glVertexAttrib4Nusv; }
  3254.     inline bool b_glVertexAttrib4bv() const  { return !!m_glVertexAttrib4bv; }
  3255.     inline bool b_glVertexAttrib4d() const  { return !!m_glVertexAttrib4d; }
  3256.     inline bool b_glVertexAttrib4dv() const  { return !!m_glVertexAttrib4dv; }
  3257.     inline bool b_glVertexAttrib4f() const  { return !!m_glVertexAttrib4f; }
  3258.     inline bool b_glVertexAttrib4fv() const  { return !!m_glVertexAttrib4fv; }
  3259.     inline bool b_glVertexAttrib4iv() const  { return !!m_glVertexAttrib4iv; }
  3260.     inline bool b_glVertexAttrib4s() const  { return !!m_glVertexAttrib4s; }
  3261.     inline bool b_glVertexAttrib4sv() const  { return !!m_glVertexAttrib4sv; }
  3262.     inline bool b_glVertexAttrib4ubv() const  { return !!m_glVertexAttrib4ubv; }
  3263.     inline bool b_glVertexAttrib4uiv() const  { return !!m_glVertexAttrib4uiv; }
  3264.     inline bool b_glVertexAttrib4usv() const  { return !!m_glVertexAttrib4usv; }
  3265.     inline bool b_glVertexAttribPointer() const  { return !!m_glVertexAttribPointer; }
  3266.     inline bool b_glUniformMatrix2x3fv() const  { return !!m_glUniformMatrix2x3fv; }
  3267.     inline bool b_glUniformMatrix3x2fv() const  { return !!m_glUniformMatrix3x2fv; }
  3268.     inline bool b_glUniformMatrix2x4fv() const  { return !!m_glUniformMatrix2x4fv; }
  3269.     inline bool b_glUniformMatrix4x2fv() const  { return !!m_glUniformMatrix4x2fv; }
  3270.     inline bool b_glUniformMatrix3x4fv() const  { return !!m_glUniformMatrix3x4fv; }
  3271.     inline bool b_glUniformMatrix4x3fv() const  { return !!m_glUniformMatrix4x3fv; }
  3272.     inline bool b_glColorMaski() const  { return !!m_glColorMaski; }
  3273.     inline bool b_glGetBooleani_v() const  { return !!m_glGetBooleani_v; }
  3274.     inline bool b_glGetIntegeri_v() const  { return !!m_glGetIntegeri_v; }
  3275.     inline bool b_glEnablei() const  { return !!m_glEnablei; }
  3276.     inline bool b_glDisablei() const  { return !!m_glDisablei; }
  3277.     inline bool b_glIsEnabledi() const  { return !!m_glIsEnabledi; }
  3278.     inline bool b_glBeginTransformFeedback() const  { return !!m_glBeginTransformFeedback; }
  3279.     inline bool b_glEndTransformFeedback() const  { return !!m_glEndTransformFeedback; }
  3280.     inline bool b_glBindBufferRange() const  { return !!m_glBindBufferRange; }
  3281.     inline bool b_glBindBufferBase() const  { return !!m_glBindBufferBase; }
  3282.     inline bool b_glTransformFeedbackVaryings() const  { return !!m_glTransformFeedbackVaryings; }
  3283.     inline bool b_glGetTransformFeedbackVarying() const  { return !!m_glGetTransformFeedbackVarying; }
  3284.     inline bool b_glClampColor() const  { return !!m_glClampColor; }
  3285.     inline bool b_glBeginConditionalRender() const  { return !!m_glBeginConditionalRender; }
  3286.     inline bool b_glEndConditionalRender() const  { return !!m_glEndConditionalRender; }
  3287.     inline bool b_glVertexAttribIPointer() const  { return !!m_glVertexAttribIPointer; }
  3288.     inline bool b_glGetVertexAttribIiv() const  { return !!m_glGetVertexAttribIiv; }
  3289.     inline bool b_glGetVertexAttribIuiv() const  { return !!m_glGetVertexAttribIuiv; }
  3290.     inline bool b_glVertexAttribI1i() const  { return !!m_glVertexAttribI1i; }
  3291.     inline bool b_glVertexAttribI2i() const  { return !!m_glVertexAttribI2i; }
  3292.     inline bool b_glVertexAttribI3i() const  { return !!m_glVertexAttribI3i; }
  3293.     inline bool b_glVertexAttribI4i() const  { return !!m_glVertexAttribI4i; }
  3294.     inline bool b_glVertexAttribI1ui() const  { return !!m_glVertexAttribI1ui; }
  3295.     inline bool b_glVertexAttribI2ui() const  { return !!m_glVertexAttribI2ui; }
  3296.     inline bool b_glVertexAttribI3ui() const  { return !!m_glVertexAttribI3ui; }
  3297.     inline bool b_glVertexAttribI4ui() const  { return !!m_glVertexAttribI4ui; }
  3298.     inline bool b_glVertexAttribI1iv() const  { return !!m_glVertexAttribI1iv; }
  3299.     inline bool b_glVertexAttribI2iv() const  { return !!m_glVertexAttribI2iv; }
  3300.     inline bool b_glVertexAttribI3iv() const  { return !!m_glVertexAttribI3iv; }
  3301.     inline bool b_glVertexAttribI4iv() const  { return !!m_glVertexAttribI4iv; }
  3302.     inline bool b_glVertexAttribI1uiv() const  { return !!m_glVertexAttribI1uiv; }
  3303.     inline bool b_glVertexAttribI2uiv() const  { return !!m_glVertexAttribI2uiv; }
  3304.     inline bool b_glVertexAttribI3uiv() const  { return !!m_glVertexAttribI3uiv; }
  3305.     inline bool b_glVertexAttribI4uiv() const  { return !!m_glVertexAttribI4uiv; }
  3306.     inline bool b_glVertexAttribI4bv() const  { return !!m_glVertexAttribI4bv; }
  3307.     inline bool b_glVertexAttribI4sv() const  { return !!m_glVertexAttribI4sv; }
  3308.     inline bool b_glVertexAttribI4ubv() const  { return !!m_glVertexAttribI4ubv; }
  3309.     inline bool b_glVertexAttribI4usv() const  { return !!m_glVertexAttribI4usv; }
  3310.     inline bool b_glGetUniformuiv() const  { return !!m_glGetUniformuiv; }
  3311.     inline bool b_glBindFragDataLocation() const  { return !!m_glBindFragDataLocation; }
  3312.     inline bool b_glGetFragDataLocation() const  { return !!m_glGetFragDataLocation; }
  3313.     inline bool b_glUniform1ui() const  { return !!m_glUniform1ui; }
  3314.     inline bool b_glUniform2ui() const  { return !!m_glUniform2ui; }
  3315.     inline bool b_glUniform3ui() const  { return !!m_glUniform3ui; }
  3316.     inline bool b_glUniform4ui() const  { return !!m_glUniform4ui; }
  3317.     inline bool b_glUniform1uiv() const  { return !!m_glUniform1uiv; }
  3318.     inline bool b_glUniform2uiv() const  { return !!m_glUniform2uiv; }
  3319.     inline bool b_glUniform3uiv() const  { return !!m_glUniform3uiv; }
  3320.     inline bool b_glUniform4uiv() const  { return !!m_glUniform4uiv; }
  3321.     inline bool b_glTexParameterIiv() const  { return !!m_glTexParameterIiv; }
  3322.     inline bool b_glTexParameterIuiv() const  { return !!m_glTexParameterIuiv; }
  3323.     inline bool b_glGetTexParameterIiv() const  { return !!m_glGetTexParameterIiv; }
  3324.     inline bool b_glGetTexParameterIuiv() const  { return !!m_glGetTexParameterIuiv; }
  3325.     inline bool b_glClearBufferiv() const  { return !!m_glClearBufferiv; }
  3326.     inline bool b_glClearBufferuiv() const  { return !!m_glClearBufferuiv; }
  3327.     inline bool b_glClearBufferfv() const  { return !!m_glClearBufferfv; }
  3328.     inline bool b_glClearBufferfi() const  { return !!m_glClearBufferfi; }
  3329.     inline bool b_glGetStringi() const  { return !!m_glGetStringi; }
  3330.     inline bool b_glIsRenderbuffer() const  { return !!m_glIsRenderbuffer; }
  3331.     inline bool b_glBindRenderbuffer() const  { return !!m_glBindRenderbuffer; }
  3332.     inline bool b_glDeleteRenderbuffers() const  { return !!m_glDeleteRenderbuffers; }
  3333.     inline bool b_glGenRenderbuffers() const  { return !!m_glGenRenderbuffers; }
  3334.     inline bool b_glRenderbufferStorage() const  { return !!m_glRenderbufferStorage; }
  3335.     inline bool b_glGetRenderbufferParameteriv() const  { return !!m_glGetRenderbufferParameteriv; }
  3336.     inline bool b_glIsFramebuffer() const  { return !!m_glIsFramebuffer; }
  3337.     inline bool b_glBindFramebuffer() const  { return !!m_glBindFramebuffer; }
  3338.     inline bool b_glDeleteFramebuffers() const  { return !!m_glDeleteFramebuffers; }
  3339.     inline bool b_glGenFramebuffers() const  { return !!m_glGenFramebuffers; }
  3340.     inline bool b_glCheckFramebufferStatus() const  { return !!m_glCheckFramebufferStatus; }
  3341.     inline bool b_glFramebufferTexture1D() const  { return !!m_glFramebufferTexture1D; }
  3342.     inline bool b_glFramebufferTexture2D() const  { return !!m_glFramebufferTexture2D; }
  3343.     inline bool b_glFramebufferTexture3D() const  { return !!m_glFramebufferTexture3D; }
  3344.     inline bool b_glFramebufferRenderbuffer() const  { return !!m_glFramebufferRenderbuffer; }
  3345.     inline bool b_glGetFramebufferAttachmentParameteriv() const  { return !!m_glGetFramebufferAttachmentParameteriv; }
  3346.     inline bool b_glGenerateMipmap() const  { return !!m_glGenerateMipmap; }
  3347.     inline bool b_glBlitFramebuffer() const  { return !!m_glBlitFramebuffer; }
  3348.     inline bool b_glRenderbufferStorageMultisample() const  { return !!m_glRenderbufferStorageMultisample; }
  3349.     inline bool b_glFramebufferTextureLayer() const  { return !!m_glFramebufferTextureLayer; }
  3350.     inline bool b_glMapBufferRange() const  { return !!m_glMapBufferRange; }
  3351.     inline bool b_glFlushMappedBufferRange() const  { return !!m_glFlushMappedBufferRange; }
  3352.     inline bool b_glBindVertexArray() const  { return !!m_glBindVertexArray; }
  3353.     inline bool b_glDeleteVertexArrays() const  { return !!m_glDeleteVertexArrays; }
  3354.     inline bool b_glGenVertexArrays() const  { return !!m_glGenVertexArrays; }
  3355.     inline bool b_glIsVertexArray() const  { return !!m_glIsVertexArray; }
  3356.     inline bool b_glDrawArraysInstanced() const  { return !!m_glDrawArraysInstanced; }
  3357.     inline bool b_glDrawElementsInstanced() const  { return !!m_glDrawElementsInstanced; }
  3358.     inline bool b_glTexBuffer() const  { return !!m_glTexBuffer; }
  3359.     inline bool b_glPrimitiveRestartIndex() const  { return !!m_glPrimitiveRestartIndex; }
  3360.     inline bool b_glCopyBufferSubData() const  { return !!m_glCopyBufferSubData; }
  3361.     inline bool b_glGetUniformIndices() const  { return !!m_glGetUniformIndices; }
  3362.     inline bool b_glGetActiveUniformsiv() const  { return !!m_glGetActiveUniformsiv; }
  3363.     inline bool b_glGetActiveUniformName() const  { return !!m_glGetActiveUniformName; }
  3364.     inline bool b_glGetUniformBlockIndex() const  { return !!m_glGetUniformBlockIndex; }
  3365.     inline bool b_glGetActiveUniformBlockiv() const  { return !!m_glGetActiveUniformBlockiv; }
  3366.     inline bool b_glGetActiveUniformBlockName() const  { return !!m_glGetActiveUniformBlockName; }
  3367.     inline bool b_glUniformBlockBinding() const  { return !!m_glUniformBlockBinding; }
  3368.     inline bool b_glDrawElementsBaseVertex() const  { return !!m_glDrawElementsBaseVertex; }
  3369.     inline bool b_glDrawRangeElementsBaseVertex() const  { return !!m_glDrawRangeElementsBaseVertex; }
  3370.     inline bool b_glDrawElementsInstancedBaseVertex() const  { return !!m_glDrawElementsInstancedBaseVertex; }
  3371.     inline bool b_glMultiDrawElementsBaseVertex() const  { return !!m_glMultiDrawElementsBaseVertex; }
  3372.     inline bool b_glProvokingVertex() const  { return !!m_glProvokingVertex; }
  3373.     inline bool b_glFenceSync() const  { return !!m_glFenceSync; }
  3374.     inline bool b_glIsSync() const  { return !!m_glIsSync; }
  3375.     inline bool b_glDeleteSync() const  { return !!m_glDeleteSync; }
  3376.     inline bool b_glClientWaitSync() const  { return !!m_glClientWaitSync; }
  3377.     inline bool b_glWaitSync() const  { return !!m_glWaitSync; }
  3378.     inline bool b_glGetInteger64v() const  { return !!m_glGetInteger64v; }
  3379.     inline bool b_glGetSynciv() const  { return !!m_glGetSynciv; }
  3380.     inline bool b_glGetInteger64i_v() const  { return !!m_glGetInteger64i_v; }
  3381.     inline bool b_glGetBufferParameteri64v() const  { return !!m_glGetBufferParameteri64v; }
  3382.     inline bool b_glFramebufferTexture() const  { return !!m_glFramebufferTexture; }
  3383.     inline bool b_glTexImage2DMultisample() const  { return !!m_glTexImage2DMultisample; }
  3384.     inline bool b_glTexImage3DMultisample() const  { return !!m_glTexImage3DMultisample; }
  3385.     inline bool b_glGetMultisamplefv() const  { return !!m_glGetMultisamplefv; }
  3386.     inline bool b_glSampleMaski() const  { return !!m_glSampleMaski; }
  3387.     inline bool b_glBindFragDataLocationIndexed() const  { return !!m_glBindFragDataLocationIndexed; }
  3388.     inline bool b_glGetFragDataIndex() const  { return !!m_glGetFragDataIndex; }
  3389.     inline bool b_glGenSamplers() const  { return !!m_glGenSamplers; }
  3390.     inline bool b_glDeleteSamplers() const  { return !!m_glDeleteSamplers; }
  3391.     inline bool b_glIsSampler() const  { return !!m_glIsSampler; }
  3392.     inline bool b_glBindSampler() const  { return !!m_glBindSampler; }
  3393.     inline bool b_glSamplerParameteri() const  { return !!m_glSamplerParameteri; }
  3394.     inline bool b_glSamplerParameteriv() const  { return !!m_glSamplerParameteriv; }
  3395.     inline bool b_glSamplerParameterf() const  { return !!m_glSamplerParameterf; }
  3396.     inline bool b_glSamplerParameterfv() const  { return !!m_glSamplerParameterfv; }
  3397.     inline bool b_glSamplerParameterIiv() const  { return !!m_glSamplerParameterIiv; }
  3398.     inline bool b_glSamplerParameterIuiv() const  { return !!m_glSamplerParameterIuiv; }
  3399.     inline bool b_glGetSamplerParameteriv() const  { return !!m_glGetSamplerParameteriv; }
  3400.     inline bool b_glGetSamplerParameterIiv() const  { return !!m_glGetSamplerParameterIiv; }
  3401.     inline bool b_glGetSamplerParameterfv() const  { return !!m_glGetSamplerParameterfv; }
  3402.     inline bool b_glGetSamplerParameterIuiv() const  { return !!m_glGetSamplerParameterIuiv; }
  3403.     inline bool b_glQueryCounter() const  { return !!m_glQueryCounter; }
  3404.     inline bool b_glGetQueryObjecti64v() const  { return !!m_glGetQueryObjecti64v; }
  3405.     inline bool b_glGetQueryObjectui64v() const  { return !!m_glGetQueryObjectui64v; }
  3406.     inline bool b_glVertexAttribDivisor() const  { return !!m_glVertexAttribDivisor; }
  3407.     inline bool b_glVertexAttribP1ui() const  { return !!m_glVertexAttribP1ui; }
  3408.     inline bool b_glVertexAttribP1uiv() const  { return !!m_glVertexAttribP1uiv; }
  3409.     inline bool b_glVertexAttribP2ui() const  { return !!m_glVertexAttribP2ui; }
  3410.     inline bool b_glVertexAttribP2uiv() const  { return !!m_glVertexAttribP2uiv; }
  3411.     inline bool b_glVertexAttribP3ui() const  { return !!m_glVertexAttribP3ui; }
  3412.     inline bool b_glVertexAttribP3uiv() const  { return !!m_glVertexAttribP3uiv; }
  3413.     inline bool b_glVertexAttribP4ui() const  { return !!m_glVertexAttribP4ui; }
  3414.     inline bool b_glVertexAttribP4uiv() const  { return !!m_glVertexAttribP4uiv; }
  3415.     inline bool b_glMinSampleShading() const  { return !!m_glMinSampleShading; }
  3416.     inline bool b_glBlendEquationi() const  { return !!m_glBlendEquationi; }
  3417.     inline bool b_glBlendEquationSeparatei() const  { return !!m_glBlendEquationSeparatei; }
  3418.     inline bool b_glBlendFunci() const  { return !!m_glBlendFunci; }
  3419.     inline bool b_glBlendFuncSeparatei() const  { return !!m_glBlendFuncSeparatei; }
  3420.     inline bool b_glDrawArraysIndirect() const  { return !!m_glDrawArraysIndirect; }
  3421.     inline bool b_glDrawElementsIndirect() const  { return !!m_glDrawElementsIndirect; }
  3422.     inline bool b_glUniform1d() const  { return !!m_glUniform1d; }
  3423.     inline bool b_glUniform2d() const  { return !!m_glUniform2d; }
  3424.     inline bool b_glUniform3d() const  { return !!m_glUniform3d; }
  3425.     inline bool b_glUniform4d() const  { return !!m_glUniform4d; }
  3426.     inline bool b_glUniform1dv() const  { return !!m_glUniform1dv; }
  3427.     inline bool b_glUniform2dv() const  { return !!m_glUniform2dv; }
  3428.     inline bool b_glUniform3dv() const  { return !!m_glUniform3dv; }
  3429.     inline bool b_glUniform4dv() const  { return !!m_glUniform4dv; }
  3430.     inline bool b_glUniformMatrix2dv() const  { return !!m_glUniformMatrix2dv; }
  3431.     inline bool b_glUniformMatrix3dv() const  { return !!m_glUniformMatrix3dv; }
  3432.     inline bool b_glUniformMatrix4dv() const  { return !!m_glUniformMatrix4dv; }
  3433.     inline bool b_glUniformMatrix2x3dv() const  { return !!m_glUniformMatrix2x3dv; }
  3434.     inline bool b_glUniformMatrix2x4dv() const  { return !!m_glUniformMatrix2x4dv; }
  3435.     inline bool b_glUniformMatrix3x2dv() const  { return !!m_glUniformMatrix3x2dv; }
  3436.     inline bool b_glUniformMatrix3x4dv() const  { return !!m_glUniformMatrix3x4dv; }
  3437.     inline bool b_glUniformMatrix4x2dv() const  { return !!m_glUniformMatrix4x2dv; }
  3438.     inline bool b_glUniformMatrix4x3dv() const  { return !!m_glUniformMatrix4x3dv; }
  3439.     inline bool b_glGetUniformdv() const  { return !!m_glGetUniformdv; }
  3440.     inline bool b_glGetSubroutineUniformLocation() const  { return !!m_glGetSubroutineUniformLocation; }
  3441.     inline bool b_glGetSubroutineIndex() const  { return !!m_glGetSubroutineIndex; }
  3442.     inline bool b_glGetActiveSubroutineUniformiv() const  { return !!m_glGetActiveSubroutineUniformiv; }
  3443.     inline bool b_glGetActiveSubroutineUniformName() const  { return !!m_glGetActiveSubroutineUniformName; }
  3444.     inline bool b_glGetActiveSubroutineName() const  { return !!m_glGetActiveSubroutineName; }
  3445.     inline bool b_glUniformSubroutinesuiv() const  { return !!m_glUniformSubroutinesuiv; }
  3446.     inline bool b_glGetUniformSubroutineuiv() const  { return !!m_glGetUniformSubroutineuiv; }
  3447.     inline bool b_glGetProgramStageiv() const  { return !!m_glGetProgramStageiv; }
  3448.     inline bool b_glPatchParameteri() const  { return !!m_glPatchParameteri; }
  3449.     inline bool b_glPatchParameterfv() const  { return !!m_glPatchParameterfv; }
  3450.     inline bool b_glBindTransformFeedback() const  { return !!m_glBindTransformFeedback; }
  3451.     inline bool b_glDeleteTransformFeedbacks() const  { return !!m_glDeleteTransformFeedbacks; }
  3452.     inline bool b_glGenTransformFeedbacks() const  { return !!m_glGenTransformFeedbacks; }
  3453.     inline bool b_glIsTransformFeedback() const  { return !!m_glIsTransformFeedback; }
  3454.     inline bool b_glPauseTransformFeedback() const  { return !!m_glPauseTransformFeedback; }
  3455.     inline bool b_glResumeTransformFeedback() const  { return !!m_glResumeTransformFeedback; }
  3456.     inline bool b_glDrawTransformFeedback() const  { return !!m_glDrawTransformFeedback; }
  3457.     inline bool b_glDrawTransformFeedbackStream() const  { return !!m_glDrawTransformFeedbackStream; }
  3458.     inline bool b_glBeginQueryIndexed() const  { return !!m_glBeginQueryIndexed; }
  3459.     inline bool b_glEndQueryIndexed() const  { return !!m_glEndQueryIndexed; }
  3460.     inline bool b_glGetQueryIndexediv() const  { return !!m_glGetQueryIndexediv; }
  3461.     inline bool b_glReleaseShaderCompiler() const  { return !!m_glReleaseShaderCompiler; }
  3462.     inline bool b_glShaderBinary() const  { return !!m_glShaderBinary; }
  3463.     inline bool b_glGetShaderPrecisionFormat() const  { return !!m_glGetShaderPrecisionFormat; }
  3464.     inline bool b_glDepthRangef() const  { return !!m_glDepthRangef; }
  3465.     inline bool b_glClearDepthf() const  { return !!m_glClearDepthf; }
  3466.     inline bool b_glGetProgramBinary() const  { return !!m_glGetProgramBinary; }
  3467.     inline bool b_glProgramBinary() const  { return !!m_glProgramBinary; }
  3468.     inline bool b_glProgramParameteri() const  { return !!m_glProgramParameteri; }
  3469.     inline bool b_glUseProgramStages() const  { return !!m_glUseProgramStages; }
  3470.     inline bool b_glActiveShaderProgram() const  { return !!m_glActiveShaderProgram; }
  3471.     inline bool b_glCreateShaderProgramv() const  { return !!m_glCreateShaderProgramv; }
  3472.     inline bool b_glBindProgramPipeline() const  { return !!m_glBindProgramPipeline; }
  3473.     inline bool b_glDeleteProgramPipelines() const  { return !!m_glDeleteProgramPipelines; }
  3474.     inline bool b_glGenProgramPipelines() const  { return !!m_glGenProgramPipelines; }
  3475.     inline bool b_glIsProgramPipeline() const  { return !!m_glIsProgramPipeline; }
  3476.     inline bool b_glGetProgramPipelineiv() const  { return !!m_glGetProgramPipelineiv; }
  3477.     inline bool b_glProgramUniform1i() const  { return !!m_glProgramUniform1i; }
  3478.     inline bool b_glProgramUniform1iv() const  { return !!m_glProgramUniform1iv; }
  3479.     inline bool b_glProgramUniform1f() const  { return !!m_glProgramUniform1f; }
  3480.     inline bool b_glProgramUniform1fv() const  { return !!m_glProgramUniform1fv; }
  3481.     inline bool b_glProgramUniform1d() const  { return !!m_glProgramUniform1d; }
  3482.     inline bool b_glProgramUniform1dv() const  { return !!m_glProgramUniform1dv; }
  3483.     inline bool b_glProgramUniform1ui() const  { return !!m_glProgramUniform1ui; }
  3484.     inline bool b_glProgramUniform1uiv() const  { return !!m_glProgramUniform1uiv; }
  3485.     inline bool b_glProgramUniform2i() const  { return !!m_glProgramUniform2i; }
  3486.     inline bool b_glProgramUniform2iv() const  { return !!m_glProgramUniform2iv; }
  3487.     inline bool b_glProgramUniform2f() const  { return !!m_glProgramUniform2f; }
  3488.     inline bool b_glProgramUniform2fv() const  { return !!m_glProgramUniform2fv; }
  3489.     inline bool b_glProgramUniform2d() const  { return !!m_glProgramUniform2d; }
  3490.     inline bool b_glProgramUniform2dv() const  { return !!m_glProgramUniform2dv; }
  3491.     inline bool b_glProgramUniform2ui() const  { return !!m_glProgramUniform2ui; }
  3492.     inline bool b_glProgramUniform2uiv() const  { return !!m_glProgramUniform2uiv; }
  3493.     inline bool b_glProgramUniform3i() const  { return !!m_glProgramUniform3i; }
  3494.     inline bool b_glProgramUniform3iv() const  { return !!m_glProgramUniform3iv; }
  3495.     inline bool b_glProgramUniform3f() const  { return !!m_glProgramUniform3f; }
  3496.     inline bool b_glProgramUniform3fv() const  { return !!m_glProgramUniform3fv; }
  3497.     inline bool b_glProgramUniform3d() const  { return !!m_glProgramUniform3d; }
  3498.     inline bool b_glProgramUniform3dv() const  { return !!m_glProgramUniform3dv; }
  3499.     inline bool b_glProgramUniform3ui() const  { return !!m_glProgramUniform3ui; }
  3500.     inline bool b_glProgramUniform3uiv() const  { return !!m_glProgramUniform3uiv; }
  3501.     inline bool b_glProgramUniform4i() const  { return !!m_glProgramUniform4i; }
  3502.     inline bool b_glProgramUniform4iv() const  { return !!m_glProgramUniform4iv; }
  3503.     inline bool b_glProgramUniform4f() const  { return !!m_glProgramUniform4f; }
  3504.     inline bool b_glProgramUniform4fv() const  { return !!m_glProgramUniform4fv; }
  3505.     inline bool b_glProgramUniform4d() const  { return !!m_glProgramUniform4d; }
  3506.     inline bool b_glProgramUniform4dv() const  { return !!m_glProgramUniform4dv; }
  3507.     inline bool b_glProgramUniform4ui() const  { return !!m_glProgramUniform4ui; }
  3508.     inline bool b_glProgramUniform4uiv() const  { return !!m_glProgramUniform4uiv; }
  3509.     inline bool b_glProgramUniformMatrix2fv() const  { return !!m_glProgramUniformMatrix2fv; }
  3510.     inline bool b_glProgramUniformMatrix3fv() const  { return !!m_glProgramUniformMatrix3fv; }
  3511.     inline bool b_glProgramUniformMatrix4fv() const  { return !!m_glProgramUniformMatrix4fv; }
  3512.     inline bool b_glProgramUniformMatrix2dv() const  { return !!m_glProgramUniformMatrix2dv; }
  3513.     inline bool b_glProgramUniformMatrix3dv() const  { return !!m_glProgramUniformMatrix3dv; }
  3514.     inline bool b_glProgramUniformMatrix4dv() const  { return !!m_glProgramUniformMatrix4dv; }
  3515.     inline bool b_glProgramUniformMatrix2x3fv() const  { return !!m_glProgramUniformMatrix2x3fv; }
  3516.     inline bool b_glProgramUniformMatrix3x2fv() const  { return !!m_glProgramUniformMatrix3x2fv; }
  3517.     inline bool b_glProgramUniformMatrix2x4fv() const  { return !!m_glProgramUniformMatrix2x4fv; }
  3518.     inline bool b_glProgramUniformMatrix4x2fv() const  { return !!m_glProgramUniformMatrix4x2fv; }
  3519.     inline bool b_glProgramUniformMatrix3x4fv() const  { return !!m_glProgramUniformMatrix3x4fv; }
  3520.     inline bool b_glProgramUniformMatrix4x3fv() const  { return !!m_glProgramUniformMatrix4x3fv; }
  3521.     inline bool b_glProgramUniformMatrix2x3dv() const  { return !!m_glProgramUniformMatrix2x3dv; }
  3522.     inline bool b_glProgramUniformMatrix3x2dv() const  { return !!m_glProgramUniformMatrix3x2dv; }
  3523.     inline bool b_glProgramUniformMatrix2x4dv() const  { return !!m_glProgramUniformMatrix2x4dv; }
  3524.     inline bool b_glProgramUniformMatrix4x2dv() const  { return !!m_glProgramUniformMatrix4x2dv; }
  3525.     inline bool b_glProgramUniformMatrix3x4dv() const  { return !!m_glProgramUniformMatrix3x4dv; }
  3526.     inline bool b_glProgramUniformMatrix4x3dv() const  { return !!m_glProgramUniformMatrix4x3dv; }
  3527.     inline bool b_glValidateProgramPipeline() const  { return !!m_glValidateProgramPipeline; }
  3528.     inline bool b_glGetProgramPipelineInfoLog() const  { return !!m_glGetProgramPipelineInfoLog; }
  3529.     inline bool b_glVertexAttribL1d() const  { return !!m_glVertexAttribL1d; }
  3530.     inline bool b_glVertexAttribL2d() const  { return !!m_glVertexAttribL2d; }
  3531.     inline bool b_glVertexAttribL3d() const  { return !!m_glVertexAttribL3d; }
  3532.     inline bool b_glVertexAttribL4d() const  { return !!m_glVertexAttribL4d; }
  3533.     inline bool b_glVertexAttribL1dv() const  { return !!m_glVertexAttribL1dv; }
  3534.     inline bool b_glVertexAttribL2dv() const  { return !!m_glVertexAttribL2dv; }
  3535.     inline bool b_glVertexAttribL3dv() const  { return !!m_glVertexAttribL3dv; }
  3536.     inline bool b_glVertexAttribL4dv() const  { return !!m_glVertexAttribL4dv; }
  3537.     inline bool b_glVertexAttribLPointer() const  { return !!m_glVertexAttribLPointer; }
  3538.     inline bool b_glGetVertexAttribLdv() const  { return !!m_glGetVertexAttribLdv; }
  3539.     inline bool b_glViewportArrayv() const  { return !!m_glViewportArrayv; }
  3540.     inline bool b_glViewportIndexedf() const  { return !!m_glViewportIndexedf; }
  3541.     inline bool b_glViewportIndexedfv() const  { return !!m_glViewportIndexedfv; }
  3542.     inline bool b_glScissorArrayv() const  { return !!m_glScissorArrayv; }
  3543.     inline bool b_glScissorIndexed() const  { return !!m_glScissorIndexed; }
  3544.     inline bool b_glScissorIndexedv() const  { return !!m_glScissorIndexedv; }
  3545.     inline bool b_glDepthRangeArrayv() const  { return !!m_glDepthRangeArrayv; }
  3546.     inline bool b_glDepthRangeIndexed() const  { return !!m_glDepthRangeIndexed; }
  3547.     inline bool b_glGetFloati_v() const  { return !!m_glGetFloati_v; }
  3548.     inline bool b_glGetDoublei_v() const  { return !!m_glGetDoublei_v; }
  3549.     inline bool b_glDrawArraysInstancedBaseInstance() const  { return !!m_glDrawArraysInstancedBaseInstance; }
  3550.     inline bool b_glDrawElementsInstancedBaseInstance() const  { return !!m_glDrawElementsInstancedBaseInstance; }
  3551.     inline bool b_glDrawElementsInstancedBaseVertexBaseInstance() const  { return !!m_glDrawElementsInstancedBaseVertexBaseInstance; }
  3552.     inline bool b_glGetInternalformativ() const  { return !!m_glGetInternalformativ; }
  3553.     inline bool b_glGetActiveAtomicCounterBufferiv() const  { return !!m_glGetActiveAtomicCounterBufferiv; }
  3554.     inline bool b_glBindImageTexture() const  { return !!m_glBindImageTexture; }
  3555.     inline bool b_glMemoryBarrier() const  { return !!m_glMemoryBarrier; }
  3556.     inline bool b_glTexStorage1D() const  { return !!m_glTexStorage1D; }
  3557.     inline bool b_glTexStorage2D() const  { return !!m_glTexStorage2D; }
  3558.     inline bool b_glTexStorage3D() const  { return !!m_glTexStorage3D; }
  3559.     inline bool b_glDrawTransformFeedbackInstanced() const  { return !!m_glDrawTransformFeedbackInstanced; }
  3560.     inline bool b_glDrawTransformFeedbackStreamInstanced() const  { return !!m_glDrawTransformFeedbackStreamInstanced; }
  3561.     inline bool b_glClearBufferData() const  { return !!m_glClearBufferData; }
  3562.     inline bool b_glClearBufferSubData() const  { return !!m_glClearBufferSubData; }
  3563.     inline bool b_glDispatchCompute() const  { return !!m_glDispatchCompute; }
  3564.     inline bool b_glDispatchComputeIndirect() const  { return !!m_glDispatchComputeIndirect; }
  3565.     inline bool b_glCopyImageSubData() const  { return !!m_glCopyImageSubData; }
  3566.     inline bool b_glFramebufferParameteri() const  { return !!m_glFramebufferParameteri; }
  3567.     inline bool b_glGetFramebufferParameteriv() const  { return !!m_glGetFramebufferParameteriv; }
  3568.     inline bool b_glGetInternalformati64v() const  { return !!m_glGetInternalformati64v; }
  3569.     inline bool b_glInvalidateTexSubImage() const  { return !!m_glInvalidateTexSubImage; }
  3570.     inline bool b_glInvalidateTexImage() const  { return !!m_glInvalidateTexImage; }
  3571.     inline bool b_glInvalidateBufferSubData() const  { return !!m_glInvalidateBufferSubData; }
  3572.     inline bool b_glInvalidateBufferData() const  { return !!m_glInvalidateBufferData; }
  3573.     inline bool b_glInvalidateFramebuffer() const  { return !!m_glInvalidateFramebuffer; }
  3574.     inline bool b_glInvalidateSubFramebuffer() const  { return !!m_glInvalidateSubFramebuffer; }
  3575.     inline bool b_glMultiDrawArraysIndirect() const  { return !!m_glMultiDrawArraysIndirect; }
  3576.     inline bool b_glMultiDrawElementsIndirect() const  { return !!m_glMultiDrawElementsIndirect; }
  3577.     inline bool b_glGetProgramInterfaceiv() const  { return !!m_glGetProgramInterfaceiv; }
  3578.     inline bool b_glGetProgramResourceIndex() const  { return !!m_glGetProgramResourceIndex; }
  3579.     inline bool b_glGetProgramResourceName() const  { return !!m_glGetProgramResourceName; }
  3580.     inline bool b_glGetProgramResourceiv() const  { return !!m_glGetProgramResourceiv; }
  3581.     inline bool b_glGetProgramResourceLocation() const  { return !!m_glGetProgramResourceLocation; }
  3582.     inline bool b_glGetProgramResourceLocationIndex() const  { return !!m_glGetProgramResourceLocationIndex; }
  3583.     inline bool b_glShaderStorageBlockBinding() const  { return !!m_glShaderStorageBlockBinding; }
  3584.     inline bool b_glTexBufferRange() const  { return !!m_glTexBufferRange; }
  3585.     inline bool b_glTexStorage2DMultisample() const  { return !!m_glTexStorage2DMultisample; }
  3586.     inline bool b_glTexStorage3DMultisample() const  { return !!m_glTexStorage3DMultisample; }
  3587.     inline bool b_glTextureView() const  { return !!m_glTextureView; }
  3588.     inline bool b_glBindVertexBuffer() const  { return !!m_glBindVertexBuffer; }
  3589.     inline bool b_glVertexAttribFormat() const  { return !!m_glVertexAttribFormat; }
  3590.     inline bool b_glVertexAttribIFormat() const  { return !!m_glVertexAttribIFormat; }
  3591.     inline bool b_glVertexAttribLFormat() const  { return !!m_glVertexAttribLFormat; }
  3592.     inline bool b_glVertexAttribBinding() const  { return !!m_glVertexAttribBinding; }
  3593.     inline bool b_glVertexBindingDivisor() const  { return !!m_glVertexBindingDivisor; }
  3594.     inline bool b_glDebugMessageControl() const  { return !!m_glDebugMessageControl; }
  3595.     inline bool b_glDebugMessageInsert() const  { return !!m_glDebugMessageInsert; }
  3596.     inline bool b_glDebugMessageCallback() const  { return !!m_glDebugMessageCallback; }
  3597.     inline bool b_glGetDebugMessageLog() const  { return !!m_glGetDebugMessageLog; }
  3598.     inline bool b_glPushDebugGroup() const  { return !!m_glPushDebugGroup; }
  3599.     inline bool b_glPopDebugGroup() const  { return !!m_glPopDebugGroup; }
  3600.     inline bool b_glObjectLabel() const  { return !!m_glObjectLabel; }
  3601.     inline bool b_glGetObjectLabel() const  { return !!m_glGetObjectLabel; }
  3602.     inline bool b_glObjectPtrLabel() const  { return !!m_glObjectPtrLabel; }
  3603.     inline bool b_glGetObjectPtrLabel() const  { return !!m_glGetObjectPtrLabel; }
  3604.     inline bool b_glBufferStorage() const  { return !!m_glBufferStorage; }
  3605.     inline bool b_glClearTexImage() const  { return !!m_glClearTexImage; }
  3606.     inline bool b_glClearTexSubImage() const  { return !!m_glClearTexSubImage; }
  3607.     inline bool b_glBindBuffersBase() const  { return !!m_glBindBuffersBase; }
  3608.     inline bool b_glBindBuffersRange() const  { return !!m_glBindBuffersRange; }
  3609.     inline bool b_glBindTextures() const  { return !!m_glBindTextures; }
  3610.     inline bool b_glBindSamplers() const  { return !!m_glBindSamplers; }
  3611.     inline bool b_glBindImageTextures() const  { return !!m_glBindImageTextures; }
  3612.     inline bool b_glBindVertexBuffers() const  { return !!m_glBindVertexBuffers; }
  3613.     inline bool b_glClipControl() const  { return !!m_glClipControl; }
  3614.     inline bool b_glCreateTransformFeedbacks() const  { return !!m_glCreateTransformFeedbacks; }
  3615.     inline bool b_glTransformFeedbackBufferBase() const  { return !!m_glTransformFeedbackBufferBase; }
  3616.     inline bool b_glTransformFeedbackBufferRange() const  { return !!m_glTransformFeedbackBufferRange; }
  3617.     inline bool b_glGetTransformFeedbackiv() const  { return !!m_glGetTransformFeedbackiv; }
  3618.     inline bool b_glGetTransformFeedbacki_v() const  { return !!m_glGetTransformFeedbacki_v; }
  3619.     inline bool b_glGetTransformFeedbacki64_v() const  { return !!m_glGetTransformFeedbacki64_v; }
  3620.     inline bool b_glCreateBuffers() const  { return !!m_glCreateBuffers; }
  3621.     inline bool b_glNamedBufferStorage() const  { return !!m_glNamedBufferStorage; }
  3622.     inline bool b_glNamedBufferData() const  { return !!m_glNamedBufferData; }
  3623.     inline bool b_glNamedBufferSubData() const  { return !!m_glNamedBufferSubData; }
  3624.     inline bool b_glCopyNamedBufferSubData() const  { return !!m_glCopyNamedBufferSubData; }
  3625.     inline bool b_glClearNamedBufferData() const  { return !!m_glClearNamedBufferData; }
  3626.     inline bool b_glClearNamedBufferSubData() const  { return !!m_glClearNamedBufferSubData; }
  3627.     inline bool b_glMapNamedBuffer() const  { return !!m_glMapNamedBuffer; }
  3628.     inline bool b_glMapNamedBufferRange() const  { return !!m_glMapNamedBufferRange; }
  3629.     inline bool b_glUnmapNamedBuffer() const  { return !!m_glUnmapNamedBuffer; }
  3630.     inline bool b_glFlushMappedNamedBufferRange() const  { return !!m_glFlushMappedNamedBufferRange; }
  3631.     inline bool b_glGetNamedBufferParameteriv() const  { return !!m_glGetNamedBufferParameteriv; }
  3632.     inline bool b_glGetNamedBufferParameteri64v() const  { return !!m_glGetNamedBufferParameteri64v; }
  3633.     inline bool b_glGetNamedBufferPointerv() const  { return !!m_glGetNamedBufferPointerv; }
  3634.     inline bool b_glGetNamedBufferSubData() const  { return !!m_glGetNamedBufferSubData; }
  3635.     inline bool b_glCreateFramebuffers() const  { return !!m_glCreateFramebuffers; }
  3636.     inline bool b_glNamedFramebufferRenderbuffer() const  { return !!m_glNamedFramebufferRenderbuffer; }
  3637.     inline bool b_glNamedFramebufferParameteri() const  { return !!m_glNamedFramebufferParameteri; }
  3638.     inline bool b_glNamedFramebufferTexture() const  { return !!m_glNamedFramebufferTexture; }
  3639.     inline bool b_glNamedFramebufferTextureLayer() const  { return !!m_glNamedFramebufferTextureLayer; }
  3640.     inline bool b_glNamedFramebufferDrawBuffer() const  { return !!m_glNamedFramebufferDrawBuffer; }
  3641.     inline bool b_glNamedFramebufferDrawBuffers() const  { return !!m_glNamedFramebufferDrawBuffers; }
  3642.     inline bool b_glNamedFramebufferReadBuffer() const  { return !!m_glNamedFramebufferReadBuffer; }
  3643.     inline bool b_glInvalidateNamedFramebufferData() const  { return !!m_glInvalidateNamedFramebufferData; }
  3644.     inline bool b_glInvalidateNamedFramebufferSubData() const  { return !!m_glInvalidateNamedFramebufferSubData; }
  3645.     inline bool b_glClearNamedFramebufferiv() const  { return !!m_glClearNamedFramebufferiv; }
  3646.     inline bool b_glClearNamedFramebufferuiv() const  { return !!m_glClearNamedFramebufferuiv; }
  3647.     inline bool b_glClearNamedFramebufferfv() const  { return !!m_glClearNamedFramebufferfv; }
  3648.     inline bool b_glClearNamedFramebufferfi() const  { return !!m_glClearNamedFramebufferfi; }
  3649.     inline bool b_glBlitNamedFramebuffer() const  { return !!m_glBlitNamedFramebuffer; }
  3650.     inline bool b_glCheckNamedFramebufferStatus() const  { return !!m_glCheckNamedFramebufferStatus; }
  3651.     inline bool b_glGetNamedFramebufferParameteriv() const  { return !!m_glGetNamedFramebufferParameteriv; }
  3652.     inline bool b_glGetNamedFramebufferAttachmentParameteriv() const  { return !!m_glGetNamedFramebufferAttachmentParameteriv; }
  3653.     inline bool b_glCreateRenderbuffers() const  { return !!m_glCreateRenderbuffers; }
  3654.     inline bool b_glNamedRenderbufferStorage() const  { return !!m_glNamedRenderbufferStorage; }
  3655.     inline bool b_glNamedRenderbufferStorageMultisample() const  { return !!m_glNamedRenderbufferStorageMultisample; }
  3656.     inline bool b_glGetNamedRenderbufferParameteriv() const  { return !!m_glGetNamedRenderbufferParameteriv; }
  3657.     inline bool b_glCreateTextures() const  { return !!m_glCreateTextures; }
  3658.     inline bool b_glTextureBuffer() const  { return !!m_glTextureBuffer; }
  3659.     inline bool b_glTextureBufferRange() const  { return !!m_glTextureBufferRange; }
  3660.     inline bool b_glTextureStorage1D() const  { return !!m_glTextureStorage1D; }
  3661.     inline bool b_glTextureStorage2D() const  { return !!m_glTextureStorage2D; }
  3662.     inline bool b_glTextureStorage3D() const  { return !!m_glTextureStorage3D; }
  3663.     inline bool b_glTextureStorage2DMultisample() const  { return !!m_glTextureStorage2DMultisample; }
  3664.     inline bool b_glTextureStorage3DMultisample() const  { return !!m_glTextureStorage3DMultisample; }
  3665.     inline bool b_glTextureSubImage1D() const  { return !!m_glTextureSubImage1D; }
  3666.     inline bool b_glTextureSubImage2D() const  { return !!m_glTextureSubImage2D; }
  3667.     inline bool b_glTextureSubImage3D() const  { return !!m_glTextureSubImage3D; }
  3668.     inline bool b_glCompressedTextureSubImage1D() const  { return !!m_glCompressedTextureSubImage1D; }
  3669.     inline bool b_glCompressedTextureSubImage2D() const  { return !!m_glCompressedTextureSubImage2D; }
  3670.     inline bool b_glCompressedTextureSubImage3D() const  { return !!m_glCompressedTextureSubImage3D; }
  3671.     inline bool b_glCopyTextureSubImage1D() const  { return !!m_glCopyTextureSubImage1D; }
  3672.     inline bool b_glCopyTextureSubImage2D() const  { return !!m_glCopyTextureSubImage2D; }
  3673.     inline bool b_glCopyTextureSubImage3D() const  { return !!m_glCopyTextureSubImage3D; }
  3674.     inline bool b_glTextureParameterf() const  { return !!m_glTextureParameterf; }
  3675.     inline bool b_glTextureParameterfv() const  { return !!m_glTextureParameterfv; }
  3676.     inline bool b_glTextureParameteri() const  { return !!m_glTextureParameteri; }
  3677.     inline bool b_glTextureParameterIiv() const  { return !!m_glTextureParameterIiv; }
  3678.     inline bool b_glTextureParameterIuiv() const  { return !!m_glTextureParameterIuiv; }
  3679.     inline bool b_glTextureParameteriv() const  { return !!m_glTextureParameteriv; }
  3680.     inline bool b_glGenerateTextureMipmap() const  { return !!m_glGenerateTextureMipmap; }
  3681.     inline bool b_glBindTextureUnit() const  { return !!m_glBindTextureUnit; }
  3682.     inline bool b_glGetTextureImage() const  { return !!m_glGetTextureImage; }
  3683.     inline bool b_glGetCompressedTextureImage() const  { return !!m_glGetCompressedTextureImage; }
  3684.     inline bool b_glGetTextureLevelParameterfv() const  { return !!m_glGetTextureLevelParameterfv; }
  3685.     inline bool b_glGetTextureLevelParameteriv() const  { return !!m_glGetTextureLevelParameteriv; }
  3686.     inline bool b_glGetTextureParameterfv() const  { return !!m_glGetTextureParameterfv; }
  3687.     inline bool b_glGetTextureParameterIiv() const  { return !!m_glGetTextureParameterIiv; }
  3688.     inline bool b_glGetTextureParameterIuiv() const  { return !!m_glGetTextureParameterIuiv; }
  3689.     inline bool b_glGetTextureParameteriv() const  { return !!m_glGetTextureParameteriv; }
  3690.     inline bool b_glCreateVertexArrays() const  { return !!m_glCreateVertexArrays; }
  3691.     inline bool b_glDisableVertexArrayAttrib() const  { return !!m_glDisableVertexArrayAttrib; }
  3692.     inline bool b_glEnableVertexArrayAttrib() const  { return !!m_glEnableVertexArrayAttrib; }
  3693.     inline bool b_glVertexArrayElementBuffer() const  { return !!m_glVertexArrayElementBuffer; }
  3694.     inline bool b_glVertexArrayVertexBuffer() const  { return !!m_glVertexArrayVertexBuffer; }
  3695.     inline bool b_glVertexArrayVertexBuffers() const  { return !!m_glVertexArrayVertexBuffers; }
  3696.     inline bool b_glVertexArrayAttribBinding() const  { return !!m_glVertexArrayAttribBinding; }
  3697.     inline bool b_glVertexArrayAttribFormat() const  { return !!m_glVertexArrayAttribFormat; }
  3698.     inline bool b_glVertexArrayAttribIFormat() const  { return !!m_glVertexArrayAttribIFormat; }
  3699.     inline bool b_glVertexArrayAttribLFormat() const  { return !!m_glVertexArrayAttribLFormat; }
  3700.     inline bool b_glVertexArrayBindingDivisor() const  { return !!m_glVertexArrayBindingDivisor; }
  3701.     inline bool b_glGetVertexArrayiv() const  { return !!m_glGetVertexArrayiv; }
  3702.     inline bool b_glGetVertexArrayIndexediv() const  { return !!m_glGetVertexArrayIndexediv; }
  3703.     inline bool b_glGetVertexArrayIndexed64iv() const  { return !!m_glGetVertexArrayIndexed64iv; }
  3704.     inline bool b_glCreateSamplers() const  { return !!m_glCreateSamplers; }
  3705.     inline bool b_glCreateProgramPipelines() const  { return !!m_glCreateProgramPipelines; }
  3706.     inline bool b_glCreateQueries() const  { return !!m_glCreateQueries; }
  3707.     inline bool b_glGetQueryBufferObjecti64v() const  { return !!m_glGetQueryBufferObjecti64v; }
  3708.     inline bool b_glGetQueryBufferObjectiv() const  { return !!m_glGetQueryBufferObjectiv; }
  3709.     inline bool b_glGetQueryBufferObjectui64v() const  { return !!m_glGetQueryBufferObjectui64v; }
  3710.     inline bool b_glGetQueryBufferObjectuiv() const  { return !!m_glGetQueryBufferObjectuiv; }
  3711.     inline bool b_glMemoryBarrierByRegion() const  { return !!m_glMemoryBarrierByRegion; }
  3712.     inline bool b_glGetTextureSubImage() const  { return !!m_glGetTextureSubImage; }
  3713.     inline bool b_glGetCompressedTextureSubImage() const  { return !!m_glGetCompressedTextureSubImage; }
  3714.     inline bool b_glGetGraphicsResetStatus() const  { return !!m_glGetGraphicsResetStatus; }
  3715.     inline bool b_glGetnCompressedTexImage() const  { return !!m_glGetnCompressedTexImage; }
  3716.     inline bool b_glGetnTexImage() const  { return !!m_glGetnTexImage; }
  3717.     inline bool b_glGetnUniformdv() const  { return !!m_glGetnUniformdv; }
  3718.     inline bool b_glGetnUniformfv() const  { return !!m_glGetnUniformfv; }
  3719.     inline bool b_glGetnUniformiv() const  { return !!m_glGetnUniformiv; }
  3720.     inline bool b_glGetnUniformuiv() const  { return !!m_glGetnUniformuiv; }
  3721.     inline bool b_glReadnPixels() const  { return !!m_glReadnPixels; }
  3722.     inline bool b_glTextureBarrier() const  { return !!m_glTextureBarrier; }
  3723.     inline bool b_glGetTextureHandleARB() const  { return !!m_glGetTextureHandleARB; }
  3724.     inline bool b_glGetTextureSamplerHandleARB() const  { return !!m_glGetTextureSamplerHandleARB; }
  3725.     inline bool b_glMakeTextureHandleResidentARB() const  { return !!m_glMakeTextureHandleResidentARB; }
  3726.     inline bool b_glMakeTextureHandleNonResidentARB() const  { return !!m_glMakeTextureHandleNonResidentARB; }
  3727.     inline bool b_glGetImageHandleARB() const  { return !!m_glGetImageHandleARB; }
  3728.     inline bool b_glMakeImageHandleResidentARB() const  { return !!m_glMakeImageHandleResidentARB; }
  3729.     inline bool b_glMakeImageHandleNonResidentARB() const  { return !!m_glMakeImageHandleNonResidentARB; }
  3730.     inline bool b_glUniformHandleui64ARB() const  { return !!m_glUniformHandleui64ARB; }
  3731.     inline bool b_glUniformHandleui64vARB() const  { return !!m_glUniformHandleui64vARB; }
  3732.     inline bool b_glProgramUniformHandleui64ARB() const  { return !!m_glProgramUniformHandleui64ARB; }
  3733.     inline bool b_glProgramUniformHandleui64vARB() const  { return !!m_glProgramUniformHandleui64vARB; }
  3734.     inline bool b_glIsTextureHandleResidentARB() const  { return !!m_glIsTextureHandleResidentARB; }
  3735.     inline bool b_glIsImageHandleResidentARB() const  { return !!m_glIsImageHandleResidentARB; }
  3736.     inline bool b_glVertexAttribL1ui64ARB() const  { return !!m_glVertexAttribL1ui64ARB; }
  3737.     inline bool b_glVertexAttribL1ui64vARB() const  { return !!m_glVertexAttribL1ui64vARB; }
  3738.     inline bool b_glGetVertexAttribLui64vARB() const  { return !!m_glGetVertexAttribLui64vARB; }
  3739.     inline bool b_glCreateSyncFromCLeventARB() const  { return !!m_glCreateSyncFromCLeventARB; }
  3740.     inline bool b_glDispatchComputeGroupSizeARB() const  { return !!m_glDispatchComputeGroupSizeARB; }
  3741.     inline bool b_glDebugMessageControlARB() const  { return !!m_glDebugMessageControlARB; }
  3742.     inline bool b_glDebugMessageInsertARB() const  { return !!m_glDebugMessageInsertARB; }
  3743.     inline bool b_glDebugMessageCallbackARB() const  { return !!m_glDebugMessageCallbackARB; }
  3744.     inline bool b_glGetDebugMessageLogARB() const  { return !!m_glGetDebugMessageLogARB; }
  3745.     inline bool b_glBlendEquationiARB() const  { return !!m_glBlendEquationiARB; }
  3746.     inline bool b_glBlendEquationSeparateiARB() const  { return !!m_glBlendEquationSeparateiARB; }
  3747.     inline bool b_glBlendFunciARB() const  { return !!m_glBlendFunciARB; }
  3748.     inline bool b_glBlendFuncSeparateiARB() const  { return !!m_glBlendFuncSeparateiARB; }
  3749.     inline bool b_glMultiDrawArraysIndirectCountARB() const  { return !!m_glMultiDrawArraysIndirectCountARB; }
  3750.     inline bool b_glMultiDrawElementsIndirectCountARB() const  { return !!m_glMultiDrawElementsIndirectCountARB; }
  3751.     inline bool b_glGetGraphicsResetStatusARB() const  { return !!m_glGetGraphicsResetStatusARB; }
  3752.     inline bool b_glGetnTexImageARB() const  { return !!m_glGetnTexImageARB; }
  3753.     inline bool b_glReadnPixelsARB() const  { return !!m_glReadnPixelsARB; }
  3754.     inline bool b_glGetnCompressedTexImageARB() const  { return !!m_glGetnCompressedTexImageARB; }
  3755.     inline bool b_glGetnUniformfvARB() const  { return !!m_glGetnUniformfvARB; }
  3756.     inline bool b_glGetnUniformivARB() const  { return !!m_glGetnUniformivARB; }
  3757.     inline bool b_glGetnUniformuivARB() const  { return !!m_glGetnUniformuivARB; }
  3758.     inline bool b_glGetnUniformdvARB() const  { return !!m_glGetnUniformdvARB; }
  3759.     inline bool b_glMinSampleShadingARB() const  { return !!m_glMinSampleShadingARB; }
  3760.     inline bool b_glNamedStringARB() const  { return !!m_glNamedStringARB; }
  3761.     inline bool b_glDeleteNamedStringARB() const  { return !!m_glDeleteNamedStringARB; }
  3762.     inline bool b_glCompileShaderIncludeARB() const  { return !!m_glCompileShaderIncludeARB; }
  3763.     inline bool b_glIsNamedStringARB() const  { return !!m_glIsNamedStringARB; }
  3764.     inline bool b_glGetNamedStringARB() const  { return !!m_glGetNamedStringARB; }
  3765.     inline bool b_glGetNamedStringivARB() const  { return !!m_glGetNamedStringivARB; }
  3766.     inline bool b_glBufferPageCommitmentARB() const  { return !!m_glBufferPageCommitmentARB; }
  3767.     inline bool b_glNamedBufferPageCommitmentEXT() const  { return !!m_glNamedBufferPageCommitmentEXT; }
  3768.     inline bool b_glNamedBufferPageCommitmentARB() const  { return !!m_glNamedBufferPageCommitmentARB; }
  3769.     inline bool b_glTexPageCommitmentARB() const  { return !!m_glTexPageCommitmentARB; }
  3770.     inline void glCullFace(GLenum mode) const { return m_glCullFace(mode); }
  3771.     inline void glFrontFace(GLenum mode) const { return m_glFrontFace(mode); }
  3772.     inline void glHint(GLenum target, GLenum mode) const { return m_glHint(target,mode); }
  3773.     inline void glLineWidth(GLfloat width) const { return m_glLineWidth(width); }
  3774.     inline void glPointSize(GLfloat size) const { return m_glPointSize(size); }
  3775.     inline void glPolygonMode(GLenum face, GLenum mode) const { return m_glPolygonMode(face,mode); }
  3776.     inline void glScissor(GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glScissor(x,y,width,height); }
  3777.     inline void glTexParameterf(GLenum target, GLenum pname, GLfloat param) const { return m_glTexParameterf(target,pname,param); }
  3778.     inline void glTexParameterfv(GLenum target, GLenum pname, const GLfloat * params) const { return m_glTexParameterfv(target,pname,params); }
  3779.     inline void glTexParameteri(GLenum target, GLenum pname, GLint param) const { return m_glTexParameteri(target,pname,param); }
  3780.     inline void glTexParameteriv(GLenum target, GLenum pname, const GLint * params) const { return m_glTexParameteriv(target,pname,params); }
  3781.     inline void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void * pixels) const { return m_glTexImage1D(target,level,internalformat,width,border,format,type,pixels); }
  3782.     inline void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void * pixels) const { return m_glTexImage2D(target,level,internalformat,width,height,border,format,type,pixels); }
  3783.     inline void glDrawBuffer(GLenum buf) const { return m_glDrawBuffer(buf); }
  3784.     inline void glClear(GLbitfield mask) const { return m_glClear(mask); }
  3785.     inline void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) const { return m_glClearColor(red,green,blue,alpha); }
  3786.     inline void glClearStencil(GLint s) const { return m_glClearStencil(s); }
  3787.     inline void glClearDepth(GLdouble depth) const { return m_glClearDepth(depth); }
  3788.     inline void glStencilMask(GLuint mask) const { return m_glStencilMask(mask); }
  3789.     inline void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) const { return m_glColorMask(red,green,blue,alpha); }
  3790.     inline void glDepthMask(GLboolean flag) const { return m_glDepthMask(flag); }
  3791.     inline void glDisable(GLenum cap) const { return m_glDisable(cap); }
  3792.     inline void glEnable(GLenum cap) const { return m_glEnable(cap); }
  3793.     inline void glFinish(void) const { return m_glFinish(); }
  3794.     inline void glFlush(void) const { return m_glFlush(); }
  3795.     inline void glBlendFunc(GLenum sfactor, GLenum dfactor) const { return m_glBlendFunc(sfactor,dfactor); }
  3796.     inline void glLogicOp(GLenum opcode) const { return m_glLogicOp(opcode); }
  3797.     inline void glStencilFunc(GLenum func, GLint ref, GLuint mask) const { return m_glStencilFunc(func,ref,mask); }
  3798.     inline void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass) const { return m_glStencilOp(fail,zfail,zpass); }
  3799.     inline void glDepthFunc(GLenum func) const { return m_glDepthFunc(func); }
  3800.     inline void glPixelStoref(GLenum pname, GLfloat param) const { return m_glPixelStoref(pname,param); }
  3801.     inline void glPixelStorei(GLenum pname, GLint param) const { return m_glPixelStorei(pname,param); }
  3802.     inline void glReadBuffer(GLenum src) const { return m_glReadBuffer(src); }
  3803.     inline void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void * pixels) const { return m_glReadPixels(x,y,width,height,format,type,pixels); }
  3804.     inline void glGetBooleanv(GLenum pname, GLboolean * data) const { return m_glGetBooleanv(pname,data); }
  3805.     inline void glGetDoublev(GLenum pname, GLdouble * data) const { return m_glGetDoublev(pname,data); }
  3806.     inline GLenum glGetError(void) const { return m_glGetError(); }
  3807.     inline void glGetFloatv(GLenum pname, GLfloat * data) const { return m_glGetFloatv(pname,data); }
  3808.     inline void glGetIntegerv(GLenum pname, GLint * data) const { return m_glGetIntegerv(pname,data); }
  3809.     inline const GLubyte * glGetString(GLenum name) const { return m_glGetString(name); }
  3810.     inline void glGetTexImage(GLenum target, GLint level, GLenum format, GLenum type, void * pixels) const { return m_glGetTexImage(target,level,format,type,pixels); }
  3811.     inline void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat * params) const { return m_glGetTexParameterfv(target,pname,params); }
  3812.     inline void glGetTexParameteriv(GLenum target, GLenum pname, GLint * params) const { return m_glGetTexParameteriv(target,pname,params); }
  3813.     inline void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat * params) const { return m_glGetTexLevelParameterfv(target,level,pname,params); }
  3814.     inline void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint * params) const { return m_glGetTexLevelParameteriv(target,level,pname,params); }
  3815.     inline GLboolean glIsEnabled(GLenum cap) const { return m_glIsEnabled(cap); }
  3816.     inline void glDepthRange(GLdouble near, GLdouble far) const { return m_glDepthRange(near,far); }
  3817.     inline void glViewport(GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glViewport(x,y,width,height); }
  3818.     inline void glDrawArrays(GLenum mode, GLint first, GLsizei count) const { return m_glDrawArrays(mode,first,count); }
  3819.     inline void glDrawElements(GLenum mode, GLsizei count, GLenum type, const void * indices) const { return m_glDrawElements(mode,count,type,indices); }
  3820.     inline void glGetPointerv(GLenum pname, void * * params) const { return m_glGetPointerv(pname,params); }
  3821.     inline void glPolygonOffset(GLfloat factor, GLfloat units) const { return m_glPolygonOffset(factor,units); }
  3822.     inline void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border) const { return m_glCopyTexImage1D(target,level,internalformat,x,y,width,border); }
  3823.     inline void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) const { return m_glCopyTexImage2D(target,level,internalformat,x,y,width,height,border); }
  3824.     inline void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width) const { return m_glCopyTexSubImage1D(target,level,xoffset,x,y,width); }
  3825.     inline void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glCopyTexSubImage2D(target,level,xoffset,yoffset,x,y,width,height); }
  3826.     inline void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void * pixels) const { return m_glTexSubImage1D(target,level,xoffset,width,format,type,pixels); }
  3827.     inline void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * pixels) const { return m_glTexSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels); }
  3828.     inline void glBindTexture(GLenum target, GLuint texture) const { return m_glBindTexture(target,texture); }
  3829.     inline void glDeleteTextures(GLsizei n, const GLuint * textures) const { return m_glDeleteTextures(n,textures); }
  3830.     inline void glGenTextures(GLsizei n, GLuint * textures) const { return m_glGenTextures(n,textures); }
  3831.     inline GLboolean glIsTexture(GLuint texture) const { return m_glIsTexture(texture); }
  3832.     inline void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void * indices) const { return m_glDrawRangeElements(mode,start,end,count,type,indices); }
  3833.     inline void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void * pixels) const { return m_glTexImage3D(target,level,internalformat,width,height,depth,border,format,type,pixels); }
  3834.     inline void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * pixels) const { return m_glTexSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels); }
  3835.     inline void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glCopyTexSubImage3D(target,level,xoffset,yoffset,zoffset,x,y,width,height); }
  3836.     inline void glActiveTexture(GLenum texture) const { return m_glActiveTexture(texture); }
  3837.     inline void glSampleCoverage(GLfloat value, GLboolean invert) const { return m_glSampleCoverage(value,invert); }
  3838.     inline void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void * data) const { return m_glCompressedTexImage3D(target,level,internalformat,width,height,depth,border,imageSize,data); }
  3839.     inline void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void * data) const { return m_glCompressedTexImage2D(target,level,internalformat,width,height,border,imageSize,data); }
  3840.     inline void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void * data) const { return m_glCompressedTexImage1D(target,level,internalformat,width,border,imageSize,data); }
  3841.     inline void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void * data) const { return m_glCompressedTexSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data); }
  3842.     inline void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void * data) const { return m_glCompressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,imageSize,data); }
  3843.     inline void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void * data) const { return m_glCompressedTexSubImage1D(target,level,xoffset,width,format,imageSize,data); }
  3844.     inline void glGetCompressedTexImage(GLenum target, GLint level, void * img) const { return m_glGetCompressedTexImage(target,level,img); }
  3845.     inline void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha) const { return m_glBlendFuncSeparate(sfactorRGB,dfactorRGB,sfactorAlpha,dfactorAlpha); }
  3846.     inline void glMultiDrawArrays(GLenum mode, const GLint * first, const GLsizei * count, GLsizei drawcount) const { return m_glMultiDrawArrays(mode,first,count,drawcount); }
  3847.     inline void glMultiDrawElements(GLenum mode, const GLsizei * count, GLenum type, const void * const * indices, GLsizei drawcount) const { return m_glMultiDrawElements(mode,count,type,indices,drawcount); }
  3848.     inline void glPointParameterf(GLenum pname, GLfloat param) const { return m_glPointParameterf(pname,param); }
  3849.     inline void glPointParameterfv(GLenum pname, const GLfloat * params) const { return m_glPointParameterfv(pname,params); }
  3850.     inline void glPointParameteri(GLenum pname, GLint param) const { return m_glPointParameteri(pname,param); }
  3851.     inline void glPointParameteriv(GLenum pname, const GLint * params) const { return m_glPointParameteriv(pname,params); }
  3852.     inline void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha) const { return m_glBlendColor(red,green,blue,alpha); }
  3853.     inline void glBlendEquation(GLenum mode) const { return m_glBlendEquation(mode); }
  3854.     inline void glGenQueries(GLsizei n, GLuint * ids) const { return m_glGenQueries(n,ids); }
  3855.     inline void glDeleteQueries(GLsizei n, const GLuint * ids) const { return m_glDeleteQueries(n,ids); }
  3856.     inline GLboolean glIsQuery(GLuint id) const { return m_glIsQuery(id); }
  3857.     inline void glBeginQuery(GLenum target, GLuint id) const { return m_glBeginQuery(target,id); }
  3858.     inline void glEndQuery(GLenum target) const { return m_glEndQuery(target); }
  3859.     inline void glGetQueryiv(GLenum target, GLenum pname, GLint * params) const { return m_glGetQueryiv(target,pname,params); }
  3860.     inline void glGetQueryObjectiv(GLuint id, GLenum pname, GLint * params) const { return m_glGetQueryObjectiv(id,pname,params); }
  3861.     inline void glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint * params) const { return m_glGetQueryObjectuiv(id,pname,params); }
  3862.     inline void glBindBuffer(GLenum target, GLuint buffer) const { return m_glBindBuffer(target,buffer); }
  3863.     inline void glDeleteBuffers(GLsizei n, const GLuint * buffers) const { return m_glDeleteBuffers(n,buffers); }
  3864.     inline void glGenBuffers(GLsizei n, GLuint * buffers) const { return m_glGenBuffers(n,buffers); }
  3865.     inline GLboolean glIsBuffer(GLuint buffer) const { return m_glIsBuffer(buffer); }
  3866.     inline void glBufferData(GLenum target, GLsizeiptr size, const void * data, GLenum usage) const { return m_glBufferData(target,size,data,usage); }
  3867.     inline void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void * data) const { return m_glBufferSubData(target,offset,size,data); }
  3868.     inline void glGetBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, void * data) const { return m_glGetBufferSubData(target,offset,size,data); }
  3869.     inline void * glMapBuffer(GLenum target, GLenum access) const { return m_glMapBuffer(target,access); }
  3870.     inline GLboolean glUnmapBuffer(GLenum target) const { return m_glUnmapBuffer(target); }
  3871.     inline void glGetBufferParameteriv(GLenum target, GLenum pname, GLint * params) const { return m_glGetBufferParameteriv(target,pname,params); }
  3872.     inline void glGetBufferPointerv(GLenum target, GLenum pname, void * * params) const { return m_glGetBufferPointerv(target,pname,params); }
  3873.     inline void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) const { return m_glBlendEquationSeparate(modeRGB,modeAlpha); }
  3874.     inline void glDrawBuffers(GLsizei n, const GLenum * bufs) const { return m_glDrawBuffers(n,bufs); }
  3875.     inline void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass) const { return m_glStencilOpSeparate(face,sfail,dpfail,dppass); }
  3876.     inline void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) const { return m_glStencilFuncSeparate(face,func,ref,mask); }
  3877.     inline void glStencilMaskSeparate(GLenum face, GLuint mask) const { return m_glStencilMaskSeparate(face,mask); }
  3878.     inline void glAttachShader(GLuint program, GLuint shader) const { return m_glAttachShader(program,shader); }
  3879.     inline void glBindAttribLocation(GLuint program, GLuint index, const GLchar * name) const { return m_glBindAttribLocation(program,index,name); }
  3880.     inline void glCompileShader(GLuint shader) const { return m_glCompileShader(shader); }
  3881.     inline GLuint glCreateProgram(void) const { return m_glCreateProgram(); }
  3882.     inline GLuint glCreateShader(GLenum type) const { return m_glCreateShader(type); }
  3883.     inline void glDeleteProgram(GLuint program) const { return m_glDeleteProgram(program); }
  3884.     inline void glDeleteShader(GLuint shader) const { return m_glDeleteShader(shader); }
  3885.     inline void glDetachShader(GLuint program, GLuint shader) const { return m_glDetachShader(program,shader); }
  3886.     inline void glDisableVertexAttribArray(GLuint index) const { return m_glDisableVertexAttribArray(index); }
  3887.     inline void glEnableVertexAttribArray(GLuint index) const { return m_glEnableVertexAttribArray(index); }
  3888.     inline void glGetActiveAttrib(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name) const { return m_glGetActiveAttrib(program,index,bufSize,length,size,type,name); }
  3889.     inline void glGetActiveUniform(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name) const { return m_glGetActiveUniform(program,index,bufSize,length,size,type,name); }
  3890.     inline void glGetAttachedShaders(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * shaders) const { return m_glGetAttachedShaders(program,maxCount,count,shaders); }
  3891.     inline GLint glGetAttribLocation(GLuint program, const GLchar * name) const { return m_glGetAttribLocation(program,name); }
  3892.     inline void glGetProgramiv(GLuint program, GLenum pname, GLint * params) const { return m_glGetProgramiv(program,pname,params); }
  3893.     inline void glGetProgramInfoLog(GLuint program, GLsizei bufSize, GLsizei * length, GLchar * infoLog) const { return m_glGetProgramInfoLog(program,bufSize,length,infoLog); }
  3894.     inline void glGetShaderiv(GLuint shader, GLenum pname, GLint * params) const { return m_glGetShaderiv(shader,pname,params); }
  3895.     inline void glGetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * infoLog) const { return m_glGetShaderInfoLog(shader,bufSize,length,infoLog); }
  3896.     inline void glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * source) const { return m_glGetShaderSource(shader,bufSize,length,source); }
  3897.     inline GLint glGetUniformLocation(GLuint program, const GLchar * name) const { return m_glGetUniformLocation(program,name); }
  3898.     inline void glGetUniformfv(GLuint program, GLint location, GLfloat * params) const { return m_glGetUniformfv(program,location,params); }
  3899.     inline void glGetUniformiv(GLuint program, GLint location, GLint * params) const { return m_glGetUniformiv(program,location,params); }
  3900.     inline void glGetVertexAttribdv(GLuint index, GLenum pname, GLdouble * params) const { return m_glGetVertexAttribdv(index,pname,params); }
  3901.     inline void glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat * params) const { return m_glGetVertexAttribfv(index,pname,params); }
  3902.     inline void glGetVertexAttribiv(GLuint index, GLenum pname, GLint * params) const { return m_glGetVertexAttribiv(index,pname,params); }
  3903.     inline void glGetVertexAttribPointerv(GLuint index, GLenum pname, void * * pointer) const { return m_glGetVertexAttribPointerv(index,pname,pointer); }
  3904.     inline GLboolean glIsProgram(GLuint program) const { return m_glIsProgram(program); }
  3905.     inline GLboolean glIsShader(GLuint shader) const { return m_glIsShader(shader); }
  3906.     inline void glLinkProgram(GLuint program) const { return m_glLinkProgram(program); }
  3907.     inline void glShaderSource(GLuint shader, GLsizei count, const GLchar * const * string, const GLint * length) const { return m_glShaderSource(shader,count,string,length); }
  3908.     inline void glUseProgram(GLuint program) const { return m_glUseProgram(program); }
  3909.     inline void glUniform1f(GLint location, GLfloat v0) const { return m_glUniform1f(location,v0); }
  3910.     inline void glUniform2f(GLint location, GLfloat v0, GLfloat v1) const { return m_glUniform2f(location,v0,v1); }
  3911.     inline void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2) const { return m_glUniform3f(location,v0,v1,v2); }
  3912.     inline void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) const { return m_glUniform4f(location,v0,v1,v2,v3); }
  3913.     inline void glUniform1i(GLint location, GLint v0) const { return m_glUniform1i(location,v0); }
  3914.     inline void glUniform2i(GLint location, GLint v0, GLint v1) const { return m_glUniform2i(location,v0,v1); }
  3915.     inline void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2) const { return m_glUniform3i(location,v0,v1,v2); }
  3916.     inline void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3) const { return m_glUniform4i(location,v0,v1,v2,v3); }
  3917.     inline void glUniform1fv(GLint location, GLsizei count, const GLfloat * value) const { return m_glUniform1fv(location,count,value); }
  3918.     inline void glUniform2fv(GLint location, GLsizei count, const GLfloat * value) const { return m_glUniform2fv(location,count,value); }
  3919.     inline void glUniform3fv(GLint location, GLsizei count, const GLfloat * value) const { return m_glUniform3fv(location,count,value); }
  3920.     inline void glUniform4fv(GLint location, GLsizei count, const GLfloat * value) const { return m_glUniform4fv(location,count,value); }
  3921.     inline void glUniform1iv(GLint location, GLsizei count, const GLint * value) const { return m_glUniform1iv(location,count,value); }
  3922.     inline void glUniform2iv(GLint location, GLsizei count, const GLint * value) const { return m_glUniform2iv(location,count,value); }
  3923.     inline void glUniform3iv(GLint location, GLsizei count, const GLint * value) const { return m_glUniform3iv(location,count,value); }
  3924.     inline void glUniform4iv(GLint location, GLsizei count, const GLint * value) const { return m_glUniform4iv(location,count,value); }
  3925.     inline void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix2fv(location,count,transpose,value); }
  3926.     inline void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix3fv(location,count,transpose,value); }
  3927.     inline void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix4fv(location,count,transpose,value); }
  3928.     inline void glValidateProgram(GLuint program) const { return m_glValidateProgram(program); }
  3929.     inline void glVertexAttrib1d(GLuint index, GLdouble x) const { return m_glVertexAttrib1d(index,x); }
  3930.     inline void glVertexAttrib1dv(GLuint index, const GLdouble * v) const { return m_glVertexAttrib1dv(index,v); }
  3931.     inline void glVertexAttrib1f(GLuint index, GLfloat x) const { return m_glVertexAttrib1f(index,x); }
  3932.     inline void glVertexAttrib1fv(GLuint index, const GLfloat * v) const { return m_glVertexAttrib1fv(index,v); }
  3933.     inline void glVertexAttrib1s(GLuint index, GLshort x) const { return m_glVertexAttrib1s(index,x); }
  3934.     inline void glVertexAttrib1sv(GLuint index, const GLshort * v) const { return m_glVertexAttrib1sv(index,v); }
  3935.     inline void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y) const { return m_glVertexAttrib2d(index,x,y); }
  3936.     inline void glVertexAttrib2dv(GLuint index, const GLdouble * v) const { return m_glVertexAttrib2dv(index,v); }
  3937.     inline void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y) const { return m_glVertexAttrib2f(index,x,y); }
  3938.     inline void glVertexAttrib2fv(GLuint index, const GLfloat * v) const { return m_glVertexAttrib2fv(index,v); }
  3939.     inline void glVertexAttrib2s(GLuint index, GLshort x, GLshort y) const { return m_glVertexAttrib2s(index,x,y); }
  3940.     inline void glVertexAttrib2sv(GLuint index, const GLshort * v) const { return m_glVertexAttrib2sv(index,v); }
  3941.     inline void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z) const { return m_glVertexAttrib3d(index,x,y,z); }
  3942.     inline void glVertexAttrib3dv(GLuint index, const GLdouble * v) const { return m_glVertexAttrib3dv(index,v); }
  3943.     inline void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z) const { return m_glVertexAttrib3f(index,x,y,z); }
  3944.     inline void glVertexAttrib3fv(GLuint index, const GLfloat * v) const { return m_glVertexAttrib3fv(index,v); }
  3945.     inline void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z) const { return m_glVertexAttrib3s(index,x,y,z); }
  3946.     inline void glVertexAttrib3sv(GLuint index, const GLshort * v) const { return m_glVertexAttrib3sv(index,v); }
  3947.     inline void glVertexAttrib4Nbv(GLuint index, const GLbyte * v) const { return m_glVertexAttrib4Nbv(index,v); }
  3948.     inline void glVertexAttrib4Niv(GLuint index, const GLint * v) const { return m_glVertexAttrib4Niv(index,v); }
  3949.     inline void glVertexAttrib4Nsv(GLuint index, const GLshort * v) const { return m_glVertexAttrib4Nsv(index,v); }
  3950.     inline void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w) const { return m_glVertexAttrib4Nub(index,x,y,z,w); }
  3951.     inline void glVertexAttrib4Nubv(GLuint index, const GLubyte * v) const { return m_glVertexAttrib4Nubv(index,v); }
  3952.     inline void glVertexAttrib4Nuiv(GLuint index, const GLuint * v) const { return m_glVertexAttrib4Nuiv(index,v); }
  3953.     inline void glVertexAttrib4Nusv(GLuint index, const GLushort * v) const { return m_glVertexAttrib4Nusv(index,v); }
  3954.     inline void glVertexAttrib4bv(GLuint index, const GLbyte * v) const { return m_glVertexAttrib4bv(index,v); }
  3955.     inline void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) const { return m_glVertexAttrib4d(index,x,y,z,w); }
  3956.     inline void glVertexAttrib4dv(GLuint index, const GLdouble * v) const { return m_glVertexAttrib4dv(index,v); }
  3957.     inline void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w) const { return m_glVertexAttrib4f(index,x,y,z,w); }
  3958.     inline void glVertexAttrib4fv(GLuint index, const GLfloat * v) const { return m_glVertexAttrib4fv(index,v); }
  3959.     inline void glVertexAttrib4iv(GLuint index, const GLint * v) const { return m_glVertexAttrib4iv(index,v); }
  3960.     inline void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w) const { return m_glVertexAttrib4s(index,x,y,z,w); }
  3961.     inline void glVertexAttrib4sv(GLuint index, const GLshort * v) const { return m_glVertexAttrib4sv(index,v); }
  3962.     inline void glVertexAttrib4ubv(GLuint index, const GLubyte * v) const { return m_glVertexAttrib4ubv(index,v); }
  3963.     inline void glVertexAttrib4uiv(GLuint index, const GLuint * v) const { return m_glVertexAttrib4uiv(index,v); }
  3964.     inline void glVertexAttrib4usv(GLuint index, const GLushort * v) const { return m_glVertexAttrib4usv(index,v); }
  3965.     inline void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void * pointer) const { return m_glVertexAttribPointer(index,size,type,normalized,stride,pointer); }
  3966.     inline void glUniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix2x3fv(location,count,transpose,value); }
  3967.     inline void glUniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix3x2fv(location,count,transpose,value); }
  3968.     inline void glUniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix2x4fv(location,count,transpose,value); }
  3969.     inline void glUniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix4x2fv(location,count,transpose,value); }
  3970.     inline void glUniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix3x4fv(location,count,transpose,value); }
  3971.     inline void glUniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glUniformMatrix4x3fv(location,count,transpose,value); }
  3972.     inline void glColorMaski(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a) const { return m_glColorMaski(index,r,g,b,a); }
  3973.     inline void glGetBooleani_v(GLenum target, GLuint index, GLboolean * data) const { return m_glGetBooleani_v(target,index,data); }
  3974.     inline void glGetIntegeri_v(GLenum target, GLuint index, GLint * data) const { return m_glGetIntegeri_v(target,index,data); }
  3975.     inline void glEnablei(GLenum target, GLuint index) const { return m_glEnablei(target,index); }
  3976.     inline void glDisablei(GLenum target, GLuint index) const { return m_glDisablei(target,index); }
  3977.     inline GLboolean glIsEnabledi(GLenum target, GLuint index) const { return m_glIsEnabledi(target,index); }
  3978.     inline void glBeginTransformFeedback(GLenum primitiveMode) const { return m_glBeginTransformFeedback(primitiveMode); }
  3979.     inline void glEndTransformFeedback(void) const { return m_glEndTransformFeedback(); }
  3980.     inline void glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) const { return m_glBindBufferRange(target,index,buffer,offset,size); }
  3981.     inline void glBindBufferBase(GLenum target, GLuint index, GLuint buffer) const { return m_glBindBufferBase(target,index,buffer); }
  3982.     inline void glTransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar * const * varyings, GLenum bufferMode) const { return m_glTransformFeedbackVaryings(program,count,varyings,bufferMode); }
  3983.     inline void glGetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name) const { return m_glGetTransformFeedbackVarying(program,index,bufSize,length,size,type,name); }
  3984.     inline void glClampColor(GLenum target, GLenum clamp) const { return m_glClampColor(target,clamp); }
  3985.     inline void glBeginConditionalRender(GLuint id, GLenum mode) const { return m_glBeginConditionalRender(id,mode); }
  3986.     inline void glEndConditionalRender(void) const { return m_glEndConditionalRender(); }
  3987.     inline void glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void * pointer) const { return m_glVertexAttribIPointer(index,size,type,stride,pointer); }
  3988.     inline void glGetVertexAttribIiv(GLuint index, GLenum pname, GLint * params) const { return m_glGetVertexAttribIiv(index,pname,params); }
  3989.     inline void glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint * params) const { return m_glGetVertexAttribIuiv(index,pname,params); }
  3990.     inline void glVertexAttribI1i(GLuint index, GLint x) const { return m_glVertexAttribI1i(index,x); }
  3991.     inline void glVertexAttribI2i(GLuint index, GLint x, GLint y) const { return m_glVertexAttribI2i(index,x,y); }
  3992.     inline void glVertexAttribI3i(GLuint index, GLint x, GLint y, GLint z) const { return m_glVertexAttribI3i(index,x,y,z); }
  3993.     inline void glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w) const { return m_glVertexAttribI4i(index,x,y,z,w); }
  3994.     inline void glVertexAttribI1ui(GLuint index, GLuint x) const { return m_glVertexAttribI1ui(index,x); }
  3995.     inline void glVertexAttribI2ui(GLuint index, GLuint x, GLuint y) const { return m_glVertexAttribI2ui(index,x,y); }
  3996.     inline void glVertexAttribI3ui(GLuint index, GLuint x, GLuint y, GLuint z) const { return m_glVertexAttribI3ui(index,x,y,z); }
  3997.     inline void glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) const { return m_glVertexAttribI4ui(index,x,y,z,w); }
  3998.     inline void glVertexAttribI1iv(GLuint index, const GLint * v) const { return m_glVertexAttribI1iv(index,v); }
  3999.     inline void glVertexAttribI2iv(GLuint index, const GLint * v) const { return m_glVertexAttribI2iv(index,v); }
  4000.     inline void glVertexAttribI3iv(GLuint index, const GLint * v) const { return m_glVertexAttribI3iv(index,v); }
  4001.     inline void glVertexAttribI4iv(GLuint index, const GLint * v) const { return m_glVertexAttribI4iv(index,v); }
  4002.     inline void glVertexAttribI1uiv(GLuint index, const GLuint * v) const { return m_glVertexAttribI1uiv(index,v); }
  4003.     inline void glVertexAttribI2uiv(GLuint index, const GLuint * v) const { return m_glVertexAttribI2uiv(index,v); }
  4004.     inline void glVertexAttribI3uiv(GLuint index, const GLuint * v) const { return m_glVertexAttribI3uiv(index,v); }
  4005.     inline void glVertexAttribI4uiv(GLuint index, const GLuint * v) const { return m_glVertexAttribI4uiv(index,v); }
  4006.     inline void glVertexAttribI4bv(GLuint index, const GLbyte * v) const { return m_glVertexAttribI4bv(index,v); }
  4007.     inline void glVertexAttribI4sv(GLuint index, const GLshort * v) const { return m_glVertexAttribI4sv(index,v); }
  4008.     inline void glVertexAttribI4ubv(GLuint index, const GLubyte * v) const { return m_glVertexAttribI4ubv(index,v); }
  4009.     inline void glVertexAttribI4usv(GLuint index, const GLushort * v) const { return m_glVertexAttribI4usv(index,v); }
  4010.     inline void glGetUniformuiv(GLuint program, GLint location, GLuint * params) const { return m_glGetUniformuiv(program,location,params); }
  4011.     inline void glBindFragDataLocation(GLuint program, GLuint color, const GLchar * name) const { return m_glBindFragDataLocation(program,color,name); }
  4012.     inline GLint glGetFragDataLocation(GLuint program, const GLchar * name) const { return m_glGetFragDataLocation(program,name); }
  4013.     inline void glUniform1ui(GLint location, GLuint v0) const { return m_glUniform1ui(location,v0); }
  4014.     inline void glUniform2ui(GLint location, GLuint v0, GLuint v1) const { return m_glUniform2ui(location,v0,v1); }
  4015.     inline void glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) const { return m_glUniform3ui(location,v0,v1,v2); }
  4016.     inline void glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) const { return m_glUniform4ui(location,v0,v1,v2,v3); }
  4017.     inline void glUniform1uiv(GLint location, GLsizei count, const GLuint * value) const { return m_glUniform1uiv(location,count,value); }
  4018.     inline void glUniform2uiv(GLint location, GLsizei count, const GLuint * value) const { return m_glUniform2uiv(location,count,value); }
  4019.     inline void glUniform3uiv(GLint location, GLsizei count, const GLuint * value) const { return m_glUniform3uiv(location,count,value); }
  4020.     inline void glUniform4uiv(GLint location, GLsizei count, const GLuint * value) const { return m_glUniform4uiv(location,count,value); }
  4021.     inline void glTexParameterIiv(GLenum target, GLenum pname, const GLint * params) const { return m_glTexParameterIiv(target,pname,params); }
  4022.     inline void glTexParameterIuiv(GLenum target, GLenum pname, const GLuint * params) const { return m_glTexParameterIuiv(target,pname,params); }
  4023.     inline void glGetTexParameterIiv(GLenum target, GLenum pname, GLint * params) const { return m_glGetTexParameterIiv(target,pname,params); }
  4024.     inline void glGetTexParameterIuiv(GLenum target, GLenum pname, GLuint * params) const { return m_glGetTexParameterIuiv(target,pname,params); }
  4025.     inline void glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint * value) const { return m_glClearBufferiv(buffer,drawbuffer,value); }
  4026.     inline void glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint * value) const { return m_glClearBufferuiv(buffer,drawbuffer,value); }
  4027.     inline void glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat * value) const { return m_glClearBufferfv(buffer,drawbuffer,value); }
  4028.     inline void glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) const { return m_glClearBufferfi(buffer,drawbuffer,depth,stencil); }
  4029.     inline const GLubyte * glGetStringi(GLenum name, GLuint index) const { return m_glGetStringi(name,index); }
  4030.     inline GLboolean glIsRenderbuffer(GLuint renderbuffer) const { return m_glIsRenderbuffer(renderbuffer); }
  4031.     inline void glBindRenderbuffer(GLenum target, GLuint renderbuffer) const { return m_glBindRenderbuffer(target,renderbuffer); }
  4032.     inline void glDeleteRenderbuffers(GLsizei n, const GLuint * renderbuffers) const { return m_glDeleteRenderbuffers(n,renderbuffers); }
  4033.     inline void glGenRenderbuffers(GLsizei n, GLuint * renderbuffers) const { return m_glGenRenderbuffers(n,renderbuffers); }
  4034.     inline void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) const { return m_glRenderbufferStorage(target,internalformat,width,height); }
  4035.     inline void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint * params) const { return m_glGetRenderbufferParameteriv(target,pname,params); }
  4036.     inline GLboolean glIsFramebuffer(GLuint framebuffer) const { return m_glIsFramebuffer(framebuffer); }
  4037.     inline void glBindFramebuffer(GLenum target, GLuint framebuffer) const { return m_glBindFramebuffer(target,framebuffer); }
  4038.     inline void glDeleteFramebuffers(GLsizei n, const GLuint * framebuffers) const { return m_glDeleteFramebuffers(n,framebuffers); }
  4039.     inline void glGenFramebuffers(GLsizei n, GLuint * framebuffers) const { return m_glGenFramebuffers(n,framebuffers); }
  4040.     inline GLenum glCheckFramebufferStatus(GLenum target) const { return m_glCheckFramebufferStatus(target); }
  4041.     inline void glFramebufferTexture1D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) const { return m_glFramebufferTexture1D(target,attachment,textarget,texture,level); }
  4042.     inline void glFramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) const { return m_glFramebufferTexture2D(target,attachment,textarget,texture,level); }
  4043.     inline void glFramebufferTexture3D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) const { return m_glFramebufferTexture3D(target,attachment,textarget,texture,level,zoffset); }
  4044.     inline void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) const { return m_glFramebufferRenderbuffer(target,attachment,renderbuffertarget,renderbuffer); }
  4045.     inline void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint * params) const { return m_glGetFramebufferAttachmentParameteriv(target,attachment,pname,params); }
  4046.     inline void glGenerateMipmap(GLenum target) const { return m_glGenerateMipmap(target); }
  4047.     inline void glBlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) const { return m_glBlitFramebuffer(srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter); }
  4048.     inline void glRenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) const { return m_glRenderbufferStorageMultisample(target,samples,internalformat,width,height); }
  4049.     inline void glFramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) const { return m_glFramebufferTextureLayer(target,attachment,texture,level,layer); }
  4050.     inline void * glMapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) const { return m_glMapBufferRange(target,offset,length,access); }
  4051.     inline void glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) const { return m_glFlushMappedBufferRange(target,offset,length); }
  4052.     inline void glBindVertexArray(GLuint array) const { return m_glBindVertexArray(array); }
  4053.     inline void glDeleteVertexArrays(GLsizei n, const GLuint * arrays) const { return m_glDeleteVertexArrays(n,arrays); }
  4054.     inline void glGenVertexArrays(GLsizei n, GLuint * arrays) const { return m_glGenVertexArrays(n,arrays); }
  4055.     inline GLboolean glIsVertexArray(GLuint array) const { return m_glIsVertexArray(array); }
  4056.     inline void glDrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount) const { return m_glDrawArraysInstanced(mode,first,count,instancecount); }
  4057.     inline void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount) const { return m_glDrawElementsInstanced(mode,count,type,indices,instancecount); }
  4058.     inline void glTexBuffer(GLenum target, GLenum internalformat, GLuint buffer) const { return m_glTexBuffer(target,internalformat,buffer); }
  4059.     inline void glPrimitiveRestartIndex(GLuint index) const { return m_glPrimitiveRestartIndex(index); }
  4060.     inline void glCopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) const { return m_glCopyBufferSubData(readTarget,writeTarget,readOffset,writeOffset,size); }
  4061.     inline void glGetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar * const * uniformNames, GLuint * uniformIndices) const { return m_glGetUniformIndices(program,uniformCount,uniformNames,uniformIndices); }
  4062.     inline void glGetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint * uniformIndices, GLenum pname, GLint * params) const { return m_glGetActiveUniformsiv(program,uniformCount,uniformIndices,pname,params); }
  4063.     inline void glGetActiveUniformName(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei * length, GLchar * uniformName) const { return m_glGetActiveUniformName(program,uniformIndex,bufSize,length,uniformName); }
  4064.     inline GLuint glGetUniformBlockIndex(GLuint program, const GLchar * uniformBlockName) const { return m_glGetUniformBlockIndex(program,uniformBlockName); }
  4065.     inline void glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint * params) const { return m_glGetActiveUniformBlockiv(program,uniformBlockIndex,pname,params); }
  4066.     inline void glGetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei * length, GLchar * uniformBlockName) const { return m_glGetActiveUniformBlockName(program,uniformBlockIndex,bufSize,length,uniformBlockName); }
  4067.     inline void glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding) const { return m_glUniformBlockBinding(program,uniformBlockIndex,uniformBlockBinding); }
  4068.     inline void glDrawElementsBaseVertex(GLenum mode, GLsizei count, GLenum type, const void * indices, GLint basevertex) const { return m_glDrawElementsBaseVertex(mode,count,type,indices,basevertex); }
  4069.     inline void glDrawRangeElementsBaseVertex(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void * indices, GLint basevertex) const { return m_glDrawRangeElementsBaseVertex(mode,start,end,count,type,indices,basevertex); }
  4070.     inline void glDrawElementsInstancedBaseVertex(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLint basevertex) const { return m_glDrawElementsInstancedBaseVertex(mode,count,type,indices,instancecount,basevertex); }
  4071.     inline void glMultiDrawElementsBaseVertex(GLenum mode, const GLsizei * count, GLenum type, const void * const * indices, GLsizei drawcount, const GLint * basevertex) const { return m_glMultiDrawElementsBaseVertex(mode,count,type,indices,drawcount,basevertex); }
  4072.     inline void glProvokingVertex(GLenum mode) const { return m_glProvokingVertex(mode); }
  4073.     inline GLsync glFenceSync(GLenum condition, GLbitfield flags) const { return m_glFenceSync(condition,flags); }
  4074.     inline GLboolean glIsSync(GLsync sync) const { return m_glIsSync(sync); }
  4075.     inline void glDeleteSync(GLsync sync) const { return m_glDeleteSync(sync); }
  4076.     inline GLenum glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) const { return m_glClientWaitSync(sync,flags,timeout); }
  4077.     inline void glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) const { return m_glWaitSync(sync,flags,timeout); }
  4078.     inline void glGetInteger64v(GLenum pname, GLint64 * data) const { return m_glGetInteger64v(pname,data); }
  4079.     inline void glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values) const { return m_glGetSynciv(sync,pname,bufSize,length,values); }
  4080.     inline void glGetInteger64i_v(GLenum target, GLuint index, GLint64 * data) const { return m_glGetInteger64i_v(target,index,data); }
  4081.     inline void glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 * params) const { return m_glGetBufferParameteri64v(target,pname,params); }
  4082.     inline void glFramebufferTexture(GLenum target, GLenum attachment, GLuint texture, GLint level) const { return m_glFramebufferTexture(target,attachment,texture,level); }
  4083.     inline void glTexImage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) const { return m_glTexImage2DMultisample(target,samples,internalformat,width,height,fixedsamplelocations); }
  4084.     inline void glTexImage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations) const { return m_glTexImage3DMultisample(target,samples,internalformat,width,height,depth,fixedsamplelocations); }
  4085.     inline void glGetMultisamplefv(GLenum pname, GLuint index, GLfloat * val) const { return m_glGetMultisamplefv(pname,index,val); }
  4086.     inline void glSampleMaski(GLuint maskNumber, GLbitfield mask) const { return m_glSampleMaski(maskNumber,mask); }
  4087.     inline void glBindFragDataLocationIndexed(GLuint program, GLuint colorNumber, GLuint index, const GLchar * name) const { return m_glBindFragDataLocationIndexed(program,colorNumber,index,name); }
  4088.     inline GLint glGetFragDataIndex(GLuint program, const GLchar * name) const { return m_glGetFragDataIndex(program,name); }
  4089.     inline void glGenSamplers(GLsizei count, GLuint * samplers) const { return m_glGenSamplers(count,samplers); }
  4090.     inline void glDeleteSamplers(GLsizei count, const GLuint * samplers) const { return m_glDeleteSamplers(count,samplers); }
  4091.     inline GLboolean glIsSampler(GLuint sampler) const { return m_glIsSampler(sampler); }
  4092.     inline void glBindSampler(GLuint unit, GLuint sampler) const { return m_glBindSampler(unit,sampler); }
  4093.     inline void glSamplerParameteri(GLuint sampler, GLenum pname, GLint param) const { return m_glSamplerParameteri(sampler,pname,param); }
  4094.     inline void glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint * param) const { return m_glSamplerParameteriv(sampler,pname,param); }
  4095.     inline void glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) const { return m_glSamplerParameterf(sampler,pname,param); }
  4096.     inline void glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat * param) const { return m_glSamplerParameterfv(sampler,pname,param); }
  4097.     inline void glSamplerParameterIiv(GLuint sampler, GLenum pname, const GLint * param) const { return m_glSamplerParameterIiv(sampler,pname,param); }
  4098.     inline void glSamplerParameterIuiv(GLuint sampler, GLenum pname, const GLuint * param) const { return m_glSamplerParameterIuiv(sampler,pname,param); }
  4099.     inline void glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint * params) const { return m_glGetSamplerParameteriv(sampler,pname,params); }
  4100.     inline void glGetSamplerParameterIiv(GLuint sampler, GLenum pname, GLint * params) const { return m_glGetSamplerParameterIiv(sampler,pname,params); }
  4101.     inline void glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat * params) const { return m_glGetSamplerParameterfv(sampler,pname,params); }
  4102.     inline void glGetSamplerParameterIuiv(GLuint sampler, GLenum pname, GLuint * params) const { return m_glGetSamplerParameterIuiv(sampler,pname,params); }
  4103.     inline void glQueryCounter(GLuint id, GLenum target) const { return m_glQueryCounter(id,target); }
  4104.     inline void glGetQueryObjecti64v(GLuint id, GLenum pname, GLint64 * params) const { return m_glGetQueryObjecti64v(id,pname,params); }
  4105.     inline void glGetQueryObjectui64v(GLuint id, GLenum pname, GLuint64 * params) const { return m_glGetQueryObjectui64v(id,pname,params); }
  4106.     inline void glVertexAttribDivisor(GLuint index, GLuint divisor) const { return m_glVertexAttribDivisor(index,divisor); }
  4107.     inline void glVertexAttribP1ui(GLuint index, GLenum type, GLboolean normalized, GLuint value) const { return m_glVertexAttribP1ui(index,type,normalized,value); }
  4108.     inline void glVertexAttribP1uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint * value) const { return m_glVertexAttribP1uiv(index,type,normalized,value); }
  4109.     inline void glVertexAttribP2ui(GLuint index, GLenum type, GLboolean normalized, GLuint value) const { return m_glVertexAttribP2ui(index,type,normalized,value); }
  4110.     inline void glVertexAttribP2uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint * value) const { return m_glVertexAttribP2uiv(index,type,normalized,value); }
  4111.     inline void glVertexAttribP3ui(GLuint index, GLenum type, GLboolean normalized, GLuint value) const { return m_glVertexAttribP3ui(index,type,normalized,value); }
  4112.     inline void glVertexAttribP3uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint * value) const { return m_glVertexAttribP3uiv(index,type,normalized,value); }
  4113.     inline void glVertexAttribP4ui(GLuint index, GLenum type, GLboolean normalized, GLuint value) const { return m_glVertexAttribP4ui(index,type,normalized,value); }
  4114.     inline void glVertexAttribP4uiv(GLuint index, GLenum type, GLboolean normalized, const GLuint * value) const { return m_glVertexAttribP4uiv(index,type,normalized,value); }
  4115.     inline void glMinSampleShading(GLfloat value) const { return m_glMinSampleShading(value); }
  4116.     inline void glBlendEquationi(GLuint buf, GLenum mode) const { return m_glBlendEquationi(buf,mode); }
  4117.     inline void glBlendEquationSeparatei(GLuint buf, GLenum modeRGB, GLenum modeAlpha) const { return m_glBlendEquationSeparatei(buf,modeRGB,modeAlpha); }
  4118.     inline void glBlendFunci(GLuint buf, GLenum src, GLenum dst) const { return m_glBlendFunci(buf,src,dst); }
  4119.     inline void glBlendFuncSeparatei(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) const { return m_glBlendFuncSeparatei(buf,srcRGB,dstRGB,srcAlpha,dstAlpha); }
  4120.     inline void glDrawArraysIndirect(GLenum mode, const void * indirect) const { return m_glDrawArraysIndirect(mode,indirect); }
  4121.     inline void glDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect) const { return m_glDrawElementsIndirect(mode,type,indirect); }
  4122.     inline void glUniform1d(GLint location, GLdouble x) const { return m_glUniform1d(location,x); }
  4123.     inline void glUniform2d(GLint location, GLdouble x, GLdouble y) const { return m_glUniform2d(location,x,y); }
  4124.     inline void glUniform3d(GLint location, GLdouble x, GLdouble y, GLdouble z) const { return m_glUniform3d(location,x,y,z); }
  4125.     inline void glUniform4d(GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w) const { return m_glUniform4d(location,x,y,z,w); }
  4126.     inline void glUniform1dv(GLint location, GLsizei count, const GLdouble * value) const { return m_glUniform1dv(location,count,value); }
  4127.     inline void glUniform2dv(GLint location, GLsizei count, const GLdouble * value) const { return m_glUniform2dv(location,count,value); }
  4128.     inline void glUniform3dv(GLint location, GLsizei count, const GLdouble * value) const { return m_glUniform3dv(location,count,value); }
  4129.     inline void glUniform4dv(GLint location, GLsizei count, const GLdouble * value) const { return m_glUniform4dv(location,count,value); }
  4130.     inline void glUniformMatrix2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix2dv(location,count,transpose,value); }
  4131.     inline void glUniformMatrix3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix3dv(location,count,transpose,value); }
  4132.     inline void glUniformMatrix4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix4dv(location,count,transpose,value); }
  4133.     inline void glUniformMatrix2x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix2x3dv(location,count,transpose,value); }
  4134.     inline void glUniformMatrix2x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix2x4dv(location,count,transpose,value); }
  4135.     inline void glUniformMatrix3x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix3x2dv(location,count,transpose,value); }
  4136.     inline void glUniformMatrix3x4dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix3x4dv(location,count,transpose,value); }
  4137.     inline void glUniformMatrix4x2dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix4x2dv(location,count,transpose,value); }
  4138.     inline void glUniformMatrix4x3dv(GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glUniformMatrix4x3dv(location,count,transpose,value); }
  4139.     inline void glGetUniformdv(GLuint program, GLint location, GLdouble * params) const { return m_glGetUniformdv(program,location,params); }
  4140.     inline GLint glGetSubroutineUniformLocation(GLuint program, GLenum shadertype, const GLchar * name) const { return m_glGetSubroutineUniformLocation(program,shadertype,name); }
  4141.     inline GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar * name) const { return m_glGetSubroutineIndex(program,shadertype,name); }
  4142.     inline void glGetActiveSubroutineUniformiv(GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint * values) const { return m_glGetActiveSubroutineUniformiv(program,shadertype,index,pname,values); }
  4143.     inline void glGetActiveSubroutineUniformName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei * length, GLchar * name) const { return m_glGetActiveSubroutineUniformName(program,shadertype,index,bufsize,length,name); }
  4144.     inline void glGetActiveSubroutineName(GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei * length, GLchar * name) const { return m_glGetActiveSubroutineName(program,shadertype,index,bufsize,length,name); }
  4145.     inline void glUniformSubroutinesuiv(GLenum shadertype, GLsizei count, const GLuint * indices) const { return m_glUniformSubroutinesuiv(shadertype,count,indices); }
  4146.     inline void glGetUniformSubroutineuiv(GLenum shadertype, GLint location, GLuint * params) const { return m_glGetUniformSubroutineuiv(shadertype,location,params); }
  4147.     inline void glGetProgramStageiv(GLuint program, GLenum shadertype, GLenum pname, GLint * values) const { return m_glGetProgramStageiv(program,shadertype,pname,values); }
  4148.     inline void glPatchParameteri(GLenum pname, GLint value) const { return m_glPatchParameteri(pname,value); }
  4149.     inline void glPatchParameterfv(GLenum pname, const GLfloat * values) const { return m_glPatchParameterfv(pname,values); }
  4150.     inline void glBindTransformFeedback(GLenum target, GLuint id) const { return m_glBindTransformFeedback(target,id); }
  4151.     inline void glDeleteTransformFeedbacks(GLsizei n, const GLuint * ids) const { return m_glDeleteTransformFeedbacks(n,ids); }
  4152.     inline void glGenTransformFeedbacks(GLsizei n, GLuint * ids) const { return m_glGenTransformFeedbacks(n,ids); }
  4153.     inline GLboolean glIsTransformFeedback(GLuint id) const { return m_glIsTransformFeedback(id); }
  4154.     inline void glPauseTransformFeedback(void) const { return m_glPauseTransformFeedback(); }
  4155.     inline void glResumeTransformFeedback(void) const { return m_glResumeTransformFeedback(); }
  4156.     inline void glDrawTransformFeedback(GLenum mode, GLuint id) const { return m_glDrawTransformFeedback(mode,id); }
  4157.     inline void glDrawTransformFeedbackStream(GLenum mode, GLuint id, GLuint stream) const { return m_glDrawTransformFeedbackStream(mode,id,stream); }
  4158.     inline void glBeginQueryIndexed(GLenum target, GLuint index, GLuint id) const { return m_glBeginQueryIndexed(target,index,id); }
  4159.     inline void glEndQueryIndexed(GLenum target, GLuint index) const { return m_glEndQueryIndexed(target,index); }
  4160.     inline void glGetQueryIndexediv(GLenum target, GLuint index, GLenum pname, GLint * params) const { return m_glGetQueryIndexediv(target,index,pname,params); }
  4161.     inline void glReleaseShaderCompiler(void) const { return m_glReleaseShaderCompiler(); }
  4162.     inline void glShaderBinary(GLsizei count, const GLuint * shaders, GLenum binaryformat, const void * binary, GLsizei length) const { return m_glShaderBinary(count,shaders,binaryformat,binary,length); }
  4163.     inline void glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint * range, GLint * precision) const { return m_glGetShaderPrecisionFormat(shadertype,precisiontype,range,precision); }
  4164.     inline void glDepthRangef(GLfloat n, GLfloat f) const { return m_glDepthRangef(n,f); }
  4165.     inline void glClearDepthf(GLfloat d) const { return m_glClearDepthf(d); }
  4166.     inline void glGetProgramBinary(GLuint program, GLsizei bufSize, GLsizei * length, GLenum * binaryFormat, void * binary) const { return m_glGetProgramBinary(program,bufSize,length,binaryFormat,binary); }
  4167.     inline void glProgramBinary(GLuint program, GLenum binaryFormat, const void * binary, GLsizei length) const { return m_glProgramBinary(program,binaryFormat,binary,length); }
  4168.     inline void glProgramParameteri(GLuint program, GLenum pname, GLint value) const { return m_glProgramParameteri(program,pname,value); }
  4169.     inline void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program) const { return m_glUseProgramStages(pipeline,stages,program); }
  4170.     inline void glActiveShaderProgram(GLuint pipeline, GLuint program) const { return m_glActiveShaderProgram(pipeline,program); }
  4171.     inline GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar * const * strings) const { return m_glCreateShaderProgramv(type,count,strings); }
  4172.     inline void glBindProgramPipeline(GLuint pipeline) const { return m_glBindProgramPipeline(pipeline); }
  4173.     inline void glDeleteProgramPipelines(GLsizei n, const GLuint * pipelines) const { return m_glDeleteProgramPipelines(n,pipelines); }
  4174.     inline void glGenProgramPipelines(GLsizei n, GLuint * pipelines) const { return m_glGenProgramPipelines(n,pipelines); }
  4175.     inline GLboolean glIsProgramPipeline(GLuint pipeline) const { return m_glIsProgramPipeline(pipeline); }
  4176.     inline void glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint * params) const { return m_glGetProgramPipelineiv(pipeline,pname,params); }
  4177.     inline void glProgramUniform1i(GLuint program, GLint location, GLint v0) const { return m_glProgramUniform1i(program,location,v0); }
  4178.     inline void glProgramUniform1iv(GLuint program, GLint location, GLsizei count, const GLint * value) const { return m_glProgramUniform1iv(program,location,count,value); }
  4179.     inline void glProgramUniform1f(GLuint program, GLint location, GLfloat v0) const { return m_glProgramUniform1f(program,location,v0); }
  4180.     inline void glProgramUniform1fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) const { return m_glProgramUniform1fv(program,location,count,value); }
  4181.     inline void glProgramUniform1d(GLuint program, GLint location, GLdouble v0) const { return m_glProgramUniform1d(program,location,v0); }
  4182.     inline void glProgramUniform1dv(GLuint program, GLint location, GLsizei count, const GLdouble * value) const { return m_glProgramUniform1dv(program,location,count,value); }
  4183.     inline void glProgramUniform1ui(GLuint program, GLint location, GLuint v0) const { return m_glProgramUniform1ui(program,location,v0); }
  4184.     inline void glProgramUniform1uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) const { return m_glProgramUniform1uiv(program,location,count,value); }
  4185.     inline void glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1) const { return m_glProgramUniform2i(program,location,v0,v1); }
  4186.     inline void glProgramUniform2iv(GLuint program, GLint location, GLsizei count, const GLint * value) const { return m_glProgramUniform2iv(program,location,count,value); }
  4187.     inline void glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1) const { return m_glProgramUniform2f(program,location,v0,v1); }
  4188.     inline void glProgramUniform2fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) const { return m_glProgramUniform2fv(program,location,count,value); }
  4189.     inline void glProgramUniform2d(GLuint program, GLint location, GLdouble v0, GLdouble v1) const { return m_glProgramUniform2d(program,location,v0,v1); }
  4190.     inline void glProgramUniform2dv(GLuint program, GLint location, GLsizei count, const GLdouble * value) const { return m_glProgramUniform2dv(program,location,count,value); }
  4191.     inline void glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1) const { return m_glProgramUniform2ui(program,location,v0,v1); }
  4192.     inline void glProgramUniform2uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) const { return m_glProgramUniform2uiv(program,location,count,value); }
  4193.     inline void glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2) const { return m_glProgramUniform3i(program,location,v0,v1,v2); }
  4194.     inline void glProgramUniform3iv(GLuint program, GLint location, GLsizei count, const GLint * value) const { return m_glProgramUniform3iv(program,location,count,value); }
  4195.     inline void glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2) const { return m_glProgramUniform3f(program,location,v0,v1,v2); }
  4196.     inline void glProgramUniform3fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) const { return m_glProgramUniform3fv(program,location,count,value); }
  4197.     inline void glProgramUniform3d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2) const { return m_glProgramUniform3d(program,location,v0,v1,v2); }
  4198.     inline void glProgramUniform3dv(GLuint program, GLint location, GLsizei count, const GLdouble * value) const { return m_glProgramUniform3dv(program,location,count,value); }
  4199.     inline void glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2) const { return m_glProgramUniform3ui(program,location,v0,v1,v2); }
  4200.     inline void glProgramUniform3uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) const { return m_glProgramUniform3uiv(program,location,count,value); }
  4201.     inline void glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3) const { return m_glProgramUniform4i(program,location,v0,v1,v2,v3); }
  4202.     inline void glProgramUniform4iv(GLuint program, GLint location, GLsizei count, const GLint * value) const { return m_glProgramUniform4iv(program,location,count,value); }
  4203.     inline void glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) const { return m_glProgramUniform4f(program,location,v0,v1,v2,v3); }
  4204.     inline void glProgramUniform4fv(GLuint program, GLint location, GLsizei count, const GLfloat * value) const { return m_glProgramUniform4fv(program,location,count,value); }
  4205.     inline void glProgramUniform4d(GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3) const { return m_glProgramUniform4d(program,location,v0,v1,v2,v3); }
  4206.     inline void glProgramUniform4dv(GLuint program, GLint location, GLsizei count, const GLdouble * value) const { return m_glProgramUniform4dv(program,location,count,value); }
  4207.     inline void glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) const { return m_glProgramUniform4ui(program,location,v0,v1,v2,v3); }
  4208.     inline void glProgramUniform4uiv(GLuint program, GLint location, GLsizei count, const GLuint * value) const { return m_glProgramUniform4uiv(program,location,count,value); }
  4209.     inline void glProgramUniformMatrix2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix2fv(program,location,count,transpose,value); }
  4210.     inline void glProgramUniformMatrix3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix3fv(program,location,count,transpose,value); }
  4211.     inline void glProgramUniformMatrix4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix4fv(program,location,count,transpose,value); }
  4212.     inline void glProgramUniformMatrix2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix2dv(program,location,count,transpose,value); }
  4213.     inline void glProgramUniformMatrix3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix3dv(program,location,count,transpose,value); }
  4214.     inline void glProgramUniformMatrix4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix4dv(program,location,count,transpose,value); }
  4215.     inline void glProgramUniformMatrix2x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix2x3fv(program,location,count,transpose,value); }
  4216.     inline void glProgramUniformMatrix3x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix3x2fv(program,location,count,transpose,value); }
  4217.     inline void glProgramUniformMatrix2x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix2x4fv(program,location,count,transpose,value); }
  4218.     inline void glProgramUniformMatrix4x2fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix4x2fv(program,location,count,transpose,value); }
  4219.     inline void glProgramUniformMatrix3x4fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix3x4fv(program,location,count,transpose,value); }
  4220.     inline void glProgramUniformMatrix4x3fv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat * value) const { return m_glProgramUniformMatrix4x3fv(program,location,count,transpose,value); }
  4221.     inline void glProgramUniformMatrix2x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix2x3dv(program,location,count,transpose,value); }
  4222.     inline void glProgramUniformMatrix3x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix3x2dv(program,location,count,transpose,value); }
  4223.     inline void glProgramUniformMatrix2x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix2x4dv(program,location,count,transpose,value); }
  4224.     inline void glProgramUniformMatrix4x2dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix4x2dv(program,location,count,transpose,value); }
  4225.     inline void glProgramUniformMatrix3x4dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix3x4dv(program,location,count,transpose,value); }
  4226.     inline void glProgramUniformMatrix4x3dv(GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble * value) const { return m_glProgramUniformMatrix4x3dv(program,location,count,transpose,value); }
  4227.     inline void glValidateProgramPipeline(GLuint pipeline) const { return m_glValidateProgramPipeline(pipeline); }
  4228.     inline void glGetProgramPipelineInfoLog(GLuint pipeline, GLsizei bufSize, GLsizei * length, GLchar * infoLog) const { return m_glGetProgramPipelineInfoLog(pipeline,bufSize,length,infoLog); }
  4229.     inline void glVertexAttribL1d(GLuint index, GLdouble x) const { return m_glVertexAttribL1d(index,x); }
  4230.     inline void glVertexAttribL2d(GLuint index, GLdouble x, GLdouble y) const { return m_glVertexAttribL2d(index,x,y); }
  4231.     inline void glVertexAttribL3d(GLuint index, GLdouble x, GLdouble y, GLdouble z) const { return m_glVertexAttribL3d(index,x,y,z); }
  4232.     inline void glVertexAttribL4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w) const { return m_glVertexAttribL4d(index,x,y,z,w); }
  4233.     inline void glVertexAttribL1dv(GLuint index, const GLdouble * v) const { return m_glVertexAttribL1dv(index,v); }
  4234.     inline void glVertexAttribL2dv(GLuint index, const GLdouble * v) const { return m_glVertexAttribL2dv(index,v); }
  4235.     inline void glVertexAttribL3dv(GLuint index, const GLdouble * v) const { return m_glVertexAttribL3dv(index,v); }
  4236.     inline void glVertexAttribL4dv(GLuint index, const GLdouble * v) const { return m_glVertexAttribL4dv(index,v); }
  4237.     inline void glVertexAttribLPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void * pointer) const { return m_glVertexAttribLPointer(index,size,type,stride,pointer); }
  4238.     inline void glGetVertexAttribLdv(GLuint index, GLenum pname, GLdouble * params) const { return m_glGetVertexAttribLdv(index,pname,params); }
  4239.     inline void glViewportArrayv(GLuint first, GLsizei count, const GLfloat * v) const { return m_glViewportArrayv(first,count,v); }
  4240.     inline void glViewportIndexedf(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h) const { return m_glViewportIndexedf(index,x,y,w,h); }
  4241.     inline void glViewportIndexedfv(GLuint index, const GLfloat * v) const { return m_glViewportIndexedfv(index,v); }
  4242.     inline void glScissorArrayv(GLuint first, GLsizei count, const GLint * v) const { return m_glScissorArrayv(first,count,v); }
  4243.     inline void glScissorIndexed(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height) const { return m_glScissorIndexed(index,left,bottom,width,height); }
  4244.     inline void glScissorIndexedv(GLuint index, const GLint * v) const { return m_glScissorIndexedv(index,v); }
  4245.     inline void glDepthRangeArrayv(GLuint first, GLsizei count, const GLdouble * v) const { return m_glDepthRangeArrayv(first,count,v); }
  4246.     inline void glDepthRangeIndexed(GLuint index, GLdouble n, GLdouble f) const { return m_glDepthRangeIndexed(index,n,f); }
  4247.     inline void glGetFloati_v(GLenum target, GLuint index, GLfloat * data) const { return m_glGetFloati_v(target,index,data); }
  4248.     inline void glGetDoublei_v(GLenum target, GLuint index, GLdouble * data) const { return m_glGetDoublei_v(target,index,data); }
  4249.     inline void glDrawArraysInstancedBaseInstance(GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance) const { return m_glDrawArraysInstancedBaseInstance(mode,first,count,instancecount,baseinstance); }
  4250.     inline void glDrawElementsInstancedBaseInstance(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLuint baseinstance) const { return m_glDrawElementsInstancedBaseInstance(mode,count,type,indices,instancecount,baseinstance); }
  4251.     inline void glDrawElementsInstancedBaseVertexBaseInstance(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance) const { return m_glDrawElementsInstancedBaseVertexBaseInstance(mode,count,type,indices,instancecount,basevertex,baseinstance); }
  4252.     inline void glGetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint * params) const { return m_glGetInternalformativ(target,internalformat,pname,bufSize,params); }
  4253.     inline void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint * params) const { return m_glGetActiveAtomicCounterBufferiv(program,bufferIndex,pname,params); }
  4254.     inline void glBindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format) const { return m_glBindImageTexture(unit,texture,level,layered,layer,access,format); }
  4255.     inline void glMemoryBarrier(GLbitfield barriers) const { return m_glMemoryBarrier(barriers); }
  4256.     inline void glTexStorage1D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width) const { return m_glTexStorage1D(target,levels,internalformat,width); }
  4257.     inline void glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) const { return m_glTexStorage2D(target,levels,internalformat,width,height); }
  4258.     inline void glTexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) const { return m_glTexStorage3D(target,levels,internalformat,width,height,depth); }
  4259.     inline void glDrawTransformFeedbackInstanced(GLenum mode, GLuint id, GLsizei instancecount) const { return m_glDrawTransformFeedbackInstanced(mode,id,instancecount); }
  4260.     inline void glDrawTransformFeedbackStreamInstanced(GLenum mode, GLuint id, GLuint stream, GLsizei instancecount) const { return m_glDrawTransformFeedbackStreamInstanced(mode,id,stream,instancecount); }
  4261.     inline void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void * data) const { return m_glClearBufferData(target,internalformat,format,type,data); }
  4262.     inline void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void * data) const { return m_glClearBufferSubData(target,internalformat,offset,size,format,type,data); }
  4263.     inline void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z) const { return m_glDispatchCompute(num_groups_x,num_groups_y,num_groups_z); }
  4264.     inline void glDispatchComputeIndirect(GLintptr indirect) const { return m_glDispatchComputeIndirect(indirect); }
  4265.     inline void glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth) const { return m_glCopyImageSubData(srcName,srcTarget,srcLevel,srcX,srcY,srcZ,dstName,dstTarget,dstLevel,dstX,dstY,dstZ,srcWidth,srcHeight,srcDepth); }
  4266.     inline void glFramebufferParameteri(GLenum target, GLenum pname, GLint param) const { return m_glFramebufferParameteri(target,pname,param); }
  4267.     inline void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint * params) const { return m_glGetFramebufferParameteriv(target,pname,params); }
  4268.     inline void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint64 * params) const { return m_glGetInternalformati64v(target,internalformat,pname,bufSize,params); }
  4269.     inline void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth) const { return m_glInvalidateTexSubImage(texture,level,xoffset,yoffset,zoffset,width,height,depth); }
  4270.     inline void glInvalidateTexImage(GLuint texture, GLint level) const { return m_glInvalidateTexImage(texture,level); }
  4271.     inline void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length) const { return m_glInvalidateBufferSubData(buffer,offset,length); }
  4272.     inline void glInvalidateBufferData(GLuint buffer) const { return m_glInvalidateBufferData(buffer); }
  4273.     inline void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum * attachments) const { return m_glInvalidateFramebuffer(target,numAttachments,attachments); }
  4274.     inline void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum * attachments, GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glInvalidateSubFramebuffer(target,numAttachments,attachments,x,y,width,height); }
  4275.     inline void glMultiDrawArraysIndirect(GLenum mode, const void * indirect, GLsizei drawcount, GLsizei stride) const { return m_glMultiDrawArraysIndirect(mode,indirect,drawcount,stride); }
  4276.     inline void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect, GLsizei drawcount, GLsizei stride) const { return m_glMultiDrawElementsIndirect(mode,type,indirect,drawcount,stride); }
  4277.     inline void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint * params) const { return m_glGetProgramInterfaceiv(program,programInterface,pname,params); }
  4278.     inline GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar * name) const { return m_glGetProgramResourceIndex(program,programInterface,name); }
  4279.     inline void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei * length, GLchar * name) const { return m_glGetProgramResourceName(program,programInterface,index,bufSize,length,name); }
  4280.     inline void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum * props, GLsizei bufSize, GLsizei * length, GLint * params) const { return m_glGetProgramResourceiv(program,programInterface,index,propCount,props,bufSize,length,params); }
  4281.     inline GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar * name) const { return m_glGetProgramResourceLocation(program,programInterface,name); }
  4282.     inline GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar * name) const { return m_glGetProgramResourceLocationIndex(program,programInterface,name); }
  4283.     inline void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding) const { return m_glShaderStorageBlockBinding(program,storageBlockIndex,storageBlockBinding); }
  4284.     inline void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size) const { return m_glTexBufferRange(target,internalformat,buffer,offset,size); }
  4285.     inline void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) const { return m_glTexStorage2DMultisample(target,samples,internalformat,width,height,fixedsamplelocations); }
  4286.     inline void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations) const { return m_glTexStorage3DMultisample(target,samples,internalformat,width,height,depth,fixedsamplelocations); }
  4287.     inline void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers) const { return m_glTextureView(texture,target,origtexture,internalformat,minlevel,numlevels,minlayer,numlayers); }
  4288.     inline void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride) const { return m_glBindVertexBuffer(bindingindex,buffer,offset,stride); }
  4289.     inline void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset) const { return m_glVertexAttribFormat(attribindex,size,type,normalized,relativeoffset); }
  4290.     inline void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) const { return m_glVertexAttribIFormat(attribindex,size,type,relativeoffset); }
  4291.     inline void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) const { return m_glVertexAttribLFormat(attribindex,size,type,relativeoffset); }
  4292.     inline void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex) const { return m_glVertexAttribBinding(attribindex,bindingindex); }
  4293.     inline void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor) const { return m_glVertexBindingDivisor(bindingindex,divisor); }
  4294.     inline void glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint * ids, GLboolean enabled) const { return m_glDebugMessageControl(source,type,severity,count,ids,enabled); }
  4295.     inline void glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar * buf) const { return m_glDebugMessageInsert(source,type,id,severity,length,buf); }
  4296.     inline void glDebugMessageCallback(GLDEBUGPROC callback, const void * userParam) const { return m_glDebugMessageCallback(callback,userParam); }
  4297.     inline GLuint glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum * sources, GLenum * types, GLuint * ids, GLenum * severities, GLsizei * lengths, GLchar * messageLog) const { return m_glGetDebugMessageLog(count,bufSize,sources,types,ids,severities,lengths,messageLog); }
  4298.     inline void glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar * message) const { return m_glPushDebugGroup(source,id,length,message); }
  4299.     inline void glPopDebugGroup(void) const { return m_glPopDebugGroup(); }
  4300.     inline void glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar * label) const { return m_glObjectLabel(identifier,name,length,label); }
  4301.     inline void glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei * length, GLchar * label) const { return m_glGetObjectLabel(identifier,name,bufSize,length,label); }
  4302.     inline void glObjectPtrLabel(const void * ptr, GLsizei length, const GLchar * label) const { return m_glObjectPtrLabel(ptr,length,label); }
  4303.     inline void glGetObjectPtrLabel(const void * ptr, GLsizei bufSize, GLsizei * length, GLchar * label) const { return m_glGetObjectPtrLabel(ptr,bufSize,length,label); }
  4304.     inline void glBufferStorage(GLenum target, GLsizeiptr size, const void * data, GLbitfield flags) const { return m_glBufferStorage(target,size,data,flags); }
  4305.     inline void glClearTexImage(GLuint texture, GLint level, GLenum format, GLenum type, const void * data) const { return m_glClearTexImage(texture,level,format,type,data); }
  4306.     inline void glClearTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * data) const { return m_glClearTexSubImage(texture,level,xoffset,yoffset,zoffset,width,height,depth,format,type,data); }
  4307.     inline void glBindBuffersBase(GLenum target, GLuint first, GLsizei count, const GLuint * buffers) const { return m_glBindBuffersBase(target,first,count,buffers); }
  4308.     inline void glBindBuffersRange(GLenum target, GLuint first, GLsizei count, const GLuint * buffers, const GLintptr * offsets, const GLsizeiptr * sizes) const { return m_glBindBuffersRange(target,first,count,buffers,offsets,sizes); }
  4309.     inline void glBindTextures(GLuint first, GLsizei count, const GLuint * textures) const { return m_glBindTextures(first,count,textures); }
  4310.     inline void glBindSamplers(GLuint first, GLsizei count, const GLuint * samplers) const { return m_glBindSamplers(first,count,samplers); }
  4311.     inline void glBindImageTextures(GLuint first, GLsizei count, const GLuint * textures) const { return m_glBindImageTextures(first,count,textures); }
  4312.     inline void glBindVertexBuffers(GLuint first, GLsizei count, const GLuint * buffers, const GLintptr * offsets, const GLsizei * strides) const { return m_glBindVertexBuffers(first,count,buffers,offsets,strides); }
  4313.     inline void glClipControl(GLenum origin, GLenum depth) const { return m_glClipControl(origin,depth); }
  4314.     inline void glCreateTransformFeedbacks(GLsizei n, GLuint * ids) const { return m_glCreateTransformFeedbacks(n,ids); }
  4315.     inline void glTransformFeedbackBufferBase(GLuint xfb, GLuint index, GLuint buffer) const { return m_glTransformFeedbackBufferBase(xfb,index,buffer); }
  4316.     inline void glTransformFeedbackBufferRange(GLuint xfb, GLuint index, GLuint buffer, GLintptr offset, GLsizei size) const { return m_glTransformFeedbackBufferRange(xfb,index,buffer,offset,size); }
  4317.     inline void glGetTransformFeedbackiv(GLuint xfb, GLenum pname, GLint * param) const { return m_glGetTransformFeedbackiv(xfb,pname,param); }
  4318.     inline void glGetTransformFeedbacki_v(GLuint xfb, GLenum pname, GLuint index, GLint * param) const { return m_glGetTransformFeedbacki_v(xfb,pname,index,param); }
  4319.     inline void glGetTransformFeedbacki64_v(GLuint xfb, GLenum pname, GLuint index, GLint64 * param) const { return m_glGetTransformFeedbacki64_v(xfb,pname,index,param); }
  4320.     inline void glCreateBuffers(GLsizei n, GLuint * buffers) const { return m_glCreateBuffers(n,buffers); }
  4321.     inline void glNamedBufferStorage(GLuint buffer, GLsizei size, const void * data, GLbitfield flags) const { return m_glNamedBufferStorage(buffer,size,data,flags); }
  4322.     inline void glNamedBufferData(GLuint buffer, GLsizei size, const void * data, GLenum usage) const { return m_glNamedBufferData(buffer,size,data,usage); }
  4323.     inline void glNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, const void * data) const { return m_glNamedBufferSubData(buffer,offset,size,data); }
  4324.     inline void glCopyNamedBufferSubData(GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizei size) const { return m_glCopyNamedBufferSubData(readBuffer,writeBuffer,readOffset,writeOffset,size); }
  4325.     inline void glClearNamedBufferData(GLuint buffer, GLenum internalformat, GLenum format, GLenum type, const void * data) const { return m_glClearNamedBufferData(buffer,internalformat,format,type,data); }
  4326.     inline void glClearNamedBufferSubData(GLuint buffer, GLenum internalformat, GLintptr offset, GLsizei size, GLenum format, GLenum type, const void * data) const { return m_glClearNamedBufferSubData(buffer,internalformat,offset,size,format,type,data); }
  4327.     inline void * glMapNamedBuffer(GLuint buffer, GLenum access) const { return m_glMapNamedBuffer(buffer,access); }
  4328.     inline void * glMapNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length, GLbitfield access) const { return m_glMapNamedBufferRange(buffer,offset,length,access); }
  4329.     inline GLboolean glUnmapNamedBuffer(GLuint buffer) const { return m_glUnmapNamedBuffer(buffer); }
  4330.     inline void glFlushMappedNamedBufferRange(GLuint buffer, GLintptr offset, GLsizei length) const { return m_glFlushMappedNamedBufferRange(buffer,offset,length); }
  4331.     inline void glGetNamedBufferParameteriv(GLuint buffer, GLenum pname, GLint * params) const { return m_glGetNamedBufferParameteriv(buffer,pname,params); }
  4332.     inline void glGetNamedBufferParameteri64v(GLuint buffer, GLenum pname, GLint64 * params) const { return m_glGetNamedBufferParameteri64v(buffer,pname,params); }
  4333.     inline void glGetNamedBufferPointerv(GLuint buffer, GLenum pname, void * * params) const { return m_glGetNamedBufferPointerv(buffer,pname,params); }
  4334.     inline void glGetNamedBufferSubData(GLuint buffer, GLintptr offset, GLsizei size, void * data) const { return m_glGetNamedBufferSubData(buffer,offset,size,data); }
  4335.     inline void glCreateFramebuffers(GLsizei n, GLuint * framebuffers) const { return m_glCreateFramebuffers(n,framebuffers); }
  4336.     inline void glNamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) const { return m_glNamedFramebufferRenderbuffer(framebuffer,attachment,renderbuffertarget,renderbuffer); }
  4337.     inline void glNamedFramebufferParameteri(GLuint framebuffer, GLenum pname, GLint param) const { return m_glNamedFramebufferParameteri(framebuffer,pname,param); }
  4338.     inline void glNamedFramebufferTexture(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level) const { return m_glNamedFramebufferTexture(framebuffer,attachment,texture,level); }
  4339.     inline void glNamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer) const { return m_glNamedFramebufferTextureLayer(framebuffer,attachment,texture,level,layer); }
  4340.     inline void glNamedFramebufferDrawBuffer(GLuint framebuffer, GLenum buf) const { return m_glNamedFramebufferDrawBuffer(framebuffer,buf); }
  4341.     inline void glNamedFramebufferDrawBuffers(GLuint framebuffer, GLsizei n, const GLenum * bufs) const { return m_glNamedFramebufferDrawBuffers(framebuffer,n,bufs); }
  4342.     inline void glNamedFramebufferReadBuffer(GLuint framebuffer, GLenum src) const { return m_glNamedFramebufferReadBuffer(framebuffer,src); }
  4343.     inline void glInvalidateNamedFramebufferData(GLuint framebuffer, GLsizei numAttachments, const GLenum * attachments) const { return m_glInvalidateNamedFramebufferData(framebuffer,numAttachments,attachments); }
  4344.     inline void glInvalidateNamedFramebufferSubData(GLuint framebuffer, GLsizei numAttachments, const GLenum * attachments, GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glInvalidateNamedFramebufferSubData(framebuffer,numAttachments,attachments,x,y,width,height); }
  4345.     inline void glClearNamedFramebufferiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLint * value) const { return m_glClearNamedFramebufferiv(framebuffer,buffer,drawbuffer,value); }
  4346.     inline void glClearNamedFramebufferuiv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLuint * value) const { return m_glClearNamedFramebufferuiv(framebuffer,buffer,drawbuffer,value); }
  4347.     inline void glClearNamedFramebufferfv(GLuint framebuffer, GLenum buffer, GLint drawbuffer, const GLfloat * value) const { return m_glClearNamedFramebufferfv(framebuffer,buffer,drawbuffer,value); }
  4348.     inline void glClearNamedFramebufferfi(GLuint framebuffer, GLenum buffer, const GLfloat depth, GLint stencil) const { return m_glClearNamedFramebufferfi(framebuffer,buffer,depth,stencil); }
  4349.     inline void glBlitNamedFramebuffer(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) const { return m_glBlitNamedFramebuffer(readFramebuffer,drawFramebuffer,srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter); }
  4350.     inline GLenum glCheckNamedFramebufferStatus(GLuint framebuffer, GLenum target) const { return m_glCheckNamedFramebufferStatus(framebuffer,target); }
  4351.     inline void glGetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname, GLint * param) const { return m_glGetNamedFramebufferParameteriv(framebuffer,pname,param); }
  4352.     inline void glGetNamedFramebufferAttachmentParameteriv(GLuint framebuffer, GLenum attachment, GLenum pname, GLint * params) const { return m_glGetNamedFramebufferAttachmentParameteriv(framebuffer,attachment,pname,params); }
  4353.     inline void glCreateRenderbuffers(GLsizei n, GLuint * renderbuffers) const { return m_glCreateRenderbuffers(n,renderbuffers); }
  4354.     inline void glNamedRenderbufferStorage(GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height) const { return m_glNamedRenderbufferStorage(renderbuffer,internalformat,width,height); }
  4355.     inline void glNamedRenderbufferStorageMultisample(GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) const { return m_glNamedRenderbufferStorageMultisample(renderbuffer,samples,internalformat,width,height); }
  4356.     inline void glGetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname, GLint * params) const { return m_glGetNamedRenderbufferParameteriv(renderbuffer,pname,params); }
  4357.     inline void glCreateTextures(GLenum target, GLsizei n, GLuint * textures) const { return m_glCreateTextures(target,n,textures); }
  4358.     inline void glTextureBuffer(GLuint texture, GLenum internalformat, GLuint buffer) const { return m_glTextureBuffer(texture,internalformat,buffer); }
  4359.     inline void glTextureBufferRange(GLuint texture, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizei size) const { return m_glTextureBufferRange(texture,internalformat,buffer,offset,size); }
  4360.     inline void glTextureStorage1D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width) const { return m_glTextureStorage1D(texture,levels,internalformat,width); }
  4361.     inline void glTextureStorage2D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) const { return m_glTextureStorage2D(texture,levels,internalformat,width,height); }
  4362.     inline void glTextureStorage3D(GLuint texture, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) const { return m_glTextureStorage3D(texture,levels,internalformat,width,height,depth); }
  4363.     inline void glTextureStorage2DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations) const { return m_glTextureStorage2DMultisample(texture,samples,internalformat,width,height,fixedsamplelocations); }
  4364.     inline void glTextureStorage3DMultisample(GLuint texture, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations) const { return m_glTextureStorage3DMultisample(texture,samples,internalformat,width,height,depth,fixedsamplelocations); }
  4365.     inline void glTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void * pixels) const { return m_glTextureSubImage1D(texture,level,xoffset,width,format,type,pixels); }
  4366.     inline void glTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void * pixels) const { return m_glTextureSubImage2D(texture,level,xoffset,yoffset,width,height,format,type,pixels); }
  4367.     inline void glTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void * pixels) const { return m_glTextureSubImage3D(texture,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels); }
  4368.     inline void glCompressedTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void * data) const { return m_glCompressedTextureSubImage1D(texture,level,xoffset,width,format,imageSize,data); }
  4369.     inline void glCompressedTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void * data) const { return m_glCompressedTextureSubImage2D(texture,level,xoffset,yoffset,width,height,format,imageSize,data); }
  4370.     inline void glCompressedTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void * data) const { return m_glCompressedTextureSubImage3D(texture,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data); }
  4371.     inline void glCopyTextureSubImage1D(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width) const { return m_glCopyTextureSubImage1D(texture,level,xoffset,x,y,width); }
  4372.     inline void glCopyTextureSubImage2D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glCopyTextureSubImage2D(texture,level,xoffset,yoffset,x,y,width,height); }
  4373.     inline void glCopyTextureSubImage3D(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) const { return m_glCopyTextureSubImage3D(texture,level,xoffset,yoffset,zoffset,x,y,width,height); }
  4374.     inline void glTextureParameterf(GLuint texture, GLenum pname, GLfloat param) const { return m_glTextureParameterf(texture,pname,param); }
  4375.     inline void glTextureParameterfv(GLuint texture, GLenum pname, const GLfloat * param) const { return m_glTextureParameterfv(texture,pname,param); }
  4376.     inline void glTextureParameteri(GLuint texture, GLenum pname, GLint param) const { return m_glTextureParameteri(texture,pname,param); }
  4377.     inline void glTextureParameterIiv(GLuint texture, GLenum pname, const GLint * params) const { return m_glTextureParameterIiv(texture,pname,params); }
  4378.     inline void glTextureParameterIuiv(GLuint texture, GLenum pname, const GLuint * params) const { return m_glTextureParameterIuiv(texture,pname,params); }
  4379.     inline void glTextureParameteriv(GLuint texture, GLenum pname, const GLint * param) const { return m_glTextureParameteriv(texture,pname,param); }
  4380.     inline void glGenerateTextureMipmap(GLuint texture) const { return m_glGenerateTextureMipmap(texture); }
  4381.     inline void glBindTextureUnit(GLuint unit, GLuint texture) const { return m_glBindTextureUnit(unit,texture); }
  4382.     inline void glGetTextureImage(GLuint texture, GLint level, GLenum format, GLenum type, GLsizei bufSize, void * pixels) const { return m_glGetTextureImage(texture,level,format,type,bufSize,pixels); }
  4383.     inline void glGetCompressedTextureImage(GLuint texture, GLint level, GLsizei bufSize, void * pixels) const { return m_glGetCompressedTextureImage(texture,level,bufSize,pixels); }
  4384.     inline void glGetTextureLevelParameterfv(GLuint texture, GLint level, GLenum pname, GLfloat * params) const { return m_glGetTextureLevelParameterfv(texture,level,pname,params); }
  4385.     inline void glGetTextureLevelParameteriv(GLuint texture, GLint level, GLenum pname, GLint * params) const { return m_glGetTextureLevelParameteriv(texture,level,pname,params); }
  4386.     inline void glGetTextureParameterfv(GLuint texture, GLenum pname, GLfloat * params) const { return m_glGetTextureParameterfv(texture,pname,params); }
  4387.     inline void glGetTextureParameterIiv(GLuint texture, GLenum pname, GLint * params) const { return m_glGetTextureParameterIiv(texture,pname,params); }
  4388.     inline void glGetTextureParameterIuiv(GLuint texture, GLenum pname, GLuint * params) const { return m_glGetTextureParameterIuiv(texture,pname,params); }
  4389.     inline void glGetTextureParameteriv(GLuint texture, GLenum pname, GLint * params) const { return m_glGetTextureParameteriv(texture,pname,params); }
  4390.     inline void glCreateVertexArrays(GLsizei n, GLuint * arrays) const { return m_glCreateVertexArrays(n,arrays); }
  4391.     inline void glDisableVertexArrayAttrib(GLuint vaobj, GLuint index) const { return m_glDisableVertexArrayAttrib(vaobj,index); }
  4392.     inline void glEnableVertexArrayAttrib(GLuint vaobj, GLuint index) const { return m_glEnableVertexArrayAttrib(vaobj,index); }
  4393.     inline void glVertexArrayElementBuffer(GLuint vaobj, GLuint buffer) const { return m_glVertexArrayElementBuffer(vaobj,buffer); }
  4394.     inline void glVertexArrayVertexBuffer(GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride) const { return m_glVertexArrayVertexBuffer(vaobj,bindingindex,buffer,offset,stride); }
  4395.     inline void glVertexArrayVertexBuffers(GLuint vaobj, GLuint first, GLsizei count, const GLuint * buffers, const GLintptr * offsets, const GLsizei * strides) const { return m_glVertexArrayVertexBuffers(vaobj,first,count,buffers,offsets,strides); }
  4396.     inline void glVertexArrayAttribBinding(GLuint vaobj, GLuint attribindex, GLuint bindingindex) const { return m_glVertexArrayAttribBinding(vaobj,attribindex,bindingindex); }
  4397.     inline void glVertexArrayAttribFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset) const { return m_glVertexArrayAttribFormat(vaobj,attribindex,size,type,normalized,relativeoffset); }
  4398.     inline void glVertexArrayAttribIFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) const { return m_glVertexArrayAttribIFormat(vaobj,attribindex,size,type,relativeoffset); }
  4399.     inline void glVertexArrayAttribLFormat(GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset) const { return m_glVertexArrayAttribLFormat(vaobj,attribindex,size,type,relativeoffset); }
  4400.     inline void glVertexArrayBindingDivisor(GLuint vaobj, GLuint bindingindex, GLuint divisor) const { return m_glVertexArrayBindingDivisor(vaobj,bindingindex,divisor); }
  4401.     inline void glGetVertexArrayiv(GLuint vaobj, GLenum pname, GLint * param) const { return m_glGetVertexArrayiv(vaobj,pname,param); }
  4402.     inline void glGetVertexArrayIndexediv(GLuint vaobj, GLuint index, GLenum pname, GLint * param) const { return m_glGetVertexArrayIndexediv(vaobj,index,pname,param); }
  4403.     inline void glGetVertexArrayIndexed64iv(GLuint vaobj, GLuint index, GLenum pname, GLint64 * param) const { return m_glGetVertexArrayIndexed64iv(vaobj,index,pname,param); }
  4404.     inline void glCreateSamplers(GLsizei n, GLuint * samplers) const { return m_glCreateSamplers(n,samplers); }
  4405.     inline void glCreateProgramPipelines(GLsizei n, GLuint * pipelines) const { return m_glCreateProgramPipelines(n,pipelines); }
  4406.     inline void glCreateQueries(GLenum target, GLsizei n, GLuint * ids) const { return m_glCreateQueries(target,n,ids); }
  4407.     inline void glGetQueryBufferObjecti64v(GLuint id, GLuint buffer, GLenum pname, GLintptr offset) const { return m_glGetQueryBufferObjecti64v(id,buffer,pname,offset); }
  4408.     inline void glGetQueryBufferObjectiv(GLuint id, GLuint buffer, GLenum pname, GLintptr offset) const { return m_glGetQueryBufferObjectiv(id,buffer,pname,offset); }
  4409.     inline void glGetQueryBufferObjectui64v(GLuint id, GLuint buffer, GLenum pname, GLintptr offset) const { return m_glGetQueryBufferObjectui64v(id,buffer,pname,offset); }
  4410.     inline void glGetQueryBufferObjectuiv(GLuint id, GLuint buffer, GLenum pname, GLintptr offset) const { return m_glGetQueryBufferObjectuiv(id,buffer,pname,offset); }
  4411.     inline void glMemoryBarrierByRegion(GLbitfield barriers) const { return m_glMemoryBarrierByRegion(barriers); }
  4412.     inline void glGetTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLsizei bufSize, void * pixels) const { return m_glGetTextureSubImage(texture,level,xoffset,yoffset,zoffset,width,height,depth,format,type,bufSize,pixels); }
  4413.     inline void glGetCompressedTextureSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei bufSize, void * pixels) const { return m_glGetCompressedTextureSubImage(texture,level,xoffset,yoffset,zoffset,width,height,depth,bufSize,pixels); }
  4414.     inline GLenum glGetGraphicsResetStatus(void) const { return m_glGetGraphicsResetStatus(); }
  4415.     inline void glGetnCompressedTexImage(GLenum target, GLint lod, GLsizei bufSize, void * pixels) const { return m_glGetnCompressedTexImage(target,lod,bufSize,pixels); }
  4416.     inline void glGetnTexImage(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void * pixels) const { return m_glGetnTexImage(target,level,format,type,bufSize,pixels); }
  4417.     inline void glGetnUniformdv(GLuint program, GLint location, GLsizei bufSize, GLdouble * params) const { return m_glGetnUniformdv(program,location,bufSize,params); }
  4418.     inline void glGetnUniformfv(GLuint program, GLint location, GLsizei bufSize, GLfloat * params) const { return m_glGetnUniformfv(program,location,bufSize,params); }
  4419.     inline void glGetnUniformiv(GLuint program, GLint location, GLsizei bufSize, GLint * params) const { return m_glGetnUniformiv(program,location,bufSize,params); }
  4420.     inline void glGetnUniformuiv(GLuint program, GLint location, GLsizei bufSize, GLuint * params) const { return m_glGetnUniformuiv(program,location,bufSize,params); }
  4421.     inline void glReadnPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void * data) const { return m_glReadnPixels(x,y,width,height,format,type,bufSize,data); }
  4422.     inline void glTextureBarrier(void) const { return m_glTextureBarrier(); }
  4423.     inline GLuint64 glGetTextureHandleARB(GLuint texture) const { return m_glGetTextureHandleARB(texture); }
  4424.     inline GLuint64 glGetTextureSamplerHandleARB(GLuint texture, GLuint sampler) const { return m_glGetTextureSamplerHandleARB(texture,sampler); }
  4425.     inline void glMakeTextureHandleResidentARB(GLuint64 handle) const { return m_glMakeTextureHandleResidentARB(handle); }
  4426.     inline void glMakeTextureHandleNonResidentARB(GLuint64 handle) const { return m_glMakeTextureHandleNonResidentARB(handle); }
  4427.     inline GLuint64 glGetImageHandleARB(GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format) const { return m_glGetImageHandleARB(texture,level,layered,layer,format); }
  4428.     inline void glMakeImageHandleResidentARB(GLuint64 handle, GLenum access) const { return m_glMakeImageHandleResidentARB(handle,access); }
  4429.     inline void glMakeImageHandleNonResidentARB(GLuint64 handle) const { return m_glMakeImageHandleNonResidentARB(handle); }
  4430.     inline void glUniformHandleui64ARB(GLint location, GLuint64 value) const { return m_glUniformHandleui64ARB(location,value); }
  4431.     inline void glUniformHandleui64vARB(GLint location, GLsizei count, const GLuint64 * value) const { return m_glUniformHandleui64vARB(location,count,value); }
  4432.     inline void glProgramUniformHandleui64ARB(GLuint program, GLint location, GLuint64 value) const { return m_glProgramUniformHandleui64ARB(program,location,value); }
  4433.     inline void glProgramUniformHandleui64vARB(GLuint program, GLint location, GLsizei count, const GLuint64 * values) const { return m_glProgramUniformHandleui64vARB(program,location,count,values); }
  4434.     inline GLboolean glIsTextureHandleResidentARB(GLuint64 handle) const { return m_glIsTextureHandleResidentARB(handle); }
  4435.     inline GLboolean glIsImageHandleResidentARB(GLuint64 handle) const { return m_glIsImageHandleResidentARB(handle); }
  4436.     inline void glVertexAttribL1ui64ARB(GLuint index, GLuint64EXT x) const { return m_glVertexAttribL1ui64ARB(index,x); }
  4437.     inline void glVertexAttribL1ui64vARB(GLuint index, const GLuint64EXT * v) const { return m_glVertexAttribL1ui64vARB(index,v); }
  4438.     inline void glGetVertexAttribLui64vARB(GLuint index, GLenum pname, GLuint64EXT * params) const { return m_glGetVertexAttribLui64vARB(index,pname,params); }
  4439.     inline GLsync glCreateSyncFromCLeventARB(struct _cl_context * context, struct _cl_event * event, GLbitfield flags) const { return m_glCreateSyncFromCLeventARB(context,event,flags); }
  4440.     inline void glDispatchComputeGroupSizeARB(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z, GLuint group_size_x, GLuint group_size_y, GLuint group_size_z) const { return m_glDispatchComputeGroupSizeARB(num_groups_x,num_groups_y,num_groups_z,group_size_x,group_size_y,group_size_z); }
  4441.     inline void glDebugMessageControlARB(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint * ids, GLboolean enabled) const { return m_glDebugMessageControlARB(source,type,severity,count,ids,enabled); }
  4442.     inline void glDebugMessageInsertARB(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar * buf) const { return m_glDebugMessageInsertARB(source,type,id,severity,length,buf); }
  4443.     inline void glDebugMessageCallbackARB(GLDEBUGPROCARB callback, const void * userParam) const { return m_glDebugMessageCallbackARB(callback,userParam); }
  4444.     inline GLuint glGetDebugMessageLogARB(GLuint count, GLsizei bufSize, GLenum * sources, GLenum * types, GLuint * ids, GLenum * severities, GLsizei * lengths, GLchar * messageLog) const { return m_glGetDebugMessageLogARB(count,bufSize,sources,types,ids,severities,lengths,messageLog); }
  4445.     inline void glBlendEquationiARB(GLuint buf, GLenum mode) const { return m_glBlendEquationiARB(buf,mode); }
  4446.     inline void glBlendEquationSeparateiARB(GLuint buf, GLenum modeRGB, GLenum modeAlpha) const { return m_glBlendEquationSeparateiARB(buf,modeRGB,modeAlpha); }
  4447.     inline void glBlendFunciARB(GLuint buf, GLenum src, GLenum dst) const { return m_glBlendFunciARB(buf,src,dst); }
  4448.     inline void glBlendFuncSeparateiARB(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) const { return m_glBlendFuncSeparateiARB(buf,srcRGB,dstRGB,srcAlpha,dstAlpha); }
  4449.     inline void glMultiDrawArraysIndirectCountARB(GLenum mode, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) const { return m_glMultiDrawArraysIndirectCountARB(mode,indirect,drawcount,maxdrawcount,stride); }
  4450.     inline void glMultiDrawElementsIndirectCountARB(GLenum mode, GLenum type, GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride) const { return m_glMultiDrawElementsIndirectCountARB(mode,type,indirect,drawcount,maxdrawcount,stride); }
  4451.     inline GLenum glGetGraphicsResetStatusARB(void) const { return m_glGetGraphicsResetStatusARB(); }
  4452.     inline void glGetnTexImageARB(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void * img) const { return m_glGetnTexImageARB(target,level,format,type,bufSize,img); }
  4453.     inline void glReadnPixelsARB(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void * data) const { return m_glReadnPixelsARB(x,y,width,height,format,type,bufSize,data); }
  4454.     inline void glGetnCompressedTexImageARB(GLenum target, GLint lod, GLsizei bufSize, void * img) const { return m_glGetnCompressedTexImageARB(target,lod,bufSize,img); }
  4455.     inline void glGetnUniformfvARB(GLuint program, GLint location, GLsizei bufSize, GLfloat * params) const { return m_glGetnUniformfvARB(program,location,bufSize,params); }
  4456.     inline void glGetnUniformivARB(GLuint program, GLint location, GLsizei bufSize, GLint * params) const { return m_glGetnUniformivARB(program,location,bufSize,params); }
  4457.     inline void glGetnUniformuivARB(GLuint program, GLint location, GLsizei bufSize, GLuint * params) const { return m_glGetnUniformuivARB(program,location,bufSize,params); }
  4458.     inline void glGetnUniformdvARB(GLuint program, GLint location, GLsizei bufSize, GLdouble * params) const { return m_glGetnUniformdvARB(program,location,bufSize,params); }
  4459.     inline void glMinSampleShadingARB(GLfloat value) const { return m_glMinSampleShadingARB(value); }
  4460.     inline void glNamedStringARB(GLenum type, GLint namelen, const GLchar * name, GLint stringlen, const GLchar * string) const { return m_glNamedStringARB(type,namelen,name,stringlen,string); }
  4461.     inline void glDeleteNamedStringARB(GLint namelen, const GLchar * name) const { return m_glDeleteNamedStringARB(namelen,name); }
  4462.     inline void glCompileShaderIncludeARB(GLuint shader, GLsizei count, const GLchar * const * path, const GLint * length) const { return m_glCompileShaderIncludeARB(shader,count,path,length); }
  4463.     inline GLboolean glIsNamedStringARB(GLint namelen, const GLchar * name) const { return m_glIsNamedStringARB(namelen,name); }
  4464.     inline void glGetNamedStringARB(GLint namelen, const GLchar * name, GLsizei bufSize, GLint * stringlen, GLchar * string) const { return m_glGetNamedStringARB(namelen,name,bufSize,stringlen,string); }
  4465.     inline void glGetNamedStringivARB(GLint namelen, const GLchar * name, GLenum pname, GLint * params) const { return m_glGetNamedStringivARB(namelen,name,pname,params); }
  4466.     inline void glBufferPageCommitmentARB(GLenum target, GLintptr offset, GLsizeiptr size, GLboolean commit) const { return m_glBufferPageCommitmentARB(target,offset,size,commit); }
  4467.     inline void glNamedBufferPageCommitmentEXT(GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit) const { return m_glNamedBufferPageCommitmentEXT(buffer,offset,size,commit); }
  4468.     inline void glNamedBufferPageCommitmentARB(GLuint buffer, GLintptr offset, GLsizeiptr size, GLboolean commit) const { return m_glNamedBufferPageCommitmentARB(buffer,offset,size,commit); }
  4469.     inline void glTexPageCommitmentARB(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean resident) const { return m_glTexPageCommitmentARB(target,level,xoffset,yoffset,zoffset,width,height,depth,resident); }
  4470. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement