Skip to content

Instantly share code, notes, and snippets.

@dasifefe

dasifefe/gl.rs Secret

Last active April 13, 2020 23:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dasifefe/f4602b4f3e1e703ba753eee041ad013c to your computer and use it in GitHub Desktop.
Save dasifefe/f4602b4f3e1e703ba753eee041ad013c to your computer and use it in GitHub Desktop.
extern crate core;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_BUFFER_BIT: u32 = 0x00000100;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BUFFER_BIT: u32 = 0x00000400;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_BUFFER_BIT: u32 = 0x00004000;
#[allow(dead_code, non_upper_case_globals)]
pub const FALSE: u32 = 0;
#[allow(dead_code, non_upper_case_globals)]
pub const TRUE: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const POINTS: u32 = 0x0000;
#[allow(dead_code, non_upper_case_globals)]
pub const LINES: u32 = 0x0001;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_LOOP: u32 = 0x0002;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_STRIP: u32 = 0x0003;
#[allow(dead_code, non_upper_case_globals)]
pub const TRIANGLES: u32 = 0x0004;
#[allow(dead_code, non_upper_case_globals)]
pub const TRIANGLE_STRIP: u32 = 0x0005;
#[allow(dead_code, non_upper_case_globals)]
pub const TRIANGLE_FAN: u32 = 0x0006;
#[allow(dead_code, non_upper_case_globals)]
pub const QUADS: u32 = 0x0007;
#[allow(dead_code, non_upper_case_globals)]
pub const NEVER: u32 = 0x0200;
#[allow(dead_code, non_upper_case_globals)]
pub const LESS: u32 = 0x0201;
#[allow(dead_code, non_upper_case_globals)]
pub const EQUAL: u32 = 0x0202;
#[allow(dead_code, non_upper_case_globals)]
pub const LEQUAL: u32 = 0x0203;
#[allow(dead_code, non_upper_case_globals)]
pub const GREATER: u32 = 0x0204;
#[allow(dead_code, non_upper_case_globals)]
pub const NOTEQUAL: u32 = 0x0205;
#[allow(dead_code, non_upper_case_globals)]
pub const GEQUAL: u32 = 0x0206;
#[allow(dead_code, non_upper_case_globals)]
pub const ALWAYS: u32 = 0x0207;
#[allow(dead_code, non_upper_case_globals)]
pub const ZERO: u32 = 0;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const SRC_COLOR: u32 = 0x0300;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_SRC_COLOR: u32 = 0x0301;
#[allow(dead_code, non_upper_case_globals)]
pub const SRC_ALPHA: u32 = 0x0302;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_SRC_ALPHA: u32 = 0x0303;
#[allow(dead_code, non_upper_case_globals)]
pub const DST_ALPHA: u32 = 0x0304;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_DST_ALPHA: u32 = 0x0305;
#[allow(dead_code, non_upper_case_globals)]
pub const DST_COLOR: u32 = 0x0306;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_DST_COLOR: u32 = 0x0307;
#[allow(dead_code, non_upper_case_globals)]
pub const SRC_ALPHA_SATURATE: u32 = 0x0308;
#[allow(dead_code, non_upper_case_globals)]
pub const NONE: u32 = 0;
#[allow(dead_code, non_upper_case_globals)]
pub const FRONT_LEFT: u32 = 0x0400;
#[allow(dead_code, non_upper_case_globals)]
pub const FRONT_RIGHT: u32 = 0x0401;
#[allow(dead_code, non_upper_case_globals)]
pub const BACK_LEFT: u32 = 0x0402;
#[allow(dead_code, non_upper_case_globals)]
pub const BACK_RIGHT: u32 = 0x0403;
#[allow(dead_code, non_upper_case_globals)]
pub const FRONT: u32 = 0x0404;
#[allow(dead_code, non_upper_case_globals)]
pub const BACK: u32 = 0x0405;
#[allow(dead_code, non_upper_case_globals)]
pub const LEFT: u32 = 0x0406;
#[allow(dead_code, non_upper_case_globals)]
pub const RIGHT: u32 = 0x0407;
#[allow(dead_code, non_upper_case_globals)]
pub const FRONT_AND_BACK: u32 = 0x0408;
#[allow(dead_code, non_upper_case_globals)]
pub const NO_ERROR: u32 = 0;
#[allow(dead_code, non_upper_case_globals)]
pub const INVALID_ENUM: u32 = 0x0500;
#[allow(dead_code, non_upper_case_globals)]
pub const INVALID_VALUE: u32 = 0x0501;
#[allow(dead_code, non_upper_case_globals)]
pub const INVALID_OPERATION: u32 = 0x0502;
#[allow(dead_code, non_upper_case_globals)]
pub const OUT_OF_MEMORY: u32 = 0x0505;
#[allow(dead_code, non_upper_case_globals)]
pub const CW: u32 = 0x0900;
#[allow(dead_code, non_upper_case_globals)]
pub const CCW: u32 = 0x0901;
#[allow(dead_code, non_upper_case_globals)]
pub const POINT_SIZE: u32 = 0x0B11;
#[allow(dead_code, non_upper_case_globals)]
pub const POINT_SIZE_RANGE: u32 = 0x0B12;
#[allow(dead_code, non_upper_case_globals)]
pub const POINT_SIZE_GRANULARITY: u32 = 0x0B13;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_SMOOTH: u32 = 0x0B20;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_WIDTH: u32 = 0x0B21;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_WIDTH_RANGE: u32 = 0x0B22;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_WIDTH_GRANULARITY: u32 = 0x0B23;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_MODE: u32 = 0x0B40;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_SMOOTH: u32 = 0x0B41;
#[allow(dead_code, non_upper_case_globals)]
pub const CULL_FACE: u32 = 0x0B44;
#[allow(dead_code, non_upper_case_globals)]
pub const CULL_FACE_MODE: u32 = 0x0B45;
#[allow(dead_code, non_upper_case_globals)]
pub const FRONT_FACE: u32 = 0x0B46;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_RANGE: u32 = 0x0B70;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_TEST: u32 = 0x0B71;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_WRITEMASK: u32 = 0x0B72;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_CLEAR_VALUE: u32 = 0x0B73;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_FUNC: u32 = 0x0B74;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_TEST: u32 = 0x0B90;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_CLEAR_VALUE: u32 = 0x0B91;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_FUNC: u32 = 0x0B92;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_VALUE_MASK: u32 = 0x0B93;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_FAIL: u32 = 0x0B94;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_PASS_DEPTH_FAIL: u32 = 0x0B95;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_PASS_DEPTH_PASS: u32 = 0x0B96;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_REF: u32 = 0x0B97;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_WRITEMASK: u32 = 0x0B98;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEWPORT: u32 = 0x0BA2;
#[allow(dead_code, non_upper_case_globals)]
pub const DITHER: u32 = 0x0BD0;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_DST: u32 = 0x0BE0;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_SRC: u32 = 0x0BE1;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND: u32 = 0x0BE2;
#[allow(dead_code, non_upper_case_globals)]
pub const LOGIC_OP_MODE: u32 = 0x0BF0;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER: u32 = 0x0C01;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_BUFFER: u32 = 0x0C02;
#[allow(dead_code, non_upper_case_globals)]
pub const SCISSOR_BOX: u32 = 0x0C10;
#[allow(dead_code, non_upper_case_globals)]
pub const SCISSOR_TEST: u32 = 0x0C11;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_CLEAR_VALUE: u32 = 0x0C22;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_WRITEMASK: u32 = 0x0C23;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLEBUFFER: u32 = 0x0C32;
#[allow(dead_code, non_upper_case_globals)]
pub const STEREO: u32 = 0x0C33;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_SMOOTH_HINT: u32 = 0x0C52;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_SMOOTH_HINT: u32 = 0x0C53;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_SWAP_BYTES: u32 = 0x0CF0;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_LSB_FIRST: u32 = 0x0CF1;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_ROW_LENGTH: u32 = 0x0CF2;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_SKIP_ROWS: u32 = 0x0CF3;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_SKIP_PIXELS: u32 = 0x0CF4;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_ALIGNMENT: u32 = 0x0CF5;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_SWAP_BYTES: u32 = 0x0D00;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_LSB_FIRST: u32 = 0x0D01;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_ROW_LENGTH: u32 = 0x0D02;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_SKIP_ROWS: u32 = 0x0D03;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_SKIP_PIXELS: u32 = 0x0D04;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_ALIGNMENT: u32 = 0x0D05;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TEXTURE_SIZE: u32 = 0x0D33;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VIEWPORT_DIMS: u32 = 0x0D3A;
#[allow(dead_code, non_upper_case_globals)]
pub const SUBPIXEL_BITS: u32 = 0x0D50;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_1D: u32 = 0x0DE0;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_2D: u32 = 0x0DE1;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_WIDTH: u32 = 0x1000;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_HEIGHT: u32 = 0x1001;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BORDER_COLOR: u32 = 0x1004;
#[allow(dead_code, non_upper_case_globals)]
pub const DONT_CARE: u32 = 0x1100;
#[allow(dead_code, non_upper_case_globals)]
pub const FASTEST: u32 = 0x1101;
#[allow(dead_code, non_upper_case_globals)]
pub const NICEST: u32 = 0x1102;
#[allow(dead_code, non_upper_case_globals)]
pub const BYTE: u32 = 0x1400;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_BYTE: u32 = 0x1401;
#[allow(dead_code, non_upper_case_globals)]
pub const SHORT: u32 = 0x1402;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_SHORT: u32 = 0x1403;
#[allow(dead_code, non_upper_case_globals)]
pub const INT: u32 = 0x1404;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT: u32 = 0x1405;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT: u32 = 0x1406;
#[allow(dead_code, non_upper_case_globals)]
pub const STACK_OVERFLOW: u32 = 0x0503;
#[allow(dead_code, non_upper_case_globals)]
pub const STACK_UNDERFLOW: u32 = 0x0504;
#[allow(dead_code, non_upper_case_globals)]
pub const CLEAR: u32 = 0x1500;
#[allow(dead_code, non_upper_case_globals)]
pub const AND: u32 = 0x1501;
#[allow(dead_code, non_upper_case_globals)]
pub const AND_REVERSE: u32 = 0x1502;
#[allow(dead_code, non_upper_case_globals)]
pub const COPY: u32 = 0x1503;
#[allow(dead_code, non_upper_case_globals)]
pub const AND_INVERTED: u32 = 0x1504;
#[allow(dead_code, non_upper_case_globals)]
pub const NOOP: u32 = 0x1505;
#[allow(dead_code, non_upper_case_globals)]
pub const XOR: u32 = 0x1506;
#[allow(dead_code, non_upper_case_globals)]
pub const OR: u32 = 0x1507;
#[allow(dead_code, non_upper_case_globals)]
pub const NOR: u32 = 0x1508;
#[allow(dead_code, non_upper_case_globals)]
pub const EQUIV: u32 = 0x1509;
#[allow(dead_code, non_upper_case_globals)]
pub const INVERT: u32 = 0x150A;
#[allow(dead_code, non_upper_case_globals)]
pub const OR_REVERSE: u32 = 0x150B;
#[allow(dead_code, non_upper_case_globals)]
pub const COPY_INVERTED: u32 = 0x150C;
#[allow(dead_code, non_upper_case_globals)]
pub const OR_INVERTED: u32 = 0x150D;
#[allow(dead_code, non_upper_case_globals)]
pub const NAND: u32 = 0x150E;
#[allow(dead_code, non_upper_case_globals)]
pub const SET: u32 = 0x150F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE: u32 = 0x1702;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR: u32 = 0x1800;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH: u32 = 0x1801;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL: u32 = 0x1802;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_INDEX: u32 = 0x1901;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_COMPONENT: u32 = 0x1902;
#[allow(dead_code, non_upper_case_globals)]
pub const RED: u32 = 0x1903;
#[allow(dead_code, non_upper_case_globals)]
pub const GREEN: u32 = 0x1904;
#[allow(dead_code, non_upper_case_globals)]
pub const BLUE: u32 = 0x1905;
#[allow(dead_code, non_upper_case_globals)]
pub const ALPHA: u32 = 0x1906;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB: u32 = 0x1907;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA: u32 = 0x1908;
#[allow(dead_code, non_upper_case_globals)]
pub const POINT: u32 = 0x1B00;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE: u32 = 0x1B01;
#[allow(dead_code, non_upper_case_globals)]
pub const FILL: u32 = 0x1B02;
#[allow(dead_code, non_upper_case_globals)]
pub const KEEP: u32 = 0x1E00;
#[allow(dead_code, non_upper_case_globals)]
pub const REPLACE: u32 = 0x1E01;
#[allow(dead_code, non_upper_case_globals)]
pub const INCR: u32 = 0x1E02;
#[allow(dead_code, non_upper_case_globals)]
pub const DECR: u32 = 0x1E03;
#[allow(dead_code, non_upper_case_globals)]
pub const VENDOR: u32 = 0x1F00;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERER: u32 = 0x1F01;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION: u32 = 0x1F02;
#[allow(dead_code, non_upper_case_globals)]
pub const EXTENSIONS: u32 = 0x1F03;
#[allow(dead_code, non_upper_case_globals)]
pub const NEAREST: u32 = 0x2600;
#[allow(dead_code, non_upper_case_globals)]
pub const LINEAR: u32 = 0x2601;
#[allow(dead_code, non_upper_case_globals)]
pub const NEAREST_MIPMAP_NEAREST: u32 = 0x2700;
#[allow(dead_code, non_upper_case_globals)]
pub const LINEAR_MIPMAP_NEAREST: u32 = 0x2701;
#[allow(dead_code, non_upper_case_globals)]
pub const NEAREST_MIPMAP_LINEAR: u32 = 0x2702;
#[allow(dead_code, non_upper_case_globals)]
pub const LINEAR_MIPMAP_LINEAR: u32 = 0x2703;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_MAG_FILTER: u32 = 0x2800;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_MIN_FILTER: u32 = 0x2801;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_WRAP_S: u32 = 0x2802;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_WRAP_T: u32 = 0x2803;
#[allow(dead_code, non_upper_case_globals)]
pub const REPEAT: u32 = 0x2901;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_1_1: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_LOGIC_OP: u32 = 0x0BF2;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_OFFSET_UNITS: u32 = 0x2A00;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_OFFSET_POINT: u32 = 0x2A01;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_OFFSET_LINE: u32 = 0x2A02;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_OFFSET_FILL: u32 = 0x8037;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_OFFSET_FACTOR: u32 = 0x8038;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_1D: u32 = 0x8068;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_2D: u32 = 0x8069;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_INTERNAL_FORMAT: u32 = 0x1003;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_RED_SIZE: u32 = 0x805C;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_GREEN_SIZE: u32 = 0x805D;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BLUE_SIZE: u32 = 0x805E;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_ALPHA_SIZE: u32 = 0x805F;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLE: u32 = 0x140A;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_1D: u32 = 0x8063;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_2D: u32 = 0x8064;
#[allow(dead_code, non_upper_case_globals)]
pub const R3_G3_B2: u32 = 0x2A10;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB4: u32 = 0x804F;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB5: u32 = 0x8050;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB8: u32 = 0x8051;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB10: u32 = 0x8052;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB12: u32 = 0x8053;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB16: u32 = 0x8054;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA2: u32 = 0x8055;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA4: u32 = 0x8056;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB5_A1: u32 = 0x8057;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA8: u32 = 0x8058;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB10_A2: u32 = 0x8059;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA12: u32 = 0x805A;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA16: u32 = 0x805B;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ARRAY: u32 = 0x8074;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_1_2: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_BYTE_3_3_2: u32 = 0x8032;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_SHORT_4_4_4_4: u32 = 0x8033;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_SHORT_5_5_5_1: u32 = 0x8034;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_8_8_8_8: u32 = 0x8035;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_10_10_10_2: u32 = 0x8036;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_3D: u32 = 0x806A;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_SKIP_IMAGES: u32 = 0x806B;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_IMAGE_HEIGHT: u32 = 0x806C;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_SKIP_IMAGES: u32 = 0x806D;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_IMAGE_HEIGHT: u32 = 0x806E;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_3D: u32 = 0x806F;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_3D: u32 = 0x8070;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_DEPTH: u32 = 0x8071;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_WRAP_R: u32 = 0x8072;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_3D_TEXTURE_SIZE: u32 = 0x8073;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_BYTE_2_3_3_REV: u32 = 0x8362;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_SHORT_5_6_5: u32 = 0x8363;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_SHORT_5_6_5_REV: u32 = 0x8364;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_SHORT_4_4_4_4_REV: u32 = 0x8365;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_SHORT_1_5_5_5_REV: u32 = 0x8366;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_8_8_8_8_REV: u32 = 0x8367;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_2_10_10_10_REV: u32 = 0x8368;
#[allow(dead_code, non_upper_case_globals)]
pub const BGR: u32 = 0x80E0;
#[allow(dead_code, non_upper_case_globals)]
pub const BGRA: u32 = 0x80E1;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_ELEMENTS_VERTICES: u32 = 0x80E8;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_ELEMENTS_INDICES: u32 = 0x80E9;
#[allow(dead_code, non_upper_case_globals)]
pub const CLAMP_TO_EDGE: u32 = 0x812F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_MIN_LOD: u32 = 0x813A;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_MAX_LOD: u32 = 0x813B;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BASE_LEVEL: u32 = 0x813C;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_MAX_LEVEL: u32 = 0x813D;
#[allow(dead_code, non_upper_case_globals)]
pub const SMOOTH_POINT_SIZE_RANGE: u32 = 0x0B12;
#[allow(dead_code, non_upper_case_globals)]
pub const SMOOTH_POINT_SIZE_GRANULARITY: u32 = 0x0B13;
#[allow(dead_code, non_upper_case_globals)]
pub const SMOOTH_LINE_WIDTH_RANGE: u32 = 0x0B22;
#[allow(dead_code, non_upper_case_globals)]
pub const SMOOTH_LINE_WIDTH_GRANULARITY: u32 = 0x0B23;
#[allow(dead_code, non_upper_case_globals)]
pub const ALIASED_LINE_WIDTH_RANGE: u32 = 0x846E;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_1_3: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE0: u32 = 0x84C0;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE1: u32 = 0x84C1;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE2: u32 = 0x84C2;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE3: u32 = 0x84C3;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE4: u32 = 0x84C4;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE5: u32 = 0x84C5;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE6: u32 = 0x84C6;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE7: u32 = 0x84C7;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE8: u32 = 0x84C8;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE9: u32 = 0x84C9;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE10: u32 = 0x84CA;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE11: u32 = 0x84CB;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE12: u32 = 0x84CC;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE13: u32 = 0x84CD;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE14: u32 = 0x84CE;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE15: u32 = 0x84CF;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE16: u32 = 0x84D0;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE17: u32 = 0x84D1;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE18: u32 = 0x84D2;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE19: u32 = 0x84D3;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE20: u32 = 0x84D4;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE21: u32 = 0x84D5;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE22: u32 = 0x84D6;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE23: u32 = 0x84D7;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE24: u32 = 0x84D8;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE25: u32 = 0x84D9;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE26: u32 = 0x84DA;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE27: u32 = 0x84DB;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE28: u32 = 0x84DC;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE29: u32 = 0x84DD;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE30: u32 = 0x84DE;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE31: u32 = 0x84DF;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_TEXTURE: u32 = 0x84E0;
#[allow(dead_code, non_upper_case_globals)]
pub const MULTISAMPLE: u32 = 0x809D;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_ALPHA_TO_COVERAGE: u32 = 0x809E;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_ALPHA_TO_ONE: u32 = 0x809F;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_COVERAGE: u32 = 0x80A0;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_BUFFERS: u32 = 0x80A8;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLES: u32 = 0x80A9;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_COVERAGE_VALUE: u32 = 0x80AA;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_COVERAGE_INVERT: u32 = 0x80AB;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP: u32 = 0x8513;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_CUBE_MAP: u32 = 0x8514;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_POSITIVE_X: u32 = 0x8515;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_NEGATIVE_X: u32 = 0x8516;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_POSITIVE_Y: u32 = 0x8517;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_NEGATIVE_Y: u32 = 0x8518;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_POSITIVE_Z: u32 = 0x8519;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_NEGATIVE_Z: u32 = 0x851A;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_CUBE_MAP: u32 = 0x851B;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_CUBE_MAP_TEXTURE_SIZE: u32 = 0x851C;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGB: u32 = 0x84ED;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGBA: u32 = 0x84EE;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPRESSION_HINT: u32 = 0x84EF;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPRESSED_IMAGE_SIZE: u32 = 0x86A0;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPRESSED: u32 = 0x86A1;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_COMPRESSED_TEXTURE_FORMATS: u32 = 0x86A2;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_TEXTURE_FORMATS: u32 = 0x86A3;
#[allow(dead_code, non_upper_case_globals)]
pub const CLAMP_TO_BORDER: u32 = 0x812D;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_1_4: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_DST_RGB: u32 = 0x80C8;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_SRC_RGB: u32 = 0x80C9;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_DST_ALPHA: u32 = 0x80CA;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_SRC_ALPHA: u32 = 0x80CB;
#[allow(dead_code, non_upper_case_globals)]
pub const POINT_FADE_THRESHOLD_SIZE: u32 = 0x8128;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_COMPONENT16: u32 = 0x81A5;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_COMPONENT24: u32 = 0x81A6;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_COMPONENT32: u32 = 0x81A7;
#[allow(dead_code, non_upper_case_globals)]
pub const MIRRORED_REPEAT: u32 = 0x8370;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TEXTURE_LOD_BIAS: u32 = 0x84FD;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_LOD_BIAS: u32 = 0x8501;
#[allow(dead_code, non_upper_case_globals)]
pub const INCR_WRAP: u32 = 0x8507;
#[allow(dead_code, non_upper_case_globals)]
pub const DECR_WRAP: u32 = 0x8508;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_DEPTH_SIZE: u32 = 0x884A;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPARE_MODE: u32 = 0x884C;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPARE_FUNC: u32 = 0x884D;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_COLOR: u32 = 0x8005;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_EQUATION: u32 = 0x8009;
#[allow(dead_code, non_upper_case_globals)]
pub const CONSTANT_COLOR: u32 = 0x8001;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_CONSTANT_COLOR: u32 = 0x8002;
#[allow(dead_code, non_upper_case_globals)]
pub const CONSTANT_ALPHA: u32 = 0x8003;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_CONSTANT_ALPHA: u32 = 0x8004;
#[allow(dead_code, non_upper_case_globals)]
pub const FUNC_ADD: u32 = 0x8006;
#[allow(dead_code, non_upper_case_globals)]
pub const FUNC_REVERSE_SUBTRACT: u32 = 0x800B;
#[allow(dead_code, non_upper_case_globals)]
pub const FUNC_SUBTRACT: u32 = 0x800A;
#[allow(dead_code, non_upper_case_globals)]
pub const MIN: u32 = 0x8007;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX: u32 = 0x8008;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_1_5: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_SIZE: u32 = 0x8764;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_USAGE: u32 = 0x8765;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_COUNTER_BITS: u32 = 0x8864;
#[allow(dead_code, non_upper_case_globals)]
pub const CURRENT_QUERY: u32 = 0x8865;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_RESULT: u32 = 0x8866;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_RESULT_AVAILABLE: u32 = 0x8867;
#[allow(dead_code, non_upper_case_globals)]
pub const ARRAY_BUFFER: u32 = 0x8892;
#[allow(dead_code, non_upper_case_globals)]
pub const ELEMENT_ARRAY_BUFFER: u32 = 0x8893;
#[allow(dead_code, non_upper_case_globals)]
pub const ARRAY_BUFFER_BINDING: u32 = 0x8894;
#[allow(dead_code, non_upper_case_globals)]
pub const ELEMENT_ARRAY_BUFFER_BINDING: u32 = 0x8895;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: u32 = 0x889F;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_ONLY: u32 = 0x88B8;
#[allow(dead_code, non_upper_case_globals)]
pub const WRITE_ONLY: u32 = 0x88B9;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_WRITE: u32 = 0x88BA;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_ACCESS: u32 = 0x88BB;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_MAPPED: u32 = 0x88BC;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_MAP_POINTER: u32 = 0x88BD;
#[allow(dead_code, non_upper_case_globals)]
pub const STREAM_DRAW: u32 = 0x88E0;
#[allow(dead_code, non_upper_case_globals)]
pub const STREAM_READ: u32 = 0x88E1;
#[allow(dead_code, non_upper_case_globals)]
pub const STREAM_COPY: u32 = 0x88E2;
#[allow(dead_code, non_upper_case_globals)]
pub const STATIC_DRAW: u32 = 0x88E4;
#[allow(dead_code, non_upper_case_globals)]
pub const STATIC_READ: u32 = 0x88E5;
#[allow(dead_code, non_upper_case_globals)]
pub const STATIC_COPY: u32 = 0x88E6;
#[allow(dead_code, non_upper_case_globals)]
pub const DYNAMIC_DRAW: u32 = 0x88E8;
#[allow(dead_code, non_upper_case_globals)]
pub const DYNAMIC_READ: u32 = 0x88E9;
#[allow(dead_code, non_upper_case_globals)]
pub const DYNAMIC_COPY: u32 = 0x88EA;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLES_PASSED: u32 = 0x8914;
#[allow(dead_code, non_upper_case_globals)]
pub const SRC1_ALPHA: u32 = 0x8589;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_2_0: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_EQUATION_RGB: u32 = 0x8009;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_ENABLED: u32 = 0x8622;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_SIZE: u32 = 0x8623;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_STRIDE: u32 = 0x8624;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_TYPE: u32 = 0x8625;
#[allow(dead_code, non_upper_case_globals)]
pub const CURRENT_VERTEX_ATTRIB: u32 = 0x8626;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_PROGRAM_POINT_SIZE: u32 = 0x8642;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_POINTER: u32 = 0x8645;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BACK_FUNC: u32 = 0x8800;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BACK_FAIL: u32 = 0x8801;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BACK_PASS_DEPTH_FAIL: u32 = 0x8802;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BACK_PASS_DEPTH_PASS: u32 = 0x8803;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_DRAW_BUFFERS: u32 = 0x8824;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER0: u32 = 0x8825;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER1: u32 = 0x8826;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER2: u32 = 0x8827;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER3: u32 = 0x8828;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER4: u32 = 0x8829;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER5: u32 = 0x882A;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER6: u32 = 0x882B;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER7: u32 = 0x882C;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER8: u32 = 0x882D;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER9: u32 = 0x882E;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER10: u32 = 0x882F;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER11: u32 = 0x8830;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER12: u32 = 0x8831;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER13: u32 = 0x8832;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER14: u32 = 0x8833;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_BUFFER15: u32 = 0x8834;
#[allow(dead_code, non_upper_case_globals)]
pub const BLEND_EQUATION_ALPHA: u32 = 0x883D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_ATTRIBS: u32 = 0x8869;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_NORMALIZED: u32 = 0x886A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TEXTURE_IMAGE_UNITS: u32 = 0x8872;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_SHADER: u32 = 0x8B30;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_SHADER: u32 = 0x8B31;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_UNIFORM_COMPONENTS: u32 = 0x8B49;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_UNIFORM_COMPONENTS: u32 = 0x8B4A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VARYING_FLOATS: u32 = 0x8B4B;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_TEXTURE_IMAGE_UNITS: u32 = 0x8B4C;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_TEXTURE_IMAGE_UNITS: u32 = 0x8B4D;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_TYPE: u32 = 0x8B4F;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT_VEC2: u32 = 0x8B50;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT_VEC3: u32 = 0x8B51;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT_VEC4: u32 = 0x8B52;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_VEC2: u32 = 0x8B53;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_VEC3: u32 = 0x8B54;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_VEC4: u32 = 0x8B55;
#[allow(dead_code, non_upper_case_globals)]
pub const BOOL: u32 = 0x8B56;
#[allow(dead_code, non_upper_case_globals)]
pub const BOOL_VEC2: u32 = 0x8B57;
#[allow(dead_code, non_upper_case_globals)]
pub const BOOL_VEC3: u32 = 0x8B58;
#[allow(dead_code, non_upper_case_globals)]
pub const BOOL_VEC4: u32 = 0x8B59;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT_MAT2: u32 = 0x8B5A;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT_MAT3: u32 = 0x8B5B;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT_MAT4: u32 = 0x8B5C;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_1D: u32 = 0x8B5D;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D: u32 = 0x8B5E;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_3D: u32 = 0x8B5F;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_CUBE: u32 = 0x8B60;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_1D_SHADOW: u32 = 0x8B61;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D_SHADOW: u32 = 0x8B62;
#[allow(dead_code, non_upper_case_globals)]
pub const DELETE_STATUS: u32 = 0x8B80;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPILE_STATUS: u32 = 0x8B81;
#[allow(dead_code, non_upper_case_globals)]
pub const LINK_STATUS: u32 = 0x8B82;
#[allow(dead_code, non_upper_case_globals)]
pub const VALIDATE_STATUS: u32 = 0x8B83;
#[allow(dead_code, non_upper_case_globals)]
pub const INFO_LOG_LENGTH: u32 = 0x8B84;
#[allow(dead_code, non_upper_case_globals)]
pub const ATTACHED_SHADERS: u32 = 0x8B85;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_UNIFORMS: u32 = 0x8B86;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_UNIFORM_MAX_LENGTH: u32 = 0x8B87;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_SOURCE_LENGTH: u32 = 0x8B88;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_ATTRIBUTES: u32 = 0x8B89;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_ATTRIBUTE_MAX_LENGTH: u32 = 0x8B8A;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_SHADER_DERIVATIVE_HINT: u32 = 0x8B8B;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADING_LANGUAGE_VERSION: u32 = 0x8B8C;
#[allow(dead_code, non_upper_case_globals)]
pub const CURRENT_PROGRAM: u32 = 0x8B8D;
#[allow(dead_code, non_upper_case_globals)]
pub const POINT_SPRITE_COORD_ORIGIN: u32 = 0x8CA0;
#[allow(dead_code, non_upper_case_globals)]
pub const LOWER_LEFT: u32 = 0x8CA1;
#[allow(dead_code, non_upper_case_globals)]
pub const UPPER_LEFT: u32 = 0x8CA2;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BACK_REF: u32 = 0x8CA3;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BACK_VALUE_MASK: u32 = 0x8CA4;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_BACK_WRITEMASK: u32 = 0x8CA5;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_2_1: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const PIXEL_PACK_BUFFER: u32 = 0x88EB;
#[allow(dead_code, non_upper_case_globals)]
pub const PIXEL_UNPACK_BUFFER: u32 = 0x88EC;
#[allow(dead_code, non_upper_case_globals)]
pub const PIXEL_PACK_BUFFER_BINDING: u32 = 0x88ED;
#[allow(dead_code, non_upper_case_globals)]
pub const PIXEL_UNPACK_BUFFER_BINDING: u32 = 0x88EF;
#[allow(dead_code, non_upper_case_globals)]
pub const SRGB: u32 = 0x8C40;
#[allow(dead_code, non_upper_case_globals)]
pub const SRGB8: u32 = 0x8C41;
#[allow(dead_code, non_upper_case_globals)]
pub const SRGB_ALPHA: u32 = 0x8C42;
#[allow(dead_code, non_upper_case_globals)]
pub const SRGB8_ALPHA8: u32 = 0x8C43;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SRGB: u32 = 0x8C48;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SRGB_ALPHA: u32 = 0x8C49;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_3_0: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPARE_REF_TO_TEXTURE: u32 = 0x884E;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE0: u32 = 0x3000;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE1: u32 = 0x3001;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE2: u32 = 0x3002;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE3: u32 = 0x3003;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE4: u32 = 0x3004;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE5: u32 = 0x3005;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE6: u32 = 0x3006;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DISTANCE7: u32 = 0x3007;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_CLIP_DISTANCES: u32 = 0x0D32;
#[allow(dead_code, non_upper_case_globals)]
pub const MAJOR_VERSION: u32 = 0x821B;
#[allow(dead_code, non_upper_case_globals)]
pub const MINOR_VERSION: u32 = 0x821C;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_EXTENSIONS: u32 = 0x821D;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_FLAGS: u32 = 0x821E;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RED: u32 = 0x8225;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RG: u32 = 0x8226;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT: u32 = 0x00000001;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA32F: u32 = 0x8814;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB32F: u32 = 0x8815;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA16F: u32 = 0x881A;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB16F: u32 = 0x881B;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_INTEGER: u32 = 0x88FD;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_ARRAY_TEXTURE_LAYERS: u32 = 0x88FF;
#[allow(dead_code, non_upper_case_globals)]
pub const MIN_PROGRAM_TEXEL_OFFSET: u32 = 0x8904;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_PROGRAM_TEXEL_OFFSET: u32 = 0x8905;
#[allow(dead_code, non_upper_case_globals)]
pub const CLAMP_READ_COLOR: u32 = 0x891C;
#[allow(dead_code, non_upper_case_globals)]
pub const FIXED_ONLY: u32 = 0x891D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VARYING_COMPONENTS: u32 = 0x8B4B;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_1D_ARRAY: u32 = 0x8C18;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_1D_ARRAY: u32 = 0x8C19;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_2D_ARRAY: u32 = 0x8C1A;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_2D_ARRAY: u32 = 0x8C1B;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_1D_ARRAY: u32 = 0x8C1C;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_2D_ARRAY: u32 = 0x8C1D;
#[allow(dead_code, non_upper_case_globals)]
pub const R11F_G11F_B10F: u32 = 0x8C3A;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_10F_11F_11F_REV: u32 = 0x8C3B;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB9_E5: u32 = 0x8C3D;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_5_9_9_9_REV: u32 = 0x8C3E;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SHARED_SIZE: u32 = 0x8C3F;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH: u32 = 0x8C76;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_MODE: u32 = 0x8C7F;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: u32 = 0x8C80;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_VARYINGS: u32 = 0x8C83;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_START: u32 = 0x8C84;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_SIZE: u32 = 0x8C85;
#[allow(dead_code, non_upper_case_globals)]
pub const PRIMITIVES_GENERATED: u32 = 0x8C87;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: u32 = 0x8C88;
#[allow(dead_code, non_upper_case_globals)]
pub const RASTERIZER_DISCARD: u32 = 0x8C89;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: u32 = 0x8C8A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: u32 = 0x8C8B;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERLEAVED_ATTRIBS: u32 = 0x8C8C;
#[allow(dead_code, non_upper_case_globals)]
pub const SEPARATE_ATTRIBS: u32 = 0x8C8D;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER: u32 = 0x8C8E;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_BINDING: u32 = 0x8C8F;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA32UI: u32 = 0x8D70;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB32UI: u32 = 0x8D71;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA16UI: u32 = 0x8D76;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB16UI: u32 = 0x8D77;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA8UI: u32 = 0x8D7C;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB8UI: u32 = 0x8D7D;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA32I: u32 = 0x8D82;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB32I: u32 = 0x8D83;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA16I: u32 = 0x8D88;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB16I: u32 = 0x8D89;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA8I: u32 = 0x8D8E;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB8I: u32 = 0x8D8F;
#[allow(dead_code, non_upper_case_globals)]
pub const RED_INTEGER: u32 = 0x8D94;
#[allow(dead_code, non_upper_case_globals)]
pub const GREEN_INTEGER: u32 = 0x8D95;
#[allow(dead_code, non_upper_case_globals)]
pub const BLUE_INTEGER: u32 = 0x8D96;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB_INTEGER: u32 = 0x8D98;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA_INTEGER: u32 = 0x8D99;
#[allow(dead_code, non_upper_case_globals)]
pub const BGR_INTEGER: u32 = 0x8D9A;
#[allow(dead_code, non_upper_case_globals)]
pub const BGRA_INTEGER: u32 = 0x8D9B;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_1D_ARRAY: u32 = 0x8DC0;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D_ARRAY: u32 = 0x8DC1;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_1D_ARRAY_SHADOW: u32 = 0x8DC3;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D_ARRAY_SHADOW: u32 = 0x8DC4;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_CUBE_SHADOW: u32 = 0x8DC5;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_VEC2: u32 = 0x8DC6;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_VEC3: u32 = 0x8DC7;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_VEC4: u32 = 0x8DC8;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_1D: u32 = 0x8DC9;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_2D: u32 = 0x8DCA;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_3D: u32 = 0x8DCB;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_CUBE: u32 = 0x8DCC;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_1D_ARRAY: u32 = 0x8DCE;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_2D_ARRAY: u32 = 0x8DCF;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_1D: u32 = 0x8DD1;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_2D: u32 = 0x8DD2;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_3D: u32 = 0x8DD3;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_CUBE: u32 = 0x8DD4;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_1D_ARRAY: u32 = 0x8DD6;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_2D_ARRAY: u32 = 0x8DD7;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_WAIT: u32 = 0x8E13;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_NO_WAIT: u32 = 0x8E14;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_BY_REGION_WAIT: u32 = 0x8E15;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_BY_REGION_NO_WAIT: u32 = 0x8E16;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_ACCESS_FLAGS: u32 = 0x911F;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_MAP_LENGTH: u32 = 0x9120;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_MAP_OFFSET: u32 = 0x9121;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_COMPONENT32F: u32 = 0x8CAC;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH32F_STENCIL8: u32 = 0x8CAD;
#[allow(dead_code, non_upper_case_globals)]
pub const FLOAT_32_UNSIGNED_INT_24_8_REV: u32 = 0x8DAD;
#[allow(dead_code, non_upper_case_globals)]
pub const INVALID_FRAMEBUFFER_OPERATION: u32 = 0x0506;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: u32 = 0x8210;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: u32 = 0x8211;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_RED_SIZE: u32 = 0x8212;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: u32 = 0x8213;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: u32 = 0x8214;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: u32 = 0x8215;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: u32 = 0x8216;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: u32 = 0x8217;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_DEFAULT: u32 = 0x8218;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_UNDEFINED: u32 = 0x8219;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_STENCIL_ATTACHMENT: u32 = 0x821A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_RENDERBUFFER_SIZE: u32 = 0x84E8;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_STENCIL: u32 = 0x84F9;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_24_8: u32 = 0x84FA;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH24_STENCIL8: u32 = 0x88F0;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_STENCIL_SIZE: u32 = 0x88F1;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_RED_TYPE: u32 = 0x8C10;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_GREEN_TYPE: u32 = 0x8C11;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BLUE_TYPE: u32 = 0x8C12;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_ALPHA_TYPE: u32 = 0x8C13;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_DEPTH_TYPE: u32 = 0x8C16;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_NORMALIZED: u32 = 0x8C17;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_BINDING: u32 = 0x8CA6;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_FRAMEBUFFER_BINDING: u32 = 0x8CA6;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_BINDING: u32 = 0x8CA7;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_FRAMEBUFFER: u32 = 0x8CA8;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_FRAMEBUFFER: u32 = 0x8CA9;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_FRAMEBUFFER_BINDING: u32 = 0x8CAA;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_SAMPLES: u32 = 0x8CAB;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: u32 = 0x8CD0;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: u32 = 0x8CD1;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: u32 = 0x8CD2;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: u32 = 0x8CD3;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: u32 = 0x8CD4;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_COMPLETE: u32 = 0x8CD5;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_INCOMPLETE_ATTACHMENT: u32 = 0x8CD6;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: u32 = 0x8CD7;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER: u32 = 0x8CDB;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_INCOMPLETE_READ_BUFFER: u32 = 0x8CDC;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_UNSUPPORTED: u32 = 0x8CDD;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COLOR_ATTACHMENTS: u32 = 0x8CDF;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT0: u32 = 0x8CE0;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT1: u32 = 0x8CE1;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT2: u32 = 0x8CE2;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT3: u32 = 0x8CE3;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT4: u32 = 0x8CE4;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT5: u32 = 0x8CE5;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT6: u32 = 0x8CE6;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT7: u32 = 0x8CE7;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT8: u32 = 0x8CE8;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT9: u32 = 0x8CE9;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT10: u32 = 0x8CEA;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT11: u32 = 0x8CEB;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT12: u32 = 0x8CEC;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT13: u32 = 0x8CED;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT14: u32 = 0x8CEE;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT15: u32 = 0x8CEF;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT16: u32 = 0x8CF0;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT17: u32 = 0x8CF1;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT18: u32 = 0x8CF2;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT19: u32 = 0x8CF3;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT20: u32 = 0x8CF4;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT21: u32 = 0x8CF5;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT22: u32 = 0x8CF6;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT23: u32 = 0x8CF7;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT24: u32 = 0x8CF8;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT25: u32 = 0x8CF9;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT26: u32 = 0x8CFA;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT27: u32 = 0x8CFB;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT28: u32 = 0x8CFC;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT29: u32 = 0x8CFD;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT30: u32 = 0x8CFE;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ATTACHMENT31: u32 = 0x8CFF;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_ATTACHMENT: u32 = 0x8D00;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_ATTACHMENT: u32 = 0x8D20;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER: u32 = 0x8D40;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER: u32 = 0x8D41;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_WIDTH: u32 = 0x8D42;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_HEIGHT: u32 = 0x8D43;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_INTERNAL_FORMAT: u32 = 0x8D44;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_INDEX1: u32 = 0x8D46;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_INDEX4: u32 = 0x8D47;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_INDEX8: u32 = 0x8D48;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_INDEX16: u32 = 0x8D49;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_RED_SIZE: u32 = 0x8D50;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_GREEN_SIZE: u32 = 0x8D51;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_BLUE_SIZE: u32 = 0x8D52;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_ALPHA_SIZE: u32 = 0x8D53;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_DEPTH_SIZE: u32 = 0x8D54;
#[allow(dead_code, non_upper_case_globals)]
pub const RENDERBUFFER_STENCIL_SIZE: u32 = 0x8D55;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: u32 = 0x8D56;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_SAMPLES: u32 = 0x8D57;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_SRGB: u32 = 0x8DB9;
#[allow(dead_code, non_upper_case_globals)]
pub const HALF_FLOAT: u32 = 0x140B;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_READ_BIT: u32 = 0x0001;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_WRITE_BIT: u32 = 0x0002;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_INVALIDATE_RANGE_BIT: u32 = 0x0004;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_INVALIDATE_BUFFER_BIT: u32 = 0x0008;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_FLUSH_EXPLICIT_BIT: u32 = 0x0010;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_UNSYNCHRONIZED_BIT: u32 = 0x0020;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RED_RGTC1: u32 = 0x8DBB;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SIGNED_RED_RGTC1: u32 = 0x8DBC;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RG_RGTC2: u32 = 0x8DBD;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SIGNED_RG_RGTC2: u32 = 0x8DBE;
#[allow(dead_code, non_upper_case_globals)]
pub const RG: u32 = 0x8227;
#[allow(dead_code, non_upper_case_globals)]
pub const RG_INTEGER: u32 = 0x8228;
#[allow(dead_code, non_upper_case_globals)]
pub const R8: u32 = 0x8229;
#[allow(dead_code, non_upper_case_globals)]
pub const R16: u32 = 0x822A;
#[allow(dead_code, non_upper_case_globals)]
pub const RG8: u32 = 0x822B;
#[allow(dead_code, non_upper_case_globals)]
pub const RG16: u32 = 0x822C;
#[allow(dead_code, non_upper_case_globals)]
pub const R16F: u32 = 0x822D;
#[allow(dead_code, non_upper_case_globals)]
pub const R32F: u32 = 0x822E;
#[allow(dead_code, non_upper_case_globals)]
pub const RG16F: u32 = 0x822F;
#[allow(dead_code, non_upper_case_globals)]
pub const RG32F: u32 = 0x8230;
#[allow(dead_code, non_upper_case_globals)]
pub const R8I: u32 = 0x8231;
#[allow(dead_code, non_upper_case_globals)]
pub const R8UI: u32 = 0x8232;
#[allow(dead_code, non_upper_case_globals)]
pub const R16I: u32 = 0x8233;
#[allow(dead_code, non_upper_case_globals)]
pub const R16UI: u32 = 0x8234;
#[allow(dead_code, non_upper_case_globals)]
pub const R32I: u32 = 0x8235;
#[allow(dead_code, non_upper_case_globals)]
pub const R32UI: u32 = 0x8236;
#[allow(dead_code, non_upper_case_globals)]
pub const RG8I: u32 = 0x8237;
#[allow(dead_code, non_upper_case_globals)]
pub const RG8UI: u32 = 0x8238;
#[allow(dead_code, non_upper_case_globals)]
pub const RG16I: u32 = 0x8239;
#[allow(dead_code, non_upper_case_globals)]
pub const RG16UI: u32 = 0x823A;
#[allow(dead_code, non_upper_case_globals)]
pub const RG32I: u32 = 0x823B;
#[allow(dead_code, non_upper_case_globals)]
pub const RG32UI: u32 = 0x823C;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ARRAY_BINDING: u32 = 0x85B5;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_3_1: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D_RECT: u32 = 0x8B63;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D_RECT_SHADOW: u32 = 0x8B64;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_BUFFER: u32 = 0x8DC2;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_2D_RECT: u32 = 0x8DCD;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_BUFFER: u32 = 0x8DD0;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_2D_RECT: u32 = 0x8DD5;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_BUFFER: u32 = 0x8DD8;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BUFFER: u32 = 0x8C2A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TEXTURE_BUFFER_SIZE: u32 = 0x8C2B;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_BUFFER: u32 = 0x8C2C;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BUFFER_DATA_STORE_BINDING: u32 = 0x8C2D;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_RECTANGLE: u32 = 0x84F5;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_RECTANGLE: u32 = 0x84F6;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_RECTANGLE: u32 = 0x84F7;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_RECTANGLE_TEXTURE_SIZE: u32 = 0x84F8;
#[allow(dead_code, non_upper_case_globals)]
pub const R8_SNORM: u32 = 0x8F94;
#[allow(dead_code, non_upper_case_globals)]
pub const RG8_SNORM: u32 = 0x8F95;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB8_SNORM: u32 = 0x8F96;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA8_SNORM: u32 = 0x8F97;
#[allow(dead_code, non_upper_case_globals)]
pub const R16_SNORM: u32 = 0x8F98;
#[allow(dead_code, non_upper_case_globals)]
pub const RG16_SNORM: u32 = 0x8F99;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB16_SNORM: u32 = 0x8F9A;
#[allow(dead_code, non_upper_case_globals)]
pub const RGBA16_SNORM: u32 = 0x8F9B;
#[allow(dead_code, non_upper_case_globals)]
pub const SIGNED_NORMALIZED: u32 = 0x8F9C;
#[allow(dead_code, non_upper_case_globals)]
pub const PRIMITIVE_RESTART: u32 = 0x8F9D;
#[allow(dead_code, non_upper_case_globals)]
pub const PRIMITIVE_RESTART_INDEX: u32 = 0x8F9E;
#[allow(dead_code, non_upper_case_globals)]
pub const COPY_READ_BUFFER: u32 = 0x8F36;
#[allow(dead_code, non_upper_case_globals)]
pub const COPY_WRITE_BUFFER: u32 = 0x8F37;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BUFFER: u32 = 0x8A11;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BUFFER_BINDING: u32 = 0x8A28;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BUFFER_START: u32 = 0x8A29;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BUFFER_SIZE: u32 = 0x8A2A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_UNIFORM_BLOCKS: u32 = 0x8A2B;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_UNIFORM_BLOCKS: u32 = 0x8A2C;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_UNIFORM_BLOCKS: u32 = 0x8A2D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_UNIFORM_BLOCKS: u32 = 0x8A2E;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_UNIFORM_BUFFER_BINDINGS: u32 = 0x8A2F;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_UNIFORM_BLOCK_SIZE: u32 = 0x8A30;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: u32 = 0x8A31;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS: u32 = 0x8A32;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: u32 = 0x8A33;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BUFFER_OFFSET_ALIGNMENT: u32 = 0x8A34;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH: u32 = 0x8A35;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_UNIFORM_BLOCKS: u32 = 0x8A36;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_TYPE: u32 = 0x8A37;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_SIZE: u32 = 0x8A38;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_NAME_LENGTH: u32 = 0x8A39;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_INDEX: u32 = 0x8A3A;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_OFFSET: u32 = 0x8A3B;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_ARRAY_STRIDE: u32 = 0x8A3C;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_MATRIX_STRIDE: u32 = 0x8A3D;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_IS_ROW_MAJOR: u32 = 0x8A3E;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_BINDING: u32 = 0x8A3F;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_DATA_SIZE: u32 = 0x8A40;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_NAME_LENGTH: u32 = 0x8A41;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_ACTIVE_UNIFORMS: u32 = 0x8A42;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: u32 = 0x8A43;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: u32 = 0x8A44;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER: u32 = 0x8A45;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: u32 = 0x8A46;
#[allow(dead_code, non_upper_case_globals)]
pub const INVALID_INDEX: u32 = 0xFFFFFFFF;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_3_2: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_CORE_PROFILE_BIT: u32 = 0x00000001;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_COMPATIBILITY_PROFILE_BIT: u32 = 0x00000002;
#[allow(dead_code, non_upper_case_globals)]
pub const LINES_ADJACENCY: u32 = 0x000A;
#[allow(dead_code, non_upper_case_globals)]
pub const LINE_STRIP_ADJACENCY: u32 = 0x000B;
#[allow(dead_code, non_upper_case_globals)]
pub const TRIANGLES_ADJACENCY: u32 = 0x000C;
#[allow(dead_code, non_upper_case_globals)]
pub const TRIANGLE_STRIP_ADJACENCY: u32 = 0x000D;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_POINT_SIZE: u32 = 0x8642;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_TEXTURE_IMAGE_UNITS: u32 = 0x8C29;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_ATTACHMENT_LAYERED: u32 = 0x8DA7;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS: u32 = 0x8DA8;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_SHADER: u32 = 0x8DD9;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_VERTICES_OUT: u32 = 0x8916;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_INPUT_TYPE: u32 = 0x8917;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_OUTPUT_TYPE: u32 = 0x8918;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_UNIFORM_COMPONENTS: u32 = 0x8DDF;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_OUTPUT_VERTICES: u32 = 0x8DE0;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS: u32 = 0x8DE1;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_OUTPUT_COMPONENTS: u32 = 0x9122;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_INPUT_COMPONENTS: u32 = 0x9123;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_OUTPUT_COMPONENTS: u32 = 0x9124;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_INPUT_COMPONENTS: u32 = 0x9125;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_PROFILE_MASK: u32 = 0x9126;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_CLAMP: u32 = 0x864F;
#[allow(dead_code, non_upper_case_globals)]
pub const QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION: u32 = 0x8E4C;
#[allow(dead_code, non_upper_case_globals)]
pub const FIRST_VERTEX_CONVENTION: u32 = 0x8E4D;
#[allow(dead_code, non_upper_case_globals)]
pub const LAST_VERTEX_CONVENTION: u32 = 0x8E4E;
#[allow(dead_code, non_upper_case_globals)]
pub const PROVOKING_VERTEX: u32 = 0x8E4F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_SEAMLESS: u32 = 0x884F;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_SERVER_WAIT_TIMEOUT: u32 = 0x9111;
#[allow(dead_code, non_upper_case_globals)]
pub const OBJECT_TYPE: u32 = 0x9112;
#[allow(dead_code, non_upper_case_globals)]
pub const SYNC_CONDITION: u32 = 0x9113;
#[allow(dead_code, non_upper_case_globals)]
pub const SYNC_STATUS: u32 = 0x9114;
#[allow(dead_code, non_upper_case_globals)]
pub const SYNC_FLAGS: u32 = 0x9115;
#[allow(dead_code, non_upper_case_globals)]
pub const SYNC_FENCE: u32 = 0x9116;
#[allow(dead_code, non_upper_case_globals)]
pub const SYNC_GPU_COMMANDS_COMPLETE: u32 = 0x9117;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNALED: u32 = 0x9118;
#[allow(dead_code, non_upper_case_globals)]
pub const SIGNALED: u32 = 0x9119;
#[allow(dead_code, non_upper_case_globals)]
pub const ALREADY_SIGNALED: u32 = 0x911A;
#[allow(dead_code, non_upper_case_globals)]
pub const TIMEOUT_EXPIRED: u32 = 0x911B;
#[allow(dead_code, non_upper_case_globals)]
pub const CONDITION_SATISFIED: u32 = 0x911C;
#[allow(dead_code, non_upper_case_globals)]
pub const WAIT_FAILED: u32 = 0x911D;
#[allow(dead_code, non_upper_case_globals)]
pub const TIMEOUT_IGNORED: u64 = 0xFFFFFFFFFFFFFFFF;
#[allow(dead_code, non_upper_case_globals)]
pub const SYNC_FLUSH_COMMANDS_BIT: u32 = 0x00000001;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_POSITION: u32 = 0x8E50;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_MASK: u32 = 0x8E51;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_MASK_VALUE: u32 = 0x8E52;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_SAMPLE_MASK_WORDS: u32 = 0x8E59;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_2D_MULTISAMPLE: u32 = 0x9100;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_2D_MULTISAMPLE: u32 = 0x9101;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_2D_MULTISAMPLE_ARRAY: u32 = 0x9102;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY: u32 = 0x9103;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_2D_MULTISAMPLE: u32 = 0x9104;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY: u32 = 0x9105;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SAMPLES: u32 = 0x9106;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_FIXED_SAMPLE_LOCATIONS: u32 = 0x9107;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D_MULTISAMPLE: u32 = 0x9108;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_2D_MULTISAMPLE: u32 = 0x9109;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE: u32 = 0x910A;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 0x910B;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 0x910C;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY: u32 = 0x910D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COLOR_TEXTURE_SAMPLES: u32 = 0x910E;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_DEPTH_TEXTURE_SAMPLES: u32 = 0x910F;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_INTEGER_SAMPLES: u32 = 0x9110;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_3_3: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_DIVISOR: u32 = 0x88FE;
#[allow(dead_code, non_upper_case_globals)]
pub const SRC1_COLOR: u32 = 0x88F9;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_SRC1_COLOR: u32 = 0x88FA;
#[allow(dead_code, non_upper_case_globals)]
pub const ONE_MINUS_SRC1_ALPHA: u32 = 0x88FB;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_DUAL_SOURCE_DRAW_BUFFERS: u32 = 0x88FC;
#[allow(dead_code, non_upper_case_globals)]
pub const ANY_SAMPLES_PASSED: u32 = 0x8C2F;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_BINDING: u32 = 0x8919;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB10_A2UI: u32 = 0x906F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SWIZZLE_R: u32 = 0x8E42;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SWIZZLE_G: u32 = 0x8E43;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SWIZZLE_B: u32 = 0x8E44;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SWIZZLE_A: u32 = 0x8E45;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SWIZZLE_RGBA: u32 = 0x8E46;
#[allow(dead_code, non_upper_case_globals)]
pub const TIME_ELAPSED: u32 = 0x88BF;
#[allow(dead_code, non_upper_case_globals)]
pub const TIMESTAMP: u32 = 0x8E28;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_2_10_10_10_REV: u32 = 0x8D9F;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_4_0: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLE_SHADING: u32 = 0x8C36;
#[allow(dead_code, non_upper_case_globals)]
pub const MIN_SAMPLE_SHADING_VALUE: u32 = 0x8C37;
#[allow(dead_code, non_upper_case_globals)]
pub const MIN_PROGRAM_TEXTURE_GATHER_OFFSET: u32 = 0x8E5E;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_PROGRAM_TEXTURE_GATHER_OFFSET: u32 = 0x8E5F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_CUBE_MAP_ARRAY: u32 = 0x9009;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BINDING_CUBE_MAP_ARRAY: u32 = 0x900A;
#[allow(dead_code, non_upper_case_globals)]
pub const PROXY_TEXTURE_CUBE_MAP_ARRAY: u32 = 0x900B;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_CUBE_MAP_ARRAY: u32 = 0x900C;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER_CUBE_MAP_ARRAY_SHADOW: u32 = 0x900D;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_SAMPLER_CUBE_MAP_ARRAY: u32 = 0x900E;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY: u32 = 0x900F;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_INDIRECT_BUFFER: u32 = 0x8F3F;
#[allow(dead_code, non_upper_case_globals)]
pub const DRAW_INDIRECT_BUFFER_BINDING: u32 = 0x8F43;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_SHADER_INVOCATIONS: u32 = 0x887F;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_SHADER_INVOCATIONS: u32 = 0x8E5A;
#[allow(dead_code, non_upper_case_globals)]
pub const MIN_FRAGMENT_INTERPOLATION_OFFSET: u32 = 0x8E5B;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_INTERPOLATION_OFFSET: u32 = 0x8E5C;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_INTERPOLATION_OFFSET_BITS: u32 = 0x8E5D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_STREAMS: u32 = 0x8E71;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLE_VEC2: u32 = 0x8FFC;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLE_VEC3: u32 = 0x8FFD;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLE_VEC4: u32 = 0x8FFE;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLE_MAT2: u32 = 0x8F46;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLE_MAT3: u32 = 0x8F47;
#[allow(dead_code, non_upper_case_globals)]
pub const DOUBLE_MAT4: u32 = 0x8F48;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_SUBROUTINES: u32 = 0x8DE5;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_SUBROUTINE_UNIFORMS: u32 = 0x8DE6;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS: u32 = 0x8E47;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_SUBROUTINE_MAX_LENGTH: u32 = 0x8E48;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH: u32 = 0x8E49;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_SUBROUTINES: u32 = 0x8DE7;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_SUBROUTINE_UNIFORM_LOCATIONS: u32 = 0x8DE8;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_COMPATIBLE_SUBROUTINES: u32 = 0x8E4A;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPATIBLE_SUBROUTINES: u32 = 0x8E4B;
#[allow(dead_code, non_upper_case_globals)]
pub const PATCHES: u32 = 0x000E;
#[allow(dead_code, non_upper_case_globals)]
pub const PATCH_VERTICES: u32 = 0x8E72;
#[allow(dead_code, non_upper_case_globals)]
pub const PATCH_DEFAULT_INNER_LEVEL: u32 = 0x8E73;
#[allow(dead_code, non_upper_case_globals)]
pub const PATCH_DEFAULT_OUTER_LEVEL: u32 = 0x8E74;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_CONTROL_OUTPUT_VERTICES: u32 = 0x8E75;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_GEN_MODE: u32 = 0x8E76;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_GEN_SPACING: u32 = 0x8E77;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_GEN_VERTEX_ORDER: u32 = 0x8E78;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_GEN_POINT_MODE: u32 = 0x8E79;
#[allow(dead_code, non_upper_case_globals)]
pub const ISOLINES: u32 = 0x8E7A;
#[allow(dead_code, non_upper_case_globals)]
pub const FRACTIONAL_ODD: u32 = 0x8E7B;
#[allow(dead_code, non_upper_case_globals)]
pub const FRACTIONAL_EVEN: u32 = 0x8E7C;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_PATCH_VERTICES: u32 = 0x8E7D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_GEN_LEVEL: u32 = 0x8E7E;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_UNIFORM_COMPONENTS: u32 = 0x8E7F;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_UNIFORM_COMPONENTS: u32 = 0x8E80;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS: u32 = 0x8E81;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS: u32 = 0x8E82;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_OUTPUT_COMPONENTS: u32 = 0x8E83;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_PATCH_COMPONENTS: u32 = 0x8E84;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS: u32 = 0x8E85;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_OUTPUT_COMPONENTS: u32 = 0x8E86;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_UNIFORM_BLOCKS: u32 = 0x8E89;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_UNIFORM_BLOCKS: u32 = 0x8E8A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_INPUT_COMPONENTS: u32 = 0x886C;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_INPUT_COMPONENTS: u32 = 0x886D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS: u32 = 0x8E1E;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS: u32 = 0x8E1F;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 0x84F0;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 0x84F1;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_EVALUATION_SHADER: u32 = 0x8E87;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_CONTROL_SHADER: u32 = 0x8E88;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK: u32 = 0x8E22;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_PAUSED: u32 = 0x8E23;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_ACTIVE: u32 = 0x8E24;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BINDING: u32 = 0x8E25;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TRANSFORM_FEEDBACK_BUFFERS: u32 = 0x8E70;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_4_1: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const FIXED: u32 = 0x140C;
#[allow(dead_code, non_upper_case_globals)]
pub const IMPLEMENTATION_COLOR_READ_TYPE: u32 = 0x8B9A;
#[allow(dead_code, non_upper_case_globals)]
pub const IMPLEMENTATION_COLOR_READ_FORMAT: u32 = 0x8B9B;
#[allow(dead_code, non_upper_case_globals)]
pub const LOW_FLOAT: u32 = 0x8DF0;
#[allow(dead_code, non_upper_case_globals)]
pub const MEDIUM_FLOAT: u32 = 0x8DF1;
#[allow(dead_code, non_upper_case_globals)]
pub const HIGH_FLOAT: u32 = 0x8DF2;
#[allow(dead_code, non_upper_case_globals)]
pub const LOW_INT: u32 = 0x8DF3;
#[allow(dead_code, non_upper_case_globals)]
pub const MEDIUM_INT: u32 = 0x8DF4;
#[allow(dead_code, non_upper_case_globals)]
pub const HIGH_INT: u32 = 0x8DF5;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_COMPILER: u32 = 0x8DFA;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_BINARY_FORMATS: u32 = 0x8DF8;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_SHADER_BINARY_FORMATS: u32 = 0x8DF9;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_UNIFORM_VECTORS: u32 = 0x8DFB;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VARYING_VECTORS: u32 = 0x8DFC;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_UNIFORM_VECTORS: u32 = 0x8DFD;
#[allow(dead_code, non_upper_case_globals)]
pub const RGB565: u32 = 0x8D62;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_BINARY_RETRIEVABLE_HINT: u32 = 0x8257;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_BINARY_LENGTH: u32 = 0x8741;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_PROGRAM_BINARY_FORMATS: u32 = 0x87FE;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_BINARY_FORMATS: u32 = 0x87FF;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_SHADER_BIT: u32 = 0x00000001;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_SHADER_BIT: u32 = 0x00000002;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_SHADER_BIT: u32 = 0x00000004;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_CONTROL_SHADER_BIT: u32 = 0x00000008;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_EVALUATION_SHADER_BIT: u32 = 0x00000010;
#[allow(dead_code, non_upper_case_globals)]
pub const ALL_SHADER_BITS: u32 = 0xFFFFFFFF;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_SEPARABLE: u32 = 0x8258;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_PROGRAM: u32 = 0x8259;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_PIPELINE_BINDING: u32 = 0x825A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VIEWPORTS: u32 = 0x825B;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEWPORT_SUBPIXEL_BITS: u32 = 0x825C;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEWPORT_BOUNDS_RANGE: u32 = 0x825D;
#[allow(dead_code, non_upper_case_globals)]
pub const LAYER_PROVOKING_VERTEX: u32 = 0x825E;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEWPORT_INDEX_PROVOKING_VERTEX: u32 = 0x825F;
#[allow(dead_code, non_upper_case_globals)]
pub const UNDEFINED_VERTEX: u32 = 0x8260;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_4_2: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const COPY_READ_BUFFER_BINDING: u32 = 0x8F36;
#[allow(dead_code, non_upper_case_globals)]
pub const COPY_WRITE_BUFFER_BINDING: u32 = 0x8F37;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_ACTIVE: u32 = 0x8E24;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_PAUSED: u32 = 0x8E23;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_COMPRESSED_BLOCK_WIDTH: u32 = 0x9127;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_COMPRESSED_BLOCK_HEIGHT: u32 = 0x9128;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_COMPRESSED_BLOCK_DEPTH: u32 = 0x9129;
#[allow(dead_code, non_upper_case_globals)]
pub const UNPACK_COMPRESSED_BLOCK_SIZE: u32 = 0x912A;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_COMPRESSED_BLOCK_WIDTH: u32 = 0x912B;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_COMPRESSED_BLOCK_HEIGHT: u32 = 0x912C;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_COMPRESSED_BLOCK_DEPTH: u32 = 0x912D;
#[allow(dead_code, non_upper_case_globals)]
pub const PACK_COMPRESSED_BLOCK_SIZE: u32 = 0x912E;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_SAMPLE_COUNTS: u32 = 0x9380;
#[allow(dead_code, non_upper_case_globals)]
pub const MIN_MAP_BUFFER_ALIGNMENT: u32 = 0x90BC;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER: u32 = 0x92C0;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_BINDING: u32 = 0x92C1;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_START: u32 = 0x92C2;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_SIZE: u32 = 0x92C3;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_DATA_SIZE: u32 = 0x92C4;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS: u32 = 0x92C5;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES: u32 = 0x92C6;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER: u32 = 0x92C7;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 0x92C8;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 0x92C9;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER: u32 = 0x92CA;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER: u32 = 0x92CB;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CC;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CD;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CE;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS: u32 = 0x92CF;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS: u32 = 0x92D0;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_ATOMIC_COUNTER_BUFFERS: u32 = 0x92D1;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_ATOMIC_COUNTERS: u32 = 0x92D2;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_ATOMIC_COUNTERS: u32 = 0x92D3;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_ATOMIC_COUNTERS: u32 = 0x92D4;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_ATOMIC_COUNTERS: u32 = 0x92D5;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_ATOMIC_COUNTERS: u32 = 0x92D6;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_ATOMIC_COUNTERS: u32 = 0x92D7;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_ATOMIC_COUNTER_BUFFER_SIZE: u32 = 0x92D8;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_ATOMIC_COUNTER_BUFFER_BINDINGS: u32 = 0x92DC;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_ATOMIC_COUNTER_BUFFERS: u32 = 0x92D9;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX: u32 = 0x92DA;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_ATOMIC_COUNTER: u32 = 0x92DB;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_BARRIER_BIT: u32 = 0x00000001;
#[allow(dead_code, non_upper_case_globals)]
pub const ELEMENT_ARRAY_BARRIER_BIT: u32 = 0x00000002;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BARRIER_BIT: u32 = 0x00000004;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_FETCH_BARRIER_BIT: u32 = 0x00000008;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_IMAGE_ACCESS_BARRIER_BIT: u32 = 0x00000020;
#[allow(dead_code, non_upper_case_globals)]
pub const COMMAND_BARRIER_BIT: u32 = 0x00000040;
#[allow(dead_code, non_upper_case_globals)]
pub const PIXEL_BUFFER_BARRIER_BIT: u32 = 0x00000080;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_UPDATE_BARRIER_BIT: u32 = 0x00000100;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_UPDATE_BARRIER_BIT: u32 = 0x00000200;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_BARRIER_BIT: u32 = 0x00000400;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BARRIER_BIT: u32 = 0x00000800;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BARRIER_BIT: u32 = 0x00001000;
#[allow(dead_code, non_upper_case_globals)]
pub const ALL_BARRIER_BITS: u32 = 0xFFFFFFFF;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_IMAGE_UNITS: u32 = 0x8F38;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS: u32 = 0x8F39;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_BINDING_NAME: u32 = 0x8F3A;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_BINDING_LEVEL: u32 = 0x8F3B;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_BINDING_LAYERED: u32 = 0x8F3C;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_BINDING_LAYER: u32 = 0x8F3D;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_BINDING_ACCESS: u32 = 0x8F3E;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_1D: u32 = 0x904C;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_2D: u32 = 0x904D;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_3D: u32 = 0x904E;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_2D_RECT: u32 = 0x904F;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CUBE: u32 = 0x9050;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_BUFFER: u32 = 0x9051;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_1D_ARRAY: u32 = 0x9052;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_2D_ARRAY: u32 = 0x9053;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CUBE_MAP_ARRAY: u32 = 0x9054;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_2D_MULTISAMPLE: u32 = 0x9055;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 0x9056;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_1D: u32 = 0x9057;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_2D: u32 = 0x9058;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_3D: u32 = 0x9059;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_2D_RECT: u32 = 0x905A;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_CUBE: u32 = 0x905B;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_BUFFER: u32 = 0x905C;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_1D_ARRAY: u32 = 0x905D;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_2D_ARRAY: u32 = 0x905E;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_CUBE_MAP_ARRAY: u32 = 0x905F;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_2D_MULTISAMPLE: u32 = 0x9060;
#[allow(dead_code, non_upper_case_globals)]
pub const INT_IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 0x9061;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_1D: u32 = 0x9062;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_2D: u32 = 0x9063;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_3D: u32 = 0x9064;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_2D_RECT: u32 = 0x9065;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_CUBE: u32 = 0x9066;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_BUFFER: u32 = 0x9067;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_1D_ARRAY: u32 = 0x9068;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_2D_ARRAY: u32 = 0x9069;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY: u32 = 0x906A;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_2D_MULTISAMPLE: u32 = 0x906B;
#[allow(dead_code, non_upper_case_globals)]
pub const UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY: u32 = 0x906C;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_IMAGE_SAMPLES: u32 = 0x906D;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_BINDING_FORMAT: u32 = 0x906E;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_FORMAT_COMPATIBILITY_TYPE: u32 = 0x90C7;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_FORMAT_COMPATIBILITY_BY_SIZE: u32 = 0x90C8;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_FORMAT_COMPATIBILITY_BY_CLASS: u32 = 0x90C9;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_IMAGE_UNIFORMS: u32 = 0x90CA;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_IMAGE_UNIFORMS: u32 = 0x90CB;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_IMAGE_UNIFORMS: u32 = 0x90CC;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_IMAGE_UNIFORMS: u32 = 0x90CD;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_IMAGE_UNIFORMS: u32 = 0x90CE;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_IMAGE_UNIFORMS: u32 = 0x90CF;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGBA_BPTC_UNORM: u32 = 0x8E8C;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SRGB_ALPHA_BPTC_UNORM: u32 = 0x8E8D;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGB_BPTC_SIGNED_FLOAT: u32 = 0x8E8E;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT: u32 = 0x8E8F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_IMMUTABLE_FORMAT: u32 = 0x912F;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_4_3: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_SHADING_LANGUAGE_VERSIONS: u32 = 0x82E9;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_ARRAY_LONG: u32 = 0x874E;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGB8_ETC2: u32 = 0x9274;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SRGB8_ETC2: u32 = 0x9275;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: u32 = 0x9276;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: u32 = 0x9277;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RGBA8_ETC2_EAC: u32 = 0x9278;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: u32 = 0x9279;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_R11_EAC: u32 = 0x9270;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SIGNED_R11_EAC: u32 = 0x9271;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_RG11_EAC: u32 = 0x9272;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPRESSED_SIGNED_RG11_EAC: u32 = 0x9273;
#[allow(dead_code, non_upper_case_globals)]
pub const PRIMITIVE_RESTART_FIXED_INDEX: u32 = 0x8D69;
#[allow(dead_code, non_upper_case_globals)]
pub const ANY_SAMPLES_PASSED_CONSERVATIVE: u32 = 0x8D6A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_ELEMENT_INDEX: u32 = 0x8D6B;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPUTE_SHADER: u32 = 0x91B9;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_UNIFORM_BLOCKS: u32 = 0x91BB;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_TEXTURE_IMAGE_UNITS: u32 = 0x91BC;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_IMAGE_UNIFORMS: u32 = 0x91BD;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_SHARED_MEMORY_SIZE: u32 = 0x8262;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_UNIFORM_COMPONENTS: u32 = 0x8263;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS: u32 = 0x8264;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_ATOMIC_COUNTERS: u32 = 0x8265;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS: u32 = 0x8266;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_WORK_GROUP_INVOCATIONS: u32 = 0x90EB;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_WORK_GROUP_COUNT: u32 = 0x91BE;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_WORK_GROUP_SIZE: u32 = 0x91BF;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPUTE_WORK_GROUP_SIZE: u32 = 0x8267;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER: u32 = 0x90EC;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER: u32 = 0x90ED;
#[allow(dead_code, non_upper_case_globals)]
pub const DISPATCH_INDIRECT_BUFFER: u32 = 0x90EE;
#[allow(dead_code, non_upper_case_globals)]
pub const DISPATCH_INDIRECT_BUFFER_BINDING: u32 = 0x90EF;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPUTE_SHADER_BIT: u32 = 0x00000020;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_OUTPUT_SYNCHRONOUS: u32 = 0x8242;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_NEXT_LOGGED_MESSAGE_LENGTH: u32 = 0x8243;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_CALLBACK_FUNCTION: u32 = 0x8244;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_CALLBACK_USER_PARAM: u32 = 0x8245;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SOURCE_API: u32 = 0x8246;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SOURCE_WINDOW_SYSTEM: u32 = 0x8247;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SOURCE_SHADER_COMPILER: u32 = 0x8248;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SOURCE_THIRD_PARTY: u32 = 0x8249;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SOURCE_APPLICATION: u32 = 0x824A;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SOURCE_OTHER: u32 = 0x824B;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_ERROR: u32 = 0x824C;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_DEPRECATED_BEHAVIOR: u32 = 0x824D;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_UNDEFINED_BEHAVIOR: u32 = 0x824E;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_PORTABILITY: u32 = 0x824F;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_PERFORMANCE: u32 = 0x8250;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_OTHER: u32 = 0x8251;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_DEBUG_MESSAGE_LENGTH: u32 = 0x9143;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_DEBUG_LOGGED_MESSAGES: u32 = 0x9144;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_LOGGED_MESSAGES: u32 = 0x9145;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SEVERITY_HIGH: u32 = 0x9146;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SEVERITY_MEDIUM: u32 = 0x9147;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SEVERITY_LOW: u32 = 0x9148;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_MARKER: u32 = 0x8268;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_PUSH_GROUP: u32 = 0x8269;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_TYPE_POP_GROUP: u32 = 0x826A;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_SEVERITY_NOTIFICATION: u32 = 0x826B;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_DEBUG_GROUP_STACK_DEPTH: u32 = 0x826C;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_GROUP_STACK_DEPTH: u32 = 0x826D;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER: u32 = 0x82E0;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER: u32 = 0x82E1;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM: u32 = 0x82E2;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY: u32 = 0x82E3;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_PIPELINE: u32 = 0x82E4;
#[allow(dead_code, non_upper_case_globals)]
pub const SAMPLER: u32 = 0x82E6;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_LABEL_LENGTH: u32 = 0x82E8;
#[allow(dead_code, non_upper_case_globals)]
pub const DEBUG_OUTPUT: u32 = 0x92E0;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_FLAG_DEBUG_BIT: u32 = 0x00000002;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_UNIFORM_LOCATIONS: u32 = 0x826E;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_DEFAULT_WIDTH: u32 = 0x9310;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_DEFAULT_HEIGHT: u32 = 0x9311;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_DEFAULT_LAYERS: u32 = 0x9312;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_DEFAULT_SAMPLES: u32 = 0x9313;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS: u32 = 0x9314;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAMEBUFFER_WIDTH: u32 = 0x9315;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAMEBUFFER_HEIGHT: u32 = 0x9316;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAMEBUFFER_LAYERS: u32 = 0x9317;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAMEBUFFER_SAMPLES: u32 = 0x9318;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_SUPPORTED: u32 = 0x826F;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_PREFERRED: u32 = 0x8270;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_RED_SIZE: u32 = 0x8271;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_GREEN_SIZE: u32 = 0x8272;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_BLUE_SIZE: u32 = 0x8273;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_ALPHA_SIZE: u32 = 0x8274;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_DEPTH_SIZE: u32 = 0x8275;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_STENCIL_SIZE: u32 = 0x8276;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_SHARED_SIZE: u32 = 0x8277;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_RED_TYPE: u32 = 0x8278;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_GREEN_TYPE: u32 = 0x8279;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_BLUE_TYPE: u32 = 0x827A;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_ALPHA_TYPE: u32 = 0x827B;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_DEPTH_TYPE: u32 = 0x827C;
#[allow(dead_code, non_upper_case_globals)]
pub const INTERNALFORMAT_STENCIL_TYPE: u32 = 0x827D;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_WIDTH: u32 = 0x827E;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_HEIGHT: u32 = 0x827F;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_DEPTH: u32 = 0x8280;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_LAYERS: u32 = 0x8281;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_DIMENSIONS: u32 = 0x8282;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_COMPONENTS: u32 = 0x8283;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_COMPONENTS: u32 = 0x8284;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_COMPONENTS: u32 = 0x8285;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_RENDERABLE: u32 = 0x8286;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_RENDERABLE: u32 = 0x8287;
#[allow(dead_code, non_upper_case_globals)]
pub const STENCIL_RENDERABLE: u32 = 0x8288;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_RENDERABLE: u32 = 0x8289;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_RENDERABLE_LAYERED: u32 = 0x828A;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAMEBUFFER_BLEND: u32 = 0x828B;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_PIXELS: u32 = 0x828C;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_PIXELS_FORMAT: u32 = 0x828D;
#[allow(dead_code, non_upper_case_globals)]
pub const READ_PIXELS_TYPE: u32 = 0x828E;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_IMAGE_FORMAT: u32 = 0x828F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_IMAGE_TYPE: u32 = 0x8290;
#[allow(dead_code, non_upper_case_globals)]
pub const GET_TEXTURE_IMAGE_FORMAT: u32 = 0x8291;
#[allow(dead_code, non_upper_case_globals)]
pub const GET_TEXTURE_IMAGE_TYPE: u32 = 0x8292;
#[allow(dead_code, non_upper_case_globals)]
pub const MIPMAP: u32 = 0x8293;
#[allow(dead_code, non_upper_case_globals)]
pub const MANUAL_GENERATE_MIPMAP: u32 = 0x8294;
#[allow(dead_code, non_upper_case_globals)]
pub const AUTO_GENERATE_MIPMAP: u32 = 0x8295;
#[allow(dead_code, non_upper_case_globals)]
pub const COLOR_ENCODING: u32 = 0x8296;
#[allow(dead_code, non_upper_case_globals)]
pub const SRGB_READ: u32 = 0x8297;
#[allow(dead_code, non_upper_case_globals)]
pub const SRGB_WRITE: u32 = 0x8298;
#[allow(dead_code, non_upper_case_globals)]
pub const FILTER: u32 = 0x829A;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_TEXTURE: u32 = 0x829B;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_CONTROL_TEXTURE: u32 = 0x829C;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_EVALUATION_TEXTURE: u32 = 0x829D;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_TEXTURE: u32 = 0x829E;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_TEXTURE: u32 = 0x829F;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPUTE_TEXTURE: u32 = 0x82A0;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_SHADOW: u32 = 0x82A1;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_GATHER: u32 = 0x82A2;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_GATHER_SHADOW: u32 = 0x82A3;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_IMAGE_LOAD: u32 = 0x82A4;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_IMAGE_STORE: u32 = 0x82A5;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_IMAGE_ATOMIC: u32 = 0x82A6;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_TEXEL_SIZE: u32 = 0x82A7;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_COMPATIBILITY_CLASS: u32 = 0x82A8;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_PIXEL_FORMAT: u32 = 0x82A9;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_PIXEL_TYPE: u32 = 0x82AA;
#[allow(dead_code, non_upper_case_globals)]
pub const SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST: u32 = 0x82AC;
#[allow(dead_code, non_upper_case_globals)]
pub const SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST: u32 = 0x82AD;
#[allow(dead_code, non_upper_case_globals)]
pub const SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE: u32 = 0x82AE;
#[allow(dead_code, non_upper_case_globals)]
pub const SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE: u32 = 0x82AF;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPRESSED_BLOCK_WIDTH: u32 = 0x82B1;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPRESSED_BLOCK_HEIGHT: u32 = 0x82B2;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_COMPRESSED_BLOCK_SIZE: u32 = 0x82B3;
#[allow(dead_code, non_upper_case_globals)]
pub const CLEAR_BUFFER: u32 = 0x82B4;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_VIEW: u32 = 0x82B5;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_COMPATIBILITY_CLASS: u32 = 0x82B6;
#[allow(dead_code, non_upper_case_globals)]
pub const FULL_SUPPORT: u32 = 0x82B7;
#[allow(dead_code, non_upper_case_globals)]
pub const CAVEAT_SUPPORT: u32 = 0x82B8;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_4_X_32: u32 = 0x82B9;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_2_X_32: u32 = 0x82BA;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_1_X_32: u32 = 0x82BB;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_4_X_16: u32 = 0x82BC;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_2_X_16: u32 = 0x82BD;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_1_X_16: u32 = 0x82BE;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_4_X_8: u32 = 0x82BF;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_2_X_8: u32 = 0x82C0;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_1_X_8: u32 = 0x82C1;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_11_11_10: u32 = 0x82C2;
#[allow(dead_code, non_upper_case_globals)]
pub const IMAGE_CLASS_10_10_10_2: u32 = 0x82C3;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_128_BITS: u32 = 0x82C4;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_96_BITS: u32 = 0x82C5;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_64_BITS: u32 = 0x82C6;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_48_BITS: u32 = 0x82C7;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_32_BITS: u32 = 0x82C8;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_24_BITS: u32 = 0x82C9;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_16_BITS: u32 = 0x82CA;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_8_BITS: u32 = 0x82CB;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_S3TC_DXT1_RGB: u32 = 0x82CC;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_S3TC_DXT1_RGBA: u32 = 0x82CD;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_S3TC_DXT3_RGBA: u32 = 0x82CE;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_S3TC_DXT5_RGBA: u32 = 0x82CF;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_RGTC1_RED: u32 = 0x82D0;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_RGTC2_RG: u32 = 0x82D1;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_BPTC_UNORM: u32 = 0x82D2;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_BPTC_FLOAT: u32 = 0x82D3;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM: u32 = 0x92E1;
#[allow(dead_code, non_upper_case_globals)]
pub const UNIFORM_BLOCK: u32 = 0x92E2;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_INPUT: u32 = 0x92E3;
#[allow(dead_code, non_upper_case_globals)]
pub const PROGRAM_OUTPUT: u32 = 0x92E4;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_VARIABLE: u32 = 0x92E5;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_STORAGE_BLOCK: u32 = 0x92E6;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_SUBROUTINE: u32 = 0x92E8;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_CONTROL_SUBROUTINE: u32 = 0x92E9;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_EVALUATION_SUBROUTINE: u32 = 0x92EA;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_SUBROUTINE: u32 = 0x92EB;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_SUBROUTINE: u32 = 0x92EC;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPUTE_SUBROUTINE: u32 = 0x92ED;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_SUBROUTINE_UNIFORM: u32 = 0x92EE;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_CONTROL_SUBROUTINE_UNIFORM: u32 = 0x92EF;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_EVALUATION_SUBROUTINE_UNIFORM: u32 = 0x92F0;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_SUBROUTINE_UNIFORM: u32 = 0x92F1;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_SUBROUTINE_UNIFORM: u32 = 0x92F2;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPUTE_SUBROUTINE_UNIFORM: u32 = 0x92F3;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_VARYING: u32 = 0x92F4;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_RESOURCES: u32 = 0x92F5;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_NAME_LENGTH: u32 = 0x92F6;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_NUM_ACTIVE_VARIABLES: u32 = 0x92F7;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_NUM_COMPATIBLE_SUBROUTINES: u32 = 0x92F8;
#[allow(dead_code, non_upper_case_globals)]
pub const NAME_LENGTH: u32 = 0x92F9;
#[allow(dead_code, non_upper_case_globals)]
pub const TYPE: u32 = 0x92FA;
#[allow(dead_code, non_upper_case_globals)]
pub const ARRAY_SIZE: u32 = 0x92FB;
#[allow(dead_code, non_upper_case_globals)]
pub const OFFSET: u32 = 0x92FC;
#[allow(dead_code, non_upper_case_globals)]
pub const BLOCK_INDEX: u32 = 0x92FD;
#[allow(dead_code, non_upper_case_globals)]
pub const ARRAY_STRIDE: u32 = 0x92FE;
#[allow(dead_code, non_upper_case_globals)]
pub const MATRIX_STRIDE: u32 = 0x92FF;
#[allow(dead_code, non_upper_case_globals)]
pub const IS_ROW_MAJOR: u32 = 0x9300;
#[allow(dead_code, non_upper_case_globals)]
pub const ATOMIC_COUNTER_BUFFER_INDEX: u32 = 0x9301;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_BINDING: u32 = 0x9302;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_DATA_SIZE: u32 = 0x9303;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_ACTIVE_VARIABLES: u32 = 0x9304;
#[allow(dead_code, non_upper_case_globals)]
pub const ACTIVE_VARIABLES: u32 = 0x9305;
#[allow(dead_code, non_upper_case_globals)]
pub const REFERENCED_BY_VERTEX_SHADER: u32 = 0x9306;
#[allow(dead_code, non_upper_case_globals)]
pub const REFERENCED_BY_TESS_CONTROL_SHADER: u32 = 0x9307;
#[allow(dead_code, non_upper_case_globals)]
pub const REFERENCED_BY_TESS_EVALUATION_SHADER: u32 = 0x9308;
#[allow(dead_code, non_upper_case_globals)]
pub const REFERENCED_BY_GEOMETRY_SHADER: u32 = 0x9309;
#[allow(dead_code, non_upper_case_globals)]
pub const REFERENCED_BY_FRAGMENT_SHADER: u32 = 0x930A;
#[allow(dead_code, non_upper_case_globals)]
pub const REFERENCED_BY_COMPUTE_SHADER: u32 = 0x930B;
#[allow(dead_code, non_upper_case_globals)]
pub const TOP_LEVEL_ARRAY_SIZE: u32 = 0x930C;
#[allow(dead_code, non_upper_case_globals)]
pub const TOP_LEVEL_ARRAY_STRIDE: u32 = 0x930D;
#[allow(dead_code, non_upper_case_globals)]
pub const LOCATION: u32 = 0x930E;
#[allow(dead_code, non_upper_case_globals)]
pub const LOCATION_INDEX: u32 = 0x930F;
#[allow(dead_code, non_upper_case_globals)]
pub const IS_PER_PATCH: u32 = 0x92E7;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_STORAGE_BUFFER: u32 = 0x90D2;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_STORAGE_BUFFER_BINDING: u32 = 0x90D3;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_STORAGE_BUFFER_START: u32 = 0x90D4;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_STORAGE_BUFFER_SIZE: u32 = 0x90D5;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_SHADER_STORAGE_BLOCKS: u32 = 0x90D6;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_GEOMETRY_SHADER_STORAGE_BLOCKS: u32 = 0x90D7;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS: u32 = 0x90D8;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS: u32 = 0x90D9;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_FRAGMENT_SHADER_STORAGE_BLOCKS: u32 = 0x90DA;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMPUTE_SHADER_STORAGE_BLOCKS: u32 = 0x90DB;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_SHADER_STORAGE_BLOCKS: u32 = 0x90DC;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_SHADER_STORAGE_BUFFER_BINDINGS: u32 = 0x90DD;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_SHADER_STORAGE_BLOCK_SIZE: u32 = 0x90DE;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT: u32 = 0x90DF;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_STORAGE_BARRIER_BIT: u32 = 0x00002000;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_SHADER_OUTPUT_RESOURCES: u32 = 0x8F39;
#[allow(dead_code, non_upper_case_globals)]
pub const DEPTH_STENCIL_TEXTURE_MODE: u32 = 0x90EA;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BUFFER_OFFSET: u32 = 0x919D;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BUFFER_SIZE: u32 = 0x919E;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BUFFER_OFFSET_ALIGNMENT: u32 = 0x919F;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_VIEW_MIN_LEVEL: u32 = 0x82DB;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_VIEW_NUM_LEVELS: u32 = 0x82DC;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_VIEW_MIN_LAYER: u32 = 0x82DD;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_VIEW_NUM_LAYERS: u32 = 0x82DE;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_IMMUTABLE_LEVELS: u32 = 0x82DF;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_BINDING: u32 = 0x82D4;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_ATTRIB_RELATIVE_OFFSET: u32 = 0x82D5;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_BINDING_DIVISOR: u32 = 0x82D6;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_BINDING_OFFSET: u32 = 0x82D7;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_BINDING_STRIDE: u32 = 0x82D8;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_ATTRIB_RELATIVE_OFFSET: u32 = 0x82D9;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_ATTRIB_BINDINGS: u32 = 0x82DA;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_BINDING_BUFFER: u32 = 0x8F4F;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_4_4: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_VERTEX_ATTRIB_STRIDE: u32 = 0x82E5;
#[allow(dead_code, non_upper_case_globals)]
pub const PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED: u32 = 0x8221;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_BUFFER_BINDING: u32 = 0x8C2A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_PERSISTENT_BIT: u32 = 0x0040;
#[allow(dead_code, non_upper_case_globals)]
pub const MAP_COHERENT_BIT: u32 = 0x0080;
#[allow(dead_code, non_upper_case_globals)]
pub const DYNAMIC_STORAGE_BIT: u32 = 0x0100;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIENT_STORAGE_BIT: u32 = 0x0200;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIENT_MAPPED_BUFFER_BARRIER_BIT: u32 = 0x00004000;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_IMMUTABLE_STORAGE: u32 = 0x821F;
#[allow(dead_code, non_upper_case_globals)]
pub const BUFFER_STORAGE_FLAGS: u32 = 0x8220;
#[allow(dead_code, non_upper_case_globals)]
pub const CLEAR_TEXTURE: u32 = 0x9365;
#[allow(dead_code, non_upper_case_globals)]
pub const LOCATION_COMPONENT: u32 = 0x934A;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_INDEX: u32 = 0x934B;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_BUFFER_STRIDE: u32 = 0x934C;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_BUFFER: u32 = 0x9192;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_BUFFER_BARRIER_BIT: u32 = 0x00008000;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_BUFFER_BINDING: u32 = 0x9193;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_RESULT_NO_WAIT: u32 = 0x9194;
#[allow(dead_code, non_upper_case_globals)]
pub const MIRROR_CLAMP_TO_EDGE: u32 = 0x8743;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_4_5: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_LOST: u32 = 0x0507;
#[allow(dead_code, non_upper_case_globals)]
pub const NEGATIVE_ONE_TO_ONE: u32 = 0x935E;
#[allow(dead_code, non_upper_case_globals)]
pub const ZERO_TO_ONE: u32 = 0x935F;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_ORIGIN: u32 = 0x935C;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIP_DEPTH_MODE: u32 = 0x935D;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_WAIT_INVERTED: u32 = 0x8E17;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_NO_WAIT_INVERTED: u32 = 0x8E18;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_BY_REGION_WAIT_INVERTED: u32 = 0x8E19;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_BY_REGION_NO_WAIT_INVERTED: u32 = 0x8E1A;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_CULL_DISTANCES: u32 = 0x82F9;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_COMBINED_CLIP_AND_CULL_DISTANCES: u32 = 0x82FA;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_TARGET: u32 = 0x1006;
#[allow(dead_code, non_upper_case_globals)]
pub const QUERY_TARGET: u32 = 0x82EA;
#[allow(dead_code, non_upper_case_globals)]
pub const GUILTY_CONTEXT_RESET: u32 = 0x8253;
#[allow(dead_code, non_upper_case_globals)]
pub const INNOCENT_CONTEXT_RESET: u32 = 0x8254;
#[allow(dead_code, non_upper_case_globals)]
pub const UNKNOWN_CONTEXT_RESET: u32 = 0x8255;
#[allow(dead_code, non_upper_case_globals)]
pub const RESET_NOTIFICATION_STRATEGY: u32 = 0x8256;
#[allow(dead_code, non_upper_case_globals)]
pub const LOSE_CONTEXT_ON_RESET: u32 = 0x8252;
#[allow(dead_code, non_upper_case_globals)]
pub const NO_RESET_NOTIFICATION: u32 = 0x8261;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_FLAG_ROBUST_ACCESS_BIT: u32 = 0x00000004;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_RELEASE_BEHAVIOR: u32 = 0x82FB;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_RELEASE_BEHAVIOR_FLUSH: u32 = 0x82FC;
#[allow(dead_code, non_upper_case_globals)]
pub const VERSION_4_6: u32 = 1;
#[allow(dead_code, non_upper_case_globals)]
pub const SHADER_BINARY_FORMAT_SPIR_V: u32 = 0x9551;
#[allow(dead_code, non_upper_case_globals)]
pub const SPIR_V_BINARY: u32 = 0x9552;
#[allow(dead_code, non_upper_case_globals)]
pub const PARAMETER_BUFFER: u32 = 0x80EE;
#[allow(dead_code, non_upper_case_globals)]
pub const PARAMETER_BUFFER_BINDING: u32 = 0x80EF;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_FLAG_NO_ERROR_BIT: u32 = 0x00000008;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTICES_SUBMITTED: u32 = 0x82EE;
#[allow(dead_code, non_upper_case_globals)]
pub const PRIMITIVES_SUBMITTED: u32 = 0x82EF;
#[allow(dead_code, non_upper_case_globals)]
pub const VERTEX_SHADER_INVOCATIONS: u32 = 0x82F0;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_CONTROL_SHADER_PATCHES: u32 = 0x82F1;
#[allow(dead_code, non_upper_case_globals)]
pub const TESS_EVALUATION_SHADER_INVOCATIONS: u32 = 0x82F2;
#[allow(dead_code, non_upper_case_globals)]
pub const GEOMETRY_SHADER_PRIMITIVES_EMITTED: u32 = 0x82F3;
#[allow(dead_code, non_upper_case_globals)]
pub const FRAGMENT_SHADER_INVOCATIONS: u32 = 0x82F4;
#[allow(dead_code, non_upper_case_globals)]
pub const COMPUTE_SHADER_INVOCATIONS: u32 = 0x82F5;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIPPING_INPUT_PRIMITIVES: u32 = 0x82F6;
#[allow(dead_code, non_upper_case_globals)]
pub const CLIPPING_OUTPUT_PRIMITIVES: u32 = 0x82F7;
#[allow(dead_code, non_upper_case_globals)]
pub const POLYGON_OFFSET_CLAMP: u32 = 0x8E1B;
#[allow(dead_code, non_upper_case_globals)]
pub const SPIR_V_EXTENSIONS: u32 = 0x9553;
#[allow(dead_code, non_upper_case_globals)]
pub const NUM_SPIR_V_EXTENSIONS: u32 = 0x9554;
#[allow(dead_code, non_upper_case_globals)]
pub const TEXTURE_MAX_ANISOTROPY: u32 = 0x84FE;
#[allow(dead_code, non_upper_case_globals)]
pub const MAX_TEXTURE_MAX_ANISOTROPY: u32 = 0x84FF;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_OVERFLOW: u32 = 0x82EC;
#[allow(dead_code, non_upper_case_globals)]
pub const TRANSFORM_FEEDBACK_STREAM_OVERFLOW: u32 = 0x82ED;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_EAC_R11: u32 = 0x9383;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_EAC_RG11: u32 = 0x9384;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_ETC2_RGB: u32 = 0x9385;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_ETC2_RGBA: u32 = 0x9386;
#[allow(dead_code, non_upper_case_globals)]
pub const VIEW_CLASS_ETC2_EAC_RGBA: u32 = 0x9387;
#[allow(dead_code, non_upper_case_globals)]
pub const CONTEXT_ROBUST_ACCESS: u32 = 0x90F3;
pub struct GL {
address_cull_face: fn(u32),
address_front_face: fn(u32),
address_hint: fn(u32, u32),
address_line_width: fn(f32),
address_point_size: fn(f32),
address_polygon_mode: fn(u32, u32),
address_scissor: fn(i32, i32, i32, i32),
address_tex_parameter_f: fn(u32, u32, f32),
address_tex_parameter_fv: fn(u32, u32, *const f32),
address_tex_parameter_i: fn(u32, u32, i32),
address_tex_parameter_iv: fn(u32, u32, *const i32),
address_tex_image_1d: fn(u32, i32, i32, i32, i32, u32, u32, *const u8),
address_tex_image_2d: fn(u32, i32, i32, i32, i32, i32, u32, u32, *const u8),
address_draw_buffer: fn(u32),
address_clear: fn(u32),
address_clear_color: fn(f32, f32, f32, f32),
address_clear_stencil: fn(i32),
address_clear_depth: fn(f64),
address_stencil_mask: fn(u32),
address_color_mask: fn(u8, u8, u8, u8),
address_depth_mask: fn(u8),
address_disable: fn(u32),
address_enable: fn(u32),
address_finish: fn(),
address_flush: fn(),
address_blend_func: fn(u32, u32),
address_log_ic_op: fn(u32),
address_stencil_func: fn(u32, i32, u32),
address_stencil_op: fn(u32, u32, u32),
address_depth_func: fn(u32),
address_pixel_store_f: fn(u32, f32),
address_pixel_store_i: fn(u32, i32),
address_read_buffer: fn(u32),
address_read_pixels: fn(i32, i32, i32, i32, u32, u32, *mut u8),
address_get_boolean_v: fn(u32, *mut u8),
address_get_double_v: fn(u32, *mut f64),
address_get_error: fn() -> u32,
address_get_float_v: fn(u32, *mut f32),
address_get_integer_v: fn(u32, *mut i32),
address_get_tex_image: fn(u32, i32, u32, u32, *mut u8),
address_get_tex_parameter_fv: fn(u32, u32, *mut f32),
address_get_tex_parameter_iv: fn(u32, u32, *mut i32),
address_get_tex_level_parameter_fv: fn(u32, i32, u32, *mut f32),
address_get_tex_level_parameter_iv: fn(u32, i32, u32, *mut i32),
address_is_enabled: fn(u32) -> u8,
address_depth_range: fn(f64, f64),
address_viewport: fn(i32, i32, i32, i32),
address_draw_arrays: fn(u32, i32, i32),
address_draw_elements: fn(u32, i32, u32, *const u8),
address_get_pointer_v: fn(u32, *const *mut u8),
address_polygon_offset: fn(f32, f32),
address_copy_tex_image_1d: fn(u32, i32, u32, i32, i32, i32, i32),
address_copy_tex_image_2d: fn(u32, i32, u32, i32, i32, i32, i32, i32),
address_copy_tex_sub_image_1d: fn(u32, i32, i32, i32, i32, i32),
address_copy_tex_sub_image_2d: fn(u32, i32, i32, i32, i32, i32, i32, i32),
address_tex_sub_image_1d: fn(u32, i32, i32, i32, u32, u32, *const u8),
address_tex_sub_image_2d: fn(u32, i32, i32, i32, i32, i32, u32, u32, *const u8),
address_bind_texture: fn(u32, u32),
address_delete_textures: fn(i32, *const u32),
address_gen_textures: fn(i32, *mut u32),
address_is_texture: fn(u32) -> u8,
address_draw_range_elements: fn(u32, u32, u32, i32, u32, *const u8),
address_tex_image_3d: fn(u32, i32, i32, i32, i32, i32, i32, u32, u32, *const u8),
address_tex_sub_image_3d: fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, u32, *const u8),
address_copy_tex_sub_image_3d: fn(u32, i32, i32, i32, i32, i32, i32, i32, i32),
address_active_texture: fn(u32),
address_sample_coverage: fn(f32, u8),
address_compressed_tex_image_3d: fn(u32, i32, u32, i32, i32, i32, i32, i32, *const u8),
address_compressed_tex_image_2d: fn(u32, i32, u32, i32, i32, i32, i32, *const u8),
address_compressed_tex_image_1d: fn(u32, i32, u32, i32, i32, i32, *const u8),
address_compressed_tex_sub_image_3d:
fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, i32, *const u8),
address_compressed_tex_sub_image_2d: fn(u32, i32, i32, i32, i32, i32, u32, i32, *const u8),
address_compressed_tex_sub_image_1d: fn(u32, i32, i32, i32, u32, i32, *const u8),
address_get_compressed_tex_image: fn(u32, i32, *mut u8),
address_blend_func_separate: fn(u32, u32, u32, u32),
address_multi_draw_arrays: fn(u32, *const i32, *const i32, i32),
address_multi_draw_elements: fn(u32, *const i32, u32, *const *const u8, i32),
address_point_parameter_f: fn(u32, f32),
address_point_parameter_fv: fn(u32, *const f32),
address_point_parameter_i: fn(u32, i32),
address_point_parameter_iv: fn(u32, *const i32),
address_blend_color: fn(f32, f32, f32, f32),
address_blend_equation: fn(u32),
address_gen_queries: fn(i32, *mut u32),
address_delete_queries: fn(i32, *const u32),
address_is_query: fn(u32) -> u8,
address_begin_query: fn(u32, u32),
address_end_query: fn(u32),
address_get_query_iv: fn(u32, u32, *mut i32),
address_get_query_object_iv: fn(u32, u32, *mut i32),
address_get_query_object_uiv: fn(u32, u32, *mut u32),
address_bind_buffer: fn(u32, u32),
address_delete_buffers: fn(i32, *const u32),
address_gen_buffers: fn(i32, *mut u32),
address_is_buffer: fn(u32) -> u8,
address_buffer_data: fn(u32, i64, *const u8, u32),
address_buffer_sub_data: fn(u32, i64, i64, *const u8),
address_get_buffer_sub_data: fn(u32, i64, i64, *mut u8),
address_unmap_buffer: fn(u32) -> u8,
address_get_buffer_parameter_iv: fn(u32, u32, *mut i32),
address_get_buffer_pointer_v: fn(u32, u32, *const *mut u8),
address_blend_equation_separate: fn(u32, u32),
address_draw_buffers: fn(i32, *const u32),
address_stencil_op_separate: fn(u32, u32, u32, u32),
address_stencil_func_separate: fn(u32, u32, i32, u32),
address_stencil_mask_separate: fn(u32, u32),
address_attach_shader: fn(u32, u32),
address_bind_attrib_location: fn(u32, u32, *const i8),
address_compile_shader: fn(u32),
address_create_program: fn() -> u32,
address_create_shader: fn(u32) -> u32,
address_delete_program: fn(u32),
address_delete_shader: fn(u32),
address_detach_shader: fn(u32, u32),
address_disable_vertex_attrib_array: fn(u32),
address_enable_vertex_attrib_array: fn(u32),
address_get_active_attrib: fn(u32, u32, i32, *mut i32, *mut i32, *mut u32, *mut i8),
address_get_active_uniform: fn(u32, u32, i32, *mut i32, *mut i32, *mut u32, *mut i8),
address_get_attached_shaders: fn(u32, i32, *mut i32, *mut u32),
address_get_attrib_location: fn(u32, *const i8) -> i32,
address_get_program_iv: fn(u32, u32, *mut i32),
address_get_program_info_log: fn(u32, i32, *mut i32, *mut i8),
address_get_shader_iv: fn(u32, u32, *mut i32),
address_get_shader_info_log: fn(u32, i32, *mut i32, *mut i8),
address_get_shader_source: fn(u32, i32, *mut i32, *mut i8),
address_get_uniform_location: fn(u32, *const i8) -> i32,
address_get_uniform_fv: fn(u32, i32, *mut f32),
address_get_uniform_iv: fn(u32, i32, *mut i32),
address_get_vertex_attrib_dv: fn(u32, u32, *mut f64),
address_get_vertex_attrib_fv: fn(u32, u32, *mut f32),
address_get_vertex_attrib_iv: fn(u32, u32, *mut i32),
address_get_vertex_attrib_pointer_v: fn(u32, u32, *const *mut u8),
address_is_program: fn(u32) -> u8,
address_is_shader: fn(u32) -> u8,
address_link_program: fn(u32),
address_shader_source: fn(u32, i32, *const *const i8, *const i32),
address_use_program: fn(u32),
address_uniform_1f: fn(i32, f32),
address_uniform_2f: fn(i32, f32, f32),
address_uniform_3f: fn(i32, f32, f32, f32),
address_uniform_4f: fn(i32, f32, f32, f32, f32),
address_uniform_1i: fn(i32, i32),
address_uniform_2i: fn(i32, i32, i32),
address_uniform_3i: fn(i32, i32, i32, i32),
address_uniform_4i: fn(i32, i32, i32, i32, i32),
address_uniform_1fv: fn(i32, i32, *const f32),
address_uniform_2fv: fn(i32, i32, *const f32),
address_uniform_3fv: fn(i32, i32, *const f32),
address_uniform_4fv: fn(i32, i32, *const f32),
address_uniform_1iv: fn(i32, i32, *const i32),
address_uniform_2iv: fn(i32, i32, *const i32),
address_uniform_3iv: fn(i32, i32, *const i32),
address_uniform_4iv: fn(i32, i32, *const i32),
address_uniform_matrix_2fv: fn(i32, i32, u8, *const f32),
address_uniform_matrix_3fv: fn(i32, i32, u8, *const f32),
address_uniform_matrix_4fv: fn(i32, i32, u8, *const f32),
address_validate_program: fn(u32),
address_vertex_attrib_1d: fn(u32, f64),
address_vertex_attrib_1dv: fn(u32, *const f64),
address_vertex_attrib_1f: fn(u32, f32),
address_vertex_attrib_1fv: fn(u32, *const f32),
address_vertex_attrib_1s: fn(u32, i16),
address_vertex_attrib_1sv: fn(u32, *const i16),
address_vertex_attrib_2d: fn(u32, f64, f64),
address_vertex_attrib_2dv: fn(u32, *const f64),
address_vertex_attrib_2f: fn(u32, f32, f32),
address_vertex_attrib_2fv: fn(u32, *const f32),
address_vertex_attrib_2s: fn(u32, i16, i16),
address_vertex_attrib_2sv: fn(u32, *const i16),
address_vertex_attrib_3d: fn(u32, f64, f64, f64),
address_vertex_attrib_3dv: fn(u32, *const f64),
address_vertex_attrib_3f: fn(u32, f32, f32, f32),
address_vertex_attrib_3fv: fn(u32, *const f32),
address_vertex_attrib_3s: fn(u32, i16, i16, i16),
address_vertex_attrib_3sv: fn(u32, *const i16),
address_vertex_attrib_4nbv: fn(u32, *const i8),
address_vertex_attrib_4niv: fn(u32, *const i32),
address_vertex_attrib_4nsv: fn(u32, *const i16),
address_vertex_attrib_4nub: fn(u32, u8, u8, u8, u8),
address_vertex_attrib_4nubv: fn(u32, *const u8),
address_vertex_attrib_4nuiv: fn(u32, *const u32),
address_vertex_attrib_4nusv: fn(u32, *const u16),
address_vertex_attrib_4bv: fn(u32, *const i8),
address_vertex_attrib_4d: fn(u32, f64, f64, f64, f64),
address_vertex_attrib_4dv: fn(u32, *const f64),
address_vertex_attrib_4f: fn(u32, f32, f32, f32, f32),
address_vertex_attrib_4fv: fn(u32, *const f32),
address_vertex_attrib_4iv: fn(u32, *const i32),
address_vertex_attrib_4s: fn(u32, i16, i16, i16, i16),
address_vertex_attrib_4sv: fn(u32, *const i16),
address_vertex_attrib_4ubv: fn(u32, *const u8),
address_vertex_attrib_4uiv: fn(u32, *const u32),
address_vertex_attrib_4usv: fn(u32, *const u16),
address_vertex_attrib_pointer: fn(u32, i32, u32, u8, i32, *const u8),
address_uniform_matrix_2x3fv: fn(i32, i32, u8, *const f32),
address_uniform_matrix_3x2fv: fn(i32, i32, u8, *const f32),
address_uniform_matrix_2x4fv: fn(i32, i32, u8, *const f32),
address_uniform_matrix_4x2fv: fn(i32, i32, u8, *const f32),
address_uniform_matrix_3x4fv: fn(i32, i32, u8, *const f32),
address_uniform_matrix_4x3fv: fn(i32, i32, u8, *const f32),
address_color_mask_i: fn(u32, u8, u8, u8, u8),
address_enable_i: fn(u32, u32),
address_disable_i: fn(u32, u32),
address_is_enabled_i: fn(u32, u32) -> u8,
address_begin_transform_feedback: fn(u32),
address_end_transform_feedback: fn(),
address_bind_buffer_range: fn(u32, u32, u32, i64, i64),
address_bind_buffer_base: fn(u32, u32, u32),
address_transform_feedback_varyings: fn(u32, i32, *const *const i8, u32),
address_get_transform_feedback_varying:
fn(u32, u32, i32, *mut i32, *mut i32, *mut u32, *mut i8),
address_clamp_color: fn(u32, u32),
address_begin_conditional_render: fn(u32, u32),
address_end_conditional_render: fn(),
address_vertex_attrib_i_pointer: fn(u32, i32, u32, i32, *const u8),
address_get_vertex_attrib_iiv: fn(u32, u32, *mut i32),
address_get_vertex_attrib_iuiv: fn(u32, u32, *mut u32),
address_vertex_attrib_i1i: fn(u32, i32),
address_vertex_attrib_i2i: fn(u32, i32, i32),
address_vertex_attrib_i3i: fn(u32, i32, i32, i32),
address_vertex_attrib_i4i: fn(u32, i32, i32, i32, i32),
address_vertex_attrib_i1ui: fn(u32, u32),
address_vertex_attrib_i2ui: fn(u32, u32, u32),
address_vertex_attrib_i3ui: fn(u32, u32, u32, u32),
address_vertex_attrib_i4ui: fn(u32, u32, u32, u32, u32),
address_vertex_attrib_i1iv: fn(u32, *const i32),
address_vertex_attrib_i2iv: fn(u32, *const i32),
address_vertex_attrib_i3iv: fn(u32, *const i32),
address_vertex_attrib_i4iv: fn(u32, *const i32),
address_vertex_attrib_i1uiv: fn(u32, *const u32),
address_vertex_attrib_i2uiv: fn(u32, *const u32),
address_vertex_attrib_i3uiv: fn(u32, *const u32),
address_vertex_attrib_i4uiv: fn(u32, *const u32),
address_vertex_attrib_i4bv: fn(u32, *const i8),
address_vertex_attrib_i4sv: fn(u32, *const i16),
address_vertex_attrib_i4ubv: fn(u32, *const u8),
address_vertex_attrib_i4usv: fn(u32, *const u16),
address_get_uniform_uiv: fn(u32, i32, *mut u32),
address_bind_frag_data_location: fn(u32, u32, *const i8),
address_get_frag_data_location: fn(u32, *const i8) -> i32,
address_uniform_1ui: fn(i32, u32),
address_uniform_2ui: fn(i32, u32, u32),
address_uniform_3ui: fn(i32, u32, u32, u32),
address_uniform_4ui: fn(i32, u32, u32, u32, u32),
address_uniform_1uiv: fn(i32, i32, *const u32),
address_uniform_2uiv: fn(i32, i32, *const u32),
address_uniform_3uiv: fn(i32, i32, *const u32),
address_uniform_4uiv: fn(i32, i32, *const u32),
address_tex_parameter_iiv: fn(u32, u32, *const i32),
address_tex_parameter_iuiv: fn(u32, u32, *const u32),
address_get_tex_parameter_iiv: fn(u32, u32, *mut i32),
address_get_tex_parameter_iuiv: fn(u32, u32, *mut u32),
address_clear_buffer_iv: fn(u32, i32, *const i32),
address_clear_buffer_uiv: fn(u32, i32, *const u32),
address_clear_buffer_fv: fn(u32, i32, *const f32),
address_clear_buffer_fi: fn(u32, i32, f32, i32),
address_is_renderbuffer: fn(u32) -> u8,
address_bind_renderbuffer: fn(u32, u32),
address_delete_renderbuffers: fn(i32, *const u32),
address_gen_renderbuffers: fn(i32, *mut u32),
address_renderbuffer_storage: fn(u32, u32, i32, i32),
address_get_renderbuffer_parameter_iv: fn(u32, u32, *mut i32),
address_is_framebuffer: fn(u32) -> u8,
address_bind_framebuffer: fn(u32, u32),
address_delete_framebuffers: fn(i32, *const u32),
address_gen_framebuffers: fn(i32, *mut u32),
address_check_framebuffer_status: fn(u32) -> u32,
address_framebuffer_texture_1d: fn(u32, u32, u32, u32, i32),
address_framebuffer_texture_2d: fn(u32, u32, u32, u32, i32),
address_framebuffer_texture_3d: fn(u32, u32, u32, u32, i32, i32),
address_framebuffer_renderbuffer: fn(u32, u32, u32, u32),
address_get_framebuffer_attach_ment_parameter_iv: fn(u32, u32, u32, *mut i32),
address_generate_mipmap: fn(u32),
address_blit_framebuffer: fn(i32, i32, i32, i32, i32, i32, i32, i32, u32, u32),
address_renderbuffer_storage_multisample: fn(u32, i32, u32, i32, i32),
address_framebuffer_texture_layer: fn(u32, u32, u32, i32, i32),
address_flush_mapped_buffer_range: fn(u32, i64, i64),
address_bind_vertex_array: fn(u32),
address_delete_vertex_arrays: fn(i32, *const u32),
address_gen_vertex_arrays: fn(i32, *mut u32),
address_is_vertex_array: fn(u32) -> u8,
address_draw_arrays_instanced: fn(u32, i32, i32, i32),
address_draw_elements_instanced: fn(u32, i32, u32, *const u8, i32),
address_tex_buffer: fn(u32, u32, u32),
address_primitive_restart_index: fn(u32),
address_copy_buffer_sub_data: fn(u32, u32, i64, i64, i64),
address_get_uniform_indices: fn(u32, i32, *const *const i8, *mut u32),
address_get_active_uniform_siv: fn(u32, i32, *const u32, u32, *mut i32),
address_get_active_uniform_name: fn(u32, u32, i32, *mut i32, *mut i8),
address_get_uniform_block_index: fn(u32, *const i8) -> u32,
address_get_active_uniform_block_iv: fn(u32, u32, u32, *mut i32),
address_get_active_uniform_block_name: fn(u32, u32, i32, *mut i32, *mut i8),
address_uniform_block_binding: fn(u32, u32, u32),
address_draw_elements_base_vertex: fn(u32, i32, u32, *const u8, i32),
address_draw_range_elements_base_vertex: fn(u32, u32, u32, i32, u32, *const u8, i32),
address_draw_elements_instanced_base_vertex: fn(u32, i32, u32, *const u8, i32, i32),
address_multi_draw_elements_base_vertex:
fn(u32, *const i32, u32, *const *const u8, i32, *const i32),
address_provoking_vertex: fn(u32),
address_fence_sync: fn(u32, u32) -> *const *mut u8,
address_is_sync: fn(*const *mut u8) -> u8,
address_delete_sync: fn(*const *mut u8),
address_client_wait_sync: fn(*const *mut u8, u32, u64) -> u32,
address_wait_sync: fn(*const *mut u8, u32, u64),
address_get_integer_64v: fn(u32, *mut i64),
address_get_sync_iv: fn(*const *mut u8, u32, i32, *mut i32, *mut i32),
address_get_buffer_parameter_i64v: fn(u32, u32, *mut i64),
address_framebuffer_texture: fn(u32, u32, u32, i32),
address_tex_image_2d_multisample: fn(u32, i32, u32, i32, i32, u8),
address_tex_image_3d_multisample: fn(u32, i32, u32, i32, i32, i32, u8),
address_get_multisample_fv: fn(u32, u32, *mut f32),
address_sample_mask_i: fn(u32, u32),
address_bind_frag_data_location_indexed: fn(u32, u32, u32, *const i8),
address_get_frag_data_index: fn(u32, *const i8) -> i32,
address_gen_samplers: fn(i32, *mut u32),
address_delete_samplers: fn(i32, *const u32),
address_is_sampler: fn(u32) -> u8,
address_bind_sampler: fn(u32, u32),
address_sampler_parameter_i: fn(u32, u32, i32),
address_sampler_parameter_iv: fn(u32, u32, *const i32),
address_sampler_parameter_f: fn(u32, u32, f32),
address_sampler_parameter_fv: fn(u32, u32, *const f32),
address_sampler_parameter_iiv: fn(u32, u32, *const i32),
address_sampler_parameter_iuiv: fn(u32, u32, *const u32),
address_get_sampler_parameter_iv: fn(u32, u32, *mut i32),
address_get_sampler_parameter_iiv: fn(u32, u32, *mut i32),
address_get_sampler_parameter_fv: fn(u32, u32, *mut f32),
address_get_sampler_parameter_iuiv: fn(u32, u32, *mut u32),
address_query_counter: fn(u32, u32),
address_get_query_object_i64v: fn(u32, u32, *mut i64),
address_get_query_object_ui64v: fn(u32, u32, *mut u64),
address_vertex_attrib_divisor: fn(u32, u32),
address_vertex_attrib_p1ui: fn(u32, u32, u8, u32),
address_vertex_attrib_p1uiv: fn(u32, u32, u8, *const u32),
address_vertex_attrib_p2ui: fn(u32, u32, u8, u32),
address_vertex_attrib_p2uiv: fn(u32, u32, u8, *const u32),
address_vertex_attrib_p3ui: fn(u32, u32, u8, u32),
address_vertex_attrib_p3uiv: fn(u32, u32, u8, *const u32),
address_vertex_attrib_p4ui: fn(u32, u32, u8, u32),
address_vertex_attrib_p4uiv: fn(u32, u32, u8, *const u32),
address_min_sample_shading: fn(f32),
address_blend_equation_i: fn(u32, u32),
address_blend_equation_separate_i: fn(u32, u32, u32),
address_blend_func_i: fn(u32, u32, u32),
address_blend_func_separate_i: fn(u32, u32, u32, u32, u32),
address_draw_arrays_indirect: fn(u32, *const u8),
address_draw_elements_indirect: fn(u32, u32, *const u8),
address_uniform_1d: fn(i32, f64),
address_uniform_2d: fn(i32, f64, f64),
address_uniform_3d: fn(i32, f64, f64, f64),
address_uniform_4d: fn(i32, f64, f64, f64, f64),
address_uniform_1dv: fn(i32, i32, *const f64),
address_uniform_2dv: fn(i32, i32, *const f64),
address_uniform_3dv: fn(i32, i32, *const f64),
address_uniform_4dv: fn(i32, i32, *const f64),
address_uniform_matrix_2dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_3dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_4dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_2x3dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_2x4dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_3x2dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_3x4dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_4x2dv: fn(i32, i32, u8, *const f64),
address_uniform_matrix_4x3dv: fn(i32, i32, u8, *const f64),
address_get_uniform_dv: fn(u32, i32, *mut f64),
address_get_subroutine_uniform_location: fn(u32, u32, *const i8) -> i32,
address_get_subroutine_index: fn(u32, u32, *const i8) -> u32,
address_get_active_subroutine_uniform_iv: fn(u32, u32, u32, u32, *mut i32),
address_get_active_subroutine_uniform_name: fn(u32, u32, u32, i32, *mut i32, *mut i8),
address_get_active_subroutine_name: fn(u32, u32, u32, i32, *mut i32, *mut i8),
address_uniform_subroutines_uiv: fn(u32, i32, *const u32),
address_get_uniform_subroutine_uiv: fn(u32, i32, *mut u32),
address_get_program_stage_iv: fn(u32, u32, u32, *mut i32),
address_atch_parameter_i: fn(u32, i32),
address_atch_parameter_fv: fn(u32, *const f32),
address_bind_transform_feedback: fn(u32, u32),
address_delete_transform_feedback_s: fn(i32, *const u32),
address_gen_transform_feedback_s: fn(i32, *mut u32),
address_is_transform_feedback: fn(u32) -> u8,
address_pause_transform_feedback: fn(),
address_resume_transform_feedback: fn(),
address_draw_transform_feedback: fn(u32, u32),
address_draw_transform_feedback_stream: fn(u32, u32, u32),
address_begin_query_indexed: fn(u32, u32, u32),
address_end_query_indexed: fn(u32, u32),
address_get_query_indexed_iv: fn(u32, u32, u32, *mut i32),
address_release_shader_compiler: fn(),
address_shader_binary: fn(i32, *const u32, u32, *const u8, i32),
address_get_shader_precision_format: fn(u32, u32, *mut i32, *mut i32),
address_depth_range_f: fn(f32, f32),
address_clear_depth_f: fn(f32),
address_get_program_binary: fn(u32, i32, *mut i32, *mut u32, *mut u8),
address_program_binary: fn(u32, u32, *const u8, i32),
address_program_parameter_i: fn(u32, u32, i32),
address_use_program_stage_s: fn(u32, u32, u32),
address_active_shader_program: fn(u32, u32),
address_create_shader_program_v: fn(u32, i32, *const *const i8) -> u32,
address_bind_program_pipeline: fn(u32),
address_delete_program_pipelines: fn(i32, *const u32),
address_gen_program_pipelines: fn(i32, *mut u32),
address_is_program_pipeline: fn(u32) -> u8,
address_get_program_pipeline_iv: fn(u32, u32, *mut i32),
address_program_uniform_1i: fn(u32, i32, i32),
address_program_uniform_1iv: fn(u32, i32, i32, *const i32),
address_program_uniform_1f: fn(u32, i32, f32),
address_program_uniform_1fv: fn(u32, i32, i32, *const f32),
address_program_uniform_1d: fn(u32, i32, f64),
address_program_uniform_1dv: fn(u32, i32, i32, *const f64),
address_program_uniform_1ui: fn(u32, i32, u32),
address_program_uniform_1uiv: fn(u32, i32, i32, *const u32),
address_program_uniform_2i: fn(u32, i32, i32, i32),
address_program_uniform_2iv: fn(u32, i32, i32, *const i32),
address_program_uniform_2f: fn(u32, i32, f32, f32),
address_program_uniform_2fv: fn(u32, i32, i32, *const f32),
address_program_uniform_2d: fn(u32, i32, f64, f64),
address_program_uniform_2dv: fn(u32, i32, i32, *const f64),
address_program_uniform_2ui: fn(u32, i32, u32, u32),
address_program_uniform_2uiv: fn(u32, i32, i32, *const u32),
address_program_uniform_3i: fn(u32, i32, i32, i32, i32),
address_program_uniform_3iv: fn(u32, i32, i32, *const i32),
address_program_uniform_3f: fn(u32, i32, f32, f32, f32),
address_program_uniform_3fv: fn(u32, i32, i32, *const f32),
address_program_uniform_3d: fn(u32, i32, f64, f64, f64),
address_program_uniform_3dv: fn(u32, i32, i32, *const f64),
address_program_uniform_3ui: fn(u32, i32, u32, u32, u32),
address_program_uniform_3uiv: fn(u32, i32, i32, *const u32),
address_program_uniform_4i: fn(u32, i32, i32, i32, i32, i32),
address_program_uniform_4iv: fn(u32, i32, i32, *const i32),
address_program_uniform_4f: fn(u32, i32, f32, f32, f32, f32),
address_program_uniform_4fv: fn(u32, i32, i32, *const f32),
address_program_uniform_4d: fn(u32, i32, f64, f64, f64, f64),
address_program_uniform_4dv: fn(u32, i32, i32, *const f64),
address_program_uniform_4ui: fn(u32, i32, u32, u32, u32, u32),
address_program_uniform_4uiv: fn(u32, i32, i32, *const u32),
address_program_uniform_matrix_2fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_3fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_4fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_2dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_3dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_4dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_2x3fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_3x2fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_2x4fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_4x2fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_3x4fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_4x3fv: fn(u32, i32, i32, u8, *const f32),
address_program_uniform_matrix_2x3dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_3x2dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_2x4dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_4x2dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_3x4dv: fn(u32, i32, i32, u8, *const f64),
address_program_uniform_matrix_4x3dv: fn(u32, i32, i32, u8, *const f64),
address_validate_program_pipeline: fn(u32),
address_get_program_pipeline_info_log: fn(u32, i32, *mut i32, *mut i8),
address_vertex_attrib_l1d: fn(u32, f64),
address_vertex_attrib_l2d: fn(u32, f64, f64),
address_vertex_attrib_l3d: fn(u32, f64, f64, f64),
address_vertex_attrib_l4d: fn(u32, f64, f64, f64, f64),
address_vertex_attrib_l1dv: fn(u32, *const f64),
address_vertex_attrib_l2dv: fn(u32, *const f64),
address_vertex_attrib_l3dv: fn(u32, *const f64),
address_vertex_attrib_l4dv: fn(u32, *const f64),
address_vertex_attrib_l_pointer: fn(u32, i32, u32, i32, *const u8),
address_get_vertex_attrib_ldv: fn(u32, u32, *mut f64),
address_viewport_array_v: fn(u32, i32, *const f32),
address_viewport_indexed_f: fn(u32, f32, f32, f32, f32),
address_viewport_indexed_fv: fn(u32, *const f32),
address_scissor_array_v: fn(u32, i32, *const i32),
address_scissor_indexed: fn(u32, i32, i32, i32, i32),
address_scissor_indexed_v: fn(u32, *const i32),
address_depth_range_array_v: fn(u32, i32, *const f64),
address_depth_range_indexed: fn(u32, f64, f64),
address_draw_arrays_instanced_base_instance: fn(u32, i32, i32, i32, u32),
address_draw_elements_instanced_base_instance: fn(u32, i32, u32, *const u8, i32, u32),
address_draw_elements_instanced_base_vertex_base_instance:
fn(u32, i32, u32, *const u8, i32, i32, u32),
address_get_internal_formativ: fn(u32, u32, u32, i32, *mut i32),
address_get_active_atomic_counter_buffer_iv: fn(u32, u32, u32, *mut i32),
address_bind_image_texture: fn(u32, u32, i32, u8, i32, u32, u32),
address_memory_barrier: fn(u32),
address_tex_storage_1d: fn(u32, i32, u32, i32),
address_tex_storage_2d: fn(u32, i32, u32, i32, i32),
address_tex_storage_3d: fn(u32, i32, u32, i32, i32, i32),
address_draw_transform_feedback_instanced: fn(u32, u32, i32),
address_draw_transform_feedback_stream_instanced: fn(u32, u32, u32, i32),
address_clear_buffer_data: fn(u32, u32, u32, u32, *const u8),
address_clear_buffer_sub_data: fn(u32, u32, i64, i64, u32, u32, *const u8),
address_dispatch_compute: fn(u32, u32, u32),
address_dispatch_compute_indirect: fn(i64),
address_copy_image_sub_data:
fn(u32, u32, i32, i32, i32, i32, u32, u32, i32, i32, i32, i32, i32, i32, i32),
address_framebuffer_parameter_i: fn(u32, u32, i32),
address_get_framebuffer_parameter_iv: fn(u32, u32, *mut i32),
address_get_internal_formati64v: fn(u32, u32, u32, i32, *mut i64),
address_invalidate_tex_sub_image: fn(u32, i32, i32, i32, i32, i32, i32, i32),
address_invalidate_tex_image: fn(u32, i32),
address_invalidate_buffer_sub_data: fn(u32, i64, i64),
address_invalidate_buffer_data: fn(u32),
address_invalidate_framebuffer: fn(u32, i32, *const u32),
address_invalidate_sub_framebuffer: fn(u32, i32, *const u32, i32, i32, i32, i32),
address_multi_draw_arrays_indirect: fn(u32, *const u8, i32, i32),
address_multi_draw_elements_indirect: fn(u32, u32, *const u8, i32, i32),
address_get_program_interface_iv: fn(u32, u32, u32, *mut i32),
address_get_program_resource_index: fn(u32, u32, *const i8) -> u32,
address_get_program_resource_name: fn(u32, u32, u32, i32, *mut i32, *mut i8),
address_get_program_resource_iv: fn(u32, u32, u32, i32, *const u32, i32, *mut i32, *mut i32),
address_get_program_resource_location: fn(u32, u32, *const i8) -> i32,
address_get_program_resource_location_index: fn(u32, u32, *const i8) -> i32,
address_shader_storage_block_binding: fn(u32, u32, u32),
address_tex_buffer_range: fn(u32, u32, u32, i64, i64),
address_tex_storage_2d_multisample: fn(u32, i32, u32, i32, i32, u8),
address_tex_storage_3d_multisample: fn(u32, i32, u32, i32, i32, i32, u8),
address_texture_view: fn(u32, u32, u32, u32, u32, u32, u32, u32),
address_bind_vertex_buffer: fn(u32, u32, i64, i32),
address_vertex_attrib_format: fn(u32, i32, u32, u8, u32),
address_vertex_attrib_i_format: fn(u32, i32, u32, u32),
address_vertex_attrib_l_format: fn(u32, i32, u32, u32),
address_vertex_attrib_binding: fn(u32, u32),
address_vertex_binding_divisor: fn(u32, u32),
address_debug_message_control: fn(u32, u32, u32, i32, *const u32, u8),
address_debug_message_insert: fn(u32, u32, u32, u32, i32, *const i8),
address_debug_message_call_back: fn(*const *mut u8, *const u8),
address_get_debug_message_log:
fn(u32, i32, *mut u32, *mut u32, *mut u32, *mut u32, *mut i32, *mut i8) -> u32,
address_push_debug_group: fn(u32, u32, i32, *const i8),
address_pop_debug_group: fn(),
address_object_label: fn(u32, u32, i32, *const i8),
address_get_object_label: fn(u32, u32, i32, *mut i32, *mut i8),
address_object_ptr_label: fn(*const u8, i32, *const i8),
address_get_object_ptr_label: fn(*const u8, i32, *mut i32, *mut i8),
address_buffer_storage: fn(u32, i64, *const u8, u32),
address_clear_tex_image: fn(u32, i32, u32, u32, *const u8),
address_clear_tex_sub_image: fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, u32, *const u8),
address_bind_buffers_base: fn(u32, u32, i32, *const u32),
address_bind_buffers_range: fn(u32, u32, i32, *const u32, *const i64, *const i64),
address_bind_textures: fn(u32, i32, *const u32),
address_bind_samplers: fn(u32, i32, *const u32),
address_bind_image_textures: fn(u32, i32, *const u32),
address_bind_vertex_buffers: fn(u32, i32, *const u32, *const i64, *const i32),
address_clip_control: fn(u32, u32),
address_create_transform_feedback_s: fn(i32, *mut u32),
address_transform_feedback_buffer_base: fn(u32, u32, u32),
address_transform_feedback_buffer_range: fn(u32, u32, u32, i64, i64),
address_get_transform_feedback_iv: fn(u32, u32, *mut i32),
address_create_buffers: fn(i32, *mut u32),
address_named_buffer_storage: fn(u32, i64, *const u8, u32),
address_named_buffer_data: fn(u32, i64, *const u8, u32),
address_named_buffer_sub_data: fn(u32, i64, i64, *const u8),
address_copy_named_buffer_sub_data: fn(u32, u32, i64, i64, i64),
address_clear_named_buffer_data: fn(u32, u32, u32, u32, *const u8),
address_clear_named_buffer_sub_data: fn(u32, u32, i64, i64, u32, u32, *const u8),
address_unmap_named_buffer: fn(u32) -> u8,
address_flush_mapped_named_buffer_range: fn(u32, i64, i64),
address_get_named_buffer_parameter_iv: fn(u32, u32, *mut i32),
address_get_named_buffer_parameter_i64v: fn(u32, u32, *mut i64),
address_get_named_buffer_pointer_v: fn(u32, u32, *const *mut u8),
address_get_named_buffer_sub_data: fn(u32, i64, i64, *mut u8),
address_create_framebuffers: fn(i32, *mut u32),
address_named_framebuffer_renderbuffer: fn(u32, u32, u32, u32),
address_named_framebuffer_parameter_i: fn(u32, u32, i32),
address_named_framebuffer_texture: fn(u32, u32, u32, i32),
address_named_framebuffer_texture_layer: fn(u32, u32, u32, i32, i32),
address_named_framebuffer_draw_buffer: fn(u32, u32),
address_named_framebuffer_draw_buffers: fn(u32, i32, *const u32),
address_named_framebuffer_read_buffer: fn(u32, u32),
address_invalidate_named_framebuffer_data: fn(u32, i32, *const u32),
address_invalidate_named_framebuffer_sub_data: fn(u32, i32, *const u32, i32, i32, i32, i32),
address_clear_named_framebuffer_iv: fn(u32, u32, i32, *const i32),
address_clear_named_framebuffer_uiv: fn(u32, u32, i32, *const u32),
address_clear_named_framebuffer_fv: fn(u32, u32, i32, *const f32),
address_clear_named_framebuffer_fi: fn(u32, u32, i32, f32, i32),
address_blit_named_framebuffer: fn(u32, u32, i32, i32, i32, i32, i32, i32, i32, i32, u32, u32),
address_check_named_framebuffer_status: fn(u32, u32) -> u32,
address_get_named_framebuffer_parameter_iv: fn(u32, u32, *mut i32),
address_get_named_framebuffer_attach_ment_parameter_iv: fn(u32, u32, u32, *mut i32),
address_create_renderbuffers: fn(i32, *mut u32),
address_named_renderbuffer_storage: fn(u32, u32, i32, i32),
address_named_renderbuffer_storage_multisample: fn(u32, i32, u32, i32, i32),
address_get_named_renderbuffer_parameter_iv: fn(u32, u32, *mut i32),
address_create_textures: fn(u32, i32, *mut u32),
address_texture_buffer: fn(u32, u32, u32),
address_texture_buffer_range: fn(u32, u32, u32, i64, i64),
address_texture_storage_1d: fn(u32, i32, u32, i32),
address_texture_storage_2d: fn(u32, i32, u32, i32, i32),
address_texture_storage_3d: fn(u32, i32, u32, i32, i32, i32),
address_texture_storage_2d_multisample: fn(u32, i32, u32, i32, i32, u8),
address_texture_storage_3d_multisample: fn(u32, i32, u32, i32, i32, i32, u8),
address_texture_sub_image_1d: fn(u32, i32, i32, i32, u32, u32, *const u8),
address_texture_sub_image_2d: fn(u32, i32, i32, i32, i32, i32, u32, u32, *const u8),
address_texture_sub_image_3d: fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, u32, *const u8),
address_compressed_texture_sub_image_1d: fn(u32, i32, i32, i32, u32, i32, *const u8),
address_compressed_texture_sub_image_2d: fn(u32, i32, i32, i32, i32, i32, u32, i32, *const u8),
address_compressed_texture_sub_image_3d:
fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, i32, *const u8),
address_copy_texture_sub_image_1d: fn(u32, i32, i32, i32, i32, i32),
address_copy_texture_sub_image_2d: fn(u32, i32, i32, i32, i32, i32, i32, i32),
address_copy_texture_sub_image_3d: fn(u32, i32, i32, i32, i32, i32, i32, i32, i32),
address_texture_parameter_f: fn(u32, u32, f32),
address_texture_parameter_fv: fn(u32, u32, *const f32),
address_texture_parameter_i: fn(u32, u32, i32),
address_texture_parameter_iiv: fn(u32, u32, *const i32),
address_texture_parameter_iuiv: fn(u32, u32, *const u32),
address_texture_parameter_iv: fn(u32, u32, *const i32),
address_generate_texture_mipmap: fn(u32),
address_bind_texture_unit: fn(u32, u32),
address_get_texture_image: fn(u32, i32, u32, u32, i32, *mut u8),
address_get_compressed_texture_image: fn(u32, i32, i32, *mut u8),
address_get_texture_level_parameter_fv: fn(u32, i32, u32, *mut f32),
address_get_texture_level_parameter_iv: fn(u32, i32, u32, *mut i32),
address_get_texture_parameter_fv: fn(u32, u32, *mut f32),
address_get_texture_parameter_iiv: fn(u32, u32, *mut i32),
address_get_texture_parameter_iuiv: fn(u32, u32, *mut u32),
address_get_texture_parameter_iv: fn(u32, u32, *mut i32),
address_create_vertex_arrays: fn(i32, *mut u32),
address_disable_vertex_array_attrib: fn(u32, u32),
address_enable_vertex_array_attrib: fn(u32, u32),
address_vertex_array_element_buffer: fn(u32, u32),
address_vertex_array_vertex_buffer: fn(u32, u32, u32, i64, i32),
address_vertex_array_vertex_buffers: fn(u32, u32, i32, *const u32, *const i64, *const i32),
address_vertex_array_attrib_binding: fn(u32, u32, u32),
address_vertex_array_attrib_format: fn(u32, u32, i32, u32, u8, u32),
address_vertex_array_attrib_i_format: fn(u32, u32, i32, u32, u32),
address_vertex_array_attrib_l_format: fn(u32, u32, i32, u32, u32),
address_vertex_array_binding_divisor: fn(u32, u32, u32),
address_get_vertex_array_iv: fn(u32, u32, *mut i32),
address_get_vertex_array_indexed_iv: fn(u32, u32, u32, *mut i32),
address_get_vertex_array_indexed_64iv: fn(u32, u32, u32, *mut i64),
address_create_samplers: fn(i32, *mut u32),
address_create_program_pipelines: fn(i32, *mut u32),
address_create_queries: fn(u32, i32, *mut u32),
address_get_query_buffer_object_i64v: fn(u32, u32, u32, i64),
address_get_query_buffer_object_iv: fn(u32, u32, u32, i64),
address_get_query_buffer_object_ui64v: fn(u32, u32, u32, i64),
address_get_query_buffer_object_uiv: fn(u32, u32, u32, i64),
address_memory_barrier_by_region: fn(u32),
address_get_texture_sub_image:
fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, u32, i32, *mut u8),
address_get_compressed_texture_sub_image:
fn(u32, i32, i32, i32, i32, i32, i32, i32, i32, *mut u8),
address_get_graphics_reset_status: fn() -> u32,
address_get_n_compressed_tex_image: fn(u32, i32, i32, *mut u8),
address_get_n_tex_image: fn(u32, i32, u32, u32, i32, *mut u8),
address_get_n_uniform_dv: fn(u32, i32, i32, *mut f64),
address_get_n_uniform_fv: fn(u32, i32, i32, *mut f32),
address_get_n_uniform_iv: fn(u32, i32, i32, *mut i32),
address_get_n_uniform_uiv: fn(u32, i32, i32, *mut u32),
address_read_n_pixels: fn(i32, i32, i32, i32, u32, u32, i32, *mut u8),
address_texture_barrier: fn(),
address_specialize_shader: fn(u32, *const i8, u32, *const u32, *const u32),
address_multi_draw_arrays_indirect_count: fn(u32, *const u8, i64, i32, i32),
address_multi_draw_elements_indirect_count: fn(u32, u32, *const u8, i64, i32, i32),
address_polygon_offset_clamp: fn(f32, f32, f32),
}
impl GL {
pub fn load_from_function<F>(&mut self, mut load_function: F)
where
F: FnMut(&'static str) -> *const core::ffi::c_void,
{
unsafe {
self.address_cull_face = core::mem::transmute(load_function("glCullFace"));
self.address_front_face = core::mem::transmute(load_function("glFrontFace"));
self.address_hint = core::mem::transmute(load_function("glHint"));
self.address_line_width = core::mem::transmute(load_function("glLineWidth"));
self.address_point_size = core::mem::transmute(load_function("glPointSize"));
self.address_polygon_mode = core::mem::transmute(load_function("glPolygonMode"));
self.address_scissor = core::mem::transmute(load_function("glScissor"));
self.address_tex_parameter_f = core::mem::transmute(load_function("glTexParameterf"));
self.address_tex_parameter_fv = core::mem::transmute(load_function("glTexParameterfv"));
self.address_tex_parameter_i = core::mem::transmute(load_function("glTexParameteri"));
self.address_tex_parameter_iv = core::mem::transmute(load_function("glTexParameteriv"));
self.address_tex_image_1d = core::mem::transmute(load_function("glTexImage1D"));
self.address_tex_image_2d = core::mem::transmute(load_function("glTexImage2D"));
self.address_draw_buffer = core::mem::transmute(load_function("glDrawBuffer"));
self.address_clear = core::mem::transmute(load_function("glClear"));
self.address_clear_color = core::mem::transmute(load_function("glClearColor"));
self.address_clear_stencil = core::mem::transmute(load_function("glClearStencil"));
self.address_clear_depth = core::mem::transmute(load_function("glClearDepth"));
self.address_stencil_mask = core::mem::transmute(load_function("glStencilMask"));
self.address_color_mask = core::mem::transmute(load_function("glColorMask"));
self.address_depth_mask = core::mem::transmute(load_function("glDepthMask"));
self.address_disable = core::mem::transmute(load_function("glDisable"));
self.address_enable = core::mem::transmute(load_function("glEnable"));
self.address_finish = core::mem::transmute(load_function("glFinish"));
self.address_flush = core::mem::transmute(load_function("glFlush"));
self.address_blend_func = core::mem::transmute(load_function("glBlendFunc"));
self.address_log_ic_op = core::mem::transmute(load_function("glLogicOp"));
self.address_stencil_func = core::mem::transmute(load_function("glStencilFunc"));
self.address_stencil_op = core::mem::transmute(load_function("glStencilOp"));
self.address_depth_func = core::mem::transmute(load_function("glDepthFunc"));
self.address_pixel_store_f = core::mem::transmute(load_function("glPixelStoref"));
self.address_pixel_store_i = core::mem::transmute(load_function("glPixelStorei"));
self.address_read_buffer = core::mem::transmute(load_function("glReadBuffer"));
self.address_read_pixels = core::mem::transmute(load_function("glReadPixels"));
self.address_get_boolean_v = core::mem::transmute(load_function("glGetBooleanv"));
self.address_get_double_v = core::mem::transmute(load_function("glGetDoublev"));
self.address_get_error = core::mem::transmute(load_function("glGetError"));
self.address_get_float_v = core::mem::transmute(load_function("glGetFloatv"));
self.address_get_integer_v = core::mem::transmute(load_function("glGetIntegerv"));
self.address_get_tex_image = core::mem::transmute(load_function("glGetTexImage"));
self.address_get_tex_parameter_fv =
core::mem::transmute(load_function("glGetTexParameterfv"));
self.address_get_tex_parameter_iv =
core::mem::transmute(load_function("glGetTexParameteriv"));
self.address_get_tex_level_parameter_fv =
core::mem::transmute(load_function("glGetTexLevelParameterfv"));
self.address_get_tex_level_parameter_iv =
core::mem::transmute(load_function("glGetTexLevelParameteriv"));
self.address_is_enabled = core::mem::transmute(load_function("glIsEnabled"));
self.address_depth_range = core::mem::transmute(load_function("glDepthRange"));
self.address_viewport = core::mem::transmute(load_function("glViewport"));
self.address_draw_arrays = core::mem::transmute(load_function("glDrawArrays"));
self.address_draw_elements = core::mem::transmute(load_function("glDrawElements"));
self.address_get_pointer_v = core::mem::transmute(load_function("glGetPointerv"));
self.address_polygon_offset = core::mem::transmute(load_function("glPolygonOffset"));
self.address_copy_tex_image_1d =
core::mem::transmute(load_function("glCopyTexImage1D"));
self.address_copy_tex_image_2d =
core::mem::transmute(load_function("glCopyTexImage2D"));
self.address_copy_tex_sub_image_1d =
core::mem::transmute(load_function("glCopyTexSubImage1D"));
self.address_copy_tex_sub_image_2d =
core::mem::transmute(load_function("glCopyTexSubImage2D"));
self.address_tex_sub_image_1d = core::mem::transmute(load_function("glTexSubImage1D"));
self.address_tex_sub_image_2d = core::mem::transmute(load_function("glTexSubImage2D"));
self.address_bind_texture = core::mem::transmute(load_function("glBindTexture"));
self.address_delete_textures = core::mem::transmute(load_function("glDeleteTextures"));
self.address_gen_textures = core::mem::transmute(load_function("glGenTextures"));
self.address_is_texture = core::mem::transmute(load_function("glIsTexture"));
self.address_draw_range_elements =
core::mem::transmute(load_function("glDrawRangeElements"));
self.address_tex_image_3d = core::mem::transmute(load_function("glTexImage3D"));
self.address_tex_sub_image_3d = core::mem::transmute(load_function("glTexSubImage3D"));
self.address_copy_tex_sub_image_3d =
core::mem::transmute(load_function("glCopyTexSubImage3D"));
self.address_active_texture = core::mem::transmute(load_function("glActiveTexture"));
self.address_sample_coverage = core::mem::transmute(load_function("glSampleCoverage"));
self.address_compressed_tex_image_3d =
core::mem::transmute(load_function("glCompressedTexImage3D"));
self.address_compressed_tex_image_2d =
core::mem::transmute(load_function("glCompressedTexImage2D"));
self.address_compressed_tex_image_1d =
core::mem::transmute(load_function("glCompressedTexImage1D"));
self.address_compressed_tex_sub_image_3d =
core::mem::transmute(load_function("glCompressedTexSubImage3D"));
self.address_compressed_tex_sub_image_2d =
core::mem::transmute(load_function("glCompressedTexSubImage2D"));
self.address_compressed_tex_sub_image_1d =
core::mem::transmute(load_function("glCompressedTexSubImage1D"));
self.address_get_compressed_tex_image =
core::mem::transmute(load_function("glGetCompressedTexImage"));
self.address_blend_func_separate =
core::mem::transmute(load_function("glBlendFuncSeparate"));
self.address_multi_draw_arrays =
core::mem::transmute(load_function("glMultiDrawArrays"));
self.address_multi_draw_elements =
core::mem::transmute(load_function("glMultiDrawElements"));
self.address_point_parameter_f =
core::mem::transmute(load_function("glPointParameterf"));
self.address_point_parameter_fv =
core::mem::transmute(load_function("glPointParameterfv"));
self.address_point_parameter_i =
core::mem::transmute(load_function("glPointParameteri"));
self.address_point_parameter_iv =
core::mem::transmute(load_function("glPointParameteriv"));
self.address_blend_color = core::mem::transmute(load_function("glBlendColor"));
self.address_blend_equation = core::mem::transmute(load_function("glBlendEquation"));
self.address_gen_queries = core::mem::transmute(load_function("glGenQueries"));
self.address_delete_queries = core::mem::transmute(load_function("glDeleteQueries"));
self.address_is_query = core::mem::transmute(load_function("glIsQuery"));
self.address_begin_query = core::mem::transmute(load_function("glBeginQuery"));
self.address_end_query = core::mem::transmute(load_function("glEndQuery"));
self.address_get_query_iv = core::mem::transmute(load_function("glGetQueryiv"));
self.address_get_query_object_iv =
core::mem::transmute(load_function("glGetQueryObjectiv"));
self.address_get_query_object_uiv =
core::mem::transmute(load_function("glGetQueryObjectuiv"));
self.address_bind_buffer = core::mem::transmute(load_function("glBindBuffer"));
self.address_delete_buffers = core::mem::transmute(load_function("glDeleteBuffers"));
self.address_gen_buffers = core::mem::transmute(load_function("glGenBuffers"));
self.address_is_buffer = core::mem::transmute(load_function("glIsBuffer"));
self.address_buffer_data = core::mem::transmute(load_function("glBufferData"));
self.address_buffer_sub_data = core::mem::transmute(load_function("glBufferSubData"));
self.address_get_buffer_sub_data =
core::mem::transmute(load_function("glGetBufferSubData"));
self.address_unmap_buffer = core::mem::transmute(load_function("glUnmapBuffer"));
self.address_get_buffer_parameter_iv =
core::mem::transmute(load_function("glGetBufferParameteriv"));
self.address_get_buffer_pointer_v =
core::mem::transmute(load_function("glGetBufferPointerv"));
self.address_blend_equation_separate =
core::mem::transmute(load_function("glBlendEquationSeparate"));
self.address_draw_buffers = core::mem::transmute(load_function("glDrawBuffers"));
self.address_stencil_op_separate =
core::mem::transmute(load_function("glStencilOpSeparate"));
self.address_stencil_func_separate =
core::mem::transmute(load_function("glStencilFuncSeparate"));
self.address_stencil_mask_separate =
core::mem::transmute(load_function("glStencilMaskSeparate"));
self.address_attach_shader = core::mem::transmute(load_function("glAttachShader"));
self.address_bind_attrib_location =
core::mem::transmute(load_function("glBindAttribLocation"));
self.address_compile_shader = core::mem::transmute(load_function("glCompileShader"));
self.address_create_program = core::mem::transmute(load_function("glCreateProgram"));
self.address_create_shader = core::mem::transmute(load_function("glCreateShader"));
self.address_delete_program = core::mem::transmute(load_function("glDeleteProgram"));
self.address_delete_shader = core::mem::transmute(load_function("glDeleteShader"));
self.address_detach_shader = core::mem::transmute(load_function("glDetachShader"));
self.address_disable_vertex_attrib_array =
core::mem::transmute(load_function("glDisableVertexAttribArray"));
self.address_enable_vertex_attrib_array =
core::mem::transmute(load_function("glEnableVertexAttribArray"));
self.address_get_active_attrib =
core::mem::transmute(load_function("glGetActiveAttrib"));
self.address_get_active_uniform =
core::mem::transmute(load_function("glGetActiveUniform"));
self.address_get_attached_shaders =
core::mem::transmute(load_function("glGetAttachedShaders"));
self.address_get_attrib_location =
core::mem::transmute(load_function("glGetAttribLocation"));
self.address_get_program_iv = core::mem::transmute(load_function("glGetProgramiv"));
self.address_get_program_info_log =
core::mem::transmute(load_function("glGetProgramInfoLog"));
self.address_get_shader_iv = core::mem::transmute(load_function("glGetShaderiv"));
self.address_get_shader_info_log =
core::mem::transmute(load_function("glGetShaderInfoLog"));
self.address_get_shader_source =
core::mem::transmute(load_function("glGetShaderSource"));
self.address_get_uniform_location =
core::mem::transmute(load_function("glGetUniformLocation"));
self.address_get_uniform_fv = core::mem::transmute(load_function("glGetUniformfv"));
self.address_get_uniform_iv = core::mem::transmute(load_function("glGetUniformiv"));
self.address_get_vertex_attrib_dv =
core::mem::transmute(load_function("glGetVertexAttribdv"));
self.address_get_vertex_attrib_fv =
core::mem::transmute(load_function("glGetVertexAttribfv"));
self.address_get_vertex_attrib_iv =
core::mem::transmute(load_function("glGetVertexAttribiv"));
self.address_get_vertex_attrib_pointer_v =
core::mem::transmute(load_function("glGetVertexAttribPointerv"));
self.address_is_program = core::mem::transmute(load_function("glIsProgram"));
self.address_is_shader = core::mem::transmute(load_function("glIsShader"));
self.address_link_program = core::mem::transmute(load_function("glLinkProgram"));
self.address_shader_source = core::mem::transmute(load_function("glShaderSource"));
self.address_use_program = core::mem::transmute(load_function("glUseProgram"));
self.address_uniform_1f = core::mem::transmute(load_function("glUniform1f"));
self.address_uniform_2f = core::mem::transmute(load_function("glUniform2f"));
self.address_uniform_3f = core::mem::transmute(load_function("glUniform3f"));
self.address_uniform_4f = core::mem::transmute(load_function("glUniform4f"));
self.address_uniform_1i = core::mem::transmute(load_function("glUniform1i"));
self.address_uniform_2i = core::mem::transmute(load_function("glUniform2i"));
self.address_uniform_3i = core::mem::transmute(load_function("glUniform3i"));
self.address_uniform_4i = core::mem::transmute(load_function("glUniform4i"));
self.address_uniform_1fv = core::mem::transmute(load_function("glUniform1fv"));
self.address_uniform_2fv = core::mem::transmute(load_function("glUniform2fv"));
self.address_uniform_3fv = core::mem::transmute(load_function("glUniform3fv"));
self.address_uniform_4fv = core::mem::transmute(load_function("glUniform4fv"));
self.address_uniform_1iv = core::mem::transmute(load_function("glUniform1iv"));
self.address_uniform_2iv = core::mem::transmute(load_function("glUniform2iv"));
self.address_uniform_3iv = core::mem::transmute(load_function("glUniform3iv"));
self.address_uniform_4iv = core::mem::transmute(load_function("glUniform4iv"));
self.address_uniform_matrix_2fv =
core::mem::transmute(load_function("glUniformMatrix2fv"));
self.address_uniform_matrix_3fv =
core::mem::transmute(load_function("glUniformMatrix3fv"));
self.address_uniform_matrix_4fv =
core::mem::transmute(load_function("glUniformMatrix4fv"));
self.address_validate_program =
core::mem::transmute(load_function("glValidateProgram"));
self.address_vertex_attrib_1d = core::mem::transmute(load_function("glVertexAttrib1d"));
self.address_vertex_attrib_1dv =
core::mem::transmute(load_function("glVertexAttrib1dv"));
self.address_vertex_attrib_1f = core::mem::transmute(load_function("glVertexAttrib1f"));
self.address_vertex_attrib_1fv =
core::mem::transmute(load_function("glVertexAttrib1fv"));
self.address_vertex_attrib_1s = core::mem::transmute(load_function("glVertexAttrib1s"));
self.address_vertex_attrib_1sv =
core::mem::transmute(load_function("glVertexAttrib1sv"));
self.address_vertex_attrib_2d = core::mem::transmute(load_function("glVertexAttrib2d"));
self.address_vertex_attrib_2dv =
core::mem::transmute(load_function("glVertexAttrib2dv"));
self.address_vertex_attrib_2f = core::mem::transmute(load_function("glVertexAttrib2f"));
self.address_vertex_attrib_2fv =
core::mem::transmute(load_function("glVertexAttrib2fv"));
self.address_vertex_attrib_2s = core::mem::transmute(load_function("glVertexAttrib2s"));
self.address_vertex_attrib_2sv =
core::mem::transmute(load_function("glVertexAttrib2sv"));
self.address_vertex_attrib_3d = core::mem::transmute(load_function("glVertexAttrib3d"));
self.address_vertex_attrib_3dv =
core::mem::transmute(load_function("glVertexAttrib3dv"));
self.address_vertex_attrib_3f = core::mem::transmute(load_function("glVertexAttrib3f"));
self.address_vertex_attrib_3fv =
core::mem::transmute(load_function("glVertexAttrib3fv"));
self.address_vertex_attrib_3s = core::mem::transmute(load_function("glVertexAttrib3s"));
self.address_vertex_attrib_3sv =
core::mem::transmute(load_function("glVertexAttrib3sv"));
self.address_vertex_attrib_4nbv =
core::mem::transmute(load_function("glVertexAttrib4Nbv"));
self.address_vertex_attrib_4niv =
core::mem::transmute(load_function("glVertexAttrib4Niv"));
self.address_vertex_attrib_4nsv =
core::mem::transmute(load_function("glVertexAttrib4Nsv"));
self.address_vertex_attrib_4nub =
core::mem::transmute(load_function("glVertexAttrib4Nub"));
self.address_vertex_attrib_4nubv =
core::mem::transmute(load_function("glVertexAttrib4Nubv"));
self.address_vertex_attrib_4nuiv =
core::mem::transmute(load_function("glVertexAttrib4Nuiv"));
self.address_vertex_attrib_4nusv =
core::mem::transmute(load_function("glVertexAttrib4Nusv"));
self.address_vertex_attrib_4bv =
core::mem::transmute(load_function("glVertexAttrib4bv"));
self.address_vertex_attrib_4d = core::mem::transmute(load_function("glVertexAttrib4d"));
self.address_vertex_attrib_4dv =
core::mem::transmute(load_function("glVertexAttrib4dv"));
self.address_vertex_attrib_4f = core::mem::transmute(load_function("glVertexAttrib4f"));
self.address_vertex_attrib_4fv =
core::mem::transmute(load_function("glVertexAttrib4fv"));
self.address_vertex_attrib_4iv =
core::mem::transmute(load_function("glVertexAttrib4iv"));
self.address_vertex_attrib_4s = core::mem::transmute(load_function("glVertexAttrib4s"));
self.address_vertex_attrib_4sv =
core::mem::transmute(load_function("glVertexAttrib4sv"));
self.address_vertex_attrib_4ubv =
core::mem::transmute(load_function("glVertexAttrib4ubv"));
self.address_vertex_attrib_4uiv =
core::mem::transmute(load_function("glVertexAttrib4uiv"));
self.address_vertex_attrib_4usv =
core::mem::transmute(load_function("glVertexAttrib4usv"));
self.address_vertex_attrib_pointer =
core::mem::transmute(load_function("glVertexAttribPointer"));
self.address_uniform_matrix_2x3fv =
core::mem::transmute(load_function("glUniformMatrix2x3fv"));
self.address_uniform_matrix_3x2fv =
core::mem::transmute(load_function("glUniformMatrix3x2fv"));
self.address_uniform_matrix_2x4fv =
core::mem::transmute(load_function("glUniformMatrix2x4fv"));
self.address_uniform_matrix_4x2fv =
core::mem::transmute(load_function("glUniformMatrix4x2fv"));
self.address_uniform_matrix_3x4fv =
core::mem::transmute(load_function("glUniformMatrix3x4fv"));
self.address_uniform_matrix_4x3fv =
core::mem::transmute(load_function("glUniformMatrix4x3fv"));
self.address_color_mask_i = core::mem::transmute(load_function("glColorMaski"));
self.address_enable_i = core::mem::transmute(load_function("glEnablei"));
self.address_disable_i = core::mem::transmute(load_function("glDisablei"));
self.address_is_enabled_i = core::mem::transmute(load_function("glIsEnabledi"));
self.address_begin_transform_feedback =
core::mem::transmute(load_function("glBeginTransformFeedback"));
self.address_end_transform_feedback =
core::mem::transmute(load_function("glEndTransformFeedback"));
self.address_bind_buffer_range =
core::mem::transmute(load_function("glBindBufferRange"));
self.address_bind_buffer_base = core::mem::transmute(load_function("glBindBufferBase"));
self.address_transform_feedback_varyings =
core::mem::transmute(load_function("glTransformFeedbackVaryings"));
self.address_get_transform_feedback_varying =
core::mem::transmute(load_function("glGetTransformFeedbackVarying"));
self.address_clamp_color = core::mem::transmute(load_function("glClampColor"));
self.address_begin_conditional_render =
core::mem::transmute(load_function("glBeginConditionalRender"));
self.address_end_conditional_render =
core::mem::transmute(load_function("glEndConditionalRender"));
self.address_vertex_attrib_i_pointer =
core::mem::transmute(load_function("glVertexAttribIPointer"));
self.address_get_vertex_attrib_iiv =
core::mem::transmute(load_function("glGetVertexAttribIiv"));
self.address_get_vertex_attrib_iuiv =
core::mem::transmute(load_function("glGetVertexAttribIuiv"));
self.address_vertex_attrib_i1i =
core::mem::transmute(load_function("glVertexAttribI1i"));
self.address_vertex_attrib_i2i =
core::mem::transmute(load_function("glVertexAttribI2i"));
self.address_vertex_attrib_i3i =
core::mem::transmute(load_function("glVertexAttribI3i"));
self.address_vertex_attrib_i4i =
core::mem::transmute(load_function("glVertexAttribI4i"));
self.address_vertex_attrib_i1ui =
core::mem::transmute(load_function("glVertexAttribI1ui"));
self.address_vertex_attrib_i2ui =
core::mem::transmute(load_function("glVertexAttribI2ui"));
self.address_vertex_attrib_i3ui =
core::mem::transmute(load_function("glVertexAttribI3ui"));
self.address_vertex_attrib_i4ui =
core::mem::transmute(load_function("glVertexAttribI4ui"));
self.address_vertex_attrib_i1iv =
core::mem::transmute(load_function("glVertexAttribI1iv"));
self.address_vertex_attrib_i2iv =
core::mem::transmute(load_function("glVertexAttribI2iv"));
self.address_vertex_attrib_i3iv =
core::mem::transmute(load_function("glVertexAttribI3iv"));
self.address_vertex_attrib_i4iv =
core::mem::transmute(load_function("glVertexAttribI4iv"));
self.address_vertex_attrib_i1uiv =
core::mem::transmute(load_function("glVertexAttribI1uiv"));
self.address_vertex_attrib_i2uiv =
core::mem::transmute(load_function("glVertexAttribI2uiv"));
self.address_vertex_attrib_i3uiv =
core::mem::transmute(load_function("glVertexAttribI3uiv"));
self.address_vertex_attrib_i4uiv =
core::mem::transmute(load_function("glVertexAttribI4uiv"));
self.address_vertex_attrib_i4bv =
core::mem::transmute(load_function("glVertexAttribI4bv"));
self.address_vertex_attrib_i4sv =
core::mem::transmute(load_function("glVertexAttribI4sv"));
self.address_vertex_attrib_i4ubv =
core::mem::transmute(load_function("glVertexAttribI4ubv"));
self.address_vertex_attrib_i4usv =
core::mem::transmute(load_function("glVertexAttribI4usv"));
self.address_get_uniform_uiv = core::mem::transmute(load_function("glGetUniformuiv"));
self.address_bind_frag_data_location =
core::mem::transmute(load_function("glBindFragDataLocation"));
self.address_get_frag_data_location =
core::mem::transmute(load_function("glGetFragDataLocation"));
self.address_uniform_1ui = core::mem::transmute(load_function("glUniform1ui"));
self.address_uniform_2ui = core::mem::transmute(load_function("glUniform2ui"));
self.address_uniform_3ui = core::mem::transmute(load_function("glUniform3ui"));
self.address_uniform_4ui = core::mem::transmute(load_function("glUniform4ui"));
self.address_uniform_1uiv = core::mem::transmute(load_function("glUniform1uiv"));
self.address_uniform_2uiv = core::mem::transmute(load_function("glUniform2uiv"));
self.address_uniform_3uiv = core::mem::transmute(load_function("glUniform3uiv"));
self.address_uniform_4uiv = core::mem::transmute(load_function("glUniform4uiv"));
self.address_tex_parameter_iiv =
core::mem::transmute(load_function("glTexParameterIiv"));
self.address_tex_parameter_iuiv =
core::mem::transmute(load_function("glTexParameterIuiv"));
self.address_get_tex_parameter_iiv =
core::mem::transmute(load_function("glGetTexParameterIiv"));
self.address_get_tex_parameter_iuiv =
core::mem::transmute(load_function("glGetTexParameterIuiv"));
self.address_clear_buffer_iv = core::mem::transmute(load_function("glClearBufferiv"));
self.address_clear_buffer_uiv = core::mem::transmute(load_function("glClearBufferuiv"));
self.address_clear_buffer_fv = core::mem::transmute(load_function("glClearBufferfv"));
self.address_clear_buffer_fi = core::mem::transmute(load_function("glClearBufferfi"));
self.address_is_renderbuffer = core::mem::transmute(load_function("glIsRenderbuffer"));
self.address_bind_renderbuffer =
core::mem::transmute(load_function("glBindRenderbuffer"));
self.address_delete_renderbuffers =
core::mem::transmute(load_function("glDeleteRenderbuffers"));
self.address_gen_renderbuffers =
core::mem::transmute(load_function("glGenRenderbuffers"));
self.address_renderbuffer_storage =
core::mem::transmute(load_function("glRenderbufferStorage"));
self.address_get_renderbuffer_parameter_iv =
core::mem::transmute(load_function("glGetRenderbufferParameteriv"));
self.address_is_framebuffer = core::mem::transmute(load_function("glIsFramebuffer"));
self.address_bind_framebuffer =
core::mem::transmute(load_function("glBindFramebuffer"));
self.address_delete_framebuffers =
core::mem::transmute(load_function("glDeleteFramebuffers"));
self.address_gen_framebuffers =
core::mem::transmute(load_function("glGenFramebuffers"));
self.address_check_framebuffer_status =
core::mem::transmute(load_function("glCheckFramebufferStatus"));
self.address_framebuffer_texture_1d =
core::mem::transmute(load_function("glFramebufferTexture1D"));
self.address_framebuffer_texture_2d =
core::mem::transmute(load_function("glFramebufferTexture2D"));
self.address_framebuffer_texture_3d =
core::mem::transmute(load_function("glFramebufferTexture3D"));
self.address_framebuffer_renderbuffer =
core::mem::transmute(load_function("glFramebufferRenderbuffer"));
self.address_get_framebuffer_attach_ment_parameter_iv =
core::mem::transmute(load_function("glGetFramebufferAttachmentParameteriv"));
self.address_generate_mipmap = core::mem::transmute(load_function("glGenerateMipmap"));
self.address_blit_framebuffer =
core::mem::transmute(load_function("glBlitFramebuffer"));
self.address_renderbuffer_storage_multisample =
core::mem::transmute(load_function("glRenderbufferStorageMultisample"));
self.address_framebuffer_texture_layer =
core::mem::transmute(load_function("glFramebufferTextureLayer"));
self.address_flush_mapped_buffer_range =
core::mem::transmute(load_function("glFlushMappedBufferRange"));
self.address_bind_vertex_array =
core::mem::transmute(load_function("glBindVertexArray"));
self.address_delete_vertex_arrays =
core::mem::transmute(load_function("glDeleteVertexArrays"));
self.address_gen_vertex_arrays =
core::mem::transmute(load_function("glGenVertexArrays"));
self.address_is_vertex_array = core::mem::transmute(load_function("glIsVertexArray"));
self.address_draw_arrays_instanced =
core::mem::transmute(load_function("glDrawArraysInstanced"));
self.address_draw_elements_instanced =
core::mem::transmute(load_function("glDrawElementsInstanced"));
self.address_tex_buffer = core::mem::transmute(load_function("glTexBuffer"));
self.address_primitive_restart_index =
core::mem::transmute(load_function("glPrimitiveRestartIndex"));
self.address_copy_buffer_sub_data =
core::mem::transmute(load_function("glCopyBufferSubData"));
self.address_get_uniform_indices =
core::mem::transmute(load_function("glGetUniformIndices"));
self.address_get_active_uniform_siv =
core::mem::transmute(load_function("glGetActiveUniformsiv"));
self.address_get_active_uniform_name =
core::mem::transmute(load_function("glGetActiveUniformName"));
self.address_get_uniform_block_index =
core::mem::transmute(load_function("glGetUniformBlockIndex"));
self.address_get_active_uniform_block_iv =
core::mem::transmute(load_function("glGetActiveUniformBlockiv"));
self.address_get_active_uniform_block_name =
core::mem::transmute(load_function("glGetActiveUniformBlockName"));
self.address_uniform_block_binding =
core::mem::transmute(load_function("glUniformBlockBinding"));
self.address_draw_elements_base_vertex =
core::mem::transmute(load_function("glDrawElementsBaseVertex"));
self.address_draw_range_elements_base_vertex =
core::mem::transmute(load_function("glDrawRangeElementsBaseVertex"));
self.address_draw_elements_instanced_base_vertex =
core::mem::transmute(load_function("glDrawElementsInstancedBaseVertex"));
self.address_multi_draw_elements_base_vertex =
core::mem::transmute(load_function("glMultiDrawElementsBaseVertex"));
self.address_provoking_vertex =
core::mem::transmute(load_function("glProvokingVertex"));
self.address_fence_sync = core::mem::transmute(load_function("glFenceSync"));
self.address_is_sync = core::mem::transmute(load_function("glIsSync"));
self.address_delete_sync = core::mem::transmute(load_function("glDeleteSync"));
self.address_client_wait_sync = core::mem::transmute(load_function("glClientWaitSync"));
self.address_wait_sync = core::mem::transmute(load_function("glWaitSync"));
self.address_get_integer_64v = core::mem::transmute(load_function("glGetInteger64v"));
self.address_get_sync_iv = core::mem::transmute(load_function("glGetSynciv"));
self.address_get_buffer_parameter_i64v =
core::mem::transmute(load_function("glGetBufferParameteri64v"));
self.address_framebuffer_texture =
core::mem::transmute(load_function("glFramebufferTexture"));
self.address_tex_image_2d_multisample =
core::mem::transmute(load_function("glTexImage2DMultisample"));
self.address_tex_image_3d_multisample =
core::mem::transmute(load_function("glTexImage3DMultisample"));
self.address_get_multisample_fv =
core::mem::transmute(load_function("glGetMultisamplefv"));
self.address_sample_mask_i = core::mem::transmute(load_function("glSampleMaski"));
self.address_bind_frag_data_location_indexed =
core::mem::transmute(load_function("glBindFragDataLocationIndexed"));
self.address_get_frag_data_index =
core::mem::transmute(load_function("glGetFragDataIndex"));
self.address_gen_samplers = core::mem::transmute(load_function("glGenSamplers"));
self.address_delete_samplers = core::mem::transmute(load_function("glDeleteSamplers"));
self.address_is_sampler = core::mem::transmute(load_function("glIsSampler"));
self.address_bind_sampler = core::mem::transmute(load_function("glBindSampler"));
self.address_sampler_parameter_i =
core::mem::transmute(load_function("glSamplerParameteri"));
self.address_sampler_parameter_iv =
core::mem::transmute(load_function("glSamplerParameteriv"));
self.address_sampler_parameter_f =
core::mem::transmute(load_function("glSamplerParameterf"));
self.address_sampler_parameter_fv =
core::mem::transmute(load_function("glSamplerParameterfv"));
self.address_sampler_parameter_iiv =
core::mem::transmute(load_function("glSamplerParameterIiv"));
self.address_sampler_parameter_iuiv =
core::mem::transmute(load_function("glSamplerParameterIuiv"));
self.address_get_sampler_parameter_iv =
core::mem::transmute(load_function("glGetSamplerParameteriv"));
self.address_get_sampler_parameter_iiv =
core::mem::transmute(load_function("glGetSamplerParameterIiv"));
self.address_get_sampler_parameter_fv =
core::mem::transmute(load_function("glGetSamplerParameterfv"));
self.address_get_sampler_parameter_iuiv =
core::mem::transmute(load_function("glGetSamplerParameterIuiv"));
self.address_query_counter = core::mem::transmute(load_function("glQueryCounter"));
self.address_get_query_object_i64v =
core::mem::transmute(load_function("glGetQueryObjecti64v"));
self.address_get_query_object_ui64v =
core::mem::transmute(load_function("glGetQueryObjectui64v"));
self.address_vertex_attrib_divisor =
core::mem::transmute(load_function("glVertexAttribDivisor"));
self.address_vertex_attrib_p1ui =
core::mem::transmute(load_function("glVertexAttribP1ui"));
self.address_vertex_attrib_p1uiv =
core::mem::transmute(load_function("glVertexAttribP1uiv"));
self.address_vertex_attrib_p2ui =
core::mem::transmute(load_function("glVertexAttribP2ui"));
self.address_vertex_attrib_p2uiv =
core::mem::transmute(load_function("glVertexAttribP2uiv"));
self.address_vertex_attrib_p3ui =
core::mem::transmute(load_function("glVertexAttribP3ui"));
self.address_vertex_attrib_p3uiv =
core::mem::transmute(load_function("glVertexAttribP3uiv"));
self.address_vertex_attrib_p4ui =
core::mem::transmute(load_function("glVertexAttribP4ui"));
self.address_vertex_attrib_p4uiv =
core::mem::transmute(load_function("glVertexAttribP4uiv"));
self.address_min_sample_shading =
core::mem::transmute(load_function("glMinSampleShading"));
self.address_blend_equation_i = core::mem::transmute(load_function("glBlendEquationi"));
self.address_blend_equation_separate_i =
core::mem::transmute(load_function("glBlendEquationSeparatei"));
self.address_blend_func_i = core::mem::transmute(load_function("glBlendFunci"));
self.address_blend_func_separate_i =
core::mem::transmute(load_function("glBlendFuncSeparatei"));
self.address_draw_arrays_indirect =
core::mem::transmute(load_function("glDrawArraysIndirect"));
self.address_draw_elements_indirect =
core::mem::transmute(load_function("glDrawElementsIndirect"));
self.address_uniform_1d = core::mem::transmute(load_function("glUniform1d"));
self.address_uniform_2d = core::mem::transmute(load_function("glUniform2d"));
self.address_uniform_3d = core::mem::transmute(load_function("glUniform3d"));
self.address_uniform_4d = core::mem::transmute(load_function("glUniform4d"));
self.address_uniform_1dv = core::mem::transmute(load_function("glUniform1dv"));
self.address_uniform_2dv = core::mem::transmute(load_function("glUniform2dv"));
self.address_uniform_3dv = core::mem::transmute(load_function("glUniform3dv"));
self.address_uniform_4dv = core::mem::transmute(load_function("glUniform4dv"));
self.address_uniform_matrix_2dv =
core::mem::transmute(load_function("glUniformMatrix2dv"));
self.address_uniform_matrix_3dv =
core::mem::transmute(load_function("glUniformMatrix3dv"));
self.address_uniform_matrix_4dv =
core::mem::transmute(load_function("glUniformMatrix4dv"));
self.address_uniform_matrix_2x3dv =
core::mem::transmute(load_function("glUniformMatrix2x3dv"));
self.address_uniform_matrix_2x4dv =
core::mem::transmute(load_function("glUniformMatrix2x4dv"));
self.address_uniform_matrix_3x2dv =
core::mem::transmute(load_function("glUniformMatrix3x2dv"));
self.address_uniform_matrix_3x4dv =
core::mem::transmute(load_function("glUniformMatrix3x4dv"));
self.address_uniform_matrix_4x2dv =
core::mem::transmute(load_function("glUniformMatrix4x2dv"));
self.address_uniform_matrix_4x3dv =
core::mem::transmute(load_function("glUniformMatrix4x3dv"));
self.address_get_uniform_dv = core::mem::transmute(load_function("glGetUniformdv"));
self.address_get_subroutine_uniform_location =
core::mem::transmute(load_function("glGetSubroutineUniformLocation"));
self.address_get_subroutine_index =
core::mem::transmute(load_function("glGetSubroutineIndex"));
self.address_get_active_subroutine_uniform_iv =
core::mem::transmute(load_function("glGetActiveSubroutineUniformiv"));
self.address_get_active_subroutine_uniform_name =
core::mem::transmute(load_function("glGetActiveSubroutineUniformName"));
self.address_get_active_subroutine_name =
core::mem::transmute(load_function("glGetActiveSubroutineName"));
self.address_uniform_subroutines_uiv =
core::mem::transmute(load_function("glUniformSubroutinesuiv"));
self.address_get_uniform_subroutine_uiv =
core::mem::transmute(load_function("glGetUniformSubroutineuiv"));
self.address_get_program_stage_iv =
core::mem::transmute(load_function("glGetProgramStageiv"));
self.address_atch_parameter_i =
core::mem::transmute(load_function("glPatchParameteri"));
self.address_atch_parameter_fv =
core::mem::transmute(load_function("glPatchParameterfv"));
self.address_bind_transform_feedback =
core::mem::transmute(load_function("glBindTransformFeedback"));
self.address_delete_transform_feedback_s =
core::mem::transmute(load_function("glDeleteTransformFeedbacks"));
self.address_gen_transform_feedback_s =
core::mem::transmute(load_function("glGenTransformFeedbacks"));
self.address_is_transform_feedback =
core::mem::transmute(load_function("glIsTransformFeedback"));
self.address_pause_transform_feedback =
core::mem::transmute(load_function("glPauseTransformFeedback"));
self.address_resume_transform_feedback =
core::mem::transmute(load_function("glResumeTransformFeedback"));
self.address_draw_transform_feedback =
core::mem::transmute(load_function("glDrawTransformFeedback"));
self.address_draw_transform_feedback_stream =
core::mem::transmute(load_function("glDrawTransformFeedbackStream"));
self.address_begin_query_indexed =
core::mem::transmute(load_function("glBeginQueryIndexed"));
self.address_end_query_indexed =
core::mem::transmute(load_function("glEndQueryIndexed"));
self.address_get_query_indexed_iv =
core::mem::transmute(load_function("glGetQueryIndexediv"));
self.address_release_shader_compiler =
core::mem::transmute(load_function("glReleaseShaderCompiler"));
self.address_shader_binary = core::mem::transmute(load_function("glShaderBinary"));
self.address_get_shader_precision_format =
core::mem::transmute(load_function("glGetShaderPrecisionFormat"));
self.address_depth_range_f = core::mem::transmute(load_function("glDepthRangef"));
self.address_clear_depth_f = core::mem::transmute(load_function("glClearDepthf"));
self.address_get_program_binary =
core::mem::transmute(load_function("glGetProgramBinary"));
self.address_program_binary = core::mem::transmute(load_function("glProgramBinary"));
self.address_program_parameter_i =
core::mem::transmute(load_function("glProgramParameteri"));
self.address_use_program_stage_s =
core::mem::transmute(load_function("glUseProgramStages"));
self.address_active_shader_program =
core::mem::transmute(load_function("glActiveShaderProgram"));
self.address_create_shader_program_v =
core::mem::transmute(load_function("glCreateShaderProgramv"));
self.address_bind_program_pipeline =
core::mem::transmute(load_function("glBindProgramPipeline"));
self.address_delete_program_pipelines =
core::mem::transmute(load_function("glDeleteProgramPipelines"));
self.address_gen_program_pipelines =
core::mem::transmute(load_function("glGenProgramPipelines"));
self.address_is_program_pipeline =
core::mem::transmute(load_function("glIsProgramPipeline"));
self.address_get_program_pipeline_iv =
core::mem::transmute(load_function("glGetProgramPipelineiv"));
self.address_program_uniform_1i =
core::mem::transmute(load_function("glProgramUniform1i"));
self.address_program_uniform_1iv =
core::mem::transmute(load_function("glProgramUniform1iv"));
self.address_program_uniform_1f =
core::mem::transmute(load_function("glProgramUniform1f"));
self.address_program_uniform_1fv =
core::mem::transmute(load_function("glProgramUniform1fv"));
self.address_program_uniform_1d =
core::mem::transmute(load_function("glProgramUniform1d"));
self.address_program_uniform_1dv =
core::mem::transmute(load_function("glProgramUniform1dv"));
self.address_program_uniform_1ui =
core::mem::transmute(load_function("glProgramUniform1ui"));
self.address_program_uniform_1uiv =
core::mem::transmute(load_function("glProgramUniform1uiv"));
self.address_program_uniform_2i =
core::mem::transmute(load_function("glProgramUniform2i"));
self.address_program_uniform_2iv =
core::mem::transmute(load_function("glProgramUniform2iv"));
self.address_program_uniform_2f =
core::mem::transmute(load_function("glProgramUniform2f"));
self.address_program_uniform_2fv =
core::mem::transmute(load_function("glProgramUniform2fv"));
self.address_program_uniform_2d =
core::mem::transmute(load_function("glProgramUniform2d"));
self.address_program_uniform_2dv =
core::mem::transmute(load_function("glProgramUniform2dv"));
self.address_program_uniform_2ui =
core::mem::transmute(load_function("glProgramUniform2ui"));
self.address_program_uniform_2uiv =
core::mem::transmute(load_function("glProgramUniform2uiv"));
self.address_program_uniform_3i =
core::mem::transmute(load_function("glProgramUniform3i"));
self.address_program_uniform_3iv =
core::mem::transmute(load_function("glProgramUniform3iv"));
self.address_program_uniform_3f =
core::mem::transmute(load_function("glProgramUniform3f"));
self.address_program_uniform_3fv =
core::mem::transmute(load_function("glProgramUniform3fv"));
self.address_program_uniform_3d =
core::mem::transmute(load_function("glProgramUniform3d"));
self.address_program_uniform_3dv =
core::mem::transmute(load_function("glProgramUniform3dv"));
self.address_program_uniform_3ui =
core::mem::transmute(load_function("glProgramUniform3ui"));
self.address_program_uniform_3uiv =
core::mem::transmute(load_function("glProgramUniform3uiv"));
self.address_program_uniform_4i =
core::mem::transmute(load_function("glProgramUniform4i"));
self.address_program_uniform_4iv =
core::mem::transmute(load_function("glProgramUniform4iv"));
self.address_program_uniform_4f =
core::mem::transmute(load_function("glProgramUniform4f"));
self.address_program_uniform_4fv =
core::mem::transmute(load_function("glProgramUniform4fv"));
self.address_program_uniform_4d =
core::mem::transmute(load_function("glProgramUniform4d"));
self.address_program_uniform_4dv =
core::mem::transmute(load_function("glProgramUniform4dv"));
self.address_program_uniform_4ui =
core::mem::transmute(load_function("glProgramUniform4ui"));
self.address_program_uniform_4uiv =
core::mem::transmute(load_function("glProgramUniform4uiv"));
self.address_program_uniform_matrix_2fv =
core::mem::transmute(load_function("glProgramUniformMatrix2fv"));
self.address_program_uniform_matrix_3fv =
core::mem::transmute(load_function("glProgramUniformMatrix3fv"));
self.address_program_uniform_matrix_4fv =
core::mem::transmute(load_function("glProgramUniformMatrix4fv"));
self.address_program_uniform_matrix_2dv =
core::mem::transmute(load_function("glProgramUniformMatrix2dv"));
self.address_program_uniform_matrix_3dv =
core::mem::transmute(load_function("glProgramUniformMatrix3dv"));
self.address_program_uniform_matrix_4dv =
core::mem::transmute(load_function("glProgramUniformMatrix4dv"));
self.address_program_uniform_matrix_2x3fv =
core::mem::transmute(load_function("glProgramUniformMatrix2x3fv"));
self.address_program_uniform_matrix_3x2fv =
core::mem::transmute(load_function("glProgramUniformMatrix3x2fv"));
self.address_program_uniform_matrix_2x4fv =
core::mem::transmute(load_function("glProgramUniformMatrix2x4fv"));
self.address_program_uniform_matrix_4x2fv =
core::mem::transmute(load_function("glProgramUniformMatrix4x2fv"));
self.address_program_uniform_matrix_3x4fv =
core::mem::transmute(load_function("glProgramUniformMatrix3x4fv"));
self.address_program_uniform_matrix_4x3fv =
core::mem::transmute(load_function("glProgramUniformMatrix4x3fv"));
self.address_program_uniform_matrix_2x3dv =
core::mem::transmute(load_function("glProgramUniformMatrix2x3dv"));
self.address_program_uniform_matrix_3x2dv =
core::mem::transmute(load_function("glProgramUniformMatrix3x2dv"));
self.address_program_uniform_matrix_2x4dv =
core::mem::transmute(load_function("glProgramUniformMatrix2x4dv"));
self.address_program_uniform_matrix_4x2dv =
core::mem::transmute(load_function("glProgramUniformMatrix4x2dv"));
self.address_program_uniform_matrix_3x4dv =
core::mem::transmute(load_function("glProgramUniformMatrix3x4dv"));
self.address_program_uniform_matrix_4x3dv =
core::mem::transmute(load_function("glProgramUniformMatrix4x3dv"));
self.address_validate_program_pipeline =
core::mem::transmute(load_function("glValidateProgramPipeline"));
self.address_get_program_pipeline_info_log =
core::mem::transmute(load_function("glGetProgramPipelineInfoLog"));
self.address_vertex_attrib_l1d =
core::mem::transmute(load_function("glVertexAttribL1d"));
self.address_vertex_attrib_l2d =
core::mem::transmute(load_function("glVertexAttribL2d"));
self.address_vertex_attrib_l3d =
core::mem::transmute(load_function("glVertexAttribL3d"));
self.address_vertex_attrib_l4d =
core::mem::transmute(load_function("glVertexAttribL4d"));
self.address_vertex_attrib_l1dv =
core::mem::transmute(load_function("glVertexAttribL1dv"));
self.address_vertex_attrib_l2dv =
core::mem::transmute(load_function("glVertexAttribL2dv"));
self.address_vertex_attrib_l3dv =
core::mem::transmute(load_function("glVertexAttribL3dv"));
self.address_vertex_attrib_l4dv =
core::mem::transmute(load_function("glVertexAttribL4dv"));
self.address_vertex_attrib_l_pointer =
core::mem::transmute(load_function("glVertexAttribLPointer"));
self.address_get_vertex_attrib_ldv =
core::mem::transmute(load_function("glGetVertexAttribLdv"));
self.address_viewport_array_v = core::mem::transmute(load_function("glViewportArrayv"));
self.address_viewport_indexed_f =
core::mem::transmute(load_function("glViewportIndexedf"));
self.address_viewport_indexed_fv =
core::mem::transmute(load_function("glViewportIndexedfv"));
self.address_scissor_array_v = core::mem::transmute(load_function("glScissorArrayv"));
self.address_scissor_indexed = core::mem::transmute(load_function("glScissorIndexed"));
self.address_scissor_indexed_v =
core::mem::transmute(load_function("glScissorIndexedv"));
self.address_depth_range_array_v =
core::mem::transmute(load_function("glDepthRangeArrayv"));
self.address_depth_range_indexed =
core::mem::transmute(load_function("glDepthRangeIndexed"));
self.address_draw_arrays_instanced_base_instance =
core::mem::transmute(load_function("glDrawArraysInstancedBaseInstance"));
self.address_draw_elements_instanced_base_instance =
core::mem::transmute(load_function("glDrawElementsInstancedBaseInstance"));
self.address_draw_elements_instanced_base_vertex_base_instance = core::mem::transmute(
load_function("glDrawElementsInstancedBaseVertexBaseInstance"),
);
self.address_get_internal_formativ =
core::mem::transmute(load_function("glGetInternalformativ"));
self.address_get_active_atomic_counter_buffer_iv =
core::mem::transmute(load_function("glGetActiveAtomicCounterBufferiv"));
self.address_bind_image_texture =
core::mem::transmute(load_function("glBindImageTexture"));
self.address_memory_barrier = core::mem::transmute(load_function("glMemoryBarrier"));
self.address_tex_storage_1d = core::mem::transmute(load_function("glTexStorage1D"));
self.address_tex_storage_2d = core::mem::transmute(load_function("glTexStorage2D"));
self.address_tex_storage_3d = core::mem::transmute(load_function("glTexStorage3D"));
self.address_draw_transform_feedback_instanced =
core::mem::transmute(load_function("glDrawTransformFeedbackInstanced"));
self.address_draw_transform_feedback_stream_instanced =
core::mem::transmute(load_function("glDrawTransformFeedbackStreamInstanced"));
self.address_clear_buffer_data =
core::mem::transmute(load_function("glClearBufferData"));
self.address_clear_buffer_sub_data =
core::mem::transmute(load_function("glClearBufferSubData"));
self.address_dispatch_compute =
core::mem::transmute(load_function("glDispatchCompute"));
self.address_dispatch_compute_indirect =
core::mem::transmute(load_function("glDispatchComputeIndirect"));
self.address_copy_image_sub_data =
core::mem::transmute(load_function("glCopyImageSubData"));
self.address_framebuffer_parameter_i =
core::mem::transmute(load_function("glFramebufferParameteri"));
self.address_get_framebuffer_parameter_iv =
core::mem::transmute(load_function("glGetFramebufferParameteriv"));
self.address_get_internal_formati64v =
core::mem::transmute(load_function("glGetInternalformati64v"));
self.address_invalidate_tex_sub_image =
core::mem::transmute(load_function("glInvalidateTexSubImage"));
self.address_invalidate_tex_image =
core::mem::transmute(load_function("glInvalidateTexImage"));
self.address_invalidate_buffer_sub_data =
core::mem::transmute(load_function("glInvalidateBufferSubData"));
self.address_invalidate_buffer_data =
core::mem::transmute(load_function("glInvalidateBufferData"));
self.address_invalidate_framebuffer =
core::mem::transmute(load_function("glInvalidateFramebuffer"));
self.address_invalidate_sub_framebuffer =
core::mem::transmute(load_function("glInvalidateSubFramebuffer"));
self.address_multi_draw_arrays_indirect =
core::mem::transmute(load_function("glMultiDrawArraysIndirect"));
self.address_multi_draw_elements_indirect =
core::mem::transmute(load_function("glMultiDrawElementsIndirect"));
self.address_get_program_interface_iv =
core::mem::transmute(load_function("glGetProgramInterfaceiv"));
self.address_get_program_resource_index =
core::mem::transmute(load_function("glGetProgramResourceIndex"));
self.address_get_program_resource_name =
core::mem::transmute(load_function("glGetProgramResourceName"));
self.address_get_program_resource_iv =
core::mem::transmute(load_function("glGetProgramResourceiv"));
self.address_get_program_resource_location =
core::mem::transmute(load_function("glGetProgramResourceLocation"));
self.address_get_program_resource_location_index =
core::mem::transmute(load_function("glGetProgramResourceLocationIndex"));
self.address_shader_storage_block_binding =
core::mem::transmute(load_function("glShaderStorageBlockBinding"));
self.address_tex_buffer_range = core::mem::transmute(load_function("glTexBufferRange"));
self.address_tex_storage_2d_multisample =
core::mem::transmute(load_function("glTexStorage2DMultisample"));
self.address_tex_storage_3d_multisample =
core::mem::transmute(load_function("glTexStorage3DMultisample"));
self.address_texture_view = core::mem::transmute(load_function("glTextureView"));
self.address_bind_vertex_buffer =
core::mem::transmute(load_function("glBindVertexBuffer"));
self.address_vertex_attrib_format =
core::mem::transmute(load_function("glVertexAttribFormat"));
self.address_vertex_attrib_i_format =
core::mem::transmute(load_function("glVertexAttribIFormat"));
self.address_vertex_attrib_l_format =
core::mem::transmute(load_function("glVertexAttribLFormat"));
self.address_vertex_attrib_binding =
core::mem::transmute(load_function("glVertexAttribBinding"));
self.address_vertex_binding_divisor =
core::mem::transmute(load_function("glVertexBindingDivisor"));
self.address_debug_message_control =
core::mem::transmute(load_function("glDebugMessageControl"));
self.address_debug_message_insert =
core::mem::transmute(load_function("glDebugMessageInsert"));
self.address_debug_message_call_back =
core::mem::transmute(load_function("glDebugMessageCallback"));
self.address_get_debug_message_log =
core::mem::transmute(load_function("glGetDebugMessageLog"));
self.address_push_debug_group = core::mem::transmute(load_function("glPushDebugGroup"));
self.address_pop_debug_group = core::mem::transmute(load_function("glPopDebugGroup"));
self.address_object_label = core::mem::transmute(load_function("glObjectLabel"));
self.address_get_object_label = core::mem::transmute(load_function("glGetObjectLabel"));
self.address_object_ptr_label = core::mem::transmute(load_function("glObjectPtrLabel"));
self.address_get_object_ptr_label =
core::mem::transmute(load_function("glGetObjectPtrLabel"));
self.address_buffer_storage = core::mem::transmute(load_function("glBufferStorage"));
self.address_clear_tex_image = core::mem::transmute(load_function("glClearTexImage"));
self.address_clear_tex_sub_image =
core::mem::transmute(load_function("glClearTexSubImage"));
self.address_bind_buffers_base =
core::mem::transmute(load_function("glBindBuffersBase"));
self.address_bind_buffers_range =
core::mem::transmute(load_function("glBindBuffersRange"));
self.address_bind_textures = core::mem::transmute(load_function("glBindTextures"));
self.address_bind_samplers = core::mem::transmute(load_function("glBindSamplers"));
self.address_bind_image_textures =
core::mem::transmute(load_function("glBindImageTextures"));
self.address_bind_vertex_buffers =
core::mem::transmute(load_function("glBindVertexBuffers"));
self.address_clip_control = core::mem::transmute(load_function("glClipControl"));
self.address_create_transform_feedback_s =
core::mem::transmute(load_function("glCreateTransformFeedbacks"));
self.address_transform_feedback_buffer_base =
core::mem::transmute(load_function("glTransformFeedbackBufferBase"));
self.address_transform_feedback_buffer_range =
core::mem::transmute(load_function("glTransformFeedbackBufferRange"));
self.address_get_transform_feedback_iv =
core::mem::transmute(load_function("glGetTransformFeedbackiv"));
self.address_create_buffers = core::mem::transmute(load_function("glCreateBuffers"));
self.address_named_buffer_storage =
core::mem::transmute(load_function("glNamedBufferStorage"));
self.address_named_buffer_data =
core::mem::transmute(load_function("glNamedBufferData"));
self.address_named_buffer_sub_data =
core::mem::transmute(load_function("glNamedBufferSubData"));
self.address_copy_named_buffer_sub_data =
core::mem::transmute(load_function("glCopyNamedBufferSubData"));
self.address_clear_named_buffer_data =
core::mem::transmute(load_function("glClearNamedBufferData"));
self.address_clear_named_buffer_sub_data =
core::mem::transmute(load_function("glClearNamedBufferSubData"));
self.address_unmap_named_buffer =
core::mem::transmute(load_function("glUnmapNamedBuffer"));
self.address_flush_mapped_named_buffer_range =
core::mem::transmute(load_function("glFlushMappedNamedBufferRange"));
self.address_get_named_buffer_parameter_iv =
core::mem::transmute(load_function("glGetNamedBufferParameteriv"));
self.address_get_named_buffer_parameter_i64v =
core::mem::transmute(load_function("glGetNamedBufferParameteri64v"));
self.address_get_named_buffer_pointer_v =
core::mem::transmute(load_function("glGetNamedBufferPointerv"));
self.address_get_named_buffer_sub_data =
core::mem::transmute(load_function("glGetNamedBufferSubData"));
self.address_create_framebuffers =
core::mem::transmute(load_function("glCreateFramebuffers"));
self.address_named_framebuffer_renderbuffer =
core::mem::transmute(load_function("glNamedFramebufferRenderbuffer"));
self.address_named_framebuffer_parameter_i =
core::mem::transmute(load_function("glNamedFramebufferParameteri"));
self.address_named_framebuffer_texture =
core::mem::transmute(load_function("glNamedFramebufferTexture"));
self.address_named_framebuffer_texture_layer =
core::mem::transmute(load_function("glNamedFramebufferTextureLayer"));
self.address_named_framebuffer_draw_buffer =
core::mem::transmute(load_function("glNamedFramebufferDrawBuffer"));
self.address_named_framebuffer_draw_buffers =
core::mem::transmute(load_function("glNamedFramebufferDrawBuffers"));
self.address_named_framebuffer_read_buffer =
core::mem::transmute(load_function("glNamedFramebufferReadBuffer"));
self.address_invalidate_named_framebuffer_data =
core::mem::transmute(load_function("glInvalidateNamedFramebufferData"));
self.address_invalidate_named_framebuffer_sub_data =
core::mem::transmute(load_function("glInvalidateNamedFramebufferSubData"));
self.address_clear_named_framebuffer_iv =
core::mem::transmute(load_function("glClearNamedFramebufferiv"));
self.address_clear_named_framebuffer_uiv =
core::mem::transmute(load_function("glClearNamedFramebufferuiv"));
self.address_clear_named_framebuffer_fv =
core::mem::transmute(load_function("glClearNamedFramebufferfv"));
self.address_clear_named_framebuffer_fi =
core::mem::transmute(load_function("glClearNamedFramebufferfi"));
self.address_blit_named_framebuffer =
core::mem::transmute(load_function("glBlitNamedFramebuffer"));
self.address_check_named_framebuffer_status =
core::mem::transmute(load_function("glCheckNamedFramebufferStatus"));
self.address_get_named_framebuffer_parameter_iv =
core::mem::transmute(load_function("glGetNamedFramebufferParameteriv"));
self.address_get_named_framebuffer_attach_ment_parameter_iv =
core::mem::transmute(load_function("glGetNamedFramebufferAttachmentParameteriv"));
self.address_create_renderbuffers =
core::mem::transmute(load_function("glCreateRenderbuffers"));
self.address_named_renderbuffer_storage =
core::mem::transmute(load_function("glNamedRenderbufferStorage"));
self.address_named_renderbuffer_storage_multisample =
core::mem::transmute(load_function("glNamedRenderbufferStorageMultisample"));
self.address_get_named_renderbuffer_parameter_iv =
core::mem::transmute(load_function("glGetNamedRenderbufferParameteriv"));
self.address_create_textures = core::mem::transmute(load_function("glCreateTextures"));
self.address_texture_buffer = core::mem::transmute(load_function("glTextureBuffer"));
self.address_texture_buffer_range =
core::mem::transmute(load_function("glTextureBufferRange"));
self.address_texture_storage_1d =
core::mem::transmute(load_function("glTextureStorage1D"));
self.address_texture_storage_2d =
core::mem::transmute(load_function("glTextureStorage2D"));
self.address_texture_storage_3d =
core::mem::transmute(load_function("glTextureStorage3D"));
self.address_texture_storage_2d_multisample =
core::mem::transmute(load_function("glTextureStorage2DMultisample"));
self.address_texture_storage_3d_multisample =
core::mem::transmute(load_function("glTextureStorage3DMultisample"));
self.address_texture_sub_image_1d =
core::mem::transmute(load_function("glTextureSubImage1D"));
self.address_texture_sub_image_2d =
core::mem::transmute(load_function("glTextureSubImage2D"));
self.address_texture_sub_image_3d =
core::mem::transmute(load_function("glTextureSubImage3D"));
self.address_compressed_texture_sub_image_1d =
core::mem::transmute(load_function("glCompressedTextureSubImage1D"));
self.address_compressed_texture_sub_image_2d =
core::mem::transmute(load_function("glCompressedTextureSubImage2D"));
self.address_compressed_texture_sub_image_3d =
core::mem::transmute(load_function("glCompressedTextureSubImage3D"));
self.address_copy_texture_sub_image_1d =
core::mem::transmute(load_function("glCopyTextureSubImage1D"));
self.address_copy_texture_sub_image_2d =
core::mem::transmute(load_function("glCopyTextureSubImage2D"));
self.address_copy_texture_sub_image_3d =
core::mem::transmute(load_function("glCopyTextureSubImage3D"));
self.address_texture_parameter_f =
core::mem::transmute(load_function("glTextureParameterf"));
self.address_texture_parameter_fv =
core::mem::transmute(load_function("glTextureParameterfv"));
self.address_texture_parameter_i =
core::mem::transmute(load_function("glTextureParameteri"));
self.address_texture_parameter_iiv =
core::mem::transmute(load_function("glTextureParameterIiv"));
self.address_texture_parameter_iuiv =
core::mem::transmute(load_function("glTextureParameterIuiv"));
self.address_texture_parameter_iv =
core::mem::transmute(load_function("glTextureParameteriv"));
self.address_generate_texture_mipmap =
core::mem::transmute(load_function("glGenerateTextureMipmap"));
self.address_bind_texture_unit =
core::mem::transmute(load_function("glBindTextureUnit"));
self.address_get_texture_image =
core::mem::transmute(load_function("glGetTextureImage"));
self.address_get_compressed_texture_image =
core::mem::transmute(load_function("glGetCompressedTextureImage"));
self.address_get_texture_level_parameter_fv =
core::mem::transmute(load_function("glGetTextureLevelParameterfv"));
self.address_get_texture_level_parameter_iv =
core::mem::transmute(load_function("glGetTextureLevelParameteriv"));
self.address_get_texture_parameter_fv =
core::mem::transmute(load_function("glGetTextureParameterfv"));
self.address_get_texture_parameter_iiv =
core::mem::transmute(load_function("glGetTextureParameterIiv"));
self.address_get_texture_parameter_iuiv =
core::mem::transmute(load_function("glGetTextureParameterIuiv"));
self.address_get_texture_parameter_iv =
core::mem::transmute(load_function("glGetTextureParameteriv"));
self.address_create_vertex_arrays =
core::mem::transmute(load_function("glCreateVertexArrays"));
self.address_disable_vertex_array_attrib =
core::mem::transmute(load_function("glDisableVertexArrayAttrib"));
self.address_enable_vertex_array_attrib =
core::mem::transmute(load_function("glEnableVertexArrayAttrib"));
self.address_vertex_array_element_buffer =
core::mem::transmute(load_function("glVertexArrayElementBuffer"));
self.address_vertex_array_vertex_buffer =
core::mem::transmute(load_function("glVertexArrayVertexBuffer"));
self.address_vertex_array_vertex_buffers =
core::mem::transmute(load_function("glVertexArrayVertexBuffers"));
self.address_vertex_array_attrib_binding =
core::mem::transmute(load_function("glVertexArrayAttribBinding"));
self.address_vertex_array_attrib_format =
core::mem::transmute(load_function("glVertexArrayAttribFormat"));
self.address_vertex_array_attrib_i_format =
core::mem::transmute(load_function("glVertexArrayAttribIFormat"));
self.address_vertex_array_attrib_l_format =
core::mem::transmute(load_function("glVertexArrayAttribLFormat"));
self.address_vertex_array_binding_divisor =
core::mem::transmute(load_function("glVertexArrayBindingDivisor"));
self.address_get_vertex_array_iv =
core::mem::transmute(load_function("glGetVertexArrayiv"));
self.address_get_vertex_array_indexed_iv =
core::mem::transmute(load_function("glGetVertexArrayIndexediv"));
self.address_get_vertex_array_indexed_64iv =
core::mem::transmute(load_function("glGetVertexArrayIndexed64iv"));
self.address_create_samplers = core::mem::transmute(load_function("glCreateSamplers"));
self.address_create_program_pipelines =
core::mem::transmute(load_function("glCreateProgramPipelines"));
self.address_create_queries = core::mem::transmute(load_function("glCreateQueries"));
self.address_get_query_buffer_object_i64v =
core::mem::transmute(load_function("glGetQueryBufferObjecti64v"));
self.address_get_query_buffer_object_iv =
core::mem::transmute(load_function("glGetQueryBufferObjectiv"));
self.address_get_query_buffer_object_ui64v =
core::mem::transmute(load_function("glGetQueryBufferObjectui64v"));
self.address_get_query_buffer_object_uiv =
core::mem::transmute(load_function("glGetQueryBufferObjectuiv"));
self.address_memory_barrier_by_region =
core::mem::transmute(load_function("glMemoryBarrierByRegion"));
self.address_get_texture_sub_image =
core::mem::transmute(load_function("glGetTextureSubImage"));
self.address_get_compressed_texture_sub_image =
core::mem::transmute(load_function("glGetCompressedTextureSubImage"));
self.address_get_graphics_reset_status =
core::mem::transmute(load_function("glGetGraphicsResetStatus"));
self.address_get_n_compressed_tex_image =
core::mem::transmute(load_function("glGetnCompressedTexImage"));
self.address_get_n_tex_image = core::mem::transmute(load_function("glGetnTexImage"));
self.address_get_n_uniform_dv = core::mem::transmute(load_function("glGetnUniformdv"));
self.address_get_n_uniform_fv = core::mem::transmute(load_function("glGetnUniformfv"));
self.address_get_n_uniform_iv = core::mem::transmute(load_function("glGetnUniformiv"));
self.address_get_n_uniform_uiv =
core::mem::transmute(load_function("glGetnUniformuiv"));
self.address_read_n_pixels = core::mem::transmute(load_function("glReadnPixels"));
self.address_texture_barrier = core::mem::transmute(load_function("glTextureBarrier"));
self.address_specialize_shader =
core::mem::transmute(load_function("glSpecializeShader"));
self.address_multi_draw_arrays_indirect_count =
core::mem::transmute(load_function("glMultiDrawArraysIndirectCount"));
self.address_multi_draw_elements_indirect_count =
core::mem::transmute(load_function("glMultiDrawElementsIndirectCount"));
self.address_polygon_offset_clamp =
core::mem::transmute(load_function("glPolygonOffsetClamp"));
}
}
#[inline(always)]
#[allow(dead_code)]
pub fn cull_face(&self, mode: u32) {
(self.address_cull_face)(mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn front_face(&self, mode: u32) {
(self.address_front_face)(mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn hint(&self, target: u32, mode: u32) {
(self.address_hint)(target, mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn line_width(&self, width: f32) {
(self.address_line_width)(width);
}
#[inline(always)]
#[allow(dead_code)]
pub fn point_size(&self, size: f32) {
(self.address_point_size)(size);
}
#[inline(always)]
#[allow(dead_code)]
pub fn polygon_mode(&self, face: u32, mode: u32) {
(self.address_polygon_mode)(face, mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn scissor(&self, x: i32, y: i32, width: i32, height: i32) {
(self.address_scissor)(x, y, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_parameter_f(&self, target: u32, pname: u32, param: f32) {
(self.address_tex_parameter_f)(target, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_parameter_fv(&self, target: u32, pname: u32, params: *const f32) {
(self.address_tex_parameter_fv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_parameter_i(&self, target: u32, pname: u32, param: i32) {
(self.address_tex_parameter_i)(target, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_parameter_iv(&self, target: u32, pname: u32, params: *const i32) {
(self.address_tex_parameter_iv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_image_1d(
&self,
target: u32,
level: i32,
internalformat: i32,
width: i32,
border: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_tex_image_1d)(
target,
level,
internalformat,
width,
border,
format,
type_value,
pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_image_2d(
&self,
target: u32,
level: i32,
internalformat: i32,
width: i32,
height: i32,
border: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_tex_image_2d)(
target,
level,
internalformat,
width,
height,
border,
format,
type_value,
pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_buffer(&self, buf: u32) {
(self.address_draw_buffer)(buf);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear(&self, mask: u32) {
(self.address_clear)(mask);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_color(&self, red: f32, green: f32, blue: f32, alpha: f32) {
(self.address_clear_color)(red, green, blue, alpha);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_stencil(&self, s: i32) {
(self.address_clear_stencil)(s);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_depth(&self, depth: f64) {
(self.address_clear_depth)(depth);
}
#[inline(always)]
#[allow(dead_code)]
pub fn stencil_mask(&self, mask: u32) {
(self.address_stencil_mask)(mask);
}
#[inline(always)]
#[allow(dead_code)]
pub fn color_mask(&self, red: u8, green: u8, blue: u8, alpha: u8) {
(self.address_color_mask)(red, green, blue, alpha);
}
#[inline(always)]
#[allow(dead_code)]
pub fn depth_mask(&self, flag: u8) {
(self.address_depth_mask)(flag);
}
#[inline(always)]
#[allow(dead_code)]
pub fn disable(&self, cap: u32) {
(self.address_disable)(cap);
}
#[inline(always)]
#[allow(dead_code)]
pub fn enable(&self, cap: u32) {
(self.address_enable)(cap);
}
#[inline(always)]
#[allow(dead_code)]
pub fn finish(&self) {
(self.address_finish)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn flush(&self) {
(self.address_flush)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_func(&self, sfactor: u32, dfactor: u32) {
(self.address_blend_func)(sfactor, dfactor);
}
#[inline(always)]
#[allow(dead_code)]
pub fn log_ic_op(&self, opcode: u32) {
(self.address_log_ic_op)(opcode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn stencil_func(&self, func: u32, ref_value: i32, mask: u32) {
(self.address_stencil_func)(func, ref_value, mask);
}
#[inline(always)]
#[allow(dead_code)]
pub fn stencil_op(&self, fail: u32, zfail: u32, zpass: u32) {
(self.address_stencil_op)(fail, zfail, zpass);
}
#[inline(always)]
#[allow(dead_code)]
pub fn depth_func(&self, func: u32) {
(self.address_depth_func)(func);
}
#[inline(always)]
#[allow(dead_code)]
pub fn pixel_store_f(&self, pname: u32, param: f32) {
(self.address_pixel_store_f)(pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn pixel_store_i(&self, pname: u32, param: i32) {
(self.address_pixel_store_i)(pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn read_buffer(&self, src: u32) {
(self.address_read_buffer)(src);
}
#[inline(always)]
#[allow(dead_code)]
pub fn read_pixels(
&self,
x: i32,
y: i32,
width: i32,
height: i32,
format: u32,
type_value: u32,
pixels: *mut u8,
) {
(self.address_read_pixels)(x, y, width, height, format, type_value, pixels);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_boolean_v(&self, pname: u32, data: *mut u8) {
(self.address_get_boolean_v)(pname, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_double_v(&self, pname: u32, data: *mut f64) {
(self.address_get_double_v)(pname, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_error(&self) -> u32 {
(self.address_get_error)()
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_float_v(&self, pname: u32, data: *mut f32) {
(self.address_get_float_v)(pname, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_integer_v(&self, pname: u32, data: *mut i32) {
(self.address_get_integer_v)(pname, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_tex_image(
&self,
target: u32,
level: i32,
format: u32,
type_value: u32,
pixels: *mut u8,
) {
(self.address_get_tex_image)(target, level, format, type_value, pixels);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_tex_parameter_fv(&self, target: u32, pname: u32, params: *mut f32) {
(self.address_get_tex_parameter_fv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_tex_parameter_iv(&self, target: u32, pname: u32, params: *mut i32) {
(self.address_get_tex_parameter_iv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_tex_level_parameter_fv(
&self,
target: u32,
level: i32,
pname: u32,
params: *mut f32,
) {
(self.address_get_tex_level_parameter_fv)(target, level, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_tex_level_parameter_iv(
&self,
target: u32,
level: i32,
pname: u32,
params: *mut i32,
) {
(self.address_get_tex_level_parameter_iv)(target, level, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_enabled(&self, cap: u32) -> u8 {
(self.address_is_enabled)(cap)
}
#[inline(always)]
#[allow(dead_code)]
pub fn depth_range(&self, n: f64, f: f64) {
(self.address_depth_range)(n, f);
}
#[inline(always)]
#[allow(dead_code)]
pub fn viewport(&self, x: i32, y: i32, width: i32, height: i32) {
(self.address_viewport)(x, y, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_arrays(&self, mode: u32, first: i32, count: i32) {
(self.address_draw_arrays)(mode, first, count);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_elements(&self, mode: u32, count: i32, type_value: u32, indices: *const u8) {
(self.address_draw_elements)(mode, count, type_value, indices);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_pointer_v(&self, pname: u32, params: *const *mut u8) {
(self.address_get_pointer_v)(pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn polygon_offset(&self, factor: f32, units: f32) {
(self.address_polygon_offset)(factor, units);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_tex_image_1d(
&self,
target: u32,
level: i32,
internalformat: u32,
x: i32,
y: i32,
width: i32,
border: i32,
) {
(self.address_copy_tex_image_1d)(target, level, internalformat, x, y, width, border);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_tex_image_2d(
&self,
target: u32,
level: i32,
internalformat: u32,
x: i32,
y: i32,
width: i32,
height: i32,
border: i32,
) {
(self.address_copy_tex_image_2d)(
target,
level,
internalformat,
x,
y,
width,
height,
border,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_tex_sub_image_1d(
&self,
target: u32,
level: i32,
xoffset: i32,
x: i32,
y: i32,
width: i32,
) {
(self.address_copy_tex_sub_image_1d)(target, level, xoffset, x, y, width);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_tex_sub_image_2d(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
x: i32,
y: i32,
width: i32,
height: i32,
) {
(self.address_copy_tex_sub_image_2d)(target, level, xoffset, yoffset, x, y, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_sub_image_1d(
&self,
target: u32,
level: i32,
xoffset: i32,
width: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_tex_sub_image_1d)(target, level, xoffset, width, format, type_value, pixels);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_sub_image_2d(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
width: i32,
height: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_tex_sub_image_2d)(
target, level, xoffset, yoffset, width, height, format, type_value, pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_texture(&self, target: u32, texture: u32) {
(self.address_bind_texture)(target, texture);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_textures(&self, n: i32, textures: *const u32) {
(self.address_delete_textures)(n, textures);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_textures(&self, n: i32, textures: *mut u32) {
(self.address_gen_textures)(n, textures);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_texture(&self, texture: u32) -> u8 {
(self.address_is_texture)(texture)
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_range_elements(
&self,
mode: u32,
start: u32,
end: u32,
count: i32,
type_value: u32,
indices: *const u8,
) {
(self.address_draw_range_elements)(mode, start, end, count, type_value, indices);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_image_3d(
&self,
target: u32,
level: i32,
internalformat: i32,
width: i32,
height: i32,
depth: i32,
border: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_tex_image_3d)(
target,
level,
internalformat,
width,
height,
depth,
border,
format,
type_value,
pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_sub_image_3d(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_tex_sub_image_3d)(
target, level, xoffset, yoffset, zoffset, width, height, depth, format, type_value,
pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_tex_sub_image_3d(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
x: i32,
y: i32,
width: i32,
height: i32,
) {
(self.address_copy_tex_sub_image_3d)(
target, level, xoffset, yoffset, zoffset, x, y, width, height,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn active_texture(&self, texture: u32) {
(self.address_active_texture)(texture);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sample_coverage(&self, value: f32, invert: u8) {
(self.address_sample_coverage)(value, invert);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_tex_image_3d(
&self,
target: u32,
level: i32,
internalformat: u32,
width: i32,
height: i32,
depth: i32,
border: i32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_tex_image_3d)(
target,
level,
internalformat,
width,
height,
depth,
border,
imagesize,
data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_tex_image_2d(
&self,
target: u32,
level: i32,
internalformat: u32,
width: i32,
height: i32,
border: i32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_tex_image_2d)(
target,
level,
internalformat,
width,
height,
border,
imagesize,
data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_tex_image_1d(
&self,
target: u32,
level: i32,
internalformat: u32,
width: i32,
border: i32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_tex_image_1d)(
target,
level,
internalformat,
width,
border,
imagesize,
data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_tex_sub_image_3d(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
format: u32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_tex_sub_image_3d)(
target, level, xoffset, yoffset, zoffset, width, height, depth, format, imagesize, data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_tex_sub_image_2d(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
width: i32,
height: i32,
format: u32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_tex_sub_image_2d)(
target, level, xoffset, yoffset, width, height, format, imagesize, data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_tex_sub_image_1d(
&self,
target: u32,
level: i32,
xoffset: i32,
width: i32,
format: u32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_tex_sub_image_1d)(
target, level, xoffset, width, format, imagesize, data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_compressed_tex_image(&self, target: u32, level: i32, img: *mut u8) {
(self.address_get_compressed_tex_image)(target, level, img);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_func_separate(
&self,
sfactorrgb: u32,
dfactorrgb: u32,
sfactoralpha: u32,
dfactoralpha: u32,
) {
(self.address_blend_func_separate)(sfactorrgb, dfactorrgb, sfactoralpha, dfactoralpha);
}
#[inline(always)]
#[allow(dead_code)]
pub fn multi_draw_arrays(
&self,
mode: u32,
first: *const i32,
count: *const i32,
drawcount: i32,
) {
(self.address_multi_draw_arrays)(mode, first, count, drawcount);
}
#[inline(always)]
#[allow(dead_code)]
pub fn multi_draw_elements(
&self,
mode: u32,
count: *const i32,
type_value: u32,
indices: *const *const u8,
drawcount: i32,
) {
(self.address_multi_draw_elements)(mode, count, type_value, indices, drawcount);
}
#[inline(always)]
#[allow(dead_code)]
pub fn point_parameter_f(&self, pname: u32, param: f32) {
(self.address_point_parameter_f)(pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn point_parameter_fv(&self, pname: u32, params: *const f32) {
(self.address_point_parameter_fv)(pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn point_parameter_i(&self, pname: u32, param: i32) {
(self.address_point_parameter_i)(pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn point_parameter_iv(&self, pname: u32, params: *const i32) {
(self.address_point_parameter_iv)(pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_color(&self, red: f32, green: f32, blue: f32, alpha: f32) {
(self.address_blend_color)(red, green, blue, alpha);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_equation(&self, mode: u32) {
(self.address_blend_equation)(mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_queries(&self, n: i32, ids: *mut u32) {
(self.address_gen_queries)(n, ids);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_queries(&self, n: i32, ids: *const u32) {
(self.address_delete_queries)(n, ids);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_query(&self, id: u32) -> u8 {
(self.address_is_query)(id)
}
#[inline(always)]
#[allow(dead_code)]
pub fn begin_query(&self, target: u32, id: u32) {
(self.address_begin_query)(target, id);
}
#[inline(always)]
#[allow(dead_code)]
pub fn end_query(&self, target: u32) {
(self.address_end_query)(target);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_iv(&self, target: u32, pname: u32, params: *mut i32) {
(self.address_get_query_iv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_object_iv(&self, id: u32, pname: u32, params: *mut i32) {
(self.address_get_query_object_iv)(id, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_object_uiv(&self, id: u32, pname: u32, params: *mut u32) {
(self.address_get_query_object_uiv)(id, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_buffer(&self, target: u32, buffer: u32) {
(self.address_bind_buffer)(target, buffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_buffers(&self, n: i32, buffers: *const u32) {
(self.address_delete_buffers)(n, buffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_buffers(&self, n: i32, buffers: *mut u32) {
(self.address_gen_buffers)(n, buffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_buffer(&self, buffer: u32) -> u8 {
(self.address_is_buffer)(buffer)
}
#[inline(always)]
#[allow(dead_code)]
pub fn buffer_data(&self, target: u32, size: i64, data: *const u8, usage: u32) {
(self.address_buffer_data)(target, size, data, usage);
}
#[inline(always)]
#[allow(dead_code)]
pub fn buffer_sub_data(&self, target: u32, offset: i64, size: i64, data: *const u8) {
(self.address_buffer_sub_data)(target, offset, size, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_buffer_sub_data(&self, target: u32, offset: i64, size: i64, data: *mut u8) {
(self.address_get_buffer_sub_data)(target, offset, size, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn unmap_buffer(&self, target: u32) -> u8 {
(self.address_unmap_buffer)(target)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_buffer_parameter_iv(&self, target: u32, pname: u32, params: *mut i32) {
(self.address_get_buffer_parameter_iv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_buffer_pointer_v(&self, target: u32, pname: u32, params: *const *mut u8) {
(self.address_get_buffer_pointer_v)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_equation_separate(&self, modergb: u32, modealpha: u32) {
(self.address_blend_equation_separate)(modergb, modealpha);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_buffers(&self, n: i32, bufs: *const u32) {
(self.address_draw_buffers)(n, bufs);
}
#[inline(always)]
#[allow(dead_code)]
pub fn stencil_op_separate(&self, face: u32, sfail: u32, dpfail: u32, dppass: u32) {
(self.address_stencil_op_separate)(face, sfail, dpfail, dppass);
}
#[inline(always)]
#[allow(dead_code)]
pub fn stencil_func_separate(&self, face: u32, func: u32, ref_value: i32, mask: u32) {
(self.address_stencil_func_separate)(face, func, ref_value, mask);
}
#[inline(always)]
#[allow(dead_code)]
pub fn stencil_mask_separate(&self, face: u32, mask: u32) {
(self.address_stencil_mask_separate)(face, mask);
}
#[inline(always)]
#[allow(dead_code)]
pub fn attach_shader(&self, program: u32, shader: u32) {
(self.address_attach_shader)(program, shader);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_attrib_location(&self, program: u32, index: u32, name: *const i8) {
(self.address_bind_attrib_location)(program, index, name);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compile_shader(&self, shader: u32) {
(self.address_compile_shader)(shader);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_program(&self) -> u32 {
(self.address_create_program)()
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_shader(&self, type_value: u32) -> u32 {
(self.address_create_shader)(type_value)
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_program(&self, program: u32) {
(self.address_delete_program)(program);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_shader(&self, shader: u32) {
(self.address_delete_shader)(shader);
}
#[inline(always)]
#[allow(dead_code)]
pub fn detach_shader(&self, program: u32, shader: u32) {
(self.address_detach_shader)(program, shader);
}
#[inline(always)]
#[allow(dead_code)]
pub fn disable_vertex_attrib_array(&self, index: u32) {
(self.address_disable_vertex_attrib_array)(index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn enable_vertex_attrib_array(&self, index: u32) {
(self.address_enable_vertex_attrib_array)(index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_attrib(
&self,
program: u32,
index: u32,
bufsize: i32,
length: *mut i32,
size: *mut i32,
type_value: *mut u32,
name: *mut i8,
) {
(self.address_get_active_attrib)(program, index, bufsize, length, size, type_value, name);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_uniform(
&self,
program: u32,
index: u32,
bufsize: i32,
length: *mut i32,
size: *mut i32,
type_value: *mut u32,
name: *mut i8,
) {
(self.address_get_active_uniform)(program, index, bufsize, length, size, type_value, name);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_attached_shaders(
&self,
program: u32,
maxcount: i32,
count: *mut i32,
shaders: *mut u32,
) {
(self.address_get_attached_shaders)(program, maxcount, count, shaders);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_attrib_location(&self, program: u32, name: *const i8) -> i32 {
(self.address_get_attrib_location)(program, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_iv(&self, program: u32, pname: u32, params: *mut i32) {
(self.address_get_program_iv)(program, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_info_log(
&self,
program: u32,
bufsize: i32,
length: *mut i32,
infolog: *mut i8,
) {
(self.address_get_program_info_log)(program, bufsize, length, infolog);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_shader_iv(&self, shader: u32, pname: u32, params: *mut i32) {
(self.address_get_shader_iv)(shader, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_shader_info_log(
&self,
shader: u32,
bufsize: i32,
length: *mut i32,
infolog: *mut i8,
) {
(self.address_get_shader_info_log)(shader, bufsize, length, infolog);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_shader_source(&self, shader: u32, bufsize: i32, length: *mut i32, source: *mut i8) {
(self.address_get_shader_source)(shader, bufsize, length, source);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_location(&self, program: u32, name: *const i8) -> i32 {
(self.address_get_uniform_location)(program, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_fv(&self, program: u32, location: i32, params: *mut f32) {
(self.address_get_uniform_fv)(program, location, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_iv(&self, program: u32, location: i32, params: *mut i32) {
(self.address_get_uniform_iv)(program, location, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_attrib_dv(&self, index: u32, pname: u32, params: *mut f64) {
(self.address_get_vertex_attrib_dv)(index, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_attrib_fv(&self, index: u32, pname: u32, params: *mut f32) {
(self.address_get_vertex_attrib_fv)(index, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_attrib_iv(&self, index: u32, pname: u32, params: *mut i32) {
(self.address_get_vertex_attrib_iv)(index, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_attrib_pointer_v(&self, index: u32, pname: u32, pointer: *const *mut u8) {
(self.address_get_vertex_attrib_pointer_v)(index, pname, pointer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_program(&self, program: u32) -> u8 {
(self.address_is_program)(program)
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_shader(&self, shader: u32) -> u8 {
(self.address_is_shader)(shader)
}
#[inline(always)]
#[allow(dead_code)]
pub fn link_program(&self, program: u32) {
(self.address_link_program)(program);
}
#[inline(always)]
#[allow(dead_code)]
pub fn shader_source(
&self,
shader: u32,
count: i32,
string: *const *const i8,
length: *const i32,
) {
(self.address_shader_source)(shader, count, string, length);
}
#[inline(always)]
#[allow(dead_code)]
pub fn use_program(&self, program: u32) {
(self.address_use_program)(program);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1f(&self, location: i32, v0: f32) {
(self.address_uniform_1f)(location, v0);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2f(&self, location: i32, v0: f32, v1: f32) {
(self.address_uniform_2f)(location, v0, v1);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3f(&self, location: i32, v0: f32, v1: f32, v2: f32) {
(self.address_uniform_3f)(location, v0, v1, v2);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4f(&self, location: i32, v0: f32, v1: f32, v2: f32, v3: f32) {
(self.address_uniform_4f)(location, v0, v1, v2, v3);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1i(&self, location: i32, v0: i32) {
(self.address_uniform_1i)(location, v0);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2i(&self, location: i32, v0: i32, v1: i32) {
(self.address_uniform_2i)(location, v0, v1);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3i(&self, location: i32, v0: i32, v1: i32, v2: i32) {
(self.address_uniform_3i)(location, v0, v1, v2);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4i(&self, location: i32, v0: i32, v1: i32, v2: i32, v3: i32) {
(self.address_uniform_4i)(location, v0, v1, v2, v3);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1fv(&self, location: i32, count: i32, value: *const f32) {
(self.address_uniform_1fv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2fv(&self, location: i32, count: i32, value: *const f32) {
(self.address_uniform_2fv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3fv(&self, location: i32, count: i32, value: *const f32) {
(self.address_uniform_3fv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4fv(&self, location: i32, count: i32, value: *const f32) {
(self.address_uniform_4fv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1iv(&self, location: i32, count: i32, value: *const i32) {
(self.address_uniform_1iv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2iv(&self, location: i32, count: i32, value: *const i32) {
(self.address_uniform_2iv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3iv(&self, location: i32, count: i32, value: *const i32) {
(self.address_uniform_3iv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4iv(&self, location: i32, count: i32, value: *const i32) {
(self.address_uniform_4iv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_2fv(&self, location: i32, count: i32, transpose: u8, value: *const f32) {
(self.address_uniform_matrix_2fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_3fv(&self, location: i32, count: i32, transpose: u8, value: *const f32) {
(self.address_uniform_matrix_3fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_4fv(&self, location: i32, count: i32, transpose: u8, value: *const f32) {
(self.address_uniform_matrix_4fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn validate_program(&self, program: u32) {
(self.address_validate_program)(program);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_1d(&self, index: u32, x: f64) {
(self.address_vertex_attrib_1d)(index, x);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_1dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_1dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_1f(&self, index: u32, x: f32) {
(self.address_vertex_attrib_1f)(index, x);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_1fv(&self, index: u32, v: *const f32) {
(self.address_vertex_attrib_1fv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_1s(&self, index: u32, x: i16) {
(self.address_vertex_attrib_1s)(index, x);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_1sv(&self, index: u32, v: *const i16) {
(self.address_vertex_attrib_1sv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_2d(&self, index: u32, x: f64, y: f64) {
(self.address_vertex_attrib_2d)(index, x, y);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_2dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_2dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_2f(&self, index: u32, x: f32, y: f32) {
(self.address_vertex_attrib_2f)(index, x, y);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_2fv(&self, index: u32, v: *const f32) {
(self.address_vertex_attrib_2fv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_2s(&self, index: u32, x: i16, y: i16) {
(self.address_vertex_attrib_2s)(index, x, y);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_2sv(&self, index: u32, v: *const i16) {
(self.address_vertex_attrib_2sv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_3d(&self, index: u32, x: f64, y: f64, z: f64) {
(self.address_vertex_attrib_3d)(index, x, y, z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_3dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_3dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_3f(&self, index: u32, x: f32, y: f32, z: f32) {
(self.address_vertex_attrib_3f)(index, x, y, z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_3fv(&self, index: u32, v: *const f32) {
(self.address_vertex_attrib_3fv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_3s(&self, index: u32, x: i16, y: i16, z: i16) {
(self.address_vertex_attrib_3s)(index, x, y, z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_3sv(&self, index: u32, v: *const i16) {
(self.address_vertex_attrib_3sv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4nbv(&self, index: u32, v: *const i8) {
(self.address_vertex_attrib_4nbv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4niv(&self, index: u32, v: *const i32) {
(self.address_vertex_attrib_4niv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4nsv(&self, index: u32, v: *const i16) {
(self.address_vertex_attrib_4nsv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4nub(&self, index: u32, x: u8, y: u8, z: u8, w: u8) {
(self.address_vertex_attrib_4nub)(index, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4nubv(&self, index: u32, v: *const u8) {
(self.address_vertex_attrib_4nubv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4nuiv(&self, index: u32, v: *const u32) {
(self.address_vertex_attrib_4nuiv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4nusv(&self, index: u32, v: *const u16) {
(self.address_vertex_attrib_4nusv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4bv(&self, index: u32, v: *const i8) {
(self.address_vertex_attrib_4bv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4d(&self, index: u32, x: f64, y: f64, z: f64, w: f64) {
(self.address_vertex_attrib_4d)(index, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_4dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4f(&self, index: u32, x: f32, y: f32, z: f32, w: f32) {
(self.address_vertex_attrib_4f)(index, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4fv(&self, index: u32, v: *const f32) {
(self.address_vertex_attrib_4fv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4iv(&self, index: u32, v: *const i32) {
(self.address_vertex_attrib_4iv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4s(&self, index: u32, x: i16, y: i16, z: i16, w: i16) {
(self.address_vertex_attrib_4s)(index, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4sv(&self, index: u32, v: *const i16) {
(self.address_vertex_attrib_4sv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4ubv(&self, index: u32, v: *const u8) {
(self.address_vertex_attrib_4ubv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4uiv(&self, index: u32, v: *const u32) {
(self.address_vertex_attrib_4uiv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_4usv(&self, index: u32, v: *const u16) {
(self.address_vertex_attrib_4usv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_pointer(
&self,
index: u32,
size: i32,
type_value: u32,
normalized: u8,
stride: i32,
pointer: *const u8,
) {
(self.address_vertex_attrib_pointer)(index, size, type_value, normalized, stride, pointer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_2x3fv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_uniform_matrix_2x3fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_3x2fv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_uniform_matrix_3x2fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_2x4fv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_uniform_matrix_2x4fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_4x2fv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_uniform_matrix_4x2fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_3x4fv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_uniform_matrix_3x4fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_4x3fv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_uniform_matrix_4x3fv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn color_mask_i(&self, index: u32, r: u8, g: u8, b: u8, a: u8) {
(self.address_color_mask_i)(index, r, g, b, a);
}
#[inline(always)]
#[allow(dead_code)]
pub fn enable_i(&self, target: u32, index: u32) {
(self.address_enable_i)(target, index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn disable_i(&self, target: u32, index: u32) {
(self.address_disable_i)(target, index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_enabled_i(&self, target: u32, index: u32) -> u8 {
(self.address_is_enabled_i)(target, index)
}
#[inline(always)]
#[allow(dead_code)]
pub fn begin_transform_feedback(&self, primitivemode: u32) {
(self.address_begin_transform_feedback)(primitivemode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn end_transform_feedback(&self) {
(self.address_end_transform_feedback)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_buffer_range(&self, target: u32, index: u32, buffer: u32, offset: i64, size: i64) {
(self.address_bind_buffer_range)(target, index, buffer, offset, size);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_buffer_base(&self, target: u32, index: u32, buffer: u32) {
(self.address_bind_buffer_base)(target, index, buffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn transform_feedback_varyings(
&self,
program: u32,
count: i32,
varyings: *const *const i8,
buffermode: u32,
) {
(self.address_transform_feedback_varyings)(program, count, varyings, buffermode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_transform_feedback_varying(
&self,
program: u32,
index: u32,
bufsize: i32,
length: *mut i32,
size: *mut i32,
type_value: *mut u32,
name: *mut i8,
) {
(self.address_get_transform_feedback_varying)(
program, index, bufsize, length, size, type_value, name,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clamp_color(&self, target: u32, clamp: u32) {
(self.address_clamp_color)(target, clamp);
}
#[inline(always)]
#[allow(dead_code)]
pub fn begin_conditional_render(&self, id: u32, mode: u32) {
(self.address_begin_conditional_render)(id, mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn end_conditional_render(&self) {
(self.address_end_conditional_render)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i_pointer(
&self,
index: u32,
size: i32,
type_value: u32,
stride: i32,
pointer: *const u8,
) {
(self.address_vertex_attrib_i_pointer)(index, size, type_value, stride, pointer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_attrib_iiv(&self, index: u32, pname: u32, params: *mut i32) {
(self.address_get_vertex_attrib_iiv)(index, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_attrib_iuiv(&self, index: u32, pname: u32, params: *mut u32) {
(self.address_get_vertex_attrib_iuiv)(index, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i1i(&self, index: u32, x: i32) {
(self.address_vertex_attrib_i1i)(index, x);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i2i(&self, index: u32, x: i32, y: i32) {
(self.address_vertex_attrib_i2i)(index, x, y);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i3i(&self, index: u32, x: i32, y: i32, z: i32) {
(self.address_vertex_attrib_i3i)(index, x, y, z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4i(&self, index: u32, x: i32, y: i32, z: i32, w: i32) {
(self.address_vertex_attrib_i4i)(index, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i1ui(&self, index: u32, x: u32) {
(self.address_vertex_attrib_i1ui)(index, x);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i2ui(&self, index: u32, x: u32, y: u32) {
(self.address_vertex_attrib_i2ui)(index, x, y);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i3ui(&self, index: u32, x: u32, y: u32, z: u32) {
(self.address_vertex_attrib_i3ui)(index, x, y, z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4ui(&self, index: u32, x: u32, y: u32, z: u32, w: u32) {
(self.address_vertex_attrib_i4ui)(index, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i1iv(&self, index: u32, v: *const i32) {
(self.address_vertex_attrib_i1iv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i2iv(&self, index: u32, v: *const i32) {
(self.address_vertex_attrib_i2iv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i3iv(&self, index: u32, v: *const i32) {
(self.address_vertex_attrib_i3iv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4iv(&self, index: u32, v: *const i32) {
(self.address_vertex_attrib_i4iv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i1uiv(&self, index: u32, v: *const u32) {
(self.address_vertex_attrib_i1uiv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i2uiv(&self, index: u32, v: *const u32) {
(self.address_vertex_attrib_i2uiv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i3uiv(&self, index: u32, v: *const u32) {
(self.address_vertex_attrib_i3uiv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4uiv(&self, index: u32, v: *const u32) {
(self.address_vertex_attrib_i4uiv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4bv(&self, index: u32, v: *const i8) {
(self.address_vertex_attrib_i4bv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4sv(&self, index: u32, v: *const i16) {
(self.address_vertex_attrib_i4sv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4ubv(&self, index: u32, v: *const u8) {
(self.address_vertex_attrib_i4ubv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i4usv(&self, index: u32, v: *const u16) {
(self.address_vertex_attrib_i4usv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_uiv(&self, program: u32, location: i32, params: *mut u32) {
(self.address_get_uniform_uiv)(program, location, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_frag_data_location(&self, program: u32, color: u32, name: *const i8) {
(self.address_bind_frag_data_location)(program, color, name);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_frag_data_location(&self, program: u32, name: *const i8) -> i32 {
(self.address_get_frag_data_location)(program, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1ui(&self, location: i32, v0: u32) {
(self.address_uniform_1ui)(location, v0);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2ui(&self, location: i32, v0: u32, v1: u32) {
(self.address_uniform_2ui)(location, v0, v1);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3ui(&self, location: i32, v0: u32, v1: u32, v2: u32) {
(self.address_uniform_3ui)(location, v0, v1, v2);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4ui(&self, location: i32, v0: u32, v1: u32, v2: u32, v3: u32) {
(self.address_uniform_4ui)(location, v0, v1, v2, v3);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1uiv(&self, location: i32, count: i32, value: *const u32) {
(self.address_uniform_1uiv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2uiv(&self, location: i32, count: i32, value: *const u32) {
(self.address_uniform_2uiv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3uiv(&self, location: i32, count: i32, value: *const u32) {
(self.address_uniform_3uiv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4uiv(&self, location: i32, count: i32, value: *const u32) {
(self.address_uniform_4uiv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_parameter_iiv(&self, target: u32, pname: u32, params: *const i32) {
(self.address_tex_parameter_iiv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_parameter_iuiv(&self, target: u32, pname: u32, params: *const u32) {
(self.address_tex_parameter_iuiv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_tex_parameter_iiv(&self, target: u32, pname: u32, params: *mut i32) {
(self.address_get_tex_parameter_iiv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_tex_parameter_iuiv(&self, target: u32, pname: u32, params: *mut u32) {
(self.address_get_tex_parameter_iuiv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_buffer_iv(&self, buffer: u32, drawbuffer: i32, value: *const i32) {
(self.address_clear_buffer_iv)(buffer, drawbuffer, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_buffer_uiv(&self, buffer: u32, drawbuffer: i32, value: *const u32) {
(self.address_clear_buffer_uiv)(buffer, drawbuffer, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_buffer_fv(&self, buffer: u32, drawbuffer: i32, value: *const f32) {
(self.address_clear_buffer_fv)(buffer, drawbuffer, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_buffer_fi(&self, buffer: u32, drawbuffer: i32, depth: f32, stencil: i32) {
(self.address_clear_buffer_fi)(buffer, drawbuffer, depth, stencil);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_renderbuffer(&self, renderbuffer: u32) -> u8 {
(self.address_is_renderbuffer)(renderbuffer)
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_renderbuffer(&self, target: u32, renderbuffer: u32) {
(self.address_bind_renderbuffer)(target, renderbuffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_renderbuffers(&self, n: i32, renderbuffers: *const u32) {
(self.address_delete_renderbuffers)(n, renderbuffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_renderbuffers(&self, n: i32, renderbuffers: *mut u32) {
(self.address_gen_renderbuffers)(n, renderbuffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn renderbuffer_storage(&self, target: u32, internalformat: u32, width: i32, height: i32) {
(self.address_renderbuffer_storage)(target, internalformat, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_renderbuffer_parameter_iv(&self, target: u32, pname: u32, params: *mut i32) {
(self.address_get_renderbuffer_parameter_iv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_framebuffer(&self, framebuffer: u32) -> u8 {
(self.address_is_framebuffer)(framebuffer)
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_framebuffer(&self, target: u32, framebuffer: u32) {
(self.address_bind_framebuffer)(target, framebuffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_framebuffers(&self, n: i32, framebuffers: *const u32) {
(self.address_delete_framebuffers)(n, framebuffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_framebuffers(&self, n: i32, framebuffers: *mut u32) {
(self.address_gen_framebuffers)(n, framebuffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn check_framebuffer_status(&self, target: u32) -> u32 {
(self.address_check_framebuffer_status)(target)
}
#[inline(always)]
#[allow(dead_code)]
pub fn framebuffer_texture_1d(
&self,
target: u32,
attachment: u32,
textarget: u32,
texture: u32,
level: i32,
) {
(self.address_framebuffer_texture_1d)(target, attachment, textarget, texture, level);
}
#[inline(always)]
#[allow(dead_code)]
pub fn framebuffer_texture_2d(
&self,
target: u32,
attachment: u32,
textarget: u32,
texture: u32,
level: i32,
) {
(self.address_framebuffer_texture_2d)(target, attachment, textarget, texture, level);
}
#[inline(always)]
#[allow(dead_code)]
pub fn framebuffer_texture_3d(
&self,
target: u32,
attachment: u32,
textarget: u32,
texture: u32,
level: i32,
zoffset: i32,
) {
(self.address_framebuffer_texture_3d)(
target, attachment, textarget, texture, level, zoffset,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn framebuffer_renderbuffer(
&self,
target: u32,
attachment: u32,
renderbuffertarget: u32,
renderbuffer: u32,
) {
(self.address_framebuffer_renderbuffer)(
target,
attachment,
renderbuffertarget,
renderbuffer,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_framebuffer_attach_ment_parameter_iv(
&self,
target: u32,
attachment: u32,
pname: u32,
params: *mut i32,
) {
(self.address_get_framebuffer_attach_ment_parameter_iv)(target, attachment, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn generate_mipmap(&self, target: u32) {
(self.address_generate_mipmap)(target);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blit_framebuffer(
&self,
srcx0: i32,
srcy0: i32,
srcx1: i32,
srcy1: i32,
dstx0: i32,
dsty0: i32,
dstx1: i32,
dsty1: i32,
mask: u32,
filter: u32,
) {
(self.address_blit_framebuffer)(
srcx0, srcy0, srcx1, srcy1, dstx0, dsty0, dstx1, dsty1, mask, filter,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn renderbuffer_storage_multisample(
&self,
target: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
) {
(self.address_renderbuffer_storage_multisample)(
target,
samples,
internalformat,
width,
height,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn framebuffer_texture_layer(
&self,
target: u32,
attachment: u32,
texture: u32,
level: i32,
layer: i32,
) {
(self.address_framebuffer_texture_layer)(target, attachment, texture, level, layer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn flush_mapped_buffer_range(&self, target: u32, offset: i64, length: i64) {
(self.address_flush_mapped_buffer_range)(target, offset, length);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_vertex_array(&self, array: u32) {
(self.address_bind_vertex_array)(array);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_vertex_arrays(&self, n: i32, arrays: *const u32) {
(self.address_delete_vertex_arrays)(n, arrays);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_vertex_arrays(&self, n: i32, arrays: *mut u32) {
(self.address_gen_vertex_arrays)(n, arrays);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_vertex_array(&self, array: u32) -> u8 {
(self.address_is_vertex_array)(array)
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_arrays_instanced(&self, mode: u32, first: i32, count: i32, instancecount: i32) {
(self.address_draw_arrays_instanced)(mode, first, count, instancecount);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_elements_instanced(
&self,
mode: u32,
count: i32,
type_value: u32,
indices: *const u8,
instancecount: i32,
) {
(self.address_draw_elements_instanced)(mode, count, type_value, indices, instancecount);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_buffer(&self, target: u32, internalformat: u32, buffer: u32) {
(self.address_tex_buffer)(target, internalformat, buffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn primitive_restart_index(&self, index: u32) {
(self.address_primitive_restart_index)(index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_buffer_sub_data(
&self,
readtarget: u32,
writetarget: u32,
readoffset: i64,
writeoffset: i64,
size: i64,
) {
(self.address_copy_buffer_sub_data)(readtarget, writetarget, readoffset, writeoffset, size);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_indices(
&self,
program: u32,
uniformcount: i32,
uniformnames: *const *const i8,
uniformindices: *mut u32,
) {
(self.address_get_uniform_indices)(program, uniformcount, uniformnames, uniformindices);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_uniform_siv(
&self,
program: u32,
uniformcount: i32,
uniformindices: *const u32,
pname: u32,
params: *mut i32,
) {
(self.address_get_active_uniform_siv)(program, uniformcount, uniformindices, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_uniform_name(
&self,
program: u32,
uniformindex: u32,
bufsize: i32,
length: *mut i32,
uniformname: *mut i8,
) {
(self.address_get_active_uniform_name)(program, uniformindex, bufsize, length, uniformname);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_block_index(&self, program: u32, uniformblockname: *const i8) -> u32 {
(self.address_get_uniform_block_index)(program, uniformblockname)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_uniform_block_iv(
&self,
program: u32,
uniformblockindex: u32,
pname: u32,
params: *mut i32,
) {
(self.address_get_active_uniform_block_iv)(program, uniformblockindex, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_uniform_block_name(
&self,
program: u32,
uniformblockindex: u32,
bufsize: i32,
length: *mut i32,
uniformblockname: *mut i8,
) {
(self.address_get_active_uniform_block_name)(
program,
uniformblockindex,
bufsize,
length,
uniformblockname,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_block_binding(
&self,
program: u32,
uniformblockindex: u32,
uniformblockbinding: u32,
) {
(self.address_uniform_block_binding)(program, uniformblockindex, uniformblockbinding);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_elements_base_vertex(
&self,
mode: u32,
count: i32,
type_value: u32,
indices: *const u8,
basevertex: i32,
) {
(self.address_draw_elements_base_vertex)(mode, count, type_value, indices, basevertex);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_range_elements_base_vertex(
&self,
mode: u32,
start: u32,
end: u32,
count: i32,
type_value: u32,
indices: *const u8,
basevertex: i32,
) {
(self.address_draw_range_elements_base_vertex)(
mode, start, end, count, type_value, indices, basevertex,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_elements_instanced_base_vertex(
&self,
mode: u32,
count: i32,
type_value: u32,
indices: *const u8,
instancecount: i32,
basevertex: i32,
) {
(self.address_draw_elements_instanced_base_vertex)(
mode,
count,
type_value,
indices,
instancecount,
basevertex,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn multi_draw_elements_base_vertex(
&self,
mode: u32,
count: *const i32,
type_value: u32,
indices: *const *const u8,
drawcount: i32,
basevertex: *const i32,
) {
(self.address_multi_draw_elements_base_vertex)(
mode, count, type_value, indices, drawcount, basevertex,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn provoking_vertex(&self, mode: u32) {
(self.address_provoking_vertex)(mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn fence_sync(&self, condition: u32, flags: u32) -> *const *mut u8 {
(self.address_fence_sync)(condition, flags)
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_sync(&self, sync: *const *mut u8) -> u8 {
(self.address_is_sync)(sync)
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_sync(&self, sync: *const *mut u8) {
(self.address_delete_sync)(sync);
}
#[inline(always)]
#[allow(dead_code)]
pub fn client_wait_sync(&self, sync: *const *mut u8, flags: u32, timeout: u64) -> u32 {
(self.address_client_wait_sync)(sync, flags, timeout)
}
#[inline(always)]
#[allow(dead_code)]
pub fn wait_sync(&self, sync: *const *mut u8, flags: u32, timeout: u64) {
(self.address_wait_sync)(sync, flags, timeout);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_integer_64v(&self, pname: u32, data: *mut i64) {
(self.address_get_integer_64v)(pname, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_sync_iv(
&self,
sync: *const *mut u8,
pname: u32,
count: i32,
length: *mut i32,
values: *mut i32,
) {
(self.address_get_sync_iv)(sync, pname, count, length, values);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_buffer_parameter_i64v(&self, target: u32, pname: u32, params: *mut i64) {
(self.address_get_buffer_parameter_i64v)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn framebuffer_texture(&self, target: u32, attachment: u32, texture: u32, level: i32) {
(self.address_framebuffer_texture)(target, attachment, texture, level);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_image_2d_multisample(
&self,
target: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
fixedsamplelocations: u8,
) {
(self.address_tex_image_2d_multisample)(
target,
samples,
internalformat,
width,
height,
fixedsamplelocations,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_image_3d_multisample(
&self,
target: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
depth: i32,
fixedsamplelocations: u8,
) {
(self.address_tex_image_3d_multisample)(
target,
samples,
internalformat,
width,
height,
depth,
fixedsamplelocations,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_multisample_fv(&self, pname: u32, index: u32, val: *mut f32) {
(self.address_get_multisample_fv)(pname, index, val);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sample_mask_i(&self, masknumber: u32, mask: u32) {
(self.address_sample_mask_i)(masknumber, mask);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_frag_data_location_indexed(
&self,
program: u32,
colornumber: u32,
index: u32,
name: *const i8,
) {
(self.address_bind_frag_data_location_indexed)(program, colornumber, index, name);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_frag_data_index(&self, program: u32, name: *const i8) -> i32 {
(self.address_get_frag_data_index)(program, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_samplers(&self, count: i32, samplers: *mut u32) {
(self.address_gen_samplers)(count, samplers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_samplers(&self, count: i32, samplers: *const u32) {
(self.address_delete_samplers)(count, samplers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_sampler(&self, sampler: u32) -> u8 {
(self.address_is_sampler)(sampler)
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_sampler(&self, unit: u32, sampler: u32) {
(self.address_bind_sampler)(unit, sampler);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sampler_parameter_i(&self, sampler: u32, pname: u32, param: i32) {
(self.address_sampler_parameter_i)(sampler, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sampler_parameter_iv(&self, sampler: u32, pname: u32, param: *const i32) {
(self.address_sampler_parameter_iv)(sampler, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sampler_parameter_f(&self, sampler: u32, pname: u32, param: f32) {
(self.address_sampler_parameter_f)(sampler, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sampler_parameter_fv(&self, sampler: u32, pname: u32, param: *const f32) {
(self.address_sampler_parameter_fv)(sampler, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sampler_parameter_iiv(&self, sampler: u32, pname: u32, param: *const i32) {
(self.address_sampler_parameter_iiv)(sampler, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn sampler_parameter_iuiv(&self, sampler: u32, pname: u32, param: *const u32) {
(self.address_sampler_parameter_iuiv)(sampler, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_sampler_parameter_iv(&self, sampler: u32, pname: u32, params: *mut i32) {
(self.address_get_sampler_parameter_iv)(sampler, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_sampler_parameter_iiv(&self, sampler: u32, pname: u32, params: *mut i32) {
(self.address_get_sampler_parameter_iiv)(sampler, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_sampler_parameter_fv(&self, sampler: u32, pname: u32, params: *mut f32) {
(self.address_get_sampler_parameter_fv)(sampler, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_sampler_parameter_iuiv(&self, sampler: u32, pname: u32, params: *mut u32) {
(self.address_get_sampler_parameter_iuiv)(sampler, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn query_counter(&self, id: u32, target: u32) {
(self.address_query_counter)(id, target);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_object_i64v(&self, id: u32, pname: u32, params: *mut i64) {
(self.address_get_query_object_i64v)(id, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_object_ui64v(&self, id: u32, pname: u32, params: *mut u64) {
(self.address_get_query_object_ui64v)(id, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_divisor(&self, index: u32, divisor: u32) {
(self.address_vertex_attrib_divisor)(index, divisor);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p1ui(&self, index: u32, type_value: u32, normalized: u8, value: u32) {
(self.address_vertex_attrib_p1ui)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p1uiv(
&self,
index: u32,
type_value: u32,
normalized: u8,
value: *const u32,
) {
(self.address_vertex_attrib_p1uiv)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p2ui(&self, index: u32, type_value: u32, normalized: u8, value: u32) {
(self.address_vertex_attrib_p2ui)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p2uiv(
&self,
index: u32,
type_value: u32,
normalized: u8,
value: *const u32,
) {
(self.address_vertex_attrib_p2uiv)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p3ui(&self, index: u32, type_value: u32, normalized: u8, value: u32) {
(self.address_vertex_attrib_p3ui)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p3uiv(
&self,
index: u32,
type_value: u32,
normalized: u8,
value: *const u32,
) {
(self.address_vertex_attrib_p3uiv)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p4ui(&self, index: u32, type_value: u32, normalized: u8, value: u32) {
(self.address_vertex_attrib_p4ui)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_p4uiv(
&self,
index: u32,
type_value: u32,
normalized: u8,
value: *const u32,
) {
(self.address_vertex_attrib_p4uiv)(index, type_value, normalized, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn min_sample_shading(&self, value: f32) {
(self.address_min_sample_shading)(value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_equation_i(&self, buf: u32, mode: u32) {
(self.address_blend_equation_i)(buf, mode);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_equation_separate_i(&self, buf: u32, modergb: u32, modealpha: u32) {
(self.address_blend_equation_separate_i)(buf, modergb, modealpha);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_func_i(&self, buf: u32, src: u32, dst: u32) {
(self.address_blend_func_i)(buf, src, dst);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blend_func_separate_i(
&self,
buf: u32,
srcrgb: u32,
dstrgb: u32,
srcalpha: u32,
dstalpha: u32,
) {
(self.address_blend_func_separate_i)(buf, srcrgb, dstrgb, srcalpha, dstalpha);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_arrays_indirect(&self, mode: u32, indirect: *const u8) {
(self.address_draw_arrays_indirect)(mode, indirect);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_elements_indirect(&self, mode: u32, type_value: u32, indirect: *const u8) {
(self.address_draw_elements_indirect)(mode, type_value, indirect);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1d(&self, location: i32, x: f64) {
(self.address_uniform_1d)(location, x);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2d(&self, location: i32, x: f64, y: f64) {
(self.address_uniform_2d)(location, x, y);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3d(&self, location: i32, x: f64, y: f64, z: f64) {
(self.address_uniform_3d)(location, x, y, z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4d(&self, location: i32, x: f64, y: f64, z: f64, w: f64) {
(self.address_uniform_4d)(location, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_1dv(&self, location: i32, count: i32, value: *const f64) {
(self.address_uniform_1dv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_2dv(&self, location: i32, count: i32, value: *const f64) {
(self.address_uniform_2dv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_3dv(&self, location: i32, count: i32, value: *const f64) {
(self.address_uniform_3dv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_4dv(&self, location: i32, count: i32, value: *const f64) {
(self.address_uniform_4dv)(location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_2dv(&self, location: i32, count: i32, transpose: u8, value: *const f64) {
(self.address_uniform_matrix_2dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_3dv(&self, location: i32, count: i32, transpose: u8, value: *const f64) {
(self.address_uniform_matrix_3dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_4dv(&self, location: i32, count: i32, transpose: u8, value: *const f64) {
(self.address_uniform_matrix_4dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_2x3dv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_uniform_matrix_2x3dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_2x4dv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_uniform_matrix_2x4dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_3x2dv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_uniform_matrix_3x2dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_3x4dv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_uniform_matrix_3x4dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_4x2dv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_uniform_matrix_4x2dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_matrix_4x3dv(
&self,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_uniform_matrix_4x3dv)(location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_dv(&self, program: u32, location: i32, params: *mut f64) {
(self.address_get_uniform_dv)(program, location, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_subroutine_uniform_location(
&self,
program: u32,
shadertype: u32,
name: *const i8,
) -> i32 {
(self.address_get_subroutine_uniform_location)(program, shadertype, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_subroutine_index(&self, program: u32, shadertype: u32, name: *const i8) -> u32 {
(self.address_get_subroutine_index)(program, shadertype, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_subroutine_uniform_iv(
&self,
program: u32,
shadertype: u32,
index: u32,
pname: u32,
values: *mut i32,
) {
(self.address_get_active_subroutine_uniform_iv)(program, shadertype, index, pname, values);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_subroutine_uniform_name(
&self,
program: u32,
shadertype: u32,
index: u32,
bufsize: i32,
length: *mut i32,
name: *mut i8,
) {
(self.address_get_active_subroutine_uniform_name)(
program, shadertype, index, bufsize, length, name,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_subroutine_name(
&self,
program: u32,
shadertype: u32,
index: u32,
bufsize: i32,
length: *mut i32,
name: *mut i8,
) {
(self.address_get_active_subroutine_name)(
program, shadertype, index, bufsize, length, name,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn uniform_subroutines_uiv(&self, shadertype: u32, count: i32, indices: *const u32) {
(self.address_uniform_subroutines_uiv)(shadertype, count, indices);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_uniform_subroutine_uiv(&self, shadertype: u32, location: i32, params: *mut u32) {
(self.address_get_uniform_subroutine_uiv)(shadertype, location, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_stage_iv(
&self,
program: u32,
shadertype: u32,
pname: u32,
values: *mut i32,
) {
(self.address_get_program_stage_iv)(program, shadertype, pname, values);
}
#[inline(always)]
#[allow(dead_code)]
pub fn atch_parameter_i(&self, pname: u32, value: i32) {
(self.address_atch_parameter_i)(pname, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn atch_parameter_fv(&self, pname: u32, values: *const f32) {
(self.address_atch_parameter_fv)(pname, values);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_transform_feedback(&self, target: u32, id: u32) {
(self.address_bind_transform_feedback)(target, id);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_transform_feedback_s(&self, n: i32, ids: *const u32) {
(self.address_delete_transform_feedback_s)(n, ids);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_transform_feedback_s(&self, n: i32, ids: *mut u32) {
(self.address_gen_transform_feedback_s)(n, ids);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_transform_feedback(&self, id: u32) -> u8 {
(self.address_is_transform_feedback)(id)
}
#[inline(always)]
#[allow(dead_code)]
pub fn pause_transform_feedback(&self) {
(self.address_pause_transform_feedback)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn resume_transform_feedback(&self) {
(self.address_resume_transform_feedback)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_transform_feedback(&self, mode: u32, id: u32) {
(self.address_draw_transform_feedback)(mode, id);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_transform_feedback_stream(&self, mode: u32, id: u32, stream: u32) {
(self.address_draw_transform_feedback_stream)(mode, id, stream);
}
#[inline(always)]
#[allow(dead_code)]
pub fn begin_query_indexed(&self, target: u32, index: u32, id: u32) {
(self.address_begin_query_indexed)(target, index, id);
}
#[inline(always)]
#[allow(dead_code)]
pub fn end_query_indexed(&self, target: u32, index: u32) {
(self.address_end_query_indexed)(target, index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_indexed_iv(&self, target: u32, index: u32, pname: u32, params: *mut i32) {
(self.address_get_query_indexed_iv)(target, index, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn release_shader_compiler(&self) {
(self.address_release_shader_compiler)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn shader_binary(
&self,
count: i32,
shaders: *const u32,
binaryformat: u32,
binary: *const u8,
length: i32,
) {
(self.address_shader_binary)(count, shaders, binaryformat, binary, length);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_shader_precision_format(
&self,
shadertype: u32,
precisiontype: u32,
range: *mut i32,
precision: *mut i32,
) {
(self.address_get_shader_precision_format)(shadertype, precisiontype, range, precision);
}
#[inline(always)]
#[allow(dead_code)]
pub fn depth_range_f(&self, n: f32, f: f32) {
(self.address_depth_range_f)(n, f);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_depth_f(&self, d: f32) {
(self.address_clear_depth_f)(d);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_binary(
&self,
program: u32,
bufsize: i32,
length: *mut i32,
binaryformat: *mut u32,
binary: *mut u8,
) {
(self.address_get_program_binary)(program, bufsize, length, binaryformat, binary);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_binary(&self, program: u32, binaryformat: u32, binary: *const u8, length: i32) {
(self.address_program_binary)(program, binaryformat, binary, length);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_parameter_i(&self, program: u32, pname: u32, value: i32) {
(self.address_program_parameter_i)(program, pname, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn use_program_stage_s(&self, pipeline: u32, stages: u32, program: u32) {
(self.address_use_program_stage_s)(pipeline, stages, program);
}
#[inline(always)]
#[allow(dead_code)]
pub fn active_shader_program(&self, pipeline: u32, program: u32) {
(self.address_active_shader_program)(pipeline, program);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_shader_program_v(
&self,
type_value: u32,
count: i32,
strings: *const *const i8,
) -> u32 {
(self.address_create_shader_program_v)(type_value, count, strings)
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_program_pipeline(&self, pipeline: u32) {
(self.address_bind_program_pipeline)(pipeline);
}
#[inline(always)]
#[allow(dead_code)]
pub fn delete_program_pipelines(&self, n: i32, pipelines: *const u32) {
(self.address_delete_program_pipelines)(n, pipelines);
}
#[inline(always)]
#[allow(dead_code)]
pub fn gen_program_pipelines(&self, n: i32, pipelines: *mut u32) {
(self.address_gen_program_pipelines)(n, pipelines);
}
#[inline(always)]
#[allow(dead_code)]
pub fn is_program_pipeline(&self, pipeline: u32) -> u8 {
(self.address_is_program_pipeline)(pipeline)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_pipeline_iv(&self, pipeline: u32, pname: u32, params: *mut i32) {
(self.address_get_program_pipeline_iv)(pipeline, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1i(&self, program: u32, location: i32, v0: i32) {
(self.address_program_uniform_1i)(program, location, v0);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1iv(&self, program: u32, location: i32, count: i32, value: *const i32) {
(self.address_program_uniform_1iv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1f(&self, program: u32, location: i32, v0: f32) {
(self.address_program_uniform_1f)(program, location, v0);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1fv(&self, program: u32, location: i32, count: i32, value: *const f32) {
(self.address_program_uniform_1fv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1d(&self, program: u32, location: i32, v0: f64) {
(self.address_program_uniform_1d)(program, location, v0);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1dv(&self, program: u32, location: i32, count: i32, value: *const f64) {
(self.address_program_uniform_1dv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1ui(&self, program: u32, location: i32, v0: u32) {
(self.address_program_uniform_1ui)(program, location, v0);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_1uiv(&self, program: u32, location: i32, count: i32, value: *const u32) {
(self.address_program_uniform_1uiv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2i(&self, program: u32, location: i32, v0: i32, v1: i32) {
(self.address_program_uniform_2i)(program, location, v0, v1);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2iv(&self, program: u32, location: i32, count: i32, value: *const i32) {
(self.address_program_uniform_2iv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2f(&self, program: u32, location: i32, v0: f32, v1: f32) {
(self.address_program_uniform_2f)(program, location, v0, v1);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2fv(&self, program: u32, location: i32, count: i32, value: *const f32) {
(self.address_program_uniform_2fv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2d(&self, program: u32, location: i32, v0: f64, v1: f64) {
(self.address_program_uniform_2d)(program, location, v0, v1);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2dv(&self, program: u32, location: i32, count: i32, value: *const f64) {
(self.address_program_uniform_2dv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2ui(&self, program: u32, location: i32, v0: u32, v1: u32) {
(self.address_program_uniform_2ui)(program, location, v0, v1);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_2uiv(&self, program: u32, location: i32, count: i32, value: *const u32) {
(self.address_program_uniform_2uiv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3i(&self, program: u32, location: i32, v0: i32, v1: i32, v2: i32) {
(self.address_program_uniform_3i)(program, location, v0, v1, v2);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3iv(&self, program: u32, location: i32, count: i32, value: *const i32) {
(self.address_program_uniform_3iv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3f(&self, program: u32, location: i32, v0: f32, v1: f32, v2: f32) {
(self.address_program_uniform_3f)(program, location, v0, v1, v2);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3fv(&self, program: u32, location: i32, count: i32, value: *const f32) {
(self.address_program_uniform_3fv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3d(&self, program: u32, location: i32, v0: f64, v1: f64, v2: f64) {
(self.address_program_uniform_3d)(program, location, v0, v1, v2);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3dv(&self, program: u32, location: i32, count: i32, value: *const f64) {
(self.address_program_uniform_3dv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3ui(&self, program: u32, location: i32, v0: u32, v1: u32, v2: u32) {
(self.address_program_uniform_3ui)(program, location, v0, v1, v2);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_3uiv(&self, program: u32, location: i32, count: i32, value: *const u32) {
(self.address_program_uniform_3uiv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4i(
&self,
program: u32,
location: i32,
v0: i32,
v1: i32,
v2: i32,
v3: i32,
) {
(self.address_program_uniform_4i)(program, location, v0, v1, v2, v3);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4iv(&self, program: u32, location: i32, count: i32, value: *const i32) {
(self.address_program_uniform_4iv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4f(
&self,
program: u32,
location: i32,
v0: f32,
v1: f32,
v2: f32,
v3: f32,
) {
(self.address_program_uniform_4f)(program, location, v0, v1, v2, v3);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4fv(&self, program: u32, location: i32, count: i32, value: *const f32) {
(self.address_program_uniform_4fv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4d(
&self,
program: u32,
location: i32,
v0: f64,
v1: f64,
v2: f64,
v3: f64,
) {
(self.address_program_uniform_4d)(program, location, v0, v1, v2, v3);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4dv(&self, program: u32, location: i32, count: i32, value: *const f64) {
(self.address_program_uniform_4dv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4ui(
&self,
program: u32,
location: i32,
v0: u32,
v1: u32,
v2: u32,
v3: u32,
) {
(self.address_program_uniform_4ui)(program, location, v0, v1, v2, v3);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_4uiv(&self, program: u32, location: i32, count: i32, value: *const u32) {
(self.address_program_uniform_4uiv)(program, location, count, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_2fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_2fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_3fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_3fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_4fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_4fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_2dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_2dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_3dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_3dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_4dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_4dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_2x3fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_2x3fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_3x2fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_3x2fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_2x4fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_2x4fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_4x2fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_4x2fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_3x4fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_3x4fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_4x3fv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f32,
) {
(self.address_program_uniform_matrix_4x3fv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_2x3dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_2x3dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_3x2dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_3x2dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_2x4dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_2x4dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_4x2dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_4x2dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_3x4dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_3x4dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn program_uniform_matrix_4x3dv(
&self,
program: u32,
location: i32,
count: i32,
transpose: u8,
value: *const f64,
) {
(self.address_program_uniform_matrix_4x3dv)(program, location, count, transpose, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn validate_program_pipeline(&self, pipeline: u32) {
(self.address_validate_program_pipeline)(pipeline);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_pipeline_info_log(
&self,
pipeline: u32,
bufsize: i32,
length: *mut i32,
infolog: *mut i8,
) {
(self.address_get_program_pipeline_info_log)(pipeline, bufsize, length, infolog);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l1d(&self, index: u32, x: f64) {
(self.address_vertex_attrib_l1d)(index, x);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l2d(&self, index: u32, x: f64, y: f64) {
(self.address_vertex_attrib_l2d)(index, x, y);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l3d(&self, index: u32, x: f64, y: f64, z: f64) {
(self.address_vertex_attrib_l3d)(index, x, y, z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l4d(&self, index: u32, x: f64, y: f64, z: f64, w: f64) {
(self.address_vertex_attrib_l4d)(index, x, y, z, w);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l1dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_l1dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l2dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_l2dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l3dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_l3dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l4dv(&self, index: u32, v: *const f64) {
(self.address_vertex_attrib_l4dv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l_pointer(
&self,
index: u32,
size: i32,
type_value: u32,
stride: i32,
pointer: *const u8,
) {
(self.address_vertex_attrib_l_pointer)(index, size, type_value, stride, pointer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_attrib_ldv(&self, index: u32, pname: u32, params: *mut f64) {
(self.address_get_vertex_attrib_ldv)(index, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn viewport_array_v(&self, first: u32, count: i32, v: *const f32) {
(self.address_viewport_array_v)(first, count, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn viewport_indexed_f(&self, index: u32, x: f32, y: f32, w: f32, h: f32) {
(self.address_viewport_indexed_f)(index, x, y, w, h);
}
#[inline(always)]
#[allow(dead_code)]
pub fn viewport_indexed_fv(&self, index: u32, v: *const f32) {
(self.address_viewport_indexed_fv)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn scissor_array_v(&self, first: u32, count: i32, v: *const i32) {
(self.address_scissor_array_v)(first, count, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn scissor_indexed(&self, index: u32, left: i32, bottom: i32, width: i32, height: i32) {
(self.address_scissor_indexed)(index, left, bottom, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn scissor_indexed_v(&self, index: u32, v: *const i32) {
(self.address_scissor_indexed_v)(index, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn depth_range_array_v(&self, first: u32, count: i32, v: *const f64) {
(self.address_depth_range_array_v)(first, count, v);
}
#[inline(always)]
#[allow(dead_code)]
pub fn depth_range_indexed(&self, index: u32, n: f64, f: f64) {
(self.address_depth_range_indexed)(index, n, f);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_arrays_instanced_base_instance(
&self,
mode: u32,
first: i32,
count: i32,
instancecount: i32,
baseinstance: u32,
) {
(self.address_draw_arrays_instanced_base_instance)(
mode,
first,
count,
instancecount,
baseinstance,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_elements_instanced_base_instance(
&self,
mode: u32,
count: i32,
type_value: u32,
indices: *const u8,
instancecount: i32,
baseinstance: u32,
) {
(self.address_draw_elements_instanced_base_instance)(
mode,
count,
type_value,
indices,
instancecount,
baseinstance,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_elements_instanced_base_vertex_base_instance(
&self,
mode: u32,
count: i32,
type_value: u32,
indices: *const u8,
instancecount: i32,
basevertex: i32,
baseinstance: u32,
) {
(self.address_draw_elements_instanced_base_vertex_base_instance)(
mode,
count,
type_value,
indices,
instancecount,
basevertex,
baseinstance,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_internal_formativ(
&self,
target: u32,
internalformat: u32,
pname: u32,
count: i32,
params: *mut i32,
) {
(self.address_get_internal_formativ)(target, internalformat, pname, count, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_active_atomic_counter_buffer_iv(
&self,
program: u32,
bufferindex: u32,
pname: u32,
params: *mut i32,
) {
(self.address_get_active_atomic_counter_buffer_iv)(program, bufferindex, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_image_texture(
&self,
unit: u32,
texture: u32,
level: i32,
layered: u8,
layer: i32,
access: u32,
format: u32,
) {
(self.address_bind_image_texture)(unit, texture, level, layered, layer, access, format);
}
#[inline(always)]
#[allow(dead_code)]
pub fn memory_barrier(&self, barriers: u32) {
(self.address_memory_barrier)(barriers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_storage_1d(&self, target: u32, levels: i32, internalformat: u32, width: i32) {
(self.address_tex_storage_1d)(target, levels, internalformat, width);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_storage_2d(
&self,
target: u32,
levels: i32,
internalformat: u32,
width: i32,
height: i32,
) {
(self.address_tex_storage_2d)(target, levels, internalformat, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_storage_3d(
&self,
target: u32,
levels: i32,
internalformat: u32,
width: i32,
height: i32,
depth: i32,
) {
(self.address_tex_storage_3d)(target, levels, internalformat, width, height, depth);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_transform_feedback_instanced(&self, mode: u32, id: u32, instancecount: i32) {
(self.address_draw_transform_feedback_instanced)(mode, id, instancecount);
}
#[inline(always)]
#[allow(dead_code)]
pub fn draw_transform_feedback_stream_instanced(
&self,
mode: u32,
id: u32,
stream: u32,
instancecount: i32,
) {
(self.address_draw_transform_feedback_stream_instanced)(mode, id, stream, instancecount);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_buffer_data(
&self,
target: u32,
internalformat: u32,
format: u32,
type_value: u32,
data: *const u8,
) {
(self.address_clear_buffer_data)(target, internalformat, format, type_value, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_buffer_sub_data(
&self,
target: u32,
internalformat: u32,
offset: i64,
size: i64,
format: u32,
type_value: u32,
data: *const u8,
) {
(self.address_clear_buffer_sub_data)(
target,
internalformat,
offset,
size,
format,
type_value,
data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn dispatch_compute(&self, num_groups_x: u32, num_groups_y: u32, num_groups_z: u32) {
(self.address_dispatch_compute)(num_groups_x, num_groups_y, num_groups_z);
}
#[inline(always)]
#[allow(dead_code)]
pub fn dispatch_compute_indirect(&self, indirect: i64) {
(self.address_dispatch_compute_indirect)(indirect);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_image_sub_data(
&self,
srcname: u32,
srctarget: u32,
srclevel: i32,
srcx: i32,
srcy: i32,
srcz: i32,
dstname: u32,
dsttarget: u32,
dstlevel: i32,
dstx: i32,
dsty: i32,
dstz: i32,
srcwidth: i32,
srcheight: i32,
srcdepth: i32,
) {
(self.address_copy_image_sub_data)(
srcname, srctarget, srclevel, srcx, srcy, srcz, dstname, dsttarget, dstlevel, dstx,
dsty, dstz, srcwidth, srcheight, srcdepth,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn framebuffer_parameter_i(&self, target: u32, pname: u32, param: i32) {
(self.address_framebuffer_parameter_i)(target, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_framebuffer_parameter_iv(&self, target: u32, pname: u32, params: *mut i32) {
(self.address_get_framebuffer_parameter_iv)(target, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_internal_formati64v(
&self,
target: u32,
internalformat: u32,
pname: u32,
count: i32,
params: *mut i64,
) {
(self.address_get_internal_formati64v)(target, internalformat, pname, count, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_tex_sub_image(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
) {
(self.address_invalidate_tex_sub_image)(
texture, level, xoffset, yoffset, zoffset, width, height, depth,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_tex_image(&self, texture: u32, level: i32) {
(self.address_invalidate_tex_image)(texture, level);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_buffer_sub_data(&self, buffer: u32, offset: i64, length: i64) {
(self.address_invalidate_buffer_sub_data)(buffer, offset, length);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_buffer_data(&self, buffer: u32) {
(self.address_invalidate_buffer_data)(buffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_framebuffer(
&self,
target: u32,
numattachments: i32,
attachments: *const u32,
) {
(self.address_invalidate_framebuffer)(target, numattachments, attachments);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_sub_framebuffer(
&self,
target: u32,
numattachments: i32,
attachments: *const u32,
x: i32,
y: i32,
width: i32,
height: i32,
) {
(self.address_invalidate_sub_framebuffer)(
target,
numattachments,
attachments,
x,
y,
width,
height,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn multi_draw_arrays_indirect(
&self,
mode: u32,
indirect: *const u8,
drawcount: i32,
stride: i32,
) {
(self.address_multi_draw_arrays_indirect)(mode, indirect, drawcount, stride);
}
#[inline(always)]
#[allow(dead_code)]
pub fn multi_draw_elements_indirect(
&self,
mode: u32,
type_value: u32,
indirect: *const u8,
drawcount: i32,
stride: i32,
) {
(self.address_multi_draw_elements_indirect)(mode, type_value, indirect, drawcount, stride);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_interface_iv(
&self,
program: u32,
programinterface: u32,
pname: u32,
params: *mut i32,
) {
(self.address_get_program_interface_iv)(program, programinterface, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_resource_index(
&self,
program: u32,
programinterface: u32,
name: *const i8,
) -> u32 {
(self.address_get_program_resource_index)(program, programinterface, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_resource_name(
&self,
program: u32,
programinterface: u32,
index: u32,
bufsize: i32,
length: *mut i32,
name: *mut i8,
) {
(self.address_get_program_resource_name)(
program,
programinterface,
index,
bufsize,
length,
name,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_resource_iv(
&self,
program: u32,
programinterface: u32,
index: u32,
propcount: i32,
props: *const u32,
count: i32,
length: *mut i32,
params: *mut i32,
) {
(self.address_get_program_resource_iv)(
program,
programinterface,
index,
propcount,
props,
count,
length,
params,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_resource_location(
&self,
program: u32,
programinterface: u32,
name: *const i8,
) -> i32 {
(self.address_get_program_resource_location)(program, programinterface, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_program_resource_location_index(
&self,
program: u32,
programinterface: u32,
name: *const i8,
) -> i32 {
(self.address_get_program_resource_location_index)(program, programinterface, name)
}
#[inline(always)]
#[allow(dead_code)]
pub fn shader_storage_block_binding(
&self,
program: u32,
storageblockindex: u32,
storageblockbinding: u32,
) {
(self.address_shader_storage_block_binding)(
program,
storageblockindex,
storageblockbinding,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_buffer_range(
&self,
target: u32,
internalformat: u32,
buffer: u32,
offset: i64,
size: i64,
) {
(self.address_tex_buffer_range)(target, internalformat, buffer, offset, size);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_storage_2d_multisample(
&self,
target: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
fixedsamplelocations: u8,
) {
(self.address_tex_storage_2d_multisample)(
target,
samples,
internalformat,
width,
height,
fixedsamplelocations,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn tex_storage_3d_multisample(
&self,
target: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
depth: i32,
fixedsamplelocations: u8,
) {
(self.address_tex_storage_3d_multisample)(
target,
samples,
internalformat,
width,
height,
depth,
fixedsamplelocations,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_view(
&self,
texture: u32,
target: u32,
origtexture: u32,
internalformat: u32,
minlevel: u32,
numlevels: u32,
minlayer: u32,
numlayers: u32,
) {
(self.address_texture_view)(
texture,
target,
origtexture,
internalformat,
minlevel,
numlevels,
minlayer,
numlayers,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_vertex_buffer(&self, bindingindex: u32, buffer: u32, offset: i64, stride: i32) {
(self.address_bind_vertex_buffer)(bindingindex, buffer, offset, stride);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_format(
&self,
attribindex: u32,
size: i32,
type_value: u32,
normalized: u8,
relativeoffset: u32,
) {
(self.address_vertex_attrib_format)(
attribindex,
size,
type_value,
normalized,
relativeoffset,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_i_format(
&self,
attribindex: u32,
size: i32,
type_value: u32,
relativeoffset: u32,
) {
(self.address_vertex_attrib_i_format)(attribindex, size, type_value, relativeoffset);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_l_format(
&self,
attribindex: u32,
size: i32,
type_value: u32,
relativeoffset: u32,
) {
(self.address_vertex_attrib_l_format)(attribindex, size, type_value, relativeoffset);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_attrib_binding(&self, attribindex: u32, bindingindex: u32) {
(self.address_vertex_attrib_binding)(attribindex, bindingindex);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_binding_divisor(&self, bindingindex: u32, divisor: u32) {
(self.address_vertex_binding_divisor)(bindingindex, divisor);
}
#[inline(always)]
#[allow(dead_code)]
pub fn debug_message_control(
&self,
source: u32,
type_value: u32,
severity: u32,
count: i32,
ids: *const u32,
enabled: u8,
) {
(self.address_debug_message_control)(source, type_value, severity, count, ids, enabled);
}
#[inline(always)]
#[allow(dead_code)]
pub fn debug_message_insert(
&self,
source: u32,
type_value: u32,
id: u32,
severity: u32,
length: i32,
buf: *const i8,
) {
(self.address_debug_message_insert)(source, type_value, id, severity, length, buf);
}
#[inline(always)]
#[allow(dead_code)]
pub fn debug_message_call_back(&self, callback: *const *mut u8, userparam: *const u8) {
(self.address_debug_message_call_back)(callback, userparam);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_debug_message_log(
&self,
count: u32,
bufsize: i32,
sources: *mut u32,
types: *mut u32,
ids: *mut u32,
severities: *mut u32,
lengths: *mut i32,
messagelog: *mut i8,
) -> u32 {
(self.address_get_debug_message_log)(
count, bufsize, sources, types, ids, severities, lengths, messagelog,
)
}
#[inline(always)]
#[allow(dead_code)]
pub fn push_debug_group(&self, source: u32, id: u32, length: i32, message: *const i8) {
(self.address_push_debug_group)(source, id, length, message);
}
#[inline(always)]
#[allow(dead_code)]
pub fn pop_debug_group(&self) {
(self.address_pop_debug_group)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn object_label(&self, identifier: u32, name: u32, length: i32, label: *const i8) {
(self.address_object_label)(identifier, name, length, label);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_object_label(
&self,
identifier: u32,
name: u32,
bufsize: i32,
length: *mut i32,
label: *mut i8,
) {
(self.address_get_object_label)(identifier, name, bufsize, length, label);
}
#[inline(always)]
#[allow(dead_code)]
pub fn object_ptr_label(&self, ptr: *const u8, length: i32, label: *const i8) {
(self.address_object_ptr_label)(ptr, length, label);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_object_ptr_label(
&self,
ptr: *const u8,
bufsize: i32,
length: *mut i32,
label: *mut i8,
) {
(self.address_get_object_ptr_label)(ptr, bufsize, length, label);
}
#[inline(always)]
#[allow(dead_code)]
pub fn buffer_storage(&self, target: u32, size: i64, data: *const u8, flags: u32) {
(self.address_buffer_storage)(target, size, data, flags);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_tex_image(
&self,
texture: u32,
level: i32,
format: u32,
type_value: u32,
data: *const u8,
) {
(self.address_clear_tex_image)(texture, level, format, type_value, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_tex_sub_image(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
format: u32,
type_value: u32,
data: *const u8,
) {
(self.address_clear_tex_sub_image)(
texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type_value,
data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_buffers_base(&self, target: u32, first: u32, count: i32, buffers: *const u32) {
(self.address_bind_buffers_base)(target, first, count, buffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_buffers_range(
&self,
target: u32,
first: u32,
count: i32,
buffers: *const u32,
offsets: *const i64,
sizes: *const i64,
) {
(self.address_bind_buffers_range)(target, first, count, buffers, offsets, sizes);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_textures(&self, first: u32, count: i32, textures: *const u32) {
(self.address_bind_textures)(first, count, textures);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_samplers(&self, first: u32, count: i32, samplers: *const u32) {
(self.address_bind_samplers)(first, count, samplers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_image_textures(&self, first: u32, count: i32, textures: *const u32) {
(self.address_bind_image_textures)(first, count, textures);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_vertex_buffers(
&self,
first: u32,
count: i32,
buffers: *const u32,
offsets: *const i64,
strides: *const i32,
) {
(self.address_bind_vertex_buffers)(first, count, buffers, offsets, strides);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clip_control(&self, origin: u32, depth: u32) {
(self.address_clip_control)(origin, depth);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_transform_feedback_s(&self, n: i32, ids: *mut u32) {
(self.address_create_transform_feedback_s)(n, ids);
}
#[inline(always)]
#[allow(dead_code)]
pub fn transform_feedback_buffer_base(&self, xfb: u32, index: u32, buffer: u32) {
(self.address_transform_feedback_buffer_base)(xfb, index, buffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn transform_feedback_buffer_range(
&self,
xfb: u32,
index: u32,
buffer: u32,
offset: i64,
size: i64,
) {
(self.address_transform_feedback_buffer_range)(xfb, index, buffer, offset, size);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_transform_feedback_iv(&self, xfb: u32, pname: u32, param: *mut i32) {
(self.address_get_transform_feedback_iv)(xfb, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_buffers(&self, n: i32, buffers: *mut u32) {
(self.address_create_buffers)(n, buffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_buffer_storage(&self, buffer: u32, size: i64, data: *const u8, flags: u32) {
(self.address_named_buffer_storage)(buffer, size, data, flags);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_buffer_data(&self, buffer: u32, size: i64, data: *const u8, usage: u32) {
(self.address_named_buffer_data)(buffer, size, data, usage);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_buffer_sub_data(&self, buffer: u32, offset: i64, size: i64, data: *const u8) {
(self.address_named_buffer_sub_data)(buffer, offset, size, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_named_buffer_sub_data(
&self,
readbuffer: u32,
writebuffer: u32,
readoffset: i64,
writeoffset: i64,
size: i64,
) {
(self.address_copy_named_buffer_sub_data)(
readbuffer,
writebuffer,
readoffset,
writeoffset,
size,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_named_buffer_data(
&self,
buffer: u32,
internalformat: u32,
format: u32,
type_value: u32,
data: *const u8,
) {
(self.address_clear_named_buffer_data)(buffer, internalformat, format, type_value, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_named_buffer_sub_data(
&self,
buffer: u32,
internalformat: u32,
offset: i64,
size: i64,
format: u32,
type_value: u32,
data: *const u8,
) {
(self.address_clear_named_buffer_sub_data)(
buffer,
internalformat,
offset,
size,
format,
type_value,
data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn unmap_named_buffer(&self, buffer: u32) -> u8 {
(self.address_unmap_named_buffer)(buffer)
}
#[inline(always)]
#[allow(dead_code)]
pub fn flush_mapped_named_buffer_range(&self, buffer: u32, offset: i64, length: i64) {
(self.address_flush_mapped_named_buffer_range)(buffer, offset, length);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_named_buffer_parameter_iv(&self, buffer: u32, pname: u32, params: *mut i32) {
(self.address_get_named_buffer_parameter_iv)(buffer, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_named_buffer_parameter_i64v(&self, buffer: u32, pname: u32, params: *mut i64) {
(self.address_get_named_buffer_parameter_i64v)(buffer, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_named_buffer_pointer_v(&self, buffer: u32, pname: u32, params: *const *mut u8) {
(self.address_get_named_buffer_pointer_v)(buffer, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_named_buffer_sub_data(&self, buffer: u32, offset: i64, size: i64, data: *mut u8) {
(self.address_get_named_buffer_sub_data)(buffer, offset, size, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_framebuffers(&self, n: i32, framebuffers: *mut u32) {
(self.address_create_framebuffers)(n, framebuffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_framebuffer_renderbuffer(
&self,
framebuffer: u32,
attachment: u32,
renderbuffertarget: u32,
renderbuffer: u32,
) {
(self.address_named_framebuffer_renderbuffer)(
framebuffer,
attachment,
renderbuffertarget,
renderbuffer,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_framebuffer_parameter_i(&self, framebuffer: u32, pname: u32, param: i32) {
(self.address_named_framebuffer_parameter_i)(framebuffer, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_framebuffer_texture(
&self,
framebuffer: u32,
attachment: u32,
texture: u32,
level: i32,
) {
(self.address_named_framebuffer_texture)(framebuffer, attachment, texture, level);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_framebuffer_texture_layer(
&self,
framebuffer: u32,
attachment: u32,
texture: u32,
level: i32,
layer: i32,
) {
(self.address_named_framebuffer_texture_layer)(
framebuffer,
attachment,
texture,
level,
layer,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_framebuffer_draw_buffer(&self, framebuffer: u32, buf: u32) {
(self.address_named_framebuffer_draw_buffer)(framebuffer, buf);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_framebuffer_draw_buffers(&self, framebuffer: u32, n: i32, bufs: *const u32) {
(self.address_named_framebuffer_draw_buffers)(framebuffer, n, bufs);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_framebuffer_read_buffer(&self, framebuffer: u32, src: u32) {
(self.address_named_framebuffer_read_buffer)(framebuffer, src);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_named_framebuffer_data(
&self,
framebuffer: u32,
numattachments: i32,
attachments: *const u32,
) {
(self.address_invalidate_named_framebuffer_data)(framebuffer, numattachments, attachments);
}
#[inline(always)]
#[allow(dead_code)]
pub fn invalidate_named_framebuffer_sub_data(
&self,
framebuffer: u32,
numattachments: i32,
attachments: *const u32,
x: i32,
y: i32,
width: i32,
height: i32,
) {
(self.address_invalidate_named_framebuffer_sub_data)(
framebuffer,
numattachments,
attachments,
x,
y,
width,
height,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_named_framebuffer_iv(
&self,
framebuffer: u32,
buffer: u32,
drawbuffer: i32,
value: *const i32,
) {
(self.address_clear_named_framebuffer_iv)(framebuffer, buffer, drawbuffer, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_named_framebuffer_uiv(
&self,
framebuffer: u32,
buffer: u32,
drawbuffer: i32,
value: *const u32,
) {
(self.address_clear_named_framebuffer_uiv)(framebuffer, buffer, drawbuffer, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_named_framebuffer_fv(
&self,
framebuffer: u32,
buffer: u32,
drawbuffer: i32,
value: *const f32,
) {
(self.address_clear_named_framebuffer_fv)(framebuffer, buffer, drawbuffer, value);
}
#[inline(always)]
#[allow(dead_code)]
pub fn clear_named_framebuffer_fi(
&self,
framebuffer: u32,
buffer: u32,
drawbuffer: i32,
depth: f32,
stencil: i32,
) {
(self.address_clear_named_framebuffer_fi)(framebuffer, buffer, drawbuffer, depth, stencil);
}
#[inline(always)]
#[allow(dead_code)]
pub fn blit_named_framebuffer(
&self,
readframebuffer: u32,
drawframebuffer: u32,
srcx0: i32,
srcy0: i32,
srcx1: i32,
srcy1: i32,
dstx0: i32,
dsty0: i32,
dstx1: i32,
dsty1: i32,
mask: u32,
filter: u32,
) {
(self.address_blit_named_framebuffer)(
readframebuffer,
drawframebuffer,
srcx0,
srcy0,
srcx1,
srcy1,
dstx0,
dsty0,
dstx1,
dsty1,
mask,
filter,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn check_named_framebuffer_status(&self, framebuffer: u32, target: u32) -> u32 {
(self.address_check_named_framebuffer_status)(framebuffer, target)
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_named_framebuffer_parameter_iv(
&self,
framebuffer: u32,
pname: u32,
param: *mut i32,
) {
(self.address_get_named_framebuffer_parameter_iv)(framebuffer, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_named_framebuffer_attach_ment_parameter_iv(
&self,
framebuffer: u32,
attachment: u32,
pname: u32,
params: *mut i32,
) {
(self.address_get_named_framebuffer_attach_ment_parameter_iv)(
framebuffer,
attachment,
pname,
params,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_renderbuffers(&self, n: i32, renderbuffers: *mut u32) {
(self.address_create_renderbuffers)(n, renderbuffers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_renderbuffer_storage(
&self,
renderbuffer: u32,
internalformat: u32,
width: i32,
height: i32,
) {
(self.address_named_renderbuffer_storage)(renderbuffer, internalformat, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn named_renderbuffer_storage_multisample(
&self,
renderbuffer: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
) {
(self.address_named_renderbuffer_storage_multisample)(
renderbuffer,
samples,
internalformat,
width,
height,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_named_renderbuffer_parameter_iv(
&self,
renderbuffer: u32,
pname: u32,
params: *mut i32,
) {
(self.address_get_named_renderbuffer_parameter_iv)(renderbuffer, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_textures(&self, target: u32, n: i32, textures: *mut u32) {
(self.address_create_textures)(target, n, textures);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_buffer(&self, texture: u32, internalformat: u32, buffer: u32) {
(self.address_texture_buffer)(texture, internalformat, buffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_buffer_range(
&self,
texture: u32,
internalformat: u32,
buffer: u32,
offset: i64,
size: i64,
) {
(self.address_texture_buffer_range)(texture, internalformat, buffer, offset, size);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_storage_1d(&self, texture: u32, levels: i32, internalformat: u32, width: i32) {
(self.address_texture_storage_1d)(texture, levels, internalformat, width);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_storage_2d(
&self,
texture: u32,
levels: i32,
internalformat: u32,
width: i32,
height: i32,
) {
(self.address_texture_storage_2d)(texture, levels, internalformat, width, height);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_storage_3d(
&self,
texture: u32,
levels: i32,
internalformat: u32,
width: i32,
height: i32,
depth: i32,
) {
(self.address_texture_storage_3d)(texture, levels, internalformat, width, height, depth);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_storage_2d_multisample(
&self,
texture: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
fixedsamplelocations: u8,
) {
(self.address_texture_storage_2d_multisample)(
texture,
samples,
internalformat,
width,
height,
fixedsamplelocations,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_storage_3d_multisample(
&self,
texture: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
depth: i32,
fixedsamplelocations: u8,
) {
(self.address_texture_storage_3d_multisample)(
texture,
samples,
internalformat,
width,
height,
depth,
fixedsamplelocations,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_sub_image_1d(
&self,
texture: u32,
level: i32,
xoffset: i32,
width: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_texture_sub_image_1d)(
texture, level, xoffset, width, format, type_value, pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_sub_image_2d(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
width: i32,
height: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_texture_sub_image_2d)(
texture, level, xoffset, yoffset, width, height, format, type_value, pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_sub_image_3d(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
format: u32,
type_value: u32,
pixels: *const u8,
) {
(self.address_texture_sub_image_3d)(
texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type_value,
pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_texture_sub_image_1d(
&self,
texture: u32,
level: i32,
xoffset: i32,
width: i32,
format: u32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_texture_sub_image_1d)(
texture, level, xoffset, width, format, imagesize, data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_texture_sub_image_2d(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
width: i32,
height: i32,
format: u32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_texture_sub_image_2d)(
texture, level, xoffset, yoffset, width, height, format, imagesize, data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn compressed_texture_sub_image_3d(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
format: u32,
imagesize: i32,
data: *const u8,
) {
(self.address_compressed_texture_sub_image_3d)(
texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imagesize,
data,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_texture_sub_image_1d(
&self,
texture: u32,
level: i32,
xoffset: i32,
x: i32,
y: i32,
width: i32,
) {
(self.address_copy_texture_sub_image_1d)(texture, level, xoffset, x, y, width);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_texture_sub_image_2d(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
x: i32,
y: i32,
width: i32,
height: i32,
) {
(self.address_copy_texture_sub_image_2d)(
texture, level, xoffset, yoffset, x, y, width, height,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn copy_texture_sub_image_3d(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
x: i32,
y: i32,
width: i32,
height: i32,
) {
(self.address_copy_texture_sub_image_3d)(
texture, level, xoffset, yoffset, zoffset, x, y, width, height,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_parameter_f(&self, texture: u32, pname: u32, param: f32) {
(self.address_texture_parameter_f)(texture, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_parameter_fv(&self, texture: u32, pname: u32, param: *const f32) {
(self.address_texture_parameter_fv)(texture, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_parameter_i(&self, texture: u32, pname: u32, param: i32) {
(self.address_texture_parameter_i)(texture, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_parameter_iiv(&self, texture: u32, pname: u32, params: *const i32) {
(self.address_texture_parameter_iiv)(texture, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_parameter_iuiv(&self, texture: u32, pname: u32, params: *const u32) {
(self.address_texture_parameter_iuiv)(texture, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_parameter_iv(&self, texture: u32, pname: u32, param: *const i32) {
(self.address_texture_parameter_iv)(texture, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn generate_texture_mipmap(&self, texture: u32) {
(self.address_generate_texture_mipmap)(texture);
}
#[inline(always)]
#[allow(dead_code)]
pub fn bind_texture_unit(&self, unit: u32, texture: u32) {
(self.address_bind_texture_unit)(unit, texture);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_image(
&self,
texture: u32,
level: i32,
format: u32,
type_value: u32,
bufsize: i32,
pixels: *mut u8,
) {
(self.address_get_texture_image)(texture, level, format, type_value, bufsize, pixels);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_compressed_texture_image(
&self,
texture: u32,
level: i32,
bufsize: i32,
pixels: *mut u8,
) {
(self.address_get_compressed_texture_image)(texture, level, bufsize, pixels);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_level_parameter_fv(
&self,
texture: u32,
level: i32,
pname: u32,
params: *mut f32,
) {
(self.address_get_texture_level_parameter_fv)(texture, level, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_level_parameter_iv(
&self,
texture: u32,
level: i32,
pname: u32,
params: *mut i32,
) {
(self.address_get_texture_level_parameter_iv)(texture, level, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_parameter_fv(&self, texture: u32, pname: u32, params: *mut f32) {
(self.address_get_texture_parameter_fv)(texture, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_parameter_iiv(&self, texture: u32, pname: u32, params: *mut i32) {
(self.address_get_texture_parameter_iiv)(texture, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_parameter_iuiv(&self, texture: u32, pname: u32, params: *mut u32) {
(self.address_get_texture_parameter_iuiv)(texture, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_parameter_iv(&self, texture: u32, pname: u32, params: *mut i32) {
(self.address_get_texture_parameter_iv)(texture, pname, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_vertex_arrays(&self, n: i32, arrays: *mut u32) {
(self.address_create_vertex_arrays)(n, arrays);
}
#[inline(always)]
#[allow(dead_code)]
pub fn disable_vertex_array_attrib(&self, vaobj: u32, index: u32) {
(self.address_disable_vertex_array_attrib)(vaobj, index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn enable_vertex_array_attrib(&self, vaobj: u32, index: u32) {
(self.address_enable_vertex_array_attrib)(vaobj, index);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_element_buffer(&self, vaobj: u32, buffer: u32) {
(self.address_vertex_array_element_buffer)(vaobj, buffer);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_vertex_buffer(
&self,
vaobj: u32,
bindingindex: u32,
buffer: u32,
offset: i64,
stride: i32,
) {
(self.address_vertex_array_vertex_buffer)(vaobj, bindingindex, buffer, offset, stride);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_vertex_buffers(
&self,
vaobj: u32,
first: u32,
count: i32,
buffers: *const u32,
offsets: *const i64,
strides: *const i32,
) {
(self.address_vertex_array_vertex_buffers)(vaobj, first, count, buffers, offsets, strides);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_attrib_binding(&self, vaobj: u32, attribindex: u32, bindingindex: u32) {
(self.address_vertex_array_attrib_binding)(vaobj, attribindex, bindingindex);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_attrib_format(
&self,
vaobj: u32,
attribindex: u32,
size: i32,
type_value: u32,
normalized: u8,
relativeoffset: u32,
) {
(self.address_vertex_array_attrib_format)(
vaobj,
attribindex,
size,
type_value,
normalized,
relativeoffset,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_attrib_i_format(
&self,
vaobj: u32,
attribindex: u32,
size: i32,
type_value: u32,
relativeoffset: u32,
) {
(self.address_vertex_array_attrib_i_format)(
vaobj,
attribindex,
size,
type_value,
relativeoffset,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_attrib_l_format(
&self,
vaobj: u32,
attribindex: u32,
size: i32,
type_value: u32,
relativeoffset: u32,
) {
(self.address_vertex_array_attrib_l_format)(
vaobj,
attribindex,
size,
type_value,
relativeoffset,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn vertex_array_binding_divisor(&self, vaobj: u32, bindingindex: u32, divisor: u32) {
(self.address_vertex_array_binding_divisor)(vaobj, bindingindex, divisor);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_array_iv(&self, vaobj: u32, pname: u32, param: *mut i32) {
(self.address_get_vertex_array_iv)(vaobj, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_array_indexed_iv(&self, vaobj: u32, index: u32, pname: u32, param: *mut i32) {
(self.address_get_vertex_array_indexed_iv)(vaobj, index, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_vertex_array_indexed_64iv(
&self,
vaobj: u32,
index: u32,
pname: u32,
param: *mut i64,
) {
(self.address_get_vertex_array_indexed_64iv)(vaobj, index, pname, param);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_samplers(&self, n: i32, samplers: *mut u32) {
(self.address_create_samplers)(n, samplers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_program_pipelines(&self, n: i32, pipelines: *mut u32) {
(self.address_create_program_pipelines)(n, pipelines);
}
#[inline(always)]
#[allow(dead_code)]
pub fn create_queries(&self, target: u32, n: i32, ids: *mut u32) {
(self.address_create_queries)(target, n, ids);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_buffer_object_i64v(&self, id: u32, buffer: u32, pname: u32, offset: i64) {
(self.address_get_query_buffer_object_i64v)(id, buffer, pname, offset);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_buffer_object_iv(&self, id: u32, buffer: u32, pname: u32, offset: i64) {
(self.address_get_query_buffer_object_iv)(id, buffer, pname, offset);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_buffer_object_ui64v(&self, id: u32, buffer: u32, pname: u32, offset: i64) {
(self.address_get_query_buffer_object_ui64v)(id, buffer, pname, offset);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_query_buffer_object_uiv(&self, id: u32, buffer: u32, pname: u32, offset: i64) {
(self.address_get_query_buffer_object_uiv)(id, buffer, pname, offset);
}
#[inline(always)]
#[allow(dead_code)]
pub fn memory_barrier_by_region(&self, barriers: u32) {
(self.address_memory_barrier_by_region)(barriers);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_texture_sub_image(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
format: u32,
type_value: u32,
bufsize: i32,
pixels: *mut u8,
) {
(self.address_get_texture_sub_image)(
texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type_value,
bufsize, pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_compressed_texture_sub_image(
&self,
texture: u32,
level: i32,
xoffset: i32,
yoffset: i32,
zoffset: i32,
width: i32,
height: i32,
depth: i32,
bufsize: i32,
pixels: *mut u8,
) {
(self.address_get_compressed_texture_sub_image)(
texture, level, xoffset, yoffset, zoffset, width, height, depth, bufsize, pixels,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_graphics_reset_status(&self) -> u32 {
(self.address_get_graphics_reset_status)()
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_n_compressed_tex_image(&self, target: u32, lod: i32, bufsize: i32, pixels: *mut u8) {
(self.address_get_n_compressed_tex_image)(target, lod, bufsize, pixels);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_n_tex_image(
&self,
target: u32,
level: i32,
format: u32,
type_value: u32,
bufsize: i32,
pixels: *mut u8,
) {
(self.address_get_n_tex_image)(target, level, format, type_value, bufsize, pixels);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_n_uniform_dv(&self, program: u32, location: i32, bufsize: i32, params: *mut f64) {
(self.address_get_n_uniform_dv)(program, location, bufsize, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_n_uniform_fv(&self, program: u32, location: i32, bufsize: i32, params: *mut f32) {
(self.address_get_n_uniform_fv)(program, location, bufsize, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_n_uniform_iv(&self, program: u32, location: i32, bufsize: i32, params: *mut i32) {
(self.address_get_n_uniform_iv)(program, location, bufsize, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn get_n_uniform_uiv(&self, program: u32, location: i32, bufsize: i32, params: *mut u32) {
(self.address_get_n_uniform_uiv)(program, location, bufsize, params);
}
#[inline(always)]
#[allow(dead_code)]
pub fn read_n_pixels(
&self,
x: i32,
y: i32,
width: i32,
height: i32,
format: u32,
type_value: u32,
bufsize: i32,
data: *mut u8,
) {
(self.address_read_n_pixels)(x, y, width, height, format, type_value, bufsize, data);
}
#[inline(always)]
#[allow(dead_code)]
pub fn texture_barrier(&self) {
(self.address_texture_barrier)();
}
#[inline(always)]
#[allow(dead_code)]
pub fn specialize_shader(
&self,
shader: u32,
pentrypoint: *const i8,
numspecializationconstants: u32,
pconstantindex: *const u32,
pconstantvalue: *const u32,
) {
(self.address_specialize_shader)(
shader,
pentrypoint,
numspecializationconstants,
pconstantindex,
pconstantvalue,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn multi_draw_arrays_indirect_count(
&self,
mode: u32,
indirect: *const u8,
drawcount: i64,
maxdrawcount: i32,
stride: i32,
) {
(self.address_multi_draw_arrays_indirect_count)(
mode,
indirect,
drawcount,
maxdrawcount,
stride,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn multi_draw_elements_indirect_count(
&self,
mode: u32,
type_value: u32,
indirect: *const u8,
drawcount: i64,
maxdrawcount: i32,
stride: i32,
) {
(self.address_multi_draw_elements_indirect_count)(
mode,
type_value,
indirect,
drawcount,
maxdrawcount,
stride,
);
}
#[inline(always)]
#[allow(dead_code)]
pub fn polygon_offset_clamp(&self, factor: f32, units: f32, clamp: f32) {
(self.address_polygon_offset_clamp)(factor, units, clamp);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment