From 9f27d23e52a42435b9b4dfccf72e11607b23121e Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sat, 26 Feb 2022 21:35:35 -0800 Subject: [PATCH 01/15] feat: add logic to parse gl xml --- Cargo.toml | 2 +- ci/Cargo.toml | 15 - ci/src/lib.rs | 7 - vk-parse/Cargo.toml | 4 + vk-parse/src/gl/mod.rs | 2 + vk-parse/src/gl/parse.rs | 48 ++ vk-parse/src/gl/types.rs | 51 ++ vk-parse/src/lib.rs | 20 +- vk-parse/src/types.rs | 1193 ------------------------------ vk-parse/src/util.rs | 279 +++++++ vk-parse/src/{ => vk}/convert.rs | 4 +- vk-parse/src/vk/mod.rs | 16 + vk-parse/src/{ => vk}/parse.rs | 271 +------ vk-parse/src/vk/types.rs | 1193 ++++++++++++++++++++++++++++++ {ci => vk-parse}/tests/test.rs | 0 15 files changed, 1606 insertions(+), 1499 deletions(-) delete mode 100644 ci/Cargo.toml delete mode 100644 ci/src/lib.rs create mode 100644 vk-parse/src/gl/mod.rs create mode 100644 vk-parse/src/gl/parse.rs create mode 100644 vk-parse/src/gl/types.rs create mode 100644 vk-parse/src/util.rs rename vk-parse/src/{ => vk}/convert.rs (99%) create mode 100644 vk-parse/src/vk/mod.rs rename vk-parse/src/{ => vk}/parse.rs (82%) create mode 100644 vk-parse/src/vk/types.rs rename {ci => vk-parse}/tests/test.rs (100%) diff --git a/Cargo.toml b/Cargo.toml index 9bb5247..38c270c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,5 @@ [workspace] members = [ "vk-parse", - "ci", + "gl-parse" ] diff --git a/ci/Cargo.toml b/ci/Cargo.toml deleted file mode 100644 index 087f6c4..0000000 --- a/ci/Cargo.toml +++ /dev/null @@ -1,15 +0,0 @@ -[package] -name = "ci" -version = "0.1.0" -authors = ["Martin Krošlák "] - -[dependencies] - -[dev-dependencies] -minreq = { version = "^2", features = ["https"] } -ron = "^0.4" -serde = "^1.0.75" -serde_derive = "^1.0.75" -vk-parse = { path = "../vk-parse", features = ["serialize", "vkxml-convert"] } -vkxml = "^0.3" -xml-rs = "^0.8" diff --git a/ci/src/lib.rs b/ci/src/lib.rs deleted file mode 100644 index 31e1bb2..0000000 --- a/ci/src/lib.rs +++ /dev/null @@ -1,7 +0,0 @@ -#[cfg(test)] -mod tests { - #[test] - fn it_works() { - assert_eq!(2 + 2, 4); - } -} diff --git a/vk-parse/Cargo.toml b/vk-parse/Cargo.toml index 5062695..8fb2ac0 100644 --- a/vk-parse/Cargo.toml +++ b/vk-parse/Cargo.toml @@ -13,10 +13,14 @@ categories = ["parser-implementations", "rendering::graphics-api"] [features] serialize = ["serde", "serde_derive"] vkxml-convert = ["vkxml"] +vulkan = [] +opengl = [] + [dependencies] xml-rs = "^0.8" +common-parse = { path = "../common-parse", version = "0.1.0" } vkxml = { optional = true, version = "^0.3" } serde = { optional = true, version = "^1.0.75" } serde_derive = { optional = true, version = "^1.0.75" } diff --git a/vk-parse/src/gl/mod.rs b/vk-parse/src/gl/mod.rs new file mode 100644 index 0000000..190ebed --- /dev/null +++ b/vk-parse/src/gl/mod.rs @@ -0,0 +1,2 @@ +mod types; +mod parse; diff --git a/vk-parse/src/gl/parse.rs b/vk-parse/src/gl/parse.rs new file mode 100644 index 0000000..d232a48 --- /dev/null +++ b/vk-parse/src/gl/parse.rs @@ -0,0 +1,48 @@ +use std::io::Read; + +use util::*; +use types::*; +use gl::types::*; + +//-------------------------------------------------------------------------------------------------- +/// Parses the Vulkan XML file into a Rust object. +pub fn parse_file(path: &std::path::Path) -> Result<(Registry, Vec), FatalError> { + let file = std::io::BufReader::new(std::fs::File::open(path)?); + let parser = xml::reader::ParserConfig::new().create_reader(file); + parse_xml(parser.into_iter()) +} + +/// Parses the Vulkan XML file from stream into a Rust object. +pub fn parse_stream(stream: T) -> Result<(Registry, Vec), FatalError> { + let parser = xml::reader::ParserConfig::new().create_reader(stream); + parse_xml(parser.into_iter()) +} + +fn parse_xml(events: XmlEvents) -> Result<(Registry, Vec), FatalError> { + let mut ctx = ParseCtx { + events, + xpath: String::from(""), + errors: Vec::new(), + }; + + let mut result = Err(FatalError::MissingRegistryElement); + + { + let ctx = &mut ctx; + match_elements! {ctx, + "registry" => result = parse_registry(ctx) + } + } + + result.map(|r| (r, ctx.errors)) +} + + +fn parse_registry(ctx: &mut ParseCtx) -> Result { + let mut registry = Registry(Vec::new()); + + match_elements! {ctx, attributes, + "comment" => registry.0.push(RegistryChild::Comment(parse_text_element(ctx))) + } + Ok(registry) +} diff --git a/vk-parse/src/gl/types.rs b/vk-parse/src/gl/types.rs new file mode 100644 index 0000000..b377f2e --- /dev/null +++ b/vk-parse/src/gl/types.rs @@ -0,0 +1,51 @@ + +/// Rust structure representing the Vulkan registry. +/// +/// The registry contains all the information contained in a certain version +/// of the Vulkan specification, stored within a programmer-accessible format. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +pub struct Registry(pub Vec); + + + +/// An element of the Vulkan registry. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum RegistryChild { + /// Comments are human-readable strings which contain registry meta-data. + Comment(String), + // + // /// IDs of all known Vulkan vendors. + // VendorIds(VendorIds), + // + // /// List of supported Vulkan platforms. + // Platforms(Platforms), + // + // /// Known extension tags. + // Tags(Tags), + // + // /// Type definitions. + // /// + // /// Unlike OpenGL, Vulkan is a strongly-typed API. + // Types(Types), + // + // /// Enum definitions. + // Enums(Enums), + // + // /// Commands are the Vulkan API's name for functions. + // Commands(Commands), + // + // /// Feature level of the API, such as Vulkan 1.0 or 1.1 + // Feature(Feature), + // + // /// Container for all published Vulkan specification extensions. + // Extensions(Extensions), + // + // Formats(Formats), + // + // SpirvExtensions(SpirvExtensions), + // + // SpirvCapabilities(SpirvCapabilities), +} diff --git a/vk-parse/src/lib.rs b/vk-parse/src/lib.rs index 3e1aefe..277f377 100644 --- a/vk-parse/src/lib.rs +++ b/vk-parse/src/lib.rs @@ -11,21 +11,15 @@ extern crate xml; extern crate serde_derive; #[cfg(feature = "serialize")] extern crate serde; - -#[cfg(feature = "vkxml-convert")] -extern crate vkxml; +pub use types::*; #[macro_use] -mod parse; +mod util; mod c; -#[cfg(feature = "vkxml-convert")] -mod convert; mod types; -#[cfg(feature = "vkxml-convert")] -pub use convert::parse_file_as_vkxml; -#[cfg(feature = "vkxml-convert")] -pub use convert::parse_stream_as_vkxml; -pub use parse::parse_file; -pub use parse::parse_stream; -pub use types::*; +#[cfg(feature = "vulkan")] +mod vk; +#[cfg(feature = "opengl")] +mod gl; + diff --git a/vk-parse/src/types.rs b/vk-parse/src/types.rs index 19ae3b7..1334381 100644 --- a/vk-parse/src/types.rs +++ b/vk-parse/src/types.rs @@ -1,18 +1,3 @@ -#![allow(non_snake_case)] - -/// Errors from which parser cannot recover. -#[derive(Debug)] -#[non_exhaustive] -pub enum FatalError { - MissingRegistryElement, - IoError(std::io::Error), -} - -impl From for FatalError { - fn from(v: std::io::Error) -> FatalError { - FatalError::IoError(v) - } -} /// Errors from which parser can recover. How much information will be missing /// in the resulting Registry depends on the type of error and situation in @@ -56,1181 +41,3 @@ pub enum Error { desc: &'static str, }, } - -/// Rust structure representing the Vulkan registry. -/// -/// The registry contains all the information contained in a certain version -/// of the Vulkan specification, stored within a programmer-accessible format. -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -pub struct Registry(pub Vec); - -/// An element of the Vulkan registry. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum RegistryChild { - /// Comments are human-readable strings which contain registry meta-data. - Comment(String), - - /// IDs of all known Vulkan vendors. - VendorIds(VendorIds), - - /// List of supported Vulkan platforms. - Platforms(Platforms), - - /// Known extension tags. - Tags(Tags), - - /// Type definitions. - /// - /// Unlike OpenGL, Vulkan is a strongly-typed API. - Types(Types), - - /// Enum definitions. - Enums(Enums), - - /// Commands are the Vulkan API's name for functions. - Commands(Commands), - - /// Feature level of the API, such as Vulkan 1.0 or 1.1 - Feature(Feature), - - /// Container for all published Vulkan specification extensions. - Extensions(Extensions), - - Formats(Formats), - - SpirvExtensions(SpirvExtensions), - - SpirvCapabilities(SpirvCapabilities), -} - -pub type VendorIds = CommentedChildren; - -/// Unique identifier for a Vulkan vendor. -/// -/// Note: in newer versions of the Vulkan spec (1.1.79 and later), this tag is -/// not used, instead it has been replaced by the `VKVendorId` enum. -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct VendorId { - /// Name of the vendor. - pub name: String, - - /// The unique ID. - pub id: u32, - - /// Human-readable description. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, -} - -pub type Platforms = CommentedChildren; - -/// A platform refers to a windowing system which Vulkan can use. -/// -/// Most operating systems will have only one corresponding platform, -/// but Linux has multiple (XCB, Wayland, etc.) -/// -/// Used in versions 1.1.70 and later. -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Platform { - /// Short identifier. - pub name: String, - - /// C macro name which is used to guard platform-specific definitions. - pub protect: String, - - /// Human readable description of the platform. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, -} - -pub type Tags = CommentedChildren; - -/// Tags are the little suffixes attached to extension names or items, indicating the author. -/// -/// Some examples: -/// - KHR for Khronos extensions -/// - EXT for multi-vendor extensions -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Tag { - /// The name of the tag, e.g. "KHR". - pub name: String, - /// Author of the extensions associated with the tag, e.g. "Khronos". - pub author: String, - /// Contact information for the extension author(s). - pub contact: String, -} - -pub type Types = CommentedChildren; - -/// An item making up a type definition. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum TypesChild { - Type(Type), - Comment(String), -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Type { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub name: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub alias: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub api: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub requires: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub category: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub parent: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub returnedonly: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub structextends: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub allowduplicate: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub objtypeenum: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub bitvalues: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub spec: TypeSpec, -} - -/// The contents of a type definition. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum TypeSpec { - None, - Code(TypeCode), - Members(Vec), -} - -impl Default for TypeSpec { - fn default() -> Self { - TypeSpec::None - } -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct TypeCode { - pub code: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub markup: Vec, -} - -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum TypeCodeMarkup { - Name(String), - Type(String), - ApiEntry(String), -} - -/// A member of a type definition, i.e. a struct member. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum TypeMember { - /// Human-readable comment. - Comment(String), - - /// A structure field definition. - Definition(TypeMemberDefinition), -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct TypeMemberDefinition { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub len: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub altlen: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub externsync: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub optional: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub selector: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub selection: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub noautovalidity: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub validextensionstructs: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub values: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub limittype: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub objecttype: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub code: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub markup: Vec, -} - -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum TypeMemberMarkup { - Name(String), - Type(String), - Enum(String), - Comment(String), -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Enums { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub name: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub kind: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub start: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub end: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub vendor: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub children: Vec, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub bitwidth: Option, -} - -/// An item which forms an enum. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum EnumsChild { - /// Actual named enum. - Enum(Enum), - - /// An unused range of enum values. - Unused(Unused), - - /// Human-readable comment. - Comment(String), -} - -/// An unused range of enum values. -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Unused { - /// Beginning of the range. - pub start: i64, - - /// Ending value of the range, if any. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub end: Option, - - /// Vendor who reserved this range. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub vendor: Option, - - /// Human-readable description. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, -} - -/// An item of an enumeration type. -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Enum { - /// Name of this enum. - pub name: String, - - /// Human-readable description. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub type_suffix: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub api: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub protect: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub spec: EnumSpec, -} - -/// An enum specifier, which assigns a value to the enum. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum EnumSpec { - None, - - Alias { - alias: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - extends: Option, - }, - - Offset { - offset: i64, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - extends: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - extnumber: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - dir: bool, - }, - - /// Indicates an enum which is a bit flag. - Bitpos { - /// The bit to be set. - bitpos: i64, - - /// Which structure this enum extends. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - extends: Option, - }, - - /// An enum value. - Value { - /// Hard coded value for an enum. - value: String, // rnc says this is an Integer, but validates it as text, and that's what it sometimes really is. - - /// Which structure this enum extends. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - extends: Option, - }, -} - -impl Default for EnumSpec { - fn default() -> Self { - EnumSpec::None - } -} - -pub type Commands = CommentedChildren; - -/// A command is just a Vulkan function. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum Command { - /// Indicates this function is an alias for another one. - Alias { name: String, alias: String }, - - /// Defines a new Vulkan function. - Definition(CommandDefinition), -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct CommandDefinition { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub queues: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub successcodes: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub errorcodes: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub renderpass: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub cmdbufferlevel: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub pipeline: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub proto: NameWithType, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub params: Vec, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub alias: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub description: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub implicitexternsyncparams: Vec, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub code: String, -} - -/// Parameter for this Vulkan function. -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct CommandParam { - /// The expression which indicates the length of this array. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub len: Option, - - /// Alternate description of the length of this parameter. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub altlen: Option, - - /// Whether this parameter must be externally synchronised by the app. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub externsync: Option, - - /// Whether this parameter must have a non-null value. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub optional: Option, - - /// Disables automatic validity language being generated for this item. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub noautovalidity: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub objecttype: Option, - - /// The definition of this parameter. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub definition: NameWithType, -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Feature { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub api: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub name: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub number: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub protect: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub children: Vec, -} - -pub type FeatureChild = ExtensionChild; - -pub type Extensions = CommentedChildren; - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Extension { - /// Name of the extension. - pub name: String, - - /// Human-readable description. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, - - /// The unique index of this extension. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub number: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub protect: Option, - - /// Which platform it works with, if any. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub platform: Option, - - /// Tag name of the author. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub author: Option, - - /// Contact information for extension author(s). - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub contact: Option, - - /// The level at which the extension applies (instance / device). - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub ext_type: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub requires: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub requires_core: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub supported: Option, // mk:TODO StringGroup? - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub deprecatedby: Option, - - /// Whether this extension was promoted to core, and in which version. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub promotedto: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub obsoletedby: Option, - - /// 'true' if this extension is released provisionally - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub provisional: bool, - - /// The items which make up this extension. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub specialuse: Option, - - /// Relative sortorder - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub sortorder: Option, - - /// The items which make up this extension. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub children: Vec, -} - -/// A part of an extension declaration. -/// -/// Extensions either include functionality from the spec, or remove some functionality. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum ExtensionChild { - /// Indicates the items which this extension requires to work. - Require { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - api: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - profile: Option, - - /// The extension which provides these required items, if any. - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - extension: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - feature: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - comment: Option, - - /// The items which form this require block. - items: Vec, - }, - - /// Indicates the items this extension removes. - Remove { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - api: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - profile: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - comment: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - items: Vec, - }, -} - -/// An interface item is a function or an enum which makes up a Vulkan interface. -/// -/// This structure is used by extensions to express dependencies or include functionality. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum InterfaceItem { - Comment(String), - - Type { - name: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - comment: Option, - }, - - Enum(Enum), - - Command { - name: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - comment: Option, - }, -} - -pub type Formats = CommentedChildren; - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct Format { - pub name: String, - pub class: String, - pub blockSize: u8, - pub texelsPerBlock: u8, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub blockExtent: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub packed: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub compressed: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub chroma: Option, - - pub children: Vec, -} - -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum FormatChild { - #[non_exhaustive] - Component { - name: String, - bits: String, - numericFormat: String, - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - planeIndex: Option, - }, - - #[non_exhaustive] - Plane { - index: u8, - widthDivisor: u8, - heightDivisor: u8, - compatible: String, - }, - - #[non_exhaustive] - SpirvImageFormat { name: String }, -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct NameWithType { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub type_name: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub name: String, -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct CommentedChildren { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub comment: Option, - - pub children: Vec, -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct SpirvExtOrCap { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub name: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub enables: Vec, -} - -pub type SpirvExtension = SpirvExtOrCap; -pub type SpirvExtensions = CommentedChildren; - -pub type SpirvCapability = SpirvExtOrCap; -pub type SpirvCapabilities = CommentedChildren; - -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum Enable { - Version(String), - Extension(String), - Feature(FeatureEnable), - Property(PropertyEnable), -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct FeatureEnable { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub struct_: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub feature: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub requires: Option, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub alias: Option, -} - -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub struct PropertyEnable { - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub property: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub member: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub value: String, - - #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") - )] - pub requires: Option, -} - -#[cfg(feature = "serialize")] -fn is_default(v: &T) -> bool { - v.eq(&T::default()) -} diff --git a/vk-parse/src/util.rs b/vk-parse/src/util.rs new file mode 100644 index 0000000..c48a901 --- /dev/null +++ b/vk-parse/src/util.rs @@ -0,0 +1,279 @@ +use std::io::Read; +use std::str::FromStr; +use crate::types::Error; +use xml::reader::XmlEvent; + +pub type XmlEvents = xml::reader::Events; +pub type XmlAttribute = xml::attribute::OwnedAttribute; + +pub fn xpath_attribute(xpath: &str, attribute_name: &str) -> String { + let mut xpath = String::from(xpath); + xpath.push_str("[@"); + xpath.push_str(attribute_name); + xpath.push(']'); + xpath +} + + +//-------------------------------------------------------------------------------------------------- +#[macro_export] +macro_rules! unwrap_attribute ( + ($ctx:expr, $element:ident, $attribute:ident) => { + let $attribute = match $attribute { + Some(val) => val, + None => { + $ctx.errors.push(Error::MissingAttribute { + xpath: $ctx.xpath.clone(), + name: String::from(stringify!($attribute)), + }); + return None; + } + }; + }; +); + +#[macro_export] +macro_rules! match_attributes { + ($ctx:expr, $a:ident in $attributes:expr, $($p:pat => $e:expr),+) => { + for $a in $attributes { + let n = $a.name.local_name.as_str(); + match n { + $( + $p => $e, + )+ + _ => $ctx.errors.push(Error::UnexpectedAttribute { + xpath: $ctx.xpath.clone(), + name: String::from(n), + }) + } + } + }; +} + +#[macro_export] +macro_rules! match_elements { + ($ctx:expr, $($p:pat => $e:expr),+) => { + while let Some(Ok(e)) = $ctx.events.next() { + match e { + XmlEvent::StartElement { name, .. } => { + let name = name.local_name.as_str(); + $ctx.push_element(name); + match name { + $( + $p => $e, + )+ + _ => { + $ctx.errors.push(Error::UnexpectedElement { + xpath: $ctx.xpath.clone(), + name: String::from(name), + }); + consume_current_element($ctx); + } + } + } + XmlEvent::EndElement { .. } => { + $ctx.pop_element(); + break; + } + _ => {} + } + } + }; + + ( $ctx:expr, $attributes:ident, $($p:pat => $e:expr),+) => { + while let Some(Ok(e)) = $ctx.events.next() { + match e { + XmlEvent::StartElement { name, $attributes, .. } => { + let name = name.local_name.as_str(); + $ctx.push_element(name); + match name { + $( + $p => $e, + )+ + _ => { + $ctx.errors.push(Error::UnexpectedElement { + xpath: $ctx.xpath.clone(), + name: String::from(name), + }); + consume_current_element($ctx); + } + } + } + XmlEvent::EndElement { .. } => { + $ctx.pop_element(); + break; + } + _ => {} + } + } + }; +} + +#[macro_export] +macro_rules! match_elements_combine_text { + ( $ctx:expr, $buffer:ident, $($p:pat => $e:expr),+) => { + while let Some(Ok(e)) = $ctx.events.next() { + match e { + XmlEvent::Characters(text) => $buffer.push_str(&text), + XmlEvent::Whitespace(text) => $buffer.push_str(&text), + XmlEvent::StartElement { name, .. } => { + $buffer.push(' '); + let name = name.local_name.as_str(); + $ctx.push_element(name); + match name { + $( + $p => $e, + )+ + _ => { + $ctx.errors.push(Error::UnexpectedElement { + xpath: $ctx.xpath.clone(), + name: String::from(name), + }); + consume_current_element($ctx); + } + } + } + XmlEvent::EndElement { .. } => { + $buffer.push(' '); + $ctx.pop_element(); + break; + }, + _ => {} + } + } + }; + + ( $ctx:expr, $attributes:ident, $buffer:ident, $($p:pat => $e:expr),+) => { + while let Some(Ok(e)) = $ctx.events.next() { + match e { + XmlEvent::Characters(text) => $buffer.push_str(&text), + XmlEvent::Whitespace(text) => $buffer.push_str(&text), + XmlEvent::StartElement { name, $attributes, .. } => { + let name = name.local_name.as_str(); + $ctx.push_element(name); + match name { + $( + $p => $e, + )+ + _ => { + $ctx.errors.push(Error::UnexpectedElement { + xpath: $ctx.xpath.clone(), + name: String::from(name), + }); + consume_current_element($ctx); + } + } + } + XmlEvent::EndElement { .. } => { + $ctx.pop_element(); + break; + } + _ => {} + } + } + }; +} + + +//-------------------------------------------------------------------------------------------------- +pub struct ParseCtx { + pub events: XmlEvents, + pub xpath: String, + pub errors: Vec, +} + +impl ParseCtx { + pub fn push_element(&mut self, name: &str) { + self.xpath.push('/'); + self.xpath.push_str(name); + } + + pub fn pop_element(&mut self) { + if let Some(separator_pos) = self.xpath.rfind('/') { + self.xpath.truncate(separator_pos); + } else { + self.errors.push(Error::Internal { + desc: "ParseCtx push_element/pop_element mismatch.", + }); + } + } +} + +pub fn parse_integer(ctx: &mut ParseCtx, text: &str) -> Option { + let parse_res = if text.starts_with("0x") { + i64::from_str_radix(text.split_at(2).1, 16) + } else { + i64::from_str_radix(text, 10) + }; + + if let Ok(v) = parse_res { + Some(v) + } else { + ctx.errors.push(Error::SchemaViolation { + xpath: ctx.xpath.clone(), + desc: format!("Value '{}' is not valid base 10 or 16 integer.", text), + }); + None + } +} + +pub fn parse_int_attribute, R: Read>( + ctx: &mut ParseCtx, + text: String, + attribute_name: &str, +) -> Option { + match I::from_str(&text) { + Ok(v) => Some(v), + Err(e) => { + ctx.errors.push(Error::ParseIntError { + xpath: xpath_attribute(&ctx.xpath, attribute_name), + text: text, + error: e, + }); + None + } + } +} + +pub fn consume_current_element(ctx: &mut ParseCtx) { + let mut depth = 1; + while let Some(Ok(e)) = ctx.events.next() { + match e { + XmlEvent::StartElement { name, .. } => { + ctx.push_element(name.local_name.as_str()); + depth += 1; + } + XmlEvent::EndElement { .. } => { + depth -= 1; + ctx.pop_element(); + if depth == 0 { + break; + } + } + _ => (), + } + } +} + +pub fn parse_text_element(ctx: &mut ParseCtx) -> String { + let mut result = String::new(); + let mut depth = 1; + while let Some(Ok(e)) = ctx.events.next() { + match e { + XmlEvent::StartElement { name, .. } => { + ctx.push_element(name.local_name.as_str()); + depth += 1; + } + XmlEvent::Characters(text) => result.push_str(&text), + XmlEvent::EndElement { .. } => { + depth -= 1; + ctx.pop_element(); + if depth == 0 { + break; + } + } + _ => (), + } + } + result +} diff --git a/vk-parse/src/convert.rs b/vk-parse/src/vk/convert.rs similarity index 99% rename from vk-parse/src/convert.rs rename to vk-parse/src/vk/convert.rs index d0f7c82..90bb425 100644 --- a/vk-parse/src/convert.rs +++ b/vk-parse/src/vk/convert.rs @@ -1,9 +1,11 @@ extern crate vkxml; use c; -use parse::*; use std; +use parse::*; use types::*; +use vk::parse::*; +use vk::types::*; //-------------------------------------------------------------------------------------------------- fn new_field() -> vkxml::Field { diff --git a/vk-parse/src/vk/mod.rs b/vk-parse/src/vk/mod.rs new file mode 100644 index 0000000..e56b1dc --- /dev/null +++ b/vk-parse/src/vk/mod.rs @@ -0,0 +1,16 @@ +mod parse; +mod types; +#[cfg(feature = "vkxml-convert")] +mod convert; + +#[cfg(feature = "vkxml-convert")] +extern crate vkxml; +#[cfg(feature = "vkxml-convert")] +pub use convert::parse_file_as_vkxml; +#[cfg(feature = "vkxml-convert")] +pub use convert::parse_stream_as_vkxml; +pub use parse::parse_file; +pub use parse::parse_stream; + + + diff --git a/vk-parse/src/parse.rs b/vk-parse/src/vk/parse.rs similarity index 82% rename from vk-parse/src/parse.rs rename to vk-parse/src/vk/parse.rs index be0601b..19c3b91 100644 --- a/vk-parse/src/parse.rs +++ b/vk-parse/src/vk/parse.rs @@ -4,198 +4,9 @@ use std; use std::io::Read; use std::str::FromStr; use xml::reader::XmlEvent; - use types::*; - -type XmlEvents = xml::reader::Events; -type XmlAttribute = xml::attribute::OwnedAttribute; - -//-------------------------------------------------------------------------------------------------- -struct ParseCtx { - events: XmlEvents, - xpath: String, - errors: Vec, -} - -impl ParseCtx { - fn push_element(&mut self, name: &str) { - self.xpath.push('/'); - self.xpath.push_str(name); - } - - fn pop_element(&mut self) { - if let Some(separator_pos) = self.xpath.rfind('/') { - self.xpath.truncate(separator_pos); - } else { - self.errors.push(Error::Internal { - desc: "ParseCtx push_element/pop_element mismatch.", - }); - } - } -} - -fn xpath_attribute(xpath: &str, attribute_name: &str) -> String { - let mut xpath = String::from(xpath); - xpath.push_str("[@"); - xpath.push_str(attribute_name); - xpath.push(']'); - xpath -} - -//-------------------------------------------------------------------------------------------------- -macro_rules! unwrap_attribute ( - ($ctx:expr, $element:ident, $attribute:ident) => { - let $attribute = match $attribute { - Some(val) => val, - None => { - $ctx.errors.push(Error::MissingAttribute { - xpath: $ctx.xpath.clone(), - name: String::from(stringify!($attribute)), - }); - return None; - } - }; - }; -); - -macro_rules! match_attributes { - ($ctx:expr, $a:ident in $attributes:expr, $($p:pat => $e:expr),+) => { - for $a in $attributes { - let n = $a.name.local_name.as_str(); - match n { - $( - $p => $e, - )+ - _ => $ctx.errors.push(Error::UnexpectedAttribute { - xpath: $ctx.xpath.clone(), - name: String::from(n), - }) - } - } - }; -} - -macro_rules! match_elements { - ($ctx:expr, $($p:pat => $e:expr),+) => { - while let Some(Ok(e)) = $ctx.events.next() { - match e { - XmlEvent::StartElement { name, .. } => { - let name = name.local_name.as_str(); - $ctx.push_element(name); - match name { - $( - $p => $e, - )+ - _ => { - $ctx.errors.push(Error::UnexpectedElement { - xpath: $ctx.xpath.clone(), - name: String::from(name), - }); - consume_current_element($ctx); - } - } - } - XmlEvent::EndElement { .. } => { - $ctx.pop_element(); - break; - } - _ => {} - } - } - }; - - ( $ctx:expr, $attributes:ident, $($p:pat => $e:expr),+) => { - while let Some(Ok(e)) = $ctx.events.next() { - match e { - XmlEvent::StartElement { name, $attributes, .. } => { - let name = name.local_name.as_str(); - $ctx.push_element(name); - match name { - $( - $p => $e, - )+ - _ => { - $ctx.errors.push(Error::UnexpectedElement { - xpath: $ctx.xpath.clone(), - name: String::from(name), - }); - consume_current_element($ctx); - } - } - } - XmlEvent::EndElement { .. } => { - $ctx.pop_element(); - break; - } - _ => {} - } - } - }; -} - -macro_rules! match_elements_combine_text { - ( $ctx:expr, $buffer:ident, $($p:pat => $e:expr),+) => { - while let Some(Ok(e)) = $ctx.events.next() { - match e { - XmlEvent::Characters(text) => $buffer.push_str(&text), - XmlEvent::Whitespace(text) => $buffer.push_str(&text), - XmlEvent::StartElement { name, .. } => { - $buffer.push(' '); - let name = name.local_name.as_str(); - $ctx.push_element(name); - match name { - $( - $p => $e, - )+ - _ => { - $ctx.errors.push(Error::UnexpectedElement { - xpath: $ctx.xpath.clone(), - name: String::from(name), - }); - consume_current_element($ctx); - } - } - } - XmlEvent::EndElement { .. } => { - $buffer.push(' '); - $ctx.pop_element(); - break; - }, - _ => {} - } - } - }; - - ( $ctx:expr, $attributes:ident, $buffer:ident, $($p:pat => $e:expr),+) => { - while let Some(Ok(e)) = $ctx.events.next() { - match e { - XmlEvent::Characters(text) => $buffer.push_str(&text), - XmlEvent::Whitespace(text) => $buffer.push_str(&text), - XmlEvent::StartElement { name, $attributes, .. } => { - let name = name.local_name.as_str(); - $ctx.push_element(name); - match name { - $( - $p => $e, - )+ - _ => { - $ctx.errors.push(Error::UnexpectedElement { - xpath: $ctx.xpath.clone(), - name: String::from(name), - }); - consume_current_element($ctx); - } - } - } - XmlEvent::EndElement { .. } => { - $ctx.pop_element(); - break; - } - _ => {} - } - } - }; -} +use util::*; +use vk::types::*; //-------------------------------------------------------------------------------------------------- /// Parses the Vulkan XML file into a Rust object. @@ -1499,81 +1310,3 @@ fn parse_enable(ctx: &mut ParseCtx, attributes: Vec) - } } -fn parse_integer(ctx: &mut ParseCtx, text: &str) -> Option { - let parse_res = if text.starts_with("0x") { - i64::from_str_radix(text.split_at(2).1, 16) - } else { - i64::from_str_radix(text, 10) - }; - - if let Ok(v) = parse_res { - Some(v) - } else { - ctx.errors.push(Error::SchemaViolation { - xpath: ctx.xpath.clone(), - desc: format!("Value '{}' is not valid base 10 or 16 integer.", text), - }); - None - } -} - -fn parse_int_attribute, R: Read>( - ctx: &mut ParseCtx, - text: String, - attribute_name: &str, -) -> Option { - match I::from_str(&text) { - Ok(v) => Some(v), - Err(e) => { - ctx.errors.push(Error::ParseIntError { - xpath: xpath_attribute(&ctx.xpath, attribute_name), - text: text, - error: e, - }); - None - } - } -} - -fn consume_current_element(ctx: &mut ParseCtx) { - let mut depth = 1; - while let Some(Ok(e)) = ctx.events.next() { - match e { - XmlEvent::StartElement { name, .. } => { - ctx.push_element(name.local_name.as_str()); - depth += 1; - } - XmlEvent::EndElement { .. } => { - depth -= 1; - ctx.pop_element(); - if depth == 0 { - break; - } - } - _ => (), - } - } -} - -fn parse_text_element(ctx: &mut ParseCtx) -> String { - let mut result = String::new(); - let mut depth = 1; - while let Some(Ok(e)) = ctx.events.next() { - match e { - XmlEvent::StartElement { name, .. } => { - ctx.push_element(name.local_name.as_str()); - depth += 1; - } - XmlEvent::Characters(text) => result.push_str(&text), - XmlEvent::EndElement { .. } => { - depth -= 1; - ctx.pop_element(); - if depth == 0 { - break; - } - } - _ => (), - } - } - result -} diff --git a/vk-parse/src/vk/types.rs b/vk-parse/src/vk/types.rs new file mode 100644 index 0000000..ce17664 --- /dev/null +++ b/vk-parse/src/vk/types.rs @@ -0,0 +1,1193 @@ +#![allow(non_snake_case)] + +/// Errors from which parser cannot recover. +#[derive(Debug)] +#[non_exhaustive] +pub enum FatalError { + MissingRegistryElement, + IoError(std::io::Error), +} + +impl From for FatalError { + fn from(v: std::io::Error) -> FatalError { + FatalError::IoError(v) + } +} + +/// Rust structure representing the Vulkan registry. +/// +/// The registry contains all the information contained in a certain version +/// of the Vulkan specification, stored within a programmer-accessible format. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +pub struct Registry(pub Vec); + +/// An element of the Vulkan registry. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum RegistryChild { + /// Comments are human-readable strings which contain registry meta-data. + Comment(String), + + /// IDs of all known Vulkan vendors. + VendorIds(VendorIds), + + /// List of supported Vulkan platforms. + Platforms(Platforms), + + /// Known extension tags. + Tags(Tags), + + /// Type definitions. + /// + /// Unlike OpenGL, Vulkan is a strongly-typed API. + Types(Types), + + /// Enum definitions. + Enums(Enums), + + /// Commands are the Vulkan API's name for functions. + Commands(Commands), + + /// Feature level of the API, such as Vulkan 1.0 or 1.1 + Feature(Feature), + + /// Container for all published Vulkan specification extensions. + Extensions(Extensions), + + Formats(Formats), + + SpirvExtensions(SpirvExtensions), + + SpirvCapabilities(SpirvCapabilities), +} + +pub type VendorIds = CommentedChildren; + +/// Unique identifier for a Vulkan vendor. +/// +/// Note: in newer versions of the Vulkan spec (1.1.79 and later), this tag is +/// not used, instead it has been replaced by the `VKVendorId` enum. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct VendorId { + /// Name of the vendor. + pub name: String, + + /// The unique ID. + pub id: u32, + + /// Human-readable description. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, +} + +pub type Platforms = CommentedChildren; + +/// A platform refers to a windowing system which Vulkan can use. +/// +/// Most operating systems will have only one corresponding platform, +/// but Linux has multiple (XCB, Wayland, etc.) +/// +/// Used in versions 1.1.70 and later. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Platform { + /// Short identifier. + pub name: String, + + /// C macro name which is used to guard platform-specific definitions. + pub protect: String, + + /// Human readable description of the platform. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, +} + +pub type Tags = CommentedChildren; + +/// Tags are the little suffixes attached to extension names or items, indicating the author. +/// +/// Some examples: +/// - KHR for Khronos extensions +/// - EXT for multi-vendor extensions +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Tag { + /// The name of the tag, e.g. "KHR". + pub name: String, + /// Author of the extensions associated with the tag, e.g. "Khronos". + pub author: String, + /// Contact information for the extension author(s). + pub contact: String, +} + +pub type Types = CommentedChildren; + +/// An item making up a type definition. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum TypesChild { + Type(Type), + Comment(String), +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Type { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub name: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub alias: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub api: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub requires: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub category: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub parent: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub returnedonly: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub structextends: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub allowduplicate: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub objtypeenum: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub bitvalues: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub spec: TypeSpec, +} + +/// The contents of a type definition. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum TypeSpec { + None, + Code(TypeCode), + Members(Vec), +} + +impl Default for TypeSpec { + fn default() -> Self { + TypeSpec::None + } +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct TypeCode { + pub code: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub markup: Vec, +} + +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum TypeCodeMarkup { + Name(String), + Type(String), + ApiEntry(String), +} + +/// A member of a type definition, i.e. a struct member. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum TypeMember { + /// Human-readable comment. + Comment(String), + + /// A structure field definition. + Definition(TypeMemberDefinition), +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct TypeMemberDefinition { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub len: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub altlen: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub externsync: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub optional: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub selector: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub selection: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub noautovalidity: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub validextensionstructs: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub values: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub limittype: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub objecttype: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub code: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub markup: Vec, +} + +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum TypeMemberMarkup { + Name(String), + Type(String), + Enum(String), + Comment(String), +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Enums { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub name: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub kind: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub start: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub end: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub vendor: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub children: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub bitwidth: Option, +} + +/// An item which forms an enum. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum EnumsChild { + /// Actual named enum. + Enum(Enum), + + /// An unused range of enum values. + Unused(Unused), + + /// Human-readable comment. + Comment(String), +} + +/// An unused range of enum values. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Unused { + /// Beginning of the range. + pub start: i64, + + /// Ending value of the range, if any. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub end: Option, + + /// Vendor who reserved this range. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub vendor: Option, + + /// Human-readable description. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, +} + +/// An item of an enumeration type. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Enum { + /// Name of this enum. + pub name: String, + + /// Human-readable description. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub type_suffix: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub api: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub protect: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub spec: EnumSpec, +} + +/// An enum specifier, which assigns a value to the enum. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum EnumSpec { + None, + + Alias { + alias: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + extends: Option, + }, + + Offset { + offset: i64, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + extends: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + extnumber: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + dir: bool, + }, + + /// Indicates an enum which is a bit flag. + Bitpos { + /// The bit to be set. + bitpos: i64, + + /// Which structure this enum extends. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + extends: Option, + }, + + /// An enum value. + Value { + /// Hard coded value for an enum. + value: String, // rnc says this is an Integer, but validates it as text, and that's what it sometimes really is. + + /// Which structure this enum extends. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + extends: Option, + }, +} + +impl Default for EnumSpec { + fn default() -> Self { + EnumSpec::None + } +} + +pub type Commands = CommentedChildren; + +/// A command is just a Vulkan function. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum Command { + /// Indicates this function is an alias for another one. + Alias { name: String, alias: String }, + + /// Defines a new Vulkan function. + Definition(CommandDefinition), +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct CommandDefinition { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub queues: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub successcodes: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub errorcodes: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub renderpass: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub cmdbufferlevel: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub pipeline: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub proto: NameWithType, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub params: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub alias: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub description: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub implicitexternsyncparams: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub code: String, +} + +/// Parameter for this Vulkan function. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct CommandParam { + /// The expression which indicates the length of this array. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub len: Option, + + /// Alternate description of the length of this parameter. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub altlen: Option, + + /// Whether this parameter must be externally synchronised by the app. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub externsync: Option, + + /// Whether this parameter must have a non-null value. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub optional: Option, + + /// Disables automatic validity language being generated for this item. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub noautovalidity: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub objecttype: Option, + + /// The definition of this parameter. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub definition: NameWithType, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Feature { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub api: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub name: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub number: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub protect: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub children: Vec, +} + +pub type FeatureChild = ExtensionChild; + +pub type Extensions = CommentedChildren; + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Extension { + /// Name of the extension. + pub name: String, + + /// Human-readable description. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + /// The unique index of this extension. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub number: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub protect: Option, + + /// Which platform it works with, if any. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub platform: Option, + + /// Tag name of the author. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub author: Option, + + /// Contact information for extension author(s). + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub contact: Option, + + /// The level at which the extension applies (instance / device). + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub ext_type: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub requires: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub requires_core: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub supported: Option, // mk:TODO StringGroup? + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub deprecatedby: Option, + + /// Whether this extension was promoted to core, and in which version. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub promotedto: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub obsoletedby: Option, + + /// 'true' if this extension is released provisionally + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub provisional: bool, + + /// The items which make up this extension. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub specialuse: Option, + + /// Relative sortorder + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub sortorder: Option, + + /// The items which make up this extension. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub children: Vec, +} + +/// A part of an extension declaration. +/// +/// Extensions either include functionality from the spec, or remove some functionality. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum ExtensionChild { + /// Indicates the items which this extension requires to work. + Require { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + api: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + profile: Option, + + /// The extension which provides these required items, if any. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + extension: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + feature: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + + /// The items which form this require block. + items: Vec, + }, + + /// Indicates the items this extension removes. + Remove { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + api: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + profile: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + items: Vec, + }, +} + +/// An interface item is a function or an enum which makes up a Vulkan interface. +/// +/// This structure is used by extensions to express dependencies or include functionality. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum InterfaceItem { + Comment(String), + + Type { + name: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + }, + + Enum(Enum), + + Command { + name: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + }, +} + +pub type Formats = CommentedChildren; + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Format { + pub name: String, + pub class: String, + pub blockSize: u8, + pub texelsPerBlock: u8, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub blockExtent: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub packed: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub compressed: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub chroma: Option, + + pub children: Vec, +} + +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum FormatChild { + #[non_exhaustive] + Component { + name: String, + bits: String, + numericFormat: String, + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + planeIndex: Option, + }, + + #[non_exhaustive] + Plane { + index: u8, + widthDivisor: u8, + heightDivisor: u8, + compatible: String, + }, + + #[non_exhaustive] + SpirvImageFormat { name: String }, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct NameWithType { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub type_name: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub name: String, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct CommentedChildren { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + pub children: Vec, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct SpirvExtOrCap { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub name: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub enables: Vec, +} + +pub type SpirvExtension = SpirvExtOrCap; +pub type SpirvExtensions = CommentedChildren; + +pub type SpirvCapability = SpirvExtOrCap; +pub type SpirvCapabilities = CommentedChildren; + +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum Enable { + Version(String), + Extension(String), + Feature(FeatureEnable), + Property(PropertyEnable), +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct FeatureEnable { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub struct_: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub feature: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub requires: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub alias: Option, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct PropertyEnable { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub property: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub member: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub value: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub requires: Option, +} + +#[cfg(feature = "serialize")] +fn is_default(v: &T) -> bool { + v.eq(&T::default()) +} diff --git a/ci/tests/test.rs b/vk-parse/tests/test.rs similarity index 100% rename from ci/tests/test.rs rename to vk-parse/tests/test.rs From 7aba26d77265cd4cd9c5684cdd8c98ae8f451e3c Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 27 Feb 2022 13:29:54 -0800 Subject: [PATCH 02/15] feat: add gl parser --- Cargo.toml | 3 +- README.md | 2 +- .../Cargo.toml | 9 +- .../README.md | 0 {vk-parse => khronos-registry-parse}/src/c.rs | 0 khronos-registry-parse/src/gl/mod.rs | 5 + khronos-registry-parse/src/gl/parse.rs | 288 +++++++++++++++++ khronos-registry-parse/src/gl/types.rs | 292 ++++++++++++++++++ .../src/lib.rs | 5 +- .../src/types.rs | 1 - .../src/util.rs | 4 +- .../src/vk/convert.rs | 2 +- .../src/vk/mod.rs | 7 +- .../src/vk/parse.rs | 3 +- .../src/vk/types.rs | 0 .../tests/test.rs | 0 vk-parse/src/gl/mod.rs | 2 - vk-parse/src/gl/parse.rs | 48 --- vk-parse/src/gl/types.rs | 51 --- 19 files changed, 599 insertions(+), 123 deletions(-) rename {vk-parse => khronos-registry-parse}/Cargo.toml (84%) rename {vk-parse => khronos-registry-parse}/README.md (100%) rename {vk-parse => khronos-registry-parse}/src/c.rs (100%) create mode 100644 khronos-registry-parse/src/gl/mod.rs create mode 100644 khronos-registry-parse/src/gl/parse.rs create mode 100644 khronos-registry-parse/src/gl/types.rs rename {vk-parse => khronos-registry-parse}/src/lib.rs (99%) rename {vk-parse => khronos-registry-parse}/src/types.rs (99%) rename {vk-parse => khronos-registry-parse}/src/util.rs (99%) rename {vk-parse => khronos-registry-parse}/src/vk/convert.rs (100%) rename {vk-parse => khronos-registry-parse}/src/vk/mod.rs (99%) rename {vk-parse => khronos-registry-parse}/src/vk/parse.rs (99%) rename {vk-parse => khronos-registry-parse}/src/vk/types.rs (100%) rename {vk-parse => khronos-registry-parse}/tests/test.rs (100%) delete mode 100644 vk-parse/src/gl/mod.rs delete mode 100644 vk-parse/src/gl/parse.rs delete mode 100644 vk-parse/src/gl/types.rs diff --git a/Cargo.toml b/Cargo.toml index 38c270c..6169173 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,4 @@ [workspace] members = [ - "vk-parse", - "gl-parse" + "khronos-registry-parse" ] diff --git a/README.md b/README.md index f1cc447..d973696 100644 --- a/README.md +++ b/README.md @@ -8,4 +8,4 @@ `vk-parse` is a Rust crate which parses the Vulkan API registry XML and converts it to a Rust representation. It can be used to simplify generation of Vulkan API bindings. -Crate itself resides in [vk-parse subdirectory](vk-parse), where you can also find more information about it. +Crate itself resides in [vk-parse subdirectory](khronos-registry-parse), where you can also find more information about it. diff --git a/vk-parse/Cargo.toml b/khronos-registry-parse/Cargo.toml similarity index 84% rename from vk-parse/Cargo.toml rename to khronos-registry-parse/Cargo.toml index 8fb2ac0..3263755 100644 --- a/vk-parse/Cargo.toml +++ b/khronos-registry-parse/Cargo.toml @@ -12,17 +12,18 @@ categories = ["parser-implementations", "rendering::graphics-api"] [features] serialize = ["serde", "serde_derive"] -vkxml-convert = ["vkxml"] +vkxml-convert = ["vkxml", "vulkan"] vulkan = [] opengl = [] - [dependencies] xml-rs = "^0.8" - -common-parse = { path = "../common-parse", version = "0.1.0" } vkxml = { optional = true, version = "^0.3" } serde = { optional = true, version = "^1.0.75" } serde_derive = { optional = true, version = "^1.0.75" } +[dev-dependencies] +minreq = { version = "^2", features = ["https"] } +ron = "^0.4" + [badges] diff --git a/vk-parse/README.md b/khronos-registry-parse/README.md similarity index 100% rename from vk-parse/README.md rename to khronos-registry-parse/README.md diff --git a/vk-parse/src/c.rs b/khronos-registry-parse/src/c.rs similarity index 100% rename from vk-parse/src/c.rs rename to khronos-registry-parse/src/c.rs diff --git a/khronos-registry-parse/src/gl/mod.rs b/khronos-registry-parse/src/gl/mod.rs new file mode 100644 index 0000000..e8d2791 --- /dev/null +++ b/khronos-registry-parse/src/gl/mod.rs @@ -0,0 +1,5 @@ + +mod parse; +mod types; +pub use parse::parse_file; +pub use parse::parse_stream; diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs new file mode 100644 index 0000000..dc871a5 --- /dev/null +++ b/khronos-registry-parse/src/gl/parse.rs @@ -0,0 +1,288 @@ +use std::io::Read; +use xml::reader::XmlEvent; + +use gl::types::*; +use types::*; +use util::*; + +//-------------------------------------------------------------------------------------------------- +/// Parses the Vulkan XML file into a Rust object. +pub fn parse_file(path: &std::path::Path) -> Result<(Registry, Vec), FatalError> { + let file = std::io::BufReader::new(std::fs::File::open(path)?); + let parser = xml::reader::ParserConfig::new().create_reader(file); + parse_xml(parser.into_iter()) +} + +/// Parses the Vulkan XML file from stream into a Rust object. +pub fn parse_stream(stream: T) -> Result<(Registry, Vec), FatalError> { + let parser = xml::reader::ParserConfig::new().create_reader(stream); + parse_xml(parser.into_iter()) +} + +fn parse_xml(events: XmlEvents) -> Result<(Registry, Vec), FatalError> { + let mut ctx = ParseCtx { + events, + xpath: String::from(""), + errors: Vec::new(), + }; + + let mut result = Err(FatalError::MissingRegistryElement); + + { + let ctx = &mut ctx; + match_elements! {ctx, + "registry" => result = parse_registry(ctx) + } + } + + result.map(|r| (r, ctx.errors)) +} + +fn parse_registry(ctx: &mut ParseCtx) -> Result { + let mut registry = Registry(Vec::new()); + + match_elements! {ctx, attributes, + "comment" => registry.0.push(RegistryChild::Comment(parse_text_element(ctx))), + "enums" => { + let mut namespace = None; + let mut start = None; + let mut end = None; + let mut vendor = None; + let mut comment = None; + let mut children = Vec::new(); + + match_attributes!{ctx, a in attributes, + "namespace" => namespace = Some(a.value), + "start" => start = Some(a.value), + "end" => end = Some(a.value), + "vendor" => vendor = Some(a.value), + "comment" => comment = Some(a.value) + } + + match_elements!{ctx, attributes, + "enum" => if let Some(v) = parse_enum(ctx, attributes) { + children.push(EnumsChild::Enum(v)); + }, + // "unused" => if let Some(v) = parse_enums_child_unused(ctx, attributes) { + // children.push(v); + // }, + "comment" => children.push(EnumsChild::Comment(parse_text_element(ctx))) + } + registry.0.push(RegistryChild::Enums( + Enums{ name, kind, start, end, vendor, comment, children })); + + }, + "commands" => { + let mut namespace = None; + let mut children = Vec::new(); + match_attributes!{ctx, a in attributes, + "namespace" => namespace = Some(a.value) + } + match_elements!{ctx, attributes, + "command" => if let Some(v) = parse_command(ctx, attributes) { + children.push(v); + } + } + registry.0.push(RegistryChild::Commands(Commands{namespace, children})); + }, + "extensions" => registry.0.push(parse_extensions(ctx, attributes)) + } + + Ok(registry) +} + +fn parse_extensions( + ctx: &mut ParseCtx, + attributes: Vec, +) -> RegistryChild { + let mut children = Vec::new(); + match_elements! {ctx, attributes, + "extension" => if let Some(v) = parse_extension(ctx, attributes) { + children.push(v); + } + } + RegistryChild::Extensions(Extensions { children }) +} + +fn parse_extension_item_require( + ctx: &mut ParseCtx, + attributes: Vec, +) -> ExtensionChild { + let mut items = Vec::new(); + + while let Some(Ok(e)) = ctx.events.next() { + match e { + XmlEvent::StartElement { + name, attributes, .. + } => { + let name = name.local_name.as_str(); + ctx.push_element(name); + if let Some(v) = parse_interface_item(ctx, name, attributes) { + items.push(v); + } + } + XmlEvent::EndElement { .. } => { + ctx.pop_element(); + break; + } + _ => {} + } + } + ExtensionChild::Require { items } +} + +fn parse_extension( + ctx: &mut ParseCtx, + attributes: Vec, +) -> Option { + let mut name = None; + let mut supported = None; + let mut children = Vec::new(); + + match_attributes! {ctx, a in attributes, + "name" => name = Some(a.value), + "supported" => supported = Some(a.value), + } + + match_elements! { ctx, attributes, + "require" => children.push(parse_extension_item_require(ctx, attributes)), + } + + Some(Extension { + name, + supported, + children, + }) +} + +fn parse_interface_item( + ctx: &mut ParseCtx, + name: &str, + attributes: Vec, +) -> Option { + match name { + // "comment" => Some(InterfaceItem::Comment(parse_text_element(ctx))), + "enum" => parse_enum(ctx, attributes).map(|v| InterfaceItem::Enum(v)), + "command" => { + let mut name = None; + let mut comment = None; + match_attributes! {ctx, a in attributes, + "name" => name = Some(a.value), + "comment" => comment = Some(a.value) + } + unwrap_attribute!(ctx, type, name); + consume_current_element(ctx); + Some(InterfaceItem::Command { name, comment }) + } + _ => { + ctx.errors.push(Error::UnexpectedElement { + xpath: ctx.xpath.clone(), + name: String::from(name), + }); + return None; + } + } +} + +fn parse_command(ctx: &mut ParseCtx, attributes: Vec) -> Option { + let mut code = String::new(); + let mut proto = None; + let mut vec_equiv = None; + let mut params = Vec::new(); + + match_elements! {ctx, attributes, + "proto" => { + proto = parse_name_with_type(ctx, &mut code); + code.push('('); + }, + "param" => { + let mut group = None; + let mut class = None; + let mut len = None; + + match_attributes!{ctx, a in attributes, + "group" => group = Some(a.value), + "class" => class = Some(a.value), + "len" => len = Some(a.value), + } + if params.len() > 0 { + code.push_str(", "); + } + + if let Some(definition) = parse_name_with_type(ctx, &mut code) { + params.push(CommandParam { + group, + class, + len, + definition + }); + } + }, + "vecequiv" => { + match_attributes!{ctx, a in attributes, + "name" => vec_equiv = Some(a.value), + } + } + } + + let proto = if let Some(v) = proto { + v + } else { + ctx.errors.push(Error::MissingElement { + xpath: ctx.xpath.clone(), + name: String::from("proto"), + }); + return None; + }; + Some(Command::Definition(CommandDefinition { + proto, + params, + code, + vec_equiv, + })) +} + +fn parse_name_with_type( + ctx: &mut ParseCtx, + buffer: &mut String, +) -> Option { + let mut name = None; + let mut type_name = None; + + match_elements_combine_text! {ctx, buffer, + "ptype" => { + let text = parse_text_element(ctx); + buffer.push_str(&text); + type_name = Some(text); + }, + "name" => { + let text = parse_text_element(ctx); + buffer.push_str(&text); + name = Some(text); + } + } + let name = if let Some(v) = name { + v + } else { + ctx.errors.push(Error::MissingElement { + xpath: ctx.xpath.clone(), + name: String::from("name"), + }); + return None; + }; + + Some(NameWithType { name, type_name }) +} + +fn parse_enum(ctx: &mut ParseCtx, attributes: Vec) -> Option { + let mut name = None; + let mut value = None; + let mut group = None; + match_attributes! {ctx, a in attributes, + "name" => name = Some(a.value), + "value" => value = Some(a.value), + "group" => group = Some(a.value), + } + unwrap_attribute!(ctx, enum, name); + Some(Enum { name, value, group }) +} diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs new file mode 100644 index 0000000..c746b2b --- /dev/null +++ b/khronos-registry-parse/src/gl/types.rs @@ -0,0 +1,292 @@ +/// Rust structure representing the Vulkan registry. +/// +/// The registry contains all the information contained in a certain version +/// of the Vulkan specification, stored within a programmer-accessible format. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +pub struct Registry(pub Vec); + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct NameWithType { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub type_name: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub name: String, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct CommandParam { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub group: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub class: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub len: Option, + + /// The definition of this parameter. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub definition: NameWithType, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct CommentedChildren { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub namespace: Option, + + pub children: Vec, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct CommandDefinition { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub proto: NameWithType, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub params: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub code: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub vec_equiv: Option, +} + +/// A command is just a Vulkan function. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum Command { + /// Indicates this function is an alias for another one. + Alias { name: String, alias: String }, + + /// Defines a new Vulkan function. + Definition(CommandDefinition), +} + +pub type Commands = CommentedChildren; + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Extensions { + pub children: Vec, +} + +/// An interface item is a function or an enum which makes up a Vulkan interface. +/// +/// This structure is used by extensions to express dependencies or include functionality. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum InterfaceItem { + Enum(Enum), + Command { + name: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + }, +} + +/// A part of an extension declaration. +/// +/// Extensions either include functionality from the spec, or remove some functionality. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum ExtensionChild { + /// Indicates the items which this extension requires to work. + Require { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + items: Vec, + }, +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Extension { + pub name: Optiona, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub supported: Optiona, + + /// The items which make up this extension. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub children: Vec, +} + +/// An element of the Vulkan registry. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum RegistryChild { + /// Comments are human-readable strings which contain registry meta-data. + Comment(String), + // + // /// IDs of all known Vulkan vendors. + // VendorIds(VendorIds), + // + // /// List of supported Vulkan platforms. + // Platforms(Platforms), + // + // /// Known extension tags. + // Tags(Tags), + // + // /// Type definitions. + // /// + // /// Unlike OpenGL, Vulkan is a strongly-typed API. + // Types(Types), + // + /// Enum definitions. + Enums(Enums), + + /// Commands are the Vulkan API's name for functions. + Commands(Commands), + // + // /// Feature level of the API, such as Vulkan 1.0 or 1.1 + // Feature(Feature), + // + /// Container for all published Vulkan specification extensions. + Extensions(Extensions), + // + // Formats(Formats), + // + // SpirvExtensions(SpirvExtensions), + // + // SpirvCapabilities(SpirvCapabilities), +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Enums { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub namespace: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub start: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub end: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub vendor: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub children: Vec, +} + +/// An item of an enumeration type. +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Enum { + /// Name of this enum. + pub name: String, + + /// Human-readable description. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub value: Option, + + /// Human-readable description. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub group: Option, +} + +/// An item which forms an enum. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub enum EnumsChild { + /// Actual named enum. + Enum(Enum), + // + // /// An unused range of enum values. + // Unused(Unused), + /// Human-readable comment. + Comment(String), +} diff --git a/vk-parse/src/lib.rs b/khronos-registry-parse/src/lib.rs similarity index 99% rename from vk-parse/src/lib.rs rename to khronos-registry-parse/src/lib.rs index 277f377..bb5a082 100644 --- a/vk-parse/src/lib.rs +++ b/khronos-registry-parse/src/lib.rs @@ -18,8 +18,7 @@ mod util; mod c; mod types; -#[cfg(feature = "vulkan")] -mod vk; #[cfg(feature = "opengl")] mod gl; - +#[cfg(feature = "vulkan")] +mod vk; diff --git a/vk-parse/src/types.rs b/khronos-registry-parse/src/types.rs similarity index 99% rename from vk-parse/src/types.rs rename to khronos-registry-parse/src/types.rs index 1334381..72c63de 100644 --- a/vk-parse/src/types.rs +++ b/khronos-registry-parse/src/types.rs @@ -1,4 +1,3 @@ - /// Errors from which parser can recover. How much information will be missing /// in the resulting Registry depends on the type of error and situation in /// which it occurs. For example, unrecognized attribute will simply be skipped diff --git a/vk-parse/src/util.rs b/khronos-registry-parse/src/util.rs similarity index 99% rename from vk-parse/src/util.rs rename to khronos-registry-parse/src/util.rs index c48a901..6d06162 100644 --- a/vk-parse/src/util.rs +++ b/khronos-registry-parse/src/util.rs @@ -1,6 +1,6 @@ +use crate::types::Error; use std::io::Read; use std::str::FromStr; -use crate::types::Error; use xml::reader::XmlEvent; pub type XmlEvents = xml::reader::Events; @@ -14,7 +14,6 @@ pub fn xpath_attribute(xpath: &str, attribute_name: &str) -> String { xpath } - //-------------------------------------------------------------------------------------------------- #[macro_export] macro_rules! unwrap_attribute ( @@ -174,7 +173,6 @@ macro_rules! match_elements_combine_text { }; } - //-------------------------------------------------------------------------------------------------- pub struct ParseCtx { pub events: XmlEvents, diff --git a/vk-parse/src/vk/convert.rs b/khronos-registry-parse/src/vk/convert.rs similarity index 100% rename from vk-parse/src/vk/convert.rs rename to khronos-registry-parse/src/vk/convert.rs index 90bb425..15526c7 100644 --- a/vk-parse/src/vk/convert.rs +++ b/khronos-registry-parse/src/vk/convert.rs @@ -1,8 +1,8 @@ extern crate vkxml; use c; -use std; use parse::*; +use std; use types::*; use vk::parse::*; use vk::types::*; diff --git a/vk-parse/src/vk/mod.rs b/khronos-registry-parse/src/vk/mod.rs similarity index 99% rename from vk-parse/src/vk/mod.rs rename to khronos-registry-parse/src/vk/mod.rs index e56b1dc..be3e733 100644 --- a/vk-parse/src/vk/mod.rs +++ b/khronos-registry-parse/src/vk/mod.rs @@ -1,7 +1,7 @@ -mod parse; -mod types; #[cfg(feature = "vkxml-convert")] mod convert; +mod parse; +mod types; #[cfg(feature = "vkxml-convert")] extern crate vkxml; @@ -11,6 +11,3 @@ pub use convert::parse_file_as_vkxml; pub use convert::parse_stream_as_vkxml; pub use parse::parse_file; pub use parse::parse_stream; - - - diff --git a/vk-parse/src/vk/parse.rs b/khronos-registry-parse/src/vk/parse.rs similarity index 99% rename from vk-parse/src/vk/parse.rs rename to khronos-registry-parse/src/vk/parse.rs index 19c3b91..e573fee 100644 --- a/vk-parse/src/vk/parse.rs +++ b/khronos-registry-parse/src/vk/parse.rs @@ -3,10 +3,10 @@ extern crate xml; use std; use std::io::Read; use std::str::FromStr; -use xml::reader::XmlEvent; use types::*; use util::*; use vk::types::*; +use xml::reader::XmlEvent; //-------------------------------------------------------------------------------------------------- /// Parses the Vulkan XML file into a Rust object. @@ -1309,4 +1309,3 @@ fn parse_enable(ctx: &mut ParseCtx, attributes: Vec) - unimplemented!(); } } - diff --git a/vk-parse/src/vk/types.rs b/khronos-registry-parse/src/vk/types.rs similarity index 100% rename from vk-parse/src/vk/types.rs rename to khronos-registry-parse/src/vk/types.rs diff --git a/vk-parse/tests/test.rs b/khronos-registry-parse/tests/test.rs similarity index 100% rename from vk-parse/tests/test.rs rename to khronos-registry-parse/tests/test.rs diff --git a/vk-parse/src/gl/mod.rs b/vk-parse/src/gl/mod.rs deleted file mode 100644 index 190ebed..0000000 --- a/vk-parse/src/gl/mod.rs +++ /dev/null @@ -1,2 +0,0 @@ -mod types; -mod parse; diff --git a/vk-parse/src/gl/parse.rs b/vk-parse/src/gl/parse.rs deleted file mode 100644 index d232a48..0000000 --- a/vk-parse/src/gl/parse.rs +++ /dev/null @@ -1,48 +0,0 @@ -use std::io::Read; - -use util::*; -use types::*; -use gl::types::*; - -//-------------------------------------------------------------------------------------------------- -/// Parses the Vulkan XML file into a Rust object. -pub fn parse_file(path: &std::path::Path) -> Result<(Registry, Vec), FatalError> { - let file = std::io::BufReader::new(std::fs::File::open(path)?); - let parser = xml::reader::ParserConfig::new().create_reader(file); - parse_xml(parser.into_iter()) -} - -/// Parses the Vulkan XML file from stream into a Rust object. -pub fn parse_stream(stream: T) -> Result<(Registry, Vec), FatalError> { - let parser = xml::reader::ParserConfig::new().create_reader(stream); - parse_xml(parser.into_iter()) -} - -fn parse_xml(events: XmlEvents) -> Result<(Registry, Vec), FatalError> { - let mut ctx = ParseCtx { - events, - xpath: String::from(""), - errors: Vec::new(), - }; - - let mut result = Err(FatalError::MissingRegistryElement); - - { - let ctx = &mut ctx; - match_elements! {ctx, - "registry" => result = parse_registry(ctx) - } - } - - result.map(|r| (r, ctx.errors)) -} - - -fn parse_registry(ctx: &mut ParseCtx) -> Result { - let mut registry = Registry(Vec::new()); - - match_elements! {ctx, attributes, - "comment" => registry.0.push(RegistryChild::Comment(parse_text_element(ctx))) - } - Ok(registry) -} diff --git a/vk-parse/src/gl/types.rs b/vk-parse/src/gl/types.rs deleted file mode 100644 index b377f2e..0000000 --- a/vk-parse/src/gl/types.rs +++ /dev/null @@ -1,51 +0,0 @@ - -/// Rust structure representing the Vulkan registry. -/// -/// The registry contains all the information contained in a certain version -/// of the Vulkan specification, stored within a programmer-accessible format. -#[derive(Debug, Clone, PartialEq, Eq, Default)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -pub struct Registry(pub Vec); - - - -/// An element of the Vulkan registry. -#[derive(Debug, Clone, PartialEq, Eq)] -#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] -#[non_exhaustive] -pub enum RegistryChild { - /// Comments are human-readable strings which contain registry meta-data. - Comment(String), - // - // /// IDs of all known Vulkan vendors. - // VendorIds(VendorIds), - // - // /// List of supported Vulkan platforms. - // Platforms(Platforms), - // - // /// Known extension tags. - // Tags(Tags), - // - // /// Type definitions. - // /// - // /// Unlike OpenGL, Vulkan is a strongly-typed API. - // Types(Types), - // - // /// Enum definitions. - // Enums(Enums), - // - // /// Commands are the Vulkan API's name for functions. - // Commands(Commands), - // - // /// Feature level of the API, such as Vulkan 1.0 or 1.1 - // Feature(Feature), - // - // /// Container for all published Vulkan specification extensions. - // Extensions(Extensions), - // - // Formats(Formats), - // - // SpirvExtensions(SpirvExtensions), - // - // SpirvCapabilities(SpirvCapabilities), -} From f9b491ffc216fe4ae52919d5aba534cc5c1c5899 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 27 Feb 2022 14:53:16 -0800 Subject: [PATCH 03/15] chore: update package name --- khronos-registry-parse/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/khronos-registry-parse/Cargo.toml b/khronos-registry-parse/Cargo.toml index 3263755..d54e0b6 100644 --- a/khronos-registry-parse/Cargo.toml +++ b/khronos-registry-parse/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "vk-parse" +name = "khronos-registry-parse" version = "0.7.0" authors = ["Martin Krošlák "] description = "Vulkan specification parser" From 95791f677518744db759d869e17ec3bcdacf0d99 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 27 Feb 2022 15:51:56 -0800 Subject: [PATCH 04/15] chore: fix import --- khronos-registry-parse/src/gl/mod.rs | 4 ++-- khronos-registry-parse/src/vk/mod.rs | 9 +++++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/khronos-registry-parse/src/gl/mod.rs b/khronos-registry-parse/src/gl/mod.rs index e8d2791..cac51b7 100644 --- a/khronos-registry-parse/src/gl/mod.rs +++ b/khronos-registry-parse/src/gl/mod.rs @@ -1,5 +1,5 @@ mod parse; mod types; -pub use parse::parse_file; -pub use parse::parse_stream; +pub use gl::parse::parse_file; +pub use gl::parse::parse_stream; diff --git a/khronos-registry-parse/src/vk/mod.rs b/khronos-registry-parse/src/vk/mod.rs index be3e733..2f7967b 100644 --- a/khronos-registry-parse/src/vk/mod.rs +++ b/khronos-registry-parse/src/vk/mod.rs @@ -6,8 +6,9 @@ mod types; #[cfg(feature = "vkxml-convert")] extern crate vkxml; #[cfg(feature = "vkxml-convert")] -pub use convert::parse_file_as_vkxml; +pub use vk::convert::parse_file_as_vkxml; #[cfg(feature = "vkxml-convert")] -pub use convert::parse_stream_as_vkxml; -pub use parse::parse_file; -pub use parse::parse_stream; +pub use vk::convert::parse_stream_as_vkxml; + +pub use vk::parse::parse_file; +pub use vk::parse::parse_stream; From da9fb4c0b902302808b9aaf8cb31bc404544aed6 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 27 Feb 2022 16:02:36 -0800 Subject: [PATCH 05/15] chore: update publish --- khronos-registry-parse/src/gl/mod.rs | 3 +++ khronos-registry-parse/src/lib.rs | 4 ++-- khronos-registry-parse/src/vk/mod.rs | 2 ++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/khronos-registry-parse/src/gl/mod.rs b/khronos-registry-parse/src/gl/mod.rs index cac51b7..a4d5f10 100644 --- a/khronos-registry-parse/src/gl/mod.rs +++ b/khronos-registry-parse/src/gl/mod.rs @@ -1,5 +1,8 @@ mod parse; mod types; + pub use gl::parse::parse_file; pub use gl::parse::parse_stream; +pub use gl::types::*; +pub use types::*; diff --git a/khronos-registry-parse/src/lib.rs b/khronos-registry-parse/src/lib.rs index bb5a082..0ccf116 100644 --- a/khronos-registry-parse/src/lib.rs +++ b/khronos-registry-parse/src/lib.rs @@ -19,6 +19,6 @@ mod c; mod types; #[cfg(feature = "opengl")] -mod gl; +pub mod gl; #[cfg(feature = "vulkan")] -mod vk; +pub mod vk; diff --git a/khronos-registry-parse/src/vk/mod.rs b/khronos-registry-parse/src/vk/mod.rs index 2f7967b..3f9ff73 100644 --- a/khronos-registry-parse/src/vk/mod.rs +++ b/khronos-registry-parse/src/vk/mod.rs @@ -12,3 +12,5 @@ pub use vk::convert::parse_stream_as_vkxml; pub use vk::parse::parse_file; pub use vk::parse::parse_stream; +pub use vk::types::*; +pub use types::*; From 5c56138d3319aa9547e3ce7b657fbe4cf7867d1e Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 27 Feb 2022 17:31:36 -0800 Subject: [PATCH 06/15] bugfix: fix compiling errors --- khronos-registry-parse/src/gl/mod.rs | 1 - khronos-registry-parse/src/gl/parse.rs | 12 ++++++------ khronos-registry-parse/src/gl/types.rs | 4 ++-- khronos-registry-parse/src/lib.rs | 2 +- khronos-registry-parse/src/types.rs | 14 ++++++++++++++ khronos-registry-parse/src/vk/mod.rs | 2 +- khronos-registry-parse/src/vk/types.rs | 14 -------------- 7 files changed, 24 insertions(+), 25 deletions(-) diff --git a/khronos-registry-parse/src/gl/mod.rs b/khronos-registry-parse/src/gl/mod.rs index a4d5f10..27f9fd3 100644 --- a/khronos-registry-parse/src/gl/mod.rs +++ b/khronos-registry-parse/src/gl/mod.rs @@ -1,4 +1,3 @@ - mod parse; mod types; diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index dc871a5..ef50439 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -69,7 +69,7 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result children.push(EnumsChild::Comment(parse_text_element(ctx))) } registry.0.push(RegistryChild::Enums( - Enums{ name, kind, start, end, vendor, comment, children })); + Enums{namespace,start,end,vendor,comment, children })); }, "commands" => { @@ -141,11 +141,11 @@ fn parse_extension( match_attributes! {ctx, a in attributes, "name" => name = Some(a.value), - "supported" => supported = Some(a.value), + "supported" => supported = Some(a.value) } match_elements! { ctx, attributes, - "require" => children.push(parse_extension_item_require(ctx, attributes)), + "require" => children.push(parse_extension_item_require(ctx, attributes)) } Some(Extension { @@ -203,7 +203,7 @@ fn parse_command(ctx: &mut ParseCtx, attributes: Vec) match_attributes!{ctx, a in attributes, "group" => group = Some(a.value), "class" => class = Some(a.value), - "len" => len = Some(a.value), + "len" => len = Some(a.value) } if params.len() > 0 { code.push_str(", "); @@ -220,7 +220,7 @@ fn parse_command(ctx: &mut ParseCtx, attributes: Vec) }, "vecequiv" => { match_attributes!{ctx, a in attributes, - "name" => vec_equiv = Some(a.value), + "name" => vec_equiv = Some(a.value) } } } @@ -281,7 +281,7 @@ fn parse_enum(ctx: &mut ParseCtx, attributes: Vec) -> match_attributes! {ctx, a in attributes, "name" => name = Some(a.value), "value" => value = Some(a.value), - "group" => group = Some(a.value), + "group" => group = Some(a.value) } unwrap_attribute!(ctx, enum, name); Some(Enum { name, value, group }) diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index c746b2b..87f97fc 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -156,13 +156,13 @@ pub enum ExtensionChild { #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] pub struct Extension { - pub name: Optiona, + pub name: Option, #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") )] - pub supported: Optiona, + pub supported: Option, /// The items which make up this extension. #[cfg_attr( diff --git a/khronos-registry-parse/src/lib.rs b/khronos-registry-parse/src/lib.rs index 0ccf116..c0a3395 100644 --- a/khronos-registry-parse/src/lib.rs +++ b/khronos-registry-parse/src/lib.rs @@ -18,7 +18,7 @@ mod util; mod c; mod types; -#[cfg(feature = "opengl")] +// #[cfg(feature = "opengl")] pub mod gl; #[cfg(feature = "vulkan")] pub mod vk; diff --git a/khronos-registry-parse/src/types.rs b/khronos-registry-parse/src/types.rs index 72c63de..4c20f7d 100644 --- a/khronos-registry-parse/src/types.rs +++ b/khronos-registry-parse/src/types.rs @@ -1,3 +1,17 @@ +/// Errors from which parser cannot recover. +#[derive(Debug)] +#[non_exhaustive] +pub enum FatalError { + MissingRegistryElement, + IoError(std::io::Error), +} + +impl From for FatalError { + fn from(v: std::io::Error) -> FatalError { + FatalError::IoError(v) + } +} + /// Errors from which parser can recover. How much information will be missing /// in the resulting Registry depends on the type of error and situation in /// which it occurs. For example, unrecognized attribute will simply be skipped diff --git a/khronos-registry-parse/src/vk/mod.rs b/khronos-registry-parse/src/vk/mod.rs index 3f9ff73..554a3e4 100644 --- a/khronos-registry-parse/src/vk/mod.rs +++ b/khronos-registry-parse/src/vk/mod.rs @@ -10,7 +10,7 @@ pub use vk::convert::parse_file_as_vkxml; #[cfg(feature = "vkxml-convert")] pub use vk::convert::parse_stream_as_vkxml; +pub use types::*; pub use vk::parse::parse_file; pub use vk::parse::parse_stream; pub use vk::types::*; -pub use types::*; diff --git a/khronos-registry-parse/src/vk/types.rs b/khronos-registry-parse/src/vk/types.rs index ce17664..88e29e6 100644 --- a/khronos-registry-parse/src/vk/types.rs +++ b/khronos-registry-parse/src/vk/types.rs @@ -1,19 +1,5 @@ #![allow(non_snake_case)] -/// Errors from which parser cannot recover. -#[derive(Debug)] -#[non_exhaustive] -pub enum FatalError { - MissingRegistryElement, - IoError(std::io::Error), -} - -impl From for FatalError { - fn from(v: std::io::Error) -> FatalError { - FatalError::IoError(v) - } -} - /// Rust structure representing the Vulkan registry. /// /// The registry contains all the information contained in a certain version From 804dbe233b16c372ab652fbdffcfd053063e56ec Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 27 Feb 2022 17:44:12 -0800 Subject: [PATCH 07/15] feat: add missing fields from enum --- khronos-registry-parse/src/gl/parse.rs | 6 +++++- khronos-registry-parse/src/gl/types.rs | 12 ++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index ef50439..8aeaf7e 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -45,6 +45,8 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result registry.0.push(RegistryChild::Comment(parse_text_element(ctx))), "enums" => { let mut namespace = None; + let mut group = None; + let mut enum_type = None; let mut start = None; let mut end = None; let mut vendor = None; @@ -53,6 +55,8 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result namespace = Some(a.value), + "group" => group = Some(a.value), + "type" => enum_type = Some(a.value), "start" => start = Some(a.value), "end" => end = Some(a.value), "vendor" => vendor = Some(a.value), @@ -69,7 +73,7 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result children.push(EnumsChild::Comment(parse_text_element(ctx))) } registry.0.push(RegistryChild::Enums( - Enums{namespace,start,end,vendor,comment, children })); + Enums{namespace, group, enum_type,start,end,vendor,comment, children })); }, "commands" => { diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index 87f97fc..fc86633 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -223,6 +223,18 @@ pub struct Enums { )] pub namespace: Option, + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub group: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub enum_type: Option, + #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") From cf2f723a3b356712718c8a00ff52b9a823d7791d Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Mon, 28 Feb 2022 21:47:18 -0800 Subject: [PATCH 08/15] feat: fix parse problems --- khronos-registry-parse/src/gl/mod.rs | 5 +- khronos-registry-parse/src/gl/parse.rs | 74 +++++++++++++++++++----- khronos-registry-parse/src/gl/types.rs | 78 +++++++++++++++++--------- khronos-registry-parse/src/lib.rs | 1 + khronos-registry-parse/src/vk/mod.rs | 3 +- khronos-registry-parse/tests/test.rs | 55 +++++++++++++----- 6 files changed, 160 insertions(+), 56 deletions(-) diff --git a/khronos-registry-parse/src/gl/mod.rs b/khronos-registry-parse/src/gl/mod.rs index 27f9fd3..d5fac54 100644 --- a/khronos-registry-parse/src/gl/mod.rs +++ b/khronos-registry-parse/src/gl/mod.rs @@ -1,7 +1,8 @@ mod parse; mod types; +pub use types::*; +pub use gl::types::*; pub use gl::parse::parse_file; pub use gl::parse::parse_stream; -pub use gl::types::*; -pub use types::*; + diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index 8aeaf7e..fa2d47a 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -1,21 +1,38 @@ -use std::io::Read; -use xml::reader::XmlEvent; +extern crate xml; -use gl::types::*; +use std; +use std::io; +use std::io::{BufReader, Read}; +use std::str::FromStr; use types::*; use util::*; +use gl::types::*; +use xml::reader::XmlEvent; +use std::str; + +pub const BOM: &'static [u8] = &[0xEF, 0xBB, 0xBF]; + -//-------------------------------------------------------------------------------------------------- -/// Parses the Vulkan XML file into a Rust object. pub fn parse_file(path: &std::path::Path) -> Result<(Registry, Vec), FatalError> { let file = std::io::BufReader::new(std::fs::File::open(path)?); - let parser = xml::reader::ParserConfig::new().create_reader(file); - parse_xml(parser.into_iter()) + parse_stream(file) } -/// Parses the Vulkan XML file from stream into a Rust object. -pub fn parse_stream(stream: T) -> Result<(Registry, Vec), FatalError> { - let parser = xml::reader::ParserConfig::new().create_reader(stream); +pub fn parse_stream(mut stream: T) -> Result<(Registry, Vec), FatalError> { + let mut buffer = vec![0; 0]; + stream.read_to_end(&mut buffer); + + let mut offset = 0; + for (i, _) in buffer.iter().enumerate() { + if buffer[i..].starts_with(BOM) { + offset = i + BOM.len(); + } + if i != 0 { + break + } + } + + let parser = xml::reader::ParserConfig::new().create_reader(&buffer[offset..]); parse_xml(parser.into_iter()) } @@ -67,15 +84,19 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result if let Some(v) = parse_enum(ctx, attributes) { children.push(EnumsChild::Enum(v)); }, - // "unused" => if let Some(v) = parse_enums_child_unused(ctx, attributes) { - // children.push(v); - // }, "comment" => children.push(EnumsChild::Comment(parse_text_element(ctx))) } registry.0.push(RegistryChild::Enums( Enums{namespace, group, enum_type,start,end,vendor,comment, children })); }, + "types" => { + let mut children = Vec::new(); + match_elements!{ctx, attributes, + "type" => children.push(parse_type(ctx, attributes)) + } + registry.0.push(RegistryChild::Types(Types { children })); + }, "commands" => { let mut namespace = None; let mut children = Vec::new(); @@ -95,6 +116,33 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result( + ctx: &mut ParseCtx, + attributes: Vec, +) -> Type { + let mut name = None; + let mut requires = None; + let mut comment = None; + let mut code: String = String::new(); + + match_attributes! {ctx, a in attributes, + "requires" => requires = Some(a.value), + "comment" => comment = Some(a.value) + } + + match_elements_combine_text! {ctx, code, + "name" => name = Some(parse_text_element(ctx)) + } + + Type { + requires, + name, + comment, + code + } +} + fn parse_extensions( ctx: &mut ParseCtx, attributes: Vec, diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index fc86633..0e97f1b 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -1,4 +1,6 @@ -/// Rust structure representing the Vulkan registry. +#![allow(non_snake_case)] + +/// Rust structure representing the opengl registry. /// /// The registry contains all the information contained in a certain version /// of the Vulkan specification, stored within a programmer-accessible format. @@ -172,6 +174,44 @@ pub struct Extension { pub children: Vec, } + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Type { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub requires: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub name: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub code: String, + +} +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Types { + pub children: Vec, +} + + /// An element of the Vulkan registry. #[derive(Debug, Clone, PartialEq, Eq)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] @@ -179,40 +219,21 @@ pub struct Extension { pub enum RegistryChild { /// Comments are human-readable strings which contain registry meta-data. Comment(String), - // - // /// IDs of all known Vulkan vendors. - // VendorIds(VendorIds), - // - // /// List of supported Vulkan platforms. - // Platforms(Platforms), - // - // /// Known extension tags. - // Tags(Tags), - // - // /// Type definitions. - // /// - // /// Unlike OpenGL, Vulkan is a strongly-typed API. - // Types(Types), - // + + /// Unlike OpenGL, Vulkan is a strongly-typed API. + Types(Types), + /// Enum definitions. Enums(Enums), /// Commands are the Vulkan API's name for functions. Commands(Commands), - // - // /// Feature level of the API, such as Vulkan 1.0 or 1.1 - // Feature(Feature), - // + /// Container for all published Vulkan specification extensions. Extensions(Extensions), - // - // Formats(Formats), - // - // SpirvExtensions(SpirvExtensions), - // - // SpirvCapabilities(SpirvCapabilities), } + #[derive(Debug, Clone, PartialEq, Eq, Default)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] @@ -302,3 +323,8 @@ pub enum EnumsChild { /// Human-readable comment. Comment(String), } + +#[cfg(feature = "serialize")] +fn is_default(v: &T) -> bool { + v.eq(&T::default()) +} diff --git a/khronos-registry-parse/src/lib.rs b/khronos-registry-parse/src/lib.rs index c0a3395..d861707 100644 --- a/khronos-registry-parse/src/lib.rs +++ b/khronos-registry-parse/src/lib.rs @@ -11,6 +11,7 @@ extern crate xml; extern crate serde_derive; #[cfg(feature = "serialize")] extern crate serde; + pub use types::*; #[macro_use] diff --git a/khronos-registry-parse/src/vk/mod.rs b/khronos-registry-parse/src/vk/mod.rs index 554a3e4..2bd0f0f 100644 --- a/khronos-registry-parse/src/vk/mod.rs +++ b/khronos-registry-parse/src/vk/mod.rs @@ -10,7 +10,8 @@ pub use vk::convert::parse_file_as_vkxml; #[cfg(feature = "vkxml-convert")] pub use vk::convert::parse_stream_as_vkxml; +pub use vk::types::*; pub use types::*; pub use vk::parse::parse_file; pub use vk::parse::parse_stream; -pub use vk::types::*; + diff --git a/khronos-registry-parse/tests/test.rs b/khronos-registry-parse/tests/test.rs index 4e2f1bc..2d19604 100644 --- a/khronos-registry-parse/tests/test.rs +++ b/khronos-registry-parse/tests/test.rs @@ -1,14 +1,16 @@ -#![deny(warnings)] -extern crate minreq; -extern crate ron; -extern crate serde; -extern crate vk_parse; -extern crate vkxml; -extern crate xml; +extern crate khronos_registry_parse; + +use std::fs::File; +use std::path::{Path, PathBuf}; +#[cfg(feature = "opengl")] +use khronos_registry_parse::gl; +#[cfg(feature = "vulkan")] +use khronos_registry_parse::vk; const URL_REPO: &str = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs"; -const URL_MAIN: &str = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml"; +const URL_MAIN_VK: &str = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml"; +const URL_MAIN_GL: &str = "https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/main/xml/gl.xml"; fn download(dst: &mut T, url: &str) { let resp = minreq::get(url) @@ -27,6 +29,8 @@ fn download(dst: &mut T, url: &str) { .expect("Failed to write response body."); } + +#[cfg(feature = "vulkan")] fn parsing_test(major: u32, minor: u32, patch: u32, url_suffix: &str) { let src = format!( "{}/v{}.{}.{}{}/vk.xml", @@ -37,7 +41,7 @@ fn parsing_test(major: u32, minor: u32, patch: u32, url_suffix: &str) { download(&mut buf, &src); buf.set_position(0); - match vk_parse::parse_stream(buf.clone()) { + match vk::parse_stream(buf.clone()) { Ok((_reg, errors)) => { if !errors.is_empty() { panic!("{:?}", errors); @@ -46,7 +50,8 @@ fn parsing_test(major: u32, minor: u32, patch: u32, url_suffix: &str) { Err(fatal_error) => panic!("{:?}", fatal_error), } - match vk_parse::parse_stream_as_vkxml(buf) { + #[cfg(feature = "vkxml-convert")] + match vk::parse_stream_as_vkxml(buf) { Ok(_) => (), Err(fatal_error) => panic!("{:?}", fatal_error), } @@ -55,6 +60,7 @@ fn parsing_test(major: u32, minor: u32, patch: u32, url_suffix: &str) { macro_rules! test_version { ($test_name:ident, $major:expr, $minor:expr, $patch:expr, $url_suffix:expr) => { #[test] + #[cfg(feature = "vulkan")] fn $test_name() { parsing_test($major, $minor, $patch, $url_suffix); } @@ -62,13 +68,33 @@ macro_rules! test_version { } #[test] -fn test_main() { +#[cfg(feature = "opengl")] +fn test_opengl_main() { + use std::io::Cursor; + let mut buf = Cursor::new(vec![0; 0]); + download(&mut buf, URL_MAIN_GL); + buf.set_position(0); + + match gl::parse_stream(buf.clone()) { + Ok((_reg, errors)) => { + if !errors.is_empty() { + panic!("{:?}", errors); + } + } + Err(fatal_error) => panic!("{:?}", fatal_error), + } +} + + +#[test] +#[cfg(feature = "vulkan")] +fn test_vulkan_main() { use std::io::Cursor; let mut buf = Cursor::new(vec![0; 15]); - download(&mut buf, URL_MAIN); + download(&mut buf, URL_MAIN_VK); buf.set_position(0); - match vk_parse::parse_stream(buf.clone()) { + match vk::parse_stream(buf.clone()) { Ok((_reg, errors)) => { if !errors.is_empty() { panic!("{:?}", errors); @@ -77,7 +103,8 @@ fn test_main() { Err(fatal_error) => panic!("{:?}", fatal_error), } - match vk_parse::parse_stream_as_vkxml(buf) { + #[cfg(feature = "vkxml-convert")] + match vk::parse_stream_as_vkxml(buf) { Ok(_) => (), Err(fatal_error) => panic!("{:?}", fatal_error), } From b51b765fdd213e77dc862268cb802025e923ef18 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Tue, 1 Mar 2022 21:31:42 -0800 Subject: [PATCH 09/15] feat: fix compiling errors --- khronos-registry-parse/resources/test/gl.xml | 47242 +++++++++++++++++ khronos-registry-parse/src/gl/parse.rs | 56 +- khronos-registry-parse/src/gl/types.rs | 6 + khronos-registry-parse/tests/test.rs | 8 +- 4 files changed, 47299 insertions(+), 13 deletions(-) create mode 100644 khronos-registry-parse/resources/test/gl.xml diff --git a/khronos-registry-parse/resources/test/gl.xml b/khronos-registry-parse/resources/test/gl.xml new file mode 100644 index 0000000..f4aa948 --- /dev/null +++ b/khronos-registry-parse/resources/test/gl.xml @@ -0,0 +1,47242 @@ + + + +Copyright 2013-2020 The Khronos Group Inc. +SPDX-License-Identifier: Apache-2.0 + +This file, gl.xml, is the OpenGL and OpenGL API Registry. The canonical +version of the registry, together with documentation, schema, and Python +generator scripts used to generate C header files for OpenGL and OpenGL ES, +can always be found in the Khronos Registry at +https://github.com/KhronosGroup/OpenGL-Registry + + + + + + #include <KHR/khrplatform.h> + + typedef unsigned int GLenum; + typedef unsigned char GLboolean; + typedef unsigned int GLbitfield; + typedef void GLvoid; + typedef khronos_int8_t GLbyte; + typedef khronos_uint8_t GLubyte; + typedef khronos_int16_t GLshort; + typedef khronos_uint16_t GLushort; + typedef int GLint; + typedef unsigned int GLuint; + typedef khronos_int32_t GLclampx; + typedef int GLsizei; + typedef khronos_float_t GLfloat; + typedef khronos_float_t GLclampf; + typedef double GLdouble; + typedef double GLclampd; + typedef void *GLeglClientBufferEXT; + typedef void *GLeglImageOES; + typedef char GLchar; + typedef char GLcharARB; + #ifdef __APPLE__ +typedef void *GLhandleARB; +#else +typedef unsigned int GLhandleARB; +#endif + typedef khronos_uint16_t GLhalf; + typedef khronos_uint16_t GLhalfARB; + typedef khronos_int32_t GLfixed; + typedef khronos_intptr_t GLintptr; + typedef khronos_intptr_t GLintptrARB; + typedef khronos_ssize_t GLsizeiptr; + typedef khronos_ssize_t GLsizeiptrARB; + typedef khronos_int64_t GLint64; + typedef khronos_int64_t GLint64EXT; + typedef khronos_uint64_t GLuint64; + typedef khronos_uint64_t GLuint64EXT; + typedef struct __GLsync *GLsync; + struct _cl_context; + struct _cl_event; + typedef void ( *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); + typedef void ( *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); + typedef void ( *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); + + + typedef void ( *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,void *userParam); + typedef unsigned short GLhalfNV; + typedef GLintptr GLvdpauSurfaceNV; + typedef void ( *GLVULKANPROCNV)(void); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + void glAccum + GLenum op + GLfloat value + + + + void glAccumxOES + GLenum op + GLfixed value + + + void glActiveProgramEXT + GLuint program + + + void glActiveShaderProgram + GLuint pipeline + GLuint program + + + void glActiveShaderProgramEXT + GLuint pipeline + GLuint program + + + void glActiveStencilFaceEXT + GLenum face + + + + void glActiveTexture + GLenum texture + + + + void glActiveTextureARB + GLenum texture + + + + + void glActiveVaryingNV + GLuint program + const GLchar *name + + + void glAlphaFragmentOp1ATI + GLenum op + GLuint dst + GLuint dstMod + GLuint arg1 + GLuint arg1Rep + GLuint arg1Mod + + + void glAlphaFragmentOp2ATI + GLenum op + GLuint dst + GLuint dstMod + GLuint arg1 + GLuint arg1Rep + GLuint arg1Mod + GLuint arg2 + GLuint arg2Rep + GLuint arg2Mod + + + void glAlphaFragmentOp3ATI + GLenum op + GLuint dst + GLuint dstMod + GLuint arg1 + GLuint arg1Rep + GLuint arg1Mod + GLuint arg2 + GLuint arg2Rep + GLuint arg2Mod + GLuint arg3 + GLuint arg3Rep + GLuint arg3Mod + + + void glAlphaFunc + GLenum func + GLfloat ref + + + + void glAlphaFuncQCOM + GLenum func + GLclampf ref + + + void glAlphaFuncx + GLenum func + GLfixed ref + + + void glAlphaFuncxOES + GLenum func + GLfixed ref + + + void glAlphaToCoverageDitherControlNV + GLenum mode + + + void glApplyFramebufferAttachmentCMAAINTEL + + + void glApplyTextureEXT + GLenum mode + + + GLboolean glAcquireKeyedMutexWin32EXT + GLuint memory + GLuint64 key + GLuint timeout + + + GLboolean glAreProgramsResidentNV + GLsizei n + const GLuint *programs + GLboolean *residences + + + + GLboolean glAreTexturesResident + GLsizei n + const GLuint *textures + GLboolean *residences + + + + GLboolean glAreTexturesResidentEXT + GLsizei n + const GLuint *textures + GLboolean *residences + + + + void glArrayElement + GLint i + + + void glArrayElementEXT + GLint i + + + + void glArrayObjectATI + GLenum array + GLint size + GLenum type + GLsizei stride + GLuint buffer + GLuint offset + + + GLuint glAsyncCopyBufferSubDataNVX + GLsizei waitSemaphoreCount + const GLuint *waitSemaphoreArray + const GLuint64 *fenceValueArray + GLuint readGpu + GLbitfield writeGpuMask + GLuint readBuffer + GLuint writeBuffer + GLintptr readOffset + GLintptr writeOffset + GLsizeiptr size + GLsizei signalSemaphoreCount + const GLuint *signalSemaphoreArray + const GLuint64 *signalValueArray + + + GLuint glAsyncCopyImageSubDataNVX + GLsizei waitSemaphoreCount + const GLuint *waitSemaphoreArray + const GLuint64 *waitValueArray + GLuint srcGpu + GLbitfield dstGpuMask + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srcY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei srcWidth + GLsizei srcHeight + GLsizei srcDepth + GLsizei signalSemaphoreCount + const GLuint *signalSemaphoreArray + const GLuint64 *signalValueArray + + + void glAsyncMarkerSGIX + GLuint marker + + + void glAttachObjectARB + GLhandleARB containerObj + GLhandleARB obj + + + + void glAttachShader + GLuint program + GLuint shader + + + void glBegin + GLenum mode + + + + void glBeginConditionalRender + GLuint id + GLenum mode + + + void glBeginConditionalRenderNV + GLuint id + GLenum mode + + + + + void glBeginConditionalRenderNVX + GLuint id + + + void glBeginFragmentShaderATI + + + void glBeginOcclusionQueryNV + GLuint id + + + void glBeginPerfMonitorAMD + GLuint monitor + + + void glBeginPerfQueryINTEL + GLuint queryHandle + + + void glBeginQuery + GLenum target + GLuint id + + + + void glBeginQueryARB + GLenum target + GLuint id + + + + void glBeginQueryEXT + GLenum target + GLuint id + + + void glBeginQueryIndexed + GLenum target + GLuint index + GLuint id + + + void glBeginTransformFeedback + GLenum primitiveMode + + + + void glBeginTransformFeedbackEXT + GLenum primitiveMode + + + + void glBeginTransformFeedbackNV + GLenum primitiveMode + + + + void glBeginVertexShaderEXT + + + void glBeginVideoCaptureNV + GLuint video_capture_slot + + + void glBindAttribLocation + GLuint program + GLuint index + const GLchar *name + + + void glBindAttribLocationARB + GLhandleARB programObj + GLuint index + const GLcharARB *name + + + + void glBindBuffer + GLenum target + GLuint buffer + + + void glBindBufferARB + GLenum target + GLuint buffer + + + + void glBindBufferBase + GLenum target + GLuint index + GLuint buffer + + + + void glBindBufferBaseEXT + GLenum target + GLuint index + GLuint buffer + + + + void glBindBufferBaseNV + GLenum target + GLuint index + GLuint buffer + + + + void glBindBufferOffsetEXT + GLenum target + GLuint index + GLuint buffer + GLintptr offset + + + void glBindBufferOffsetNV + GLenum target + GLuint index + GLuint buffer + GLintptr offset + + + + void glBindBufferRange + GLenum target + GLuint index + GLuint buffer + GLintptr offset + GLsizeiptr size + + + + void glBindBufferRangeEXT + GLenum target + GLuint index + GLuint buffer + GLintptr offset + GLsizeiptr size + + + + void glBindBufferRangeNV + GLenum target + GLuint index + GLuint buffer + GLintptr offset + GLsizeiptr size + + + + void glBindBuffersBase + GLenum target + GLuint first + GLsizei count + const GLuint *buffers + + + void glBindBuffersRange + GLenum target + GLuint first + GLsizei count + const GLuint *buffers + const GLintptr *offsets + const GLsizeiptr *sizes + + + void glBindFragDataLocation + GLuint program + GLuint color + const GLchar *name + + + void glBindFragDataLocationEXT + GLuint program + GLuint color + const GLchar *name + + + + void glBindFragDataLocationIndexed + GLuint program + GLuint colorNumber + GLuint index + const GLchar *name + + + void glBindFragDataLocationIndexedEXT + GLuint program + GLuint colorNumber + GLuint index + const GLchar *name + + + + void glBindFragmentShaderATI + GLuint id + + + void glBindFramebuffer + GLenum target + GLuint framebuffer + + + + void glBindFramebufferEXT + GLenum target + GLuint framebuffer + + + + void glBindFramebufferOES + GLenum target + GLuint framebuffer + + + void glBindImageTexture + GLuint unit + GLuint texture + GLint level + GLboolean layered + GLint layer + GLenum access + GLenum format + + + void glBindImageTextureEXT + GLuint index + GLuint texture + GLint level + GLboolean layered + GLint layer + GLenum access + GLint format + + + void glBindImageTextures + GLuint first + GLsizei count + const GLuint *textures + + + GLuint glBindLightParameterEXT + GLenum light + GLenum value + + + GLuint glBindMaterialParameterEXT + GLenum face + GLenum value + + + void glBindMultiTextureEXT + GLenum texunit + GLenum target + GLuint texture + + + GLuint glBindParameterEXT + GLenum value + + + void glBindProgramARB + GLenum target + GLuint program + + + + void glBindProgramNV + GLenum target + GLuint id + + + + + void glBindProgramPipeline + GLuint pipeline + + + void glBindProgramPipelineEXT + GLuint pipeline + + + void glBindRenderbuffer + GLenum target + GLuint renderbuffer + + + + void glBindRenderbufferEXT + GLenum target + GLuint renderbuffer + + + + void glBindRenderbufferOES + GLenum target + GLuint renderbuffer + + + void glBindSampler + GLuint unit + GLuint sampler + + + void glBindSamplers + GLuint first + GLsizei count + const GLuint *samplers + + + void glBindShadingRateImageNV + GLuint texture + + + GLuint glBindTexGenParameterEXT + GLenum unit + GLenum coord + GLenum value + + + void glBindTexture + GLenum target + GLuint texture + + + + void glBindTextureEXT + GLenum target + GLuint texture + + + + + void glBindTextureUnit + GLuint unit + GLuint texture + + + GLuint glBindTextureUnitParameterEXT + GLenum unit + GLenum value + + + void glBindTextures + GLuint first + GLsizei count + const GLuint *textures + + + void glBindTransformFeedback + GLenum target + GLuint id + + + void glBindTransformFeedbackNV + GLenum target + GLuint id + + + void glBindVertexArray + GLuint array + + + + void glBindVertexArrayAPPLE + GLuint array + + + void glBindVertexArrayOES + GLuint array + + + + void glBindVertexBuffer + GLuint bindingindex + GLuint buffer + GLintptr offset + GLsizei stride + + + void glBindVertexBuffers + GLuint first + GLsizei count + const GLuint *buffers + const GLintptr *offsets + const GLsizei *strides + + + void glBindVertexShaderEXT + GLuint id + + + void glBindVideoCaptureStreamBufferNV + GLuint video_capture_slot + GLuint stream + GLenum frame_region + GLintptrARB offset + + + void glBindVideoCaptureStreamTextureNV + GLuint video_capture_slot + GLuint stream + GLenum frame_region + GLenum target + GLuint texture + + + void glBinormal3bEXT + GLbyte bx + GLbyte by + GLbyte bz + + + + void glBinormal3bvEXT + const GLbyte *v + + + void glBinormal3dEXT + GLdouble bx + GLdouble by + GLdouble bz + + + + void glBinormal3dvEXT + const GLdouble *v + + + void glBinormal3fEXT + GLfloat bx + GLfloat by + GLfloat bz + + + + void glBinormal3fvEXT + const GLfloat *v + + + void glBinormal3iEXT + GLint bx + GLint by + GLint bz + + + + void glBinormal3ivEXT + const GLint *v + + + void glBinormal3sEXT + GLshort bx + GLshort by + GLshort bz + + + + void glBinormal3svEXT + const GLshort *v + + + void glBinormalPointerEXT + GLenum type + GLsizei stride + const void *pointer + + + void glBitmap + GLsizei width + GLsizei height + GLfloat xorig + GLfloat yorig + GLfloat xmove + GLfloat ymove + const GLubyte *bitmap + + + + + void glBitmapxOES + GLsizei width + GLsizei height + GLfixed xorig + GLfixed yorig + GLfixed xmove + GLfixed ymove + const GLubyte *bitmap + + + void glBlendBarrier + + + void glBlendBarrierKHR + + + + void glBlendBarrierNV + + + + void glBlendColor + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + void glBlendColorEXT + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + + void glBlendColorxOES + GLfixed red + GLfixed green + GLfixed blue + GLfixed alpha + + + void glBlendEquation + GLenum mode + + + + void glBlendEquationEXT + GLenum mode + + + + + void glBlendEquationIndexedAMD + GLuint buf + GLenum mode + + + + void glBlendEquationOES + GLenum mode + + + void glBlendEquationSeparate + GLenum modeRGB + GLenum modeAlpha + + + + void glBlendEquationSeparateEXT + GLenum modeRGB + GLenum modeAlpha + + + + + void glBlendEquationSeparateIndexedAMD + GLuint buf + GLenum modeRGB + GLenum modeAlpha + + + + void glBlendEquationSeparateOES + GLenum modeRGB + GLenum modeAlpha + + + void glBlendEquationSeparatei + GLuint buf + GLenum modeRGB + GLenum modeAlpha + + + void glBlendEquationSeparateiARB + GLuint buf + GLenum modeRGB + GLenum modeAlpha + + + + void glBlendEquationSeparateiEXT + GLuint buf + GLenum modeRGB + GLenum modeAlpha + + + + void glBlendEquationSeparateiOES + GLuint buf + GLenum modeRGB + GLenum modeAlpha + + + + void glBlendEquationi + GLuint buf + GLenum mode + + + void glBlendEquationiARB + GLuint buf + GLenum mode + + + + void glBlendEquationiEXT + GLuint buf + GLenum mode + + + + void glBlendEquationiOES + GLuint buf + GLenum mode + + + + void glBlendFunc + GLenum sfactor + GLenum dfactor + + + + void glBlendFuncIndexedAMD + GLuint buf + GLenum src + GLenum dst + + + + void glBlendFuncSeparate + GLenum sfactorRGB + GLenum dfactorRGB + GLenum sfactorAlpha + GLenum dfactorAlpha + + + + void glBlendFuncSeparateEXT + GLenum sfactorRGB + GLenum dfactorRGB + GLenum sfactorAlpha + GLenum dfactorAlpha + + + + + void glBlendFuncSeparateINGR + GLenum sfactorRGB + GLenum dfactorRGB + GLenum sfactorAlpha + GLenum dfactorAlpha + + + + + void glBlendFuncSeparateIndexedAMD + GLuint buf + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + + void glBlendFuncSeparateOES + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + void glBlendFuncSeparatei + GLuint buf + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + void glBlendFuncSeparateiARB + GLuint buf + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + + void glBlendFuncSeparateiEXT + GLuint buf + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + + void glBlendFuncSeparateiOES + GLuint buf + GLenum srcRGB + GLenum dstRGB + GLenum srcAlpha + GLenum dstAlpha + + + + void glBlendFunci + GLuint buf + GLenum src + GLenum dst + + + void glBlendFunciARB + GLuint buf + GLenum src + GLenum dst + + + + void glBlendFunciEXT + GLuint buf + GLenum src + GLenum dst + + + + void glBlendFunciOES + GLuint buf + GLenum src + GLenum dst + + + + void glBlendParameteriNV + GLenum pname + GLint value + + + void glBlitFramebuffer + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + + void glBlitFramebufferANGLE + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + void glBlitFramebufferEXT + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + + + void glBlitFramebufferNV + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + + void glBlitNamedFramebuffer + GLuint readFramebuffer + GLuint drawFramebuffer + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + void glBufferAddressRangeNV + GLenum pname + GLuint index + GLuint64EXT address + GLsizeiptr length + + + void glBufferAttachMemoryNV + GLenum target + GLuint memory + GLuint64 offset + + + void glBufferData + GLenum target + GLsizeiptr size + const void *data + GLenum usage + + + void glBufferDataARB + GLenum target + GLsizeiptrARB size + const void *data + GLenum usage + + + + void glBufferPageCommitmentARB + GLenum target + GLintptr offset + GLsizeiptr size + GLboolean commit + + + void glBufferPageCommitmentMemNV + GLenum target + GLintptr offset + GLsizeiptr size + GLuint memory + GLuint64 memOffset + GLboolean commit + + + void glBufferParameteriAPPLE + GLenum target + GLenum pname + GLint param + + + void glBufferStorage + GLenum target + GLsizeiptr size + const void *data + GLbitfield flags + + + void glBufferStorageEXT + GLenum target + GLsizeiptr size + const void *data + GLbitfield flags + + + + void glBufferStorageExternalEXT + GLenum target + GLintptr offset + GLsizeiptr size + GLeglClientBufferEXT clientBuffer + GLbitfield flags + + + void glBufferStorageMemEXT + GLenum target + GLsizeiptr size + GLuint memory + GLuint64 offset + + + void glBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + const void *data + + + void glBufferSubDataARB + GLenum target + GLintptrARB offset + GLsizeiptrARB size + const void *data + + + + void glCallCommandListNV + GLuint list + + + void glCallList + GLuint list + + + + void glCallLists + GLsizei n + GLenum type + const void *lists + + + + GLenum glCheckFramebufferStatus + GLenum target + + + + GLenum glCheckFramebufferStatusEXT + GLenum target + + + + + GLenum glCheckFramebufferStatusOES + GLenum target + + + GLenum glCheckNamedFramebufferStatus + GLuint framebuffer + GLenum target + + + GLenum glCheckNamedFramebufferStatusEXT + GLuint framebuffer + GLenum target + + + void glClampColor + GLenum target + GLenum clamp + + + + void glClampColorARB + GLenum target + GLenum clamp + + + + + void glClear + GLbitfield mask + + + + void glClearAccum + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + void glClearAccumxOES + GLfixed red + GLfixed green + GLfixed blue + GLfixed alpha + + + void glClearBufferData + GLenum target + GLenum internalformat + GLenum format + GLenum type + const void *data + + + void glClearBufferSubData + GLenum target + GLenum internalformat + GLintptr offset + GLsizeiptr size + GLenum format + GLenum type + const void *data + + + void glClearBufferfi + GLenum buffer + GLint drawbuffer + GLfloat depth + GLint stencil + + + + void glClearBufferfv + GLenum buffer + GLint drawbuffer + const GLfloat *value + + + + void glClearBufferiv + GLenum buffer + GLint drawbuffer + const GLint *value + + + + void glClearBufferuiv + GLenum buffer + GLint drawbuffer + const GLuint *value + + + + void glClearColor + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + void glClearColorIiEXT + GLint red + GLint green + GLint blue + GLint alpha + + + + void glClearColorIuiEXT + GLuint red + GLuint green + GLuint blue + GLuint alpha + + + + void glClearColorx + GLfixed red + GLfixed green + GLfixed blue + GLfixed alpha + + + void glClearColorxOES + GLfixed red + GLfixed green + GLfixed blue + GLfixed alpha + + + void glClearDepth + GLdouble depth + + + + void glClearDepthdNV + GLdouble depth + + + + void glClearDepthf + GLfloat d + + + void glClearDepthfOES + GLclampf depth + + + + + void glClearDepthx + GLfixed depth + + + void glClearDepthxOES + GLfixed depth + + + void glClearIndex + GLfloat c + + + + void glClearNamedBufferData + GLuint buffer + GLenum internalformat + GLenum format + GLenum type + const void *data + + + void glClearNamedBufferDataEXT + GLuint buffer + GLenum internalformat + GLenum format + GLenum type + const void *data + + + void glClearNamedBufferSubData + GLuint buffer + GLenum internalformat + GLintptr offset + GLsizeiptr size + GLenum format + GLenum type + const void *data + + + void glClearNamedBufferSubDataEXT + GLuint buffer + GLenum internalformat + GLsizeiptr offset + GLsizeiptr size + GLenum format + GLenum type + const void *data + + + void glClearNamedFramebufferfi + GLuint framebuffer + GLenum buffer + GLint drawbuffer + GLfloat depth + GLint stencil + + + void glClearNamedFramebufferfv + GLuint framebuffer + GLenum buffer + GLint drawbuffer + const GLfloat *value + + + void glClearNamedFramebufferiv + GLuint framebuffer + GLenum buffer + GLint drawbuffer + const GLint *value + + + void glClearNamedFramebufferuiv + GLuint framebuffer + GLenum buffer + GLint drawbuffer + const GLuint *value + + + void glClearPixelLocalStorageuiEXT + GLsizei offset + GLsizei n + const GLuint *values + + + void glClearStencil + GLint s + + + + void glClearTexImage + GLuint texture + GLint level + GLenum format + GLenum type + const void *data + + + void glClearTexImageEXT + GLuint texture + GLint level + GLenum format + GLenum type + const void *data + + + + void glClearTexSubImage + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *data + + + void glClearTexSubImageEXT + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *data + + + + void glClientActiveTexture + GLenum texture + + + void glClientActiveTextureARB + GLenum texture + + + + void glClientActiveVertexStreamATI + GLenum stream + + + void glClientAttribDefaultEXT + GLbitfield mask + + + void glClientWaitSemaphoreui64NVX + GLsizei fenceObjectCount + const GLuint *semaphoreArray + const GLuint64 *fenceValueArray + + + GLenum glClientWaitSync + GLsync sync + GLbitfield flags + GLuint64 timeout + + + GLenum glClientWaitSyncAPPLE + GLsync sync + GLbitfield flags + GLuint64 timeout + + + + void glClipControl + GLenum origin + GLenum depth + + + void glClipControlEXT + GLenum origin + GLenum depth + + + + void glClipPlane + GLenum plane + const GLdouble *equation + + + + void glClipPlanef + GLenum p + const GLfloat *eqn + + + void glClipPlanefIMG + GLenum p + const GLfloat *eqn + + + void glClipPlanefOES + GLenum plane + const GLfloat *equation + + + + void glClipPlanex + GLenum plane + const GLfixed *equation + + + void glClipPlanexIMG + GLenum p + const GLfixed *eqn + + + void glClipPlanexOES + GLenum plane + const GLfixed *equation + + + void glColor3b + GLbyte red + GLbyte green + GLbyte blue + + + + void glColor3bv + const GLbyte *v + + + + void glColor3d + GLdouble red + GLdouble green + GLdouble blue + + + + void glColor3dv + const GLdouble *v + + + + void glColor3f + GLfloat red + GLfloat green + GLfloat blue + + + + void glColor3fVertex3fSUN + GLfloat r + GLfloat g + GLfloat b + GLfloat x + GLfloat y + GLfloat z + + + void glColor3fVertex3fvSUN + const GLfloat *c + const GLfloat *v + + + void glColor3fv + const GLfloat *v + + + + void glColor3hNV + GLhalfNV red + GLhalfNV green + GLhalfNV blue + + + + void glColor3hvNV + const GLhalfNV *v + + + + void glColor3i + GLint red + GLint green + GLint blue + + + + void glColor3iv + const GLint *v + + + + void glColor3s + GLshort red + GLshort green + GLshort blue + + + + void glColor3sv + const GLshort *v + + + + void glColor3ub + GLubyte red + GLubyte green + GLubyte blue + + + + void glColor3ubv + const GLubyte *v + + + + void glColor3ui + GLuint red + GLuint green + GLuint blue + + + + void glColor3uiv + const GLuint *v + + + + void glColor3us + GLushort red + GLushort green + GLushort blue + + + + void glColor3usv + const GLushort *v + + + + void glColor3xOES + GLfixed red + GLfixed green + GLfixed blue + + + void glColor3xvOES + const GLfixed *components + + + void glColor4b + GLbyte red + GLbyte green + GLbyte blue + GLbyte alpha + + + + void glColor4bv + const GLbyte *v + + + + void glColor4d + GLdouble red + GLdouble green + GLdouble blue + GLdouble alpha + + + + void glColor4dv + const GLdouble *v + + + + void glColor4f + GLfloat red + GLfloat green + GLfloat blue + GLfloat alpha + + + + void glColor4fNormal3fVertex3fSUN + GLfloat r + GLfloat g + GLfloat b + GLfloat a + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glColor4fNormal3fVertex3fvSUN + const GLfloat *c + const GLfloat *n + const GLfloat *v + + + void glColor4fv + const GLfloat *v + + + + void glColor4hNV + GLhalfNV red + GLhalfNV green + GLhalfNV blue + GLhalfNV alpha + + + + void glColor4hvNV + const GLhalfNV *v + + + + void glColor4i + GLint red + GLint green + GLint blue + GLint alpha + + + + void glColor4iv + const GLint *v + + + + void glColor4s + GLshort red + GLshort green + GLshort blue + GLshort alpha + + + + void glColor4sv + const GLshort *v + + + + void glColor4ub + GLubyte red + GLubyte green + GLubyte blue + GLubyte alpha + + + + void glColor4ubVertex2fSUN + GLubyte r + GLubyte g + GLubyte b + GLubyte a + GLfloat x + GLfloat y + + + void glColor4ubVertex2fvSUN + const GLubyte *c + const GLfloat *v + + + void glColor4ubVertex3fSUN + GLubyte r + GLubyte g + GLubyte b + GLubyte a + GLfloat x + GLfloat y + GLfloat z + + + void glColor4ubVertex3fvSUN + const GLubyte *c + const GLfloat *v + + + void glColor4ubv + const GLubyte *v + + + + void glColor4ui + GLuint red + GLuint green + GLuint blue + GLuint alpha + + + + void glColor4uiv + const GLuint *v + + + + void glColor4us + GLushort red + GLushort green + GLushort blue + GLushort alpha + + + + void glColor4usv + const GLushort *v + + + + void glColor4x + GLfixed red + GLfixed green + GLfixed blue + GLfixed alpha + + + void glColor4xOES + GLfixed red + GLfixed green + GLfixed blue + GLfixed alpha + + + void glColor4xvOES + const GLfixed *components + + + void glColorFormatNV + GLint size + GLenum type + GLsizei stride + + + void glColorFragmentOp1ATI + GLenum op + GLuint dst + GLuint dstMask + GLuint dstMod + GLuint arg1 + GLuint arg1Rep + GLuint arg1Mod + + + void glColorFragmentOp2ATI + GLenum op + GLuint dst + GLuint dstMask + GLuint dstMod + GLuint arg1 + GLuint arg1Rep + GLuint arg1Mod + GLuint arg2 + GLuint arg2Rep + GLuint arg2Mod + + + void glColorFragmentOp3ATI + GLenum op + GLuint dst + GLuint dstMask + GLuint dstMod + GLuint arg1 + GLuint arg1Rep + GLuint arg1Mod + GLuint arg2 + GLuint arg2Rep + GLuint arg2Mod + GLuint arg3 + GLuint arg3Rep + GLuint arg3Mod + + + void glColorMask + GLboolean red + GLboolean green + GLboolean blue + GLboolean alpha + + + + void glColorMaskIndexedEXT + GLuint index + GLboolean r + GLboolean g + GLboolean b + GLboolean a + + + + + void glColorMaski + GLuint index + GLboolean r + GLboolean g + GLboolean b + GLboolean a + + + void glColorMaskiEXT + GLuint index + GLboolean r + GLboolean g + GLboolean b + GLboolean a + + + + void glColorMaskiOES + GLuint index + GLboolean r + GLboolean g + GLboolean b + GLboolean a + + + + void glColorMaterial + GLenum face + GLenum mode + + + + void glColorP3ui + GLenum type + GLuint color + + + void glColorP3uiv + GLenum type + const GLuint *color + + + void glColorP4ui + GLenum type + GLuint color + + + void glColorP4uiv + GLenum type + const GLuint *color + + + void glColorPointer + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glColorPointerEXT + GLint size + GLenum type + GLsizei stride + GLsizei count + const void *pointer + + + void glColorPointerListIBM + GLint size + GLenum type + GLint stride + const void **pointer + GLint ptrstride + + + void glColorPointervINTEL + GLint size + GLenum type + const void **pointer + + + void glColorSubTable + GLenum target + GLsizei start + GLsizei count + GLenum format + GLenum type + const void *data + + + + + void glColorSubTableEXT + GLenum target + GLsizei start + GLsizei count + GLenum format + GLenum type + const void *data + + + + void glColorTable + GLenum target + GLenum internalformat + GLsizei width + GLenum format + GLenum type + const void *table + + + + + void glColorTableEXT + GLenum target + GLenum internalFormat + GLsizei width + GLenum format + GLenum type + const void *table + + + + void glColorTableParameterfv + GLenum target + GLenum pname + const GLfloat *params + + + + void glColorTableParameterfvSGI + GLenum target + GLenum pname + const GLfloat *params + + + + + void glColorTableParameteriv + GLenum target + GLenum pname + const GLint *params + + + + void glColorTableParameterivSGI + GLenum target + GLenum pname + const GLint *params + + + + + void glColorTableSGI + GLenum target + GLenum internalformat + GLsizei width + GLenum format + GLenum type + const void *table + + + + + void glCombinerInputNV + GLenum stage + GLenum portion + GLenum variable + GLenum input + GLenum mapping + GLenum componentUsage + + + + void glCombinerOutputNV + GLenum stage + GLenum portion + GLenum abOutput + GLenum cdOutput + GLenum sumOutput + GLenum scale + GLenum bias + GLboolean abDotProduct + GLboolean cdDotProduct + GLboolean muxSum + + + + void glCombinerParameterfNV + GLenum pname + GLfloat param + + + + void glCombinerParameterfvNV + GLenum pname + const GLfloat *params + + + + void glCombinerParameteriNV + GLenum pname + GLint param + + + + void glCombinerParameterivNV + GLenum pname + const GLint *params + + + + void glCombinerStageParameterfvNV + GLenum stage + GLenum pname + const GLfloat *params + + + void glCommandListSegmentsNV + GLuint list + GLuint segments + + + void glCompileCommandListNV + GLuint list + + + void glCompileShader + GLuint shader + + + void glCompileShaderARB + GLhandleARB shaderObj + + + + void glCompileShaderIncludeARB + GLuint shader + GLsizei count + const GLchar *const*path + const GLint *length + + + void glCompressedMultiTexImage1DEXT + GLenum texunit + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLint border + GLsizei imageSize + const void *bits + + + void glCompressedMultiTexImage2DEXT + GLenum texunit + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLint border + GLsizei imageSize + const void *bits + + + void glCompressedMultiTexImage3DEXT + GLenum texunit + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const void *bits + + + void glCompressedMultiTexSubImage1DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const void *bits + + + void glCompressedMultiTexSubImage2DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const void *bits + + + void glCompressedMultiTexSubImage3DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const void *bits + + + void glCompressedTexImage1D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLint border + GLsizei imageSize + const void *data + + + + + void glCompressedTexImage1DARB + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLint border + GLsizei imageSize + const void *data + + + + + void glCompressedTexImage2D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLint border + GLsizei imageSize + const void *data + + + + + void glCompressedTexImage2DARB + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLint border + GLsizei imageSize + const void *data + + + + + void glCompressedTexImage3D + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const void *data + + + + + void glCompressedTexImage3DARB + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const void *data + + + + + void glCompressedTexImage3DOES + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const void *data + + + void glCompressedTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const void *data + + + + + void glCompressedTexSubImage1DARB + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const void *data + + + + + void glCompressedTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const void *data + + + + + void glCompressedTexSubImage2DARB + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const void *data + + + + + void glCompressedTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const void *data + + + + + void glCompressedTexSubImage3DARB + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const void *data + + + + + void glCompressedTexSubImage3DOES + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const void *data + + + void glCompressedTextureImage1DEXT + GLuint texture + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLint border + GLsizei imageSize + const void *bits + + + void glCompressedTextureImage2DEXT + GLuint texture + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLint border + GLsizei imageSize + const void *bits + + + void glCompressedTextureImage3DEXT + GLuint texture + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLsizei imageSize + const void *bits + + + void glCompressedTextureSubImage1D + GLuint texture + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const void *data + + + void glCompressedTextureSubImage1DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLsizei imageSize + const void *bits + + + void glCompressedTextureSubImage2D + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const void *data + + + void glCompressedTextureSubImage2DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLsizei imageSize + const void *bits + + + void glCompressedTextureSubImage3D + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const void *data + + + void glCompressedTextureSubImage3DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLsizei imageSize + const void *bits + + + void glConservativeRasterParameterfNV + GLenum pname + GLfloat value + + + void glConservativeRasterParameteriNV + GLenum pname + GLint param + + + void glConvolutionFilter1D + GLenum target + GLenum internalformat + GLsizei width + GLenum format + GLenum type + const void *image + + + + + void glConvolutionFilter1DEXT + GLenum target + GLenum internalformat + GLsizei width + GLenum format + GLenum type + const void *image + + + + + void glConvolutionFilter2D + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *image + + + + + void glConvolutionFilter2DEXT + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *image + + + + + void glConvolutionParameterf + GLenum target + GLenum pname + GLfloat params + + + + void glConvolutionParameterfEXT + GLenum target + GLenum pname + GLfloat params + + + + + void glConvolutionParameterfv + GLenum target + GLenum pname + const GLfloat *params + + + + void glConvolutionParameterfvEXT + GLenum target + GLenum pname + const GLfloat *params + + + + + void glConvolutionParameteri + GLenum target + GLenum pname + GLint params + + + + void glConvolutionParameteriEXT + GLenum target + GLenum pname + GLint params + + + + + void glConvolutionParameteriv + GLenum target + GLenum pname + const GLint *params + + + + void glConvolutionParameterivEXT + GLenum target + GLenum pname + const GLint *params + + + + + void glConvolutionParameterxOES + GLenum target + GLenum pname + GLfixed param + + + void glConvolutionParameterxvOES + GLenum target + GLenum pname + const GLfixed *params + + + void glCopyBufferSubData + GLenum readTarget + GLenum writeTarget + GLintptr readOffset + GLintptr writeOffset + GLsizeiptr size + + + + void glCopyBufferSubDataNV + GLenum readTarget + GLenum writeTarget + GLintptr readOffset + GLintptr writeOffset + GLsizeiptr size + + + + void glCopyColorSubTable + GLenum target + GLsizei start + GLint x + GLint y + GLsizei width + + + + void glCopyColorSubTableEXT + GLenum target + GLsizei start + GLint x + GLint y + GLsizei width + + + + void glCopyColorTable + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + + + + void glCopyColorTableSGI + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + + + + + void glCopyConvolutionFilter1D + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + + + + void glCopyConvolutionFilter1DEXT + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + + + + + void glCopyConvolutionFilter2D + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + + + + void glCopyConvolutionFilter2DEXT + GLenum target + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + + + + + void glCopyImageSubData + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srcY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei srcWidth + GLsizei srcHeight + GLsizei srcDepth + + + void glCopyImageSubDataEXT + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srcY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei srcWidth + GLsizei srcHeight + GLsizei srcDepth + + + + void glCopyImageSubDataNV + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srcY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei width + GLsizei height + GLsizei depth + + + + void glCopyImageSubDataOES + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srcY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei srcWidth + GLsizei srcHeight + GLsizei srcDepth + + + + void glCopyMultiTexImage1DEXT + GLenum texunit + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLint border + + + void glCopyMultiTexImage2DEXT + GLenum texunit + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + GLint border + + + void glCopyMultiTexSubImage1DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + void glCopyMultiTexSubImage2DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + void glCopyMultiTexSubImage3DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + void glCopyNamedBufferSubData + GLuint readBuffer + GLuint writeBuffer + GLintptr readOffset + GLintptr writeOffset + GLsizeiptr size + + + void glCopyPathNV + GLuint resultPath + GLuint srcPath + + + void glCopyPixels + GLint x + GLint y + GLsizei width + GLsizei height + GLenum type + + + + void glCopyTexImage1D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLint border + + + + void glCopyTexImage1DEXT + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLint border + + + + + void glCopyTexImage2D + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + GLint border + + + + void glCopyTexImage2DEXT + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + GLint border + + + + + void glCopyTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + + void glCopyTexSubImage1DEXT + GLenum target + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + + + void glCopyTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + void glCopyTexSubImage2DEXT + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + void glCopyTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + void glCopyTexSubImage3DEXT + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + + + void glCopyTexSubImage3DOES + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + void glCopyTextureImage1DEXT + GLuint texture + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLint border + + + void glCopyTextureImage2DEXT + GLuint texture + GLenum target + GLint level + GLenum internalformat + GLint x + GLint y + GLsizei width + GLsizei height + GLint border + + + void glCopyTextureLevelsAPPLE + GLuint destinationTexture + GLuint sourceTexture + GLint sourceBaseLevel + GLsizei sourceLevelCount + + + void glCopyTextureSubImage1D + GLuint texture + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + void glCopyTextureSubImage1DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLint x + GLint y + GLsizei width + + + void glCopyTextureSubImage2D + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + void glCopyTextureSubImage2DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + void glCopyTextureSubImage3D + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + void glCopyTextureSubImage3DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint x + GLint y + GLsizei width + GLsizei height + + + void glCoverFillPathInstancedNV + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLenum coverMode + GLenum transformType + const GLfloat *transformValues + + + void glCoverFillPathNV + GLuint path + GLenum coverMode + + + void glCoverStrokePathInstancedNV + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLenum coverMode + GLenum transformType + const GLfloat *transformValues + + + void glCoverStrokePathNV + GLuint path + GLenum coverMode + + + void glCoverageMaskNV + GLboolean mask + + + void glCoverageModulationNV + GLenum components + + + void glCoverageModulationTableNV + GLsizei n + const GLfloat *v + + + void glCoverageOperationNV + GLenum operation + + + void glCreateBuffers + GLsizei n + GLuint *buffers + + + void glCreateCommandListsNV + GLsizei n + GLuint *lists + + + void glCreateFramebuffers + GLsizei n + GLuint *framebuffers + + + void glCreateMemoryObjectsEXT + GLsizei n + GLuint *memoryObjects + + + void glCreatePerfQueryINTEL + GLuint queryId + GLuint *queryHandle + + + GLuint glCreateProgram + + + GLhandleARB glCreateProgramObjectARB + + + + void glCreateProgramPipelines + GLsizei n + GLuint *pipelines + + + GLuint glCreateProgressFenceNVX + + + void glCreateQueries + GLenum target + GLsizei n + GLuint *ids + + + void glCreateRenderbuffers + GLsizei n + GLuint *renderbuffers + + + void glCreateSamplers + GLsizei n + GLuint *samplers + + + void glCreateSemaphoresNV + GLsizei n + GLuint *semaphores + + + GLuint glCreateShader + GLenum type + + + GLhandleARB glCreateShaderObjectARB + GLenum shaderType + + + + GLuint glCreateShaderProgramEXT + GLenum type + const GLchar *string + + + GLuint glCreateShaderProgramv + GLenum type + GLsizei count + const GLchar *const*strings + + + GLuint glCreateShaderProgramvEXT + GLenum type + GLsizei count + const GLchar **strings + + + void glCreateStatesNV + GLsizei n + GLuint *states + + + GLsync glCreateSyncFromCLeventARB + struct _cl_context *context + struct _cl_event *event + GLbitfield flags + + + void glCreateTextures + GLenum target + GLsizei n + GLuint *textures + + + void glCreateTransformFeedbacks + GLsizei n + GLuint *ids + + + void glCreateVertexArrays + GLsizei n + GLuint *arrays + + + void glCullFace + GLenum mode + + + + void glCullParameterdvEXT + GLenum pname + GLdouble *params + + + void glCullParameterfvEXT + GLenum pname + GLfloat *params + + + void glCurrentPaletteMatrixARB + GLint index + + + + void glCurrentPaletteMatrixOES + GLuint matrixpaletteindex + + + void glDebugMessageCallback + GLDEBUGPROC callback + const void *userParam + + + void glDebugMessageCallbackAMD + GLDEBUGPROCAMD callback + void *userParam + + + void glDebugMessageCallbackARB + GLDEBUGPROCARB callback + const void *userParam + + + + void glDebugMessageCallbackKHR + GLDEBUGPROCKHR callback + const void *userParam + + + + void glDebugMessageControl + GLenum source + GLenum type + GLenum severity + GLsizei count + const GLuint *ids + GLboolean enabled + + + void glDebugMessageControlARB + GLenum source + GLenum type + GLenum severity + GLsizei count + const GLuint *ids + GLboolean enabled + + + + void glDebugMessageControlKHR + GLenum source + GLenum type + GLenum severity + GLsizei count + const GLuint *ids + GLboolean enabled + + + + void glDebugMessageEnableAMD + GLenum category + GLenum severity + GLsizei count + const GLuint *ids + GLboolean enabled + + + void glDebugMessageInsert + GLenum source + GLenum type + GLuint id + GLenum severity + GLsizei length + const GLchar *buf + + + void glDebugMessageInsertAMD + GLenum category + GLenum severity + GLuint id + GLsizei length + const GLchar *buf + + + void glDebugMessageInsertARB + GLenum source + GLenum type + GLuint id + GLenum severity + GLsizei length + const GLchar *buf + + + + void glDebugMessageInsertKHR + GLenum source + GLenum type + GLuint id + GLenum severity + GLsizei length + const GLchar *buf + + + + void glDeformSGIX + GLbitfield mask + + + + void glDeformationMap3dSGIX + GLenum target + GLdouble u1 + GLdouble u2 + GLint ustride + GLint uorder + GLdouble v1 + GLdouble v2 + GLint vstride + GLint vorder + GLdouble w1 + GLdouble w2 + GLint wstride + GLint worder + const GLdouble *points + + + + void glDeformationMap3fSGIX + GLenum target + GLfloat u1 + GLfloat u2 + GLint ustride + GLint uorder + GLfloat v1 + GLfloat v2 + GLint vstride + GLint vorder + GLfloat w1 + GLfloat w2 + GLint wstride + GLint worder + const GLfloat *points + + + + void glDeleteAsyncMarkersSGIX + GLuint marker + GLsizei range + + + void glDeleteBuffers + GLsizei n + const GLuint *buffers + + + void glDeleteBuffersARB + GLsizei n + const GLuint *buffers + + + + void glDeleteCommandListsNV + GLsizei n + const GLuint *lists + + + void glDeleteFencesAPPLE + GLsizei n + const GLuint *fences + + + void glDeleteFencesNV + GLsizei n + const GLuint *fences + + + + void glDeleteFragmentShaderATI + GLuint id + + + void glDeleteFramebuffers + GLsizei n + const GLuint *framebuffers + + + + void glDeleteFramebuffersEXT + GLsizei n + const GLuint *framebuffers + + + + + void glDeleteFramebuffersOES + GLsizei n + const GLuint *framebuffers + + + void glDeleteLists + GLuint list + GLsizei range + + + + void glDeleteMemoryObjectsEXT + GLsizei n + const GLuint *memoryObjects + + + void glDeleteNamedStringARB + GLint namelen + const GLchar *name + + + void glDeleteNamesAMD + GLenum identifier + GLuint num + const GLuint *names + + + void glDeleteObjectARB + GLhandleARB obj + + + void glDeleteOcclusionQueriesNV + GLsizei n + const GLuint *ids + + + void glDeletePathsNV + GLuint path + GLsizei range + + + void glDeletePerfMonitorsAMD + GLsizei n + GLuint *monitors + + + void glDeletePerfQueryINTEL + GLuint queryHandle + + + void glDeleteProgram + GLuint program + + + + void glDeleteProgramPipelines + GLsizei n + const GLuint *pipelines + + + void glDeleteProgramPipelinesEXT + GLsizei n + const GLuint *pipelines + + + void glDeleteProgramsARB + GLsizei n + const GLuint *programs + + + + void glDeleteProgramsNV + GLsizei n + const GLuint *programs + + + + + void glDeleteQueries + GLsizei n + const GLuint *ids + + + + void glDeleteQueriesARB + GLsizei n + const GLuint *ids + + + + void glDeleteQueriesEXT + GLsizei n + const GLuint *ids + + + void glDeleteQueryResourceTagNV + GLsizei n + const GLint *tagIds + + + void glDeleteRenderbuffers + GLsizei n + const GLuint *renderbuffers + + + + void glDeleteRenderbuffersEXT + GLsizei n + const GLuint *renderbuffers + + + + + void glDeleteRenderbuffersOES + GLsizei n + const GLuint *renderbuffers + + + void glDeleteSamplers + GLsizei count + const GLuint *samplers + + + void glDeleteSemaphoresEXT + GLsizei n + const GLuint *semaphores + + + void glDeleteShader + GLuint shader + + + + void glDeleteStatesNV + GLsizei n + const GLuint *states + + + void glDeleteSync + GLsync sync + + + void glDeleteSyncAPPLE + GLsync sync + + + + void glDeleteTextures + GLsizei n + const GLuint *textures + + + + void glDeleteTexturesEXT + GLsizei n + const GLuint *textures + + + + void glDeleteTransformFeedbacks + GLsizei n + const GLuint *ids + + + void glDeleteTransformFeedbacksNV + GLsizei n + const GLuint *ids + + + + void glDeleteVertexArrays + GLsizei n + const GLuint *arrays + + + + void glDeleteVertexArraysAPPLE + GLsizei n + const GLuint *arrays + + + + void glDeleteVertexArraysOES + GLsizei n + const GLuint *arrays + + + + void glDeleteVertexShaderEXT + GLuint id + + + void glDepthBoundsEXT + GLclampd zmin + GLclampd zmax + + + + void glDepthBoundsdNV + GLdouble zmin + GLdouble zmax + + + + void glDepthFunc + GLenum func + + + + void glDepthMask + GLboolean flag + + + + void glDepthRange + GLdouble n + GLdouble f + + + + void glDepthRangeArraydvNV + GLuint first + GLsizei count + const GLdouble *v + + + void glDepthRangeArrayfvNV + GLuint first + GLsizei count + const GLfloat *v + + + void glDepthRangeArrayfvOES + GLuint first + GLsizei count + const GLfloat *v + + + void glDepthRangeArrayv + GLuint first + GLsizei count + const GLdouble *v + + + void glDepthRangeIndexed + GLuint index + GLdouble n + GLdouble f + + + void glDepthRangeIndexeddNV + GLuint index + GLdouble n + GLdouble f + + + void glDepthRangeIndexedfNV + GLuint index + GLfloat n + GLfloat f + + + void glDepthRangeIndexedfOES + GLuint index + GLfloat n + GLfloat f + + + void glDepthRangedNV + GLdouble zNear + GLdouble zFar + + + + void glDepthRangef + GLfloat n + GLfloat f + + + void glDepthRangefOES + GLclampf n + GLclampf f + + + + + void glDepthRangex + GLfixed n + GLfixed f + + + void glDepthRangexOES + GLfixed n + GLfixed f + + + void glDetachObjectARB + GLhandleARB containerObj + GLhandleARB attachedObj + + + + void glDetachShader + GLuint program + GLuint shader + + + void glDetailTexFuncSGIS + GLenum target + GLsizei n + const GLfloat *points + + + + void glDisable + GLenum cap + + + + void glDisableClientState + GLenum array + + + void glDisableClientStateIndexedEXT + GLenum array + GLuint index + + + void glDisableClientStateiEXT + GLenum array + GLuint index + + + void glDisableDriverControlQCOM + GLuint driverControl + + + void glDisableIndexedEXT + GLenum target + GLuint index + + + + + void glDisableVariantClientStateEXT + GLuint id + + + void glDisableVertexArrayAttrib + GLuint vaobj + GLuint index + + + void glDisableVertexArrayAttribEXT + GLuint vaobj + GLuint index + + + void glDisableVertexArrayEXT + GLuint vaobj + GLenum array + + + void glDisableVertexAttribAPPLE + GLuint index + GLenum pname + + + void glDisableVertexAttribArray + GLuint index + + + void glDisableVertexAttribArrayARB + GLuint index + + + + void glDisablei + GLenum target + GLuint index + + + void glDisableiEXT + GLenum target + GLuint index + + + + void glDisableiNV + GLenum target + GLuint index + + + + void glDisableiOES + GLenum target + GLuint index + + + + void glDiscardFramebufferEXT + GLenum target + GLsizei numAttachments + const GLenum *attachments + + + void glDispatchCompute + GLuint num_groups_x + GLuint num_groups_y + GLuint num_groups_z + + + void glDispatchComputeGroupSizeARB + GLuint num_groups_x + GLuint num_groups_y + GLuint num_groups_z + GLuint group_size_x + GLuint group_size_y + GLuint group_size_z + + + void glDispatchComputeIndirect + GLintptr indirect + + + void glDrawArrays + GLenum mode + GLint first + GLsizei count + + + + void glDrawArraysEXT + GLenum mode + GLint first + GLsizei count + + + + + void glDrawArraysIndirect + GLenum mode + const void *indirect + + + void glDrawArraysInstanced + GLenum mode + GLint first + GLsizei count + GLsizei instancecount + + + void glDrawArraysInstancedANGLE + GLenum mode + GLint first + GLsizei count + GLsizei primcount + + + + void glDrawArraysInstancedARB + GLenum mode + GLint first + GLsizei count + GLsizei primcount + + + + void glDrawArraysInstancedBaseInstance + GLenum mode + GLint first + GLsizei count + GLsizei instancecount + GLuint baseinstance + + + void glDrawArraysInstancedBaseInstanceEXT + GLenum mode + GLint first + GLsizei count + GLsizei instancecount + GLuint baseinstance + + + + void glDrawArraysInstancedEXT + GLenum mode + GLint start + GLsizei count + GLsizei primcount + + + + void glDrawArraysInstancedNV + GLenum mode + GLint first + GLsizei count + GLsizei primcount + + + + void glDrawBuffer + GLenum buf + + + + void glDrawBuffers + GLsizei n + const GLenum *bufs + + + + void glDrawBuffersARB + GLsizei n + const GLenum *bufs + + + + void glDrawBuffersATI + GLsizei n + const GLenum *bufs + + + + + void glDrawBuffersEXT + GLsizei n + const GLenum *bufs + + + + void glDrawBuffersIndexedEXT + GLint n + const GLenum *location + const GLint *indices + + + void glDrawBuffersNV + GLsizei n + const GLenum *bufs + + + void glDrawCommandsAddressNV + GLenum primitiveMode + const GLuint64 *indirects + const GLsizei *sizes + GLuint count + + + void glDrawCommandsNV + GLenum primitiveMode + GLuint buffer + const GLintptr *indirects + const GLsizei *sizes + GLuint count + + + void glDrawCommandsStatesAddressNV + const GLuint64 *indirects + const GLsizei *sizes + const GLuint *states + const GLuint *fbos + GLuint count + + + void glDrawCommandsStatesNV + GLuint buffer + const GLintptr *indirects + const GLsizei *sizes + const GLuint *states + const GLuint *fbos + GLuint count + + + void glDrawElementArrayAPPLE + GLenum mode + GLint first + GLsizei count + + + void glDrawElementArrayATI + GLenum mode + GLsizei count + + + void glDrawElements + GLenum mode + GLsizei count + GLenum type + const void *indices + + + void glDrawElementsBaseVertex + GLenum mode + GLsizei count + GLenum type + const void *indices + GLint basevertex + + + void glDrawElementsBaseVertexEXT + GLenum mode + GLsizei count + GLenum type + const void *indices + GLint basevertex + + + + void glDrawElementsBaseVertexOES + GLenum mode + GLsizei count + GLenum type + const void *indices + GLint basevertex + + + + void glDrawElementsIndirect + GLenum mode + GLenum type + const void *indirect + + + void glDrawElementsInstanced + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + + + void glDrawElementsInstancedANGLE + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei primcount + + + + void glDrawElementsInstancedARB + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei primcount + + + + void glDrawElementsInstancedBaseInstance + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + GLuint baseinstance + + + void glDrawElementsInstancedBaseInstanceEXT + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + GLuint baseinstance + + + + void glDrawElementsInstancedBaseVertex + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + GLint basevertex + + + void glDrawElementsInstancedBaseVertexBaseInstance + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + GLint basevertex + GLuint baseinstance + + + void glDrawElementsInstancedBaseVertexBaseInstanceEXT + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + GLint basevertex + GLuint baseinstance + + + + void glDrawElementsInstancedBaseVertexEXT + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + GLint basevertex + + + + void glDrawElementsInstancedBaseVertexOES + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei instancecount + GLint basevertex + + + + void glDrawElementsInstancedEXT + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei primcount + + + + void glDrawElementsInstancedNV + GLenum mode + GLsizei count + GLenum type + const void *indices + GLsizei primcount + + + + void glDrawMeshArraysSUN + GLenum mode + GLint first + GLsizei count + GLsizei width + + + void glDrawMeshTasksNV + GLuint first + GLuint count + + + void glDrawMeshTasksIndirectNV + GLintptr indirect + + + void glDrawPixels + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *pixels + + + + + void glDrawRangeElementArrayAPPLE + GLenum mode + GLuint start + GLuint end + GLint first + GLsizei count + + + void glDrawRangeElementArrayATI + GLenum mode + GLuint start + GLuint end + GLsizei count + + + void glDrawRangeElements + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const void *indices + + + void glDrawRangeElementsBaseVertex + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const void *indices + GLint basevertex + + + void glDrawRangeElementsBaseVertexEXT + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const void *indices + GLint basevertex + + + + void glDrawRangeElementsBaseVertexOES + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const void *indices + GLint basevertex + + + + void glDrawRangeElementsEXT + GLenum mode + GLuint start + GLuint end + GLsizei count + GLenum type + const void *indices + + + + void glDrawTexfOES + GLfloat x + GLfloat y + GLfloat z + GLfloat width + GLfloat height + + + + void glDrawTexfvOES + const GLfloat *coords + + + void glDrawTexiOES + GLint x + GLint y + GLint z + GLint width + GLint height + + + + void glDrawTexivOES + const GLint *coords + + + void glDrawTexsOES + GLshort x + GLshort y + GLshort z + GLshort width + GLshort height + + + + void glDrawTexsvOES + const GLshort *coords + + + void glDrawTextureNV + GLuint texture + GLuint sampler + GLfloat x0 + GLfloat y0 + GLfloat x1 + GLfloat y1 + GLfloat z + GLfloat s0 + GLfloat t0 + GLfloat s1 + GLfloat t1 + + + void glDrawTexxOES + GLfixed x + GLfixed y + GLfixed z + GLfixed width + GLfixed height + + + + void glDrawTexxvOES + const GLfixed *coords + + + void glDrawTransformFeedback + GLenum mode + GLuint id + + + void glDrawTransformFeedbackEXT + GLenum mode + GLuint id + + + + void glDrawTransformFeedbackInstanced + GLenum mode + GLuint id + GLsizei instancecount + + + void glDrawTransformFeedbackInstancedEXT + GLenum mode + GLuint id + GLsizei instancecount + + + + void glDrawTransformFeedbackNV + GLenum mode + GLuint id + + + + void glDrawTransformFeedbackStream + GLenum mode + GLuint id + GLuint stream + + + void glDrawTransformFeedbackStreamInstanced + GLenum mode + GLuint id + GLuint stream + GLsizei instancecount + + + void glEGLImageTargetRenderbufferStorageOES + GLenum target + GLeglImageOES image + + + void glEGLImageTargetTexStorageEXT + GLenum target + GLeglImageOES image + const GLint* attrib_list + + + void glEGLImageTargetTexture2DOES + GLenum target + GLeglImageOES image + + + void glEGLImageTargetTextureStorageEXT + GLuint texture + GLeglImageOES image + const GLint* attrib_list + + + void glEdgeFlag + GLboolean flag + + + + void glEdgeFlagFormatNV + GLsizei stride + + + void glEdgeFlagPointer + GLsizei stride + const void *pointer + + + void glEdgeFlagPointerEXT + GLsizei stride + GLsizei count + const GLboolean *pointer + + + void glEdgeFlagPointerListIBM + GLint stride + const GLboolean **pointer + GLint ptrstride + + + void glEdgeFlagv + const GLboolean *flag + + + + void glElementPointerAPPLE + GLenum type + const void *pointer + + + void glElementPointerATI + GLenum type + const void *pointer + + + void glEnable + GLenum cap + + + + void glEnableClientState + GLenum array + + + void glEnableClientStateIndexedEXT + GLenum array + GLuint index + + + void glEnableClientStateiEXT + GLenum array + GLuint index + + + void glEnableDriverControlQCOM + GLuint driverControl + + + void glEnableIndexedEXT + GLenum target + GLuint index + + + + + void glEnableVariantClientStateEXT + GLuint id + + + void glEnableVertexArrayAttrib + GLuint vaobj + GLuint index + + + void glEnableVertexArrayAttribEXT + GLuint vaobj + GLuint index + + + void glEnableVertexArrayEXT + GLuint vaobj + GLenum array + + + void glEnableVertexAttribAPPLE + GLuint index + GLenum pname + + + void glEnableVertexAttribArray + GLuint index + + + void glEnableVertexAttribArrayARB + GLuint index + + + + void glEnablei + GLenum target + GLuint index + + + void glEnableiEXT + GLenum target + GLuint index + + + + void glEnableiNV + GLenum target + GLuint index + + + + void glEnableiOES + GLenum target + GLuint index + + + + void glEnd + + + + void glEndConditionalRender + + + + void glEndConditionalRenderNV + + + + void glEndConditionalRenderNVX + + + + void glEndFragmentShaderATI + + + void glEndList + + + + void glEndOcclusionQueryNV + + + void glEndPerfMonitorAMD + GLuint monitor + + + void glEndPerfQueryINTEL + GLuint queryHandle + + + void glEndQuery + GLenum target + + + + void glEndQueryARB + GLenum target + + + + void glEndQueryEXT + GLenum target + + + void glEndQueryIndexed + GLenum target + GLuint index + + + void glEndTilingQCOM + GLbitfield preserveMask + + + void glEndTransformFeedback + + + + void glEndTransformFeedbackEXT + + + + void glEndTransformFeedbackNV + + + + void glEndVertexShaderEXT + + + void glEndVideoCaptureNV + GLuint video_capture_slot + + + void glEvalCoord1d + GLdouble u + + + + void glEvalCoord1dv + const GLdouble *u + + + + void glEvalCoord1f + GLfloat u + + + + void glEvalCoord1fv + const GLfloat *u + + + + void glEvalCoord1xOES + GLfixed u + + + void glEvalCoord1xvOES + const GLfixed *coords + + + void glEvalCoord2d + GLdouble u + GLdouble v + + + + void glEvalCoord2dv + const GLdouble *u + + + + void glEvalCoord2f + GLfloat u + GLfloat v + + + + void glEvalCoord2fv + const GLfloat *u + + + + void glEvalCoord2xOES + GLfixed u + GLfixed v + + + void glEvalCoord2xvOES + const GLfixed *coords + + + void glEvalMapsNV + GLenum target + GLenum mode + + + void glEvalMesh1 + GLenum mode + GLint i1 + GLint i2 + + + + void glEvalMesh2 + GLenum mode + GLint i1 + GLint i2 + GLint j1 + GLint j2 + + + + void glEvalPoint1 + GLint i + + + + void glEvalPoint2 + GLint i + GLint j + + + + void glEvaluateDepthValuesARB + + + void glExecuteProgramNV + GLenum target + GLuint id + const GLfloat *params + + + + void glExtGetBufferPointervQCOM + GLenum target + void **params + + + void glExtGetBuffersQCOM + GLuint *buffers + GLint maxBuffers + GLint *numBuffers + + + void glExtGetFramebuffersQCOM + GLuint *framebuffers + GLint maxFramebuffers + GLint *numFramebuffers + + + void glExtGetProgramBinarySourceQCOM + GLuint program + GLenum shadertype + GLchar *source + GLint *length + + + void glExtGetProgramsQCOM + GLuint *programs + GLint maxPrograms + GLint *numPrograms + + + void glExtGetRenderbuffersQCOM + GLuint *renderbuffers + GLint maxRenderbuffers + GLint *numRenderbuffers + + + void glExtGetShadersQCOM + GLuint *shaders + GLint maxShaders + GLint *numShaders + + + void glExtGetTexLevelParameterivQCOM + GLuint texture + GLenum face + GLint level + GLenum pname + GLint *params + + + void glExtGetTexSubImageQCOM + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + void *texels + + + void glExtGetTexturesQCOM + GLuint *textures + GLint maxTextures + GLint *numTextures + + + GLboolean glExtIsProgramBinaryQCOM + GLuint program + + + void glExtTexObjectStateOverrideiQCOM + GLenum target + GLenum pname + GLint param + + + void glExtractComponentEXT + GLuint res + GLuint src + GLuint num + + + void glFeedbackBuffer + GLsizei size + GLenum type + GLfloat *buffer + + + + void glFeedbackBufferxOES + GLsizei n + GLenum type + const GLfixed *buffer + + + GLsync glFenceSync + GLenum condition + GLbitfield flags + + + GLsync glFenceSyncAPPLE + GLenum condition + GLbitfield flags + + + + void glFinalCombinerInputNV + GLenum variable + GLenum input + GLenum mapping + GLenum componentUsage + + + + void glFinish + + + + GLint glFinishAsyncSGIX + GLuint *markerp + + + void glFinishFenceAPPLE + GLuint fence + + + void glFinishFenceNV + GLuint fence + + + + void glFinishObjectAPPLE + GLenum object + GLint name + + + void glFinishTextureSUNX + + + void glFlush + + + + void glFlushMappedBufferRange + GLenum target + GLintptr offset + GLsizeiptr length + + + void glFlushMappedBufferRangeAPPLE + GLenum target + GLintptr offset + GLsizeiptr size + + + + void glFlushMappedBufferRangeEXT + GLenum target + GLintptr offset + GLsizeiptr length + + + + void glFlushMappedNamedBufferRange + GLuint buffer + GLintptr offset + GLsizeiptr length + + + void glFlushMappedNamedBufferRangeEXT + GLuint buffer + GLintptr offset + GLsizeiptr length + + + void glFlushPixelDataRangeNV + GLenum target + + + void glFlushRasterSGIX + + + + void glFlushStaticDataIBM + GLenum target + + + void glFlushVertexArrayRangeAPPLE + GLsizei length + void *pointer + + + void glFlushVertexArrayRangeNV + + + void glFogCoordFormatNV + GLenum type + GLsizei stride + + + void glFogCoordPointer + GLenum type + GLsizei stride + const void *pointer + + + void glFogCoordPointerEXT + GLenum type + GLsizei stride + const void *pointer + + + + void glFogCoordPointerListIBM + GLenum type + GLint stride + const void **pointer + GLint ptrstride + + + void glFogCoordd + GLdouble coord + + + + void glFogCoorddEXT + GLdouble coord + + + + + void glFogCoorddv + const GLdouble *coord + + + + void glFogCoorddvEXT + const GLdouble *coord + + + + + void glFogCoordf + GLfloat coord + + + + void glFogCoordfEXT + GLfloat coord + + + + + void glFogCoordfv + const GLfloat *coord + + + + void glFogCoordfvEXT + const GLfloat *coord + + + + + void glFogCoordhNV + GLhalfNV fog + + + + void glFogCoordhvNV + const GLhalfNV *fog + + + + void glFogFuncSGIS + GLsizei n + const GLfloat *points + + + + void glFogf + GLenum pname + GLfloat param + + + + void glFogfv + GLenum pname + const GLfloat *params + + + + void glFogi + GLenum pname + GLint param + + + + void glFogiv + GLenum pname + const GLint *params + + + + void glFogx + GLenum pname + GLfixed param + + + void glFogxOES + GLenum pname + GLfixed param + + + void glFogxv + GLenum pname + const GLfixed *param + + + void glFogxvOES + GLenum pname + const GLfixed *param + + + void glFragmentColorMaterialSGIX + GLenum face + GLenum mode + + + void glFragmentCoverageColorNV + GLuint color + + + void glFragmentLightModelfSGIX + GLenum pname + GLfloat param + + + void glFragmentLightModelfvSGIX + GLenum pname + const GLfloat *params + + + void glFragmentLightModeliSGIX + GLenum pname + GLint param + + + void glFragmentLightModelivSGIX + GLenum pname + const GLint *params + + + void glFragmentLightfSGIX + GLenum light + GLenum pname + GLfloat param + + + void glFragmentLightfvSGIX + GLenum light + GLenum pname + const GLfloat *params + + + void glFragmentLightiSGIX + GLenum light + GLenum pname + GLint param + + + void glFragmentLightivSGIX + GLenum light + GLenum pname + const GLint *params + + + void glFragmentMaterialfSGIX + GLenum face + GLenum pname + GLfloat param + + + void glFragmentMaterialfvSGIX + GLenum face + GLenum pname + const GLfloat *params + + + void glFragmentMaterialiSGIX + GLenum face + GLenum pname + GLint param + + + void glFragmentMaterialivSGIX + GLenum face + GLenum pname + const GLint *params + + + void glFrameTerminatorGREMEDY + + + void glFrameZoomSGIX + GLint factor + + + + void glFramebufferDrawBufferEXT + GLuint framebuffer + GLenum mode + + + void glFramebufferDrawBuffersEXT + GLuint framebuffer + GLsizei n + const GLenum *bufs + + + void glFramebufferFetchBarrierEXT + + + void glFramebufferFetchBarrierQCOM + + + void glFramebufferFoveationConfigQCOM + GLuint framebuffer + GLuint numLayers + GLuint focalPointsPerLayer + GLuint requestedFeatures + GLuint *providedFeatures + + + void glFramebufferFoveationParametersQCOM + GLuint framebuffer + GLuint layer + GLuint focalPoint + GLfloat focalX + GLfloat focalY + GLfloat gainX + GLfloat gainY + GLfloat foveaArea + + + void glFramebufferParameteri + GLenum target + GLenum pname + GLint param + + + void glFramebufferPixelLocalStorageSizeEXT + GLuint target + GLsizei size + + + void glFramebufferReadBufferEXT + GLuint framebuffer + GLenum mode + + + void glFramebufferRenderbuffer + GLenum target + GLenum attachment + GLenum renderbuffertarget + GLuint renderbuffer + + + + void glFramebufferRenderbufferEXT + GLenum target + GLenum attachment + GLenum renderbuffertarget + GLuint renderbuffer + + + + + void glFramebufferRenderbufferOES + GLenum target + GLenum attachment + GLenum renderbuffertarget + GLuint renderbuffer + + + void glFramebufferSampleLocationsfvARB + GLenum target + GLuint start + GLsizei count + const GLfloat *v + + + void glFramebufferSampleLocationsfvNV + GLenum target + GLuint start + GLsizei count + const GLfloat *v + + + void glFramebufferSamplePositionsfvAMD + GLenum target + GLuint numsamples + GLuint pixelindex + const GLfloat *values + + + void glFramebufferTexture + GLenum target + GLenum attachment + GLuint texture + GLint level + + + void glFramebufferTexture1D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + + void glFramebufferTexture1DEXT + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + + + void glFramebufferTexture2D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + + void glFramebufferTexture2DEXT + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + + + void glFramebufferTexture2DDownsampleIMG + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLint xscale + GLint yscale + + + void glFramebufferTexture2DMultisampleEXT + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLsizei samples + + + void glFramebufferTexture2DMultisampleIMG + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLsizei samples + + + void glFramebufferTexture2DOES + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + void glFramebufferTexture3D + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLint zoffset + + + + void glFramebufferTexture3DEXT + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLint zoffset + + + + + void glFramebufferTexture3DOES + GLenum target + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLint zoffset + + + void glFramebufferTextureARB + GLenum target + GLenum attachment + GLuint texture + GLint level + + + + void glFramebufferTextureEXT + GLenum target + GLenum attachment + GLuint texture + GLint level + + + + void glFramebufferTextureFaceARB + GLenum target + GLenum attachment + GLuint texture + GLint level + GLenum face + + + void glFramebufferTextureFaceEXT + GLenum target + GLenum attachment + GLuint texture + GLint level + GLenum face + + + + void glFramebufferTextureLayer + GLenum target + GLenum attachment + GLuint texture + GLint level + GLint layer + + + + void glFramebufferTextureLayerARB + GLenum target + GLenum attachment + GLuint texture + GLint level + GLint layer + + + + void glFramebufferTextureLayerEXT + GLenum target + GLenum attachment + GLuint texture + GLint level + GLint layer + + + + void glFramebufferTextureLayerDownsampleIMG + GLenum target + GLenum attachment + GLuint texture + GLint level + GLint layer + GLint xscale + GLint yscale + + + void glFramebufferTextureMultisampleMultiviewOVR + GLenum target + GLenum attachment + GLuint texture + GLint level + GLsizei samples + GLint baseViewIndex + GLsizei numViews + + + void glFramebufferTextureMultiviewOVR + GLenum target + GLenum attachment + GLuint texture + GLint level + GLint baseViewIndex + GLsizei numViews + + + void glFramebufferTextureOES + GLenum target + GLenum attachment + GLuint texture + GLint level + + + + void glFreeObjectBufferATI + GLuint buffer + + + void glFrontFace + GLenum mode + + + + void glFrustum + GLdouble left + GLdouble right + GLdouble bottom + GLdouble top + GLdouble zNear + GLdouble zFar + + + + void glFrustumf + GLfloat l + GLfloat r + GLfloat b + GLfloat t + GLfloat n + GLfloat f + + + void glFrustumfOES + GLfloat l + GLfloat r + GLfloat b + GLfloat t + GLfloat n + GLfloat f + + + + void glFrustumx + GLfixed l + GLfixed r + GLfixed b + GLfixed t + GLfixed n + GLfixed f + + + void glFrustumxOES + GLfixed l + GLfixed r + GLfixed b + GLfixed t + GLfixed n + GLfixed f + + + GLuint glGenAsyncMarkersSGIX + GLsizei range + + + void glGenBuffers + GLsizei n + GLuint *buffers + + + void glGenBuffersARB + GLsizei n + GLuint *buffers + + + + void glGenFencesAPPLE + GLsizei n + GLuint *fences + + + void glGenFencesNV + GLsizei n + GLuint *fences + + + + GLuint glGenFragmentShadersATI + GLuint range + + + void glGenFramebuffers + GLsizei n + GLuint *framebuffers + + + + void glGenFramebuffersEXT + GLsizei n + GLuint *framebuffers + + + + + void glGenFramebuffersOES + GLsizei n + GLuint *framebuffers + + + GLuint glGenLists + GLsizei range + + + + void glGenNamesAMD + GLenum identifier + GLuint num + GLuint *names + + + void glGenOcclusionQueriesNV + GLsizei n + GLuint *ids + + + GLuint glGenPathsNV + GLsizei range + + + void glGenPerfMonitorsAMD + GLsizei n + GLuint *monitors + + + void glGenProgramPipelines + GLsizei n + GLuint *pipelines + + + void glGenProgramPipelinesEXT + GLsizei n + GLuint *pipelines + + + void glGenProgramsARB + GLsizei n + GLuint *programs + + + + void glGenProgramsNV + GLsizei n + GLuint *programs + + + + + void glGenQueries + GLsizei n + GLuint *ids + + + + void glGenQueriesARB + GLsizei n + GLuint *ids + + + + void glGenQueriesEXT + GLsizei n + GLuint *ids + + + void glGenQueryResourceTagNV + GLsizei n + GLint *tagIds + + + void glGenRenderbuffers + GLsizei n + GLuint *renderbuffers + + + + void glGenRenderbuffersEXT + GLsizei n + GLuint *renderbuffers + + + + + void glGenRenderbuffersOES + GLsizei n + GLuint *renderbuffers + + + void glGenSamplers + GLsizei count + GLuint *samplers + + + void glGenSemaphoresEXT + GLsizei n + GLuint *semaphores + + + GLuint glGenSymbolsEXT + GLenum datatype + GLenum storagetype + GLenum range + GLuint components + + + void glGenTextures + GLsizei n + GLuint *textures + + + + void glGenTexturesEXT + GLsizei n + GLuint *textures + + + + void glGenTransformFeedbacks + GLsizei n + GLuint *ids + + + void glGenTransformFeedbacksNV + GLsizei n + GLuint *ids + + + + void glGenVertexArrays + GLsizei n + GLuint *arrays + + + + void glGenVertexArraysAPPLE + GLsizei n + GLuint *arrays + + + + void glGenVertexArraysOES + GLsizei n + GLuint *arrays + + + + GLuint glGenVertexShadersEXT + GLuint range + + + void glGenerateMipmap + GLenum target + + + + void glGenerateMipmapEXT + GLenum target + + + + + void glGenerateMipmapOES + GLenum target + + + void glGenerateMultiTexMipmapEXT + GLenum texunit + GLenum target + + + void glGenerateTextureMipmap + GLuint texture + + + void glGenerateTextureMipmapEXT + GLuint texture + GLenum target + + + void glGetActiveAtomicCounterBufferiv + GLuint program + GLuint bufferIndex + GLenum pname + GLint *params + + + void glGetActiveAttrib + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + void glGetActiveAttribARB + GLhandleARB programObj + GLuint index + GLsizei maxLength + GLsizei *length + GLint *size + GLenum *type + GLcharARB *name + + + + void glGetActiveSubroutineName + GLuint program + GLenum shadertype + GLuint index + GLsizei bufSize + GLsizei *length + GLchar *name + + + void glGetActiveSubroutineUniformName + GLuint program + GLenum shadertype + GLuint index + GLsizei bufSize + GLsizei *length + GLchar *name + + + void glGetActiveSubroutineUniformiv + GLuint program + GLenum shadertype + GLuint index + GLenum pname + GLint *values + + + void glGetActiveUniform + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLint *size + GLenum *type + GLchar *name + + + void glGetActiveUniformARB + GLhandleARB programObj + GLuint index + GLsizei maxLength + GLsizei *length + GLint *size + GLenum *type + GLcharARB *name + + + + void glGetActiveUniformBlockName + GLuint program + GLuint uniformBlockIndex + GLsizei bufSize + GLsizei *length + GLchar *uniformBlockName + + + + void glGetActiveUniformBlockiv + GLuint program + GLuint uniformBlockIndex + GLenum pname + GLint *params + + + + void glGetActiveUniformName + GLuint program + GLuint uniformIndex + GLsizei bufSize + GLsizei *length + GLchar *uniformName + + + + void glGetActiveUniformsiv + GLuint program + GLsizei uniformCount + const GLuint *uniformIndices + GLenum pname + GLint *params + + + + void glGetActiveVaryingNV + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLsizei *size + GLenum *type + GLchar *name + + + void glGetArrayObjectfvATI + GLenum array + GLenum pname + GLfloat *params + + + void glGetArrayObjectivATI + GLenum array + GLenum pname + GLint *params + + + void glGetAttachedObjectsARB + GLhandleARB containerObj + GLsizei maxCount + GLsizei *count + GLhandleARB *obj + + + void glGetAttachedShaders + GLuint program + GLsizei maxCount + GLsizei *count + GLuint *shaders + + + GLint glGetAttribLocation + GLuint program + const GLchar *name + + + GLint glGetAttribLocationARB + GLhandleARB programObj + const GLcharARB *name + + + + void glGetBooleanIndexedvEXT + GLenum target + GLuint index + GLboolean *data + + + + + void glGetBooleani_v + GLenum target + GLuint index + GLboolean *data + + + void glGetBooleanv + GLenum pname + GLboolean *data + + + + void glGetBufferParameteri64v + GLenum target + GLenum pname + GLint64 *params + + + void glGetBufferParameteriv + GLenum target + GLenum pname + GLint *params + + + void glGetBufferParameterivARB + GLenum target + GLenum pname + GLint *params + + + + void glGetBufferParameterui64vNV + GLenum target + GLenum pname + GLuint64EXT *params + + + void glGetBufferPointerv + GLenum target + GLenum pname + void **params + + + void glGetBufferPointervARB + GLenum target + GLenum pname + void **params + + + + void glGetBufferPointervOES + GLenum target + GLenum pname + void **params + + + + void glGetBufferSubData + GLenum target + GLintptr offset + GLsizeiptr size + void *data + + + void glGetBufferSubDataARB + GLenum target + GLintptrARB offset + GLsizeiptrARB size + void *data + + + + void glGetClipPlane + GLenum plane + GLdouble *equation + + + + void glGetClipPlanef + GLenum plane + GLfloat *equation + + + void glGetClipPlanefOES + GLenum plane + GLfloat *equation + + + + void glGetClipPlanex + GLenum plane + GLfixed *equation + + + void glGetClipPlanexOES + GLenum plane + GLfixed *equation + + + void glGetColorTable + GLenum target + GLenum format + GLenum type + void *table + + + + + void glGetColorTableEXT + GLenum target + GLenum format + GLenum type + void *data + + + + void glGetColorTableParameterfv + GLenum target + GLenum pname + GLfloat *params + + + + void glGetColorTableParameterfvEXT + GLenum target + GLenum pname + GLfloat *params + + + + void glGetColorTableParameterfvSGI + GLenum target + GLenum pname + GLfloat *params + + + + void glGetColorTableParameteriv + GLenum target + GLenum pname + GLint *params + + + + void glGetColorTableParameterivEXT + GLenum target + GLenum pname + GLint *params + + + + void glGetColorTableParameterivSGI + GLenum target + GLenum pname + GLint *params + + + + void glGetColorTableSGI + GLenum target + GLenum format + GLenum type + void *table + + + + void glGetCombinerInputParameterfvNV + GLenum stage + GLenum portion + GLenum variable + GLenum pname + GLfloat *params + + + + void glGetCombinerInputParameterivNV + GLenum stage + GLenum portion + GLenum variable + GLenum pname + GLint *params + + + + void glGetCombinerOutputParameterfvNV + GLenum stage + GLenum portion + GLenum pname + GLfloat *params + + + + void glGetCombinerOutputParameterivNV + GLenum stage + GLenum portion + GLenum pname + GLint *params + + + + void glGetCombinerStageParameterfvNV + GLenum stage + GLenum pname + GLfloat *params + + + GLuint glGetCommandHeaderNV + GLenum tokenID + GLuint size + + + void glGetCompressedMultiTexImageEXT + GLenum texunit + GLenum target + GLint lod + void *img + + + void glGetCompressedTexImage + GLenum target + GLint level + void *img + + + + + void glGetCompressedTexImageARB + GLenum target + GLint level + void *img + + + + + void glGetCompressedTextureImage + GLuint texture + GLint level + GLsizei bufSize + void *pixels + + + void glGetCompressedTextureImageEXT + GLuint texture + GLenum target + GLint lod + void *img + + + void glGetCompressedTextureSubImage + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLsizei bufSize + void *pixels + + + void glGetConvolutionFilter + GLenum target + GLenum format + GLenum type + void *image + + + + + void glGetConvolutionFilterEXT + GLenum target + GLenum format + GLenum type + void *image + + + + void glGetConvolutionParameterfv + GLenum target + GLenum pname + GLfloat *params + + + + void glGetConvolutionParameterfvEXT + GLenum target + GLenum pname + GLfloat *params + + + + void glGetConvolutionParameteriv + GLenum target + GLenum pname + GLint *params + + + + void glGetConvolutionParameterivEXT + GLenum target + GLenum pname + GLint *params + + + + void glGetConvolutionParameterxvOES + GLenum target + GLenum pname + GLfixed *params + + + void glGetCoverageModulationTableNV + GLsizei bufSize + GLfloat *v + + + GLuint glGetDebugMessageLog + GLuint count + GLsizei bufSize + GLenum *sources + GLenum *types + GLuint *ids + GLenum *severities + GLsizei *lengths + GLchar *messageLog + + + GLuint glGetDebugMessageLogAMD + GLuint count + GLsizei bufSize + GLenum *categories + GLuint *severities + GLuint *ids + GLsizei *lengths + GLchar *message + + + GLuint glGetDebugMessageLogARB + GLuint count + GLsizei bufSize + GLenum *sources + GLenum *types + GLuint *ids + GLenum *severities + GLsizei *lengths + GLchar *messageLog + + + + GLuint glGetDebugMessageLogKHR + GLuint count + GLsizei bufSize + GLenum *sources + GLenum *types + GLuint *ids + GLenum *severities + GLsizei *lengths + GLchar *messageLog + + + + void glGetDetailTexFuncSGIS + GLenum target + GLfloat *points + + + + void glGetDoubleIndexedvEXT + GLenum target + GLuint index + GLdouble *data + + + + void glGetDoublei_v + GLenum target + GLuint index + GLdouble *data + + + void glGetDoublei_vEXT + GLenum pname + GLuint index + GLdouble *params + + + + void glGetDoublev + GLenum pname + GLdouble *data + + + + void glGetDriverControlStringQCOM + GLuint driverControl + GLsizei bufSize + GLsizei *length + GLchar *driverControlString + + + void glGetDriverControlsQCOM + GLint *num + GLsizei size + GLuint *driverControls + + + GLenum glGetError + + + + void glGetFenceivNV + GLuint fence + GLenum pname + GLint *params + + + + void glGetFinalCombinerInputParameterfvNV + GLenum variable + GLenum pname + GLfloat *params + + + + void glGetFinalCombinerInputParameterivNV + GLenum variable + GLenum pname + GLint *params + + + + void glGetFirstPerfQueryIdINTEL + GLuint *queryId + + + void glGetFixedv + GLenum pname + GLfixed *params + + + void glGetFixedvOES + GLenum pname + GLfixed *params + + + void glGetFloatIndexedvEXT + GLenum target + GLuint index + GLfloat *data + + + + void glGetFloati_v + GLenum target + GLuint index + GLfloat *data + + + void glGetFloati_vEXT + GLenum pname + GLuint index + GLfloat *params + + + + void glGetFloati_vNV + GLenum target + GLuint index + GLfloat *data + + + + void glGetFloati_vOES + GLenum target + GLuint index + GLfloat *data + + + + void glGetFloatv + GLenum pname + GLfloat *data + + + + void glGetFogFuncSGIS + GLfloat *points + + + GLint glGetFragDataIndex + GLuint program + const GLchar *name + + + GLint glGetFragDataIndexEXT + GLuint program + const GLchar *name + + + + GLint glGetFragDataLocation + GLuint program + const GLchar *name + + + GLint glGetFragDataLocationEXT + GLuint program + const GLchar *name + + + + void glGetFragmentLightfvSGIX + GLenum light + GLenum pname + GLfloat *params + + + void glGetFragmentLightivSGIX + GLenum light + GLenum pname + GLint *params + + + void glGetFragmentMaterialfvSGIX + GLenum face + GLenum pname + GLfloat *params + + + void glGetFragmentMaterialivSGIX + GLenum face + GLenum pname + GLint *params + + + void glGetFramebufferAttachmentParameteriv + GLenum target + GLenum attachment + GLenum pname + GLint *params + + + + void glGetFramebufferAttachmentParameterivEXT + GLenum target + GLenum attachment + GLenum pname + GLint *params + + + + + void glGetFramebufferAttachmentParameterivOES + GLenum target + GLenum attachment + GLenum pname + GLint *params + + + void glGetFramebufferParameterfvAMD + GLenum target + GLenum pname + GLuint numsamples + GLuint pixelindex + GLsizei size + GLfloat *values + + + void glGetFramebufferParameteriv + GLenum target + GLenum pname + GLint *params + + + void glGetFramebufferParameterivEXT + GLuint framebuffer + GLenum pname + GLint *params + + + GLsizei glGetFramebufferPixelLocalStorageSizeEXT + GLuint target + + + GLenum glGetGraphicsResetStatus + + + GLenum glGetGraphicsResetStatusARB + + + GLenum glGetGraphicsResetStatusEXT + + + + GLenum glGetGraphicsResetStatusKHR + + + + GLhandleARB glGetHandleARB + GLenum pname + + + void glGetHistogram + GLenum target + GLboolean reset + GLenum format + GLenum type + void *values + + + + + void glGetHistogramEXT + GLenum target + GLboolean reset + GLenum format + GLenum type + void *values + + + + void glGetHistogramParameterfv + GLenum target + GLenum pname + GLfloat *params + + + + void glGetHistogramParameterfvEXT + GLenum target + GLenum pname + GLfloat *params + + + + void glGetHistogramParameteriv + GLenum target + GLenum pname + GLint *params + + + + void glGetHistogramParameterivEXT + GLenum target + GLenum pname + GLint *params + + + + void glGetHistogramParameterxvOES + GLenum target + GLenum pname + GLfixed *params + + + GLuint64 glGetImageHandleARB + GLuint texture + GLint level + GLboolean layered + GLint layer + GLenum format + + + GLuint64 glGetImageHandleNV + GLuint texture + GLint level + GLboolean layered + GLint layer + GLenum format + + + void glGetImageTransformParameterfvHP + GLenum target + GLenum pname + GLfloat *params + + + void glGetImageTransformParameterivHP + GLenum target + GLenum pname + GLint *params + + + void glGetInfoLogARB + GLhandleARB obj + GLsizei maxLength + GLsizei *length + GLcharARB *infoLog + + + GLint glGetInstrumentsSGIX + + + + void glGetInteger64i_v + GLenum target + GLuint index + GLint64 *data + + + void glGetInteger64v + GLenum pname + GLint64 *data + + + void glGetInteger64vAPPLE + GLenum pname + GLint64 *params + + + + void glGetInteger64vEXT + GLenum pname + GLint64 *data + + + + void glGetIntegerIndexedvEXT + GLenum target + GLuint index + GLint *data + + + + + void glGetIntegeri_v + GLenum target + GLuint index + GLint *data + + + void glGetIntegeri_vEXT + GLenum target + GLuint index + GLint *data + + + void glGetIntegerui64i_vNV + GLenum value + GLuint index + GLuint64EXT *result + + + void glGetIntegerui64vNV + GLenum value + GLuint64EXT *result + + + void glGetIntegerv + GLenum pname + GLint *data + + + + void glGetInternalformatSampleivNV + GLenum target + GLenum internalformat + GLsizei samples + GLenum pname + GLsizei count + GLint *params + + + void glGetInternalformati64v + GLenum target + GLenum internalformat + GLenum pname + GLsizei count + GLint64 *params + + + void glGetInternalformativ + GLenum target + GLenum internalformat + GLenum pname + GLsizei count + GLint *params + + + void glGetInvariantBooleanvEXT + GLuint id + GLenum value + GLboolean *data + + + void glGetInvariantFloatvEXT + GLuint id + GLenum value + GLfloat *data + + + void glGetInvariantIntegervEXT + GLuint id + GLenum value + GLint *data + + + void glGetLightfv + GLenum light + GLenum pname + GLfloat *params + + + + void glGetLightiv + GLenum light + GLenum pname + GLint *params + + + + void glGetLightxOES + GLenum light + GLenum pname + GLfixed *params + + + void glGetLightxv + GLenum light + GLenum pname + GLfixed *params + + + void glGetLightxvOES + GLenum light + GLenum pname + GLfixed *params + + + void glGetListParameterfvSGIX + GLuint list + GLenum pname + GLfloat *params + + + void glGetListParameterivSGIX + GLuint list + GLenum pname + GLint *params + + + void glGetLocalConstantBooleanvEXT + GLuint id + GLenum value + GLboolean *data + + + void glGetLocalConstantFloatvEXT + GLuint id + GLenum value + GLfloat *data + + + void glGetLocalConstantIntegervEXT + GLuint id + GLenum value + GLint *data + + + void glGetMapAttribParameterfvNV + GLenum target + GLuint index + GLenum pname + GLfloat *params + + + void glGetMapAttribParameterivNV + GLenum target + GLuint index + GLenum pname + GLint *params + + + void glGetMapControlPointsNV + GLenum target + GLuint index + GLenum type + GLsizei ustride + GLsizei vstride + GLboolean packed + void *points + + + void glGetMapParameterfvNV + GLenum target + GLenum pname + GLfloat *params + + + void glGetMapParameterivNV + GLenum target + GLenum pname + GLint *params + + + void glGetMapdv + GLenum target + GLenum query + GLdouble *v + + + + void glGetMapfv + GLenum target + GLenum query + GLfloat *v + + + + void glGetMapiv + GLenum target + GLenum query + GLint *v + + + + void glGetMapxvOES + GLenum target + GLenum query + GLfixed *v + + + void glGetMaterialfv + GLenum face + GLenum pname + GLfloat *params + + + + void glGetMaterialiv + GLenum face + GLenum pname + GLint *params + + + + void glGetMaterialxOES + GLenum face + GLenum pname + GLfixed param + + + void glGetMaterialxv + GLenum face + GLenum pname + GLfixed *params + + + void glGetMaterialxvOES + GLenum face + GLenum pname + GLfixed *params + + + void glGetMemoryObjectDetachedResourcesuivNV + GLuint memory + GLenum pname + GLint first + GLsizei count + GLuint *params + + + void glGetMemoryObjectParameterivEXT + GLuint memoryObject + GLenum pname + GLint *params + + + void glGetMinmax + GLenum target + GLboolean reset + GLenum format + GLenum type + void *values + + + + + void glGetMinmaxEXT + GLenum target + GLboolean reset + GLenum format + GLenum type + void *values + + + + void glGetMinmaxParameterfv + GLenum target + GLenum pname + GLfloat *params + + + + void glGetMinmaxParameterfvEXT + GLenum target + GLenum pname + GLfloat *params + + + + void glGetMinmaxParameteriv + GLenum target + GLenum pname + GLint *params + + + + void glGetMinmaxParameterivEXT + GLenum target + GLenum pname + GLint *params + + + + void glGetMultiTexEnvfvEXT + GLenum texunit + GLenum target + GLenum pname + GLfloat *params + + + void glGetMultiTexEnvivEXT + GLenum texunit + GLenum target + GLenum pname + GLint *params + + + void glGetMultiTexGendvEXT + GLenum texunit + GLenum coord + GLenum pname + GLdouble *params + + + void glGetMultiTexGenfvEXT + GLenum texunit + GLenum coord + GLenum pname + GLfloat *params + + + void glGetMultiTexGenivEXT + GLenum texunit + GLenum coord + GLenum pname + GLint *params + + + void glGetMultiTexImageEXT + GLenum texunit + GLenum target + GLint level + GLenum format + GLenum type + void *pixels + + + void glGetMultiTexLevelParameterfvEXT + GLenum texunit + GLenum target + GLint level + GLenum pname + GLfloat *params + + + void glGetMultiTexLevelParameterivEXT + GLenum texunit + GLenum target + GLint level + GLenum pname + GLint *params + + + void glGetMultiTexParameterIivEXT + GLenum texunit + GLenum target + GLenum pname + GLint *params + + + void glGetMultiTexParameterIuivEXT + GLenum texunit + GLenum target + GLenum pname + GLuint *params + + + void glGetMultiTexParameterfvEXT + GLenum texunit + GLenum target + GLenum pname + GLfloat *params + + + void glGetMultiTexParameterivEXT + GLenum texunit + GLenum target + GLenum pname + GLint *params + + + void glGetMultisamplefv + GLenum pname + GLuint index + GLfloat *val + + + void glGetMultisamplefvNV + GLenum pname + GLuint index + GLfloat *val + + + + void glGetNamedBufferParameteri64v + GLuint buffer + GLenum pname + GLint64 *params + + + void glGetNamedBufferParameteriv + GLuint buffer + GLenum pname + GLint *params + + + void glGetNamedBufferParameterivEXT + GLuint buffer + GLenum pname + GLint *params + + + void glGetNamedBufferParameterui64vNV + GLuint buffer + GLenum pname + GLuint64EXT *params + + + void glGetNamedBufferPointerv + GLuint buffer + GLenum pname + void **params + + + void glGetNamedBufferPointervEXT + GLuint buffer + GLenum pname + void **params + + + void glGetNamedBufferSubData + GLuint buffer + GLintptr offset + GLsizeiptr size + void *data + + + void glGetNamedBufferSubDataEXT + GLuint buffer + GLintptr offset + GLsizeiptr size + void *data + + + void glGetNamedFramebufferParameterfvAMD + GLuint framebuffer + GLenum pname + GLuint numsamples + GLuint pixelindex + GLsizei size + GLfloat *values + + + void glGetNamedFramebufferAttachmentParameteriv + GLuint framebuffer + GLenum attachment + GLenum pname + GLint *params + + + void glGetNamedFramebufferAttachmentParameterivEXT + GLuint framebuffer + GLenum attachment + GLenum pname + GLint *params + + + void glGetNamedFramebufferParameteriv + GLuint framebuffer + GLenum pname + GLint *param + + + void glGetNamedFramebufferParameterivEXT + GLuint framebuffer + GLenum pname + GLint *params + + + void glGetNamedProgramLocalParameterIivEXT + GLuint program + GLenum target + GLuint index + GLint *params + + + void glGetNamedProgramLocalParameterIuivEXT + GLuint program + GLenum target + GLuint index + GLuint *params + + + void glGetNamedProgramLocalParameterdvEXT + GLuint program + GLenum target + GLuint index + GLdouble *params + + + void glGetNamedProgramLocalParameterfvEXT + GLuint program + GLenum target + GLuint index + GLfloat *params + + + void glGetNamedProgramStringEXT + GLuint program + GLenum target + GLenum pname + void *string + + + void glGetNamedProgramivEXT + GLuint program + GLenum target + GLenum pname + GLint *params + + + void glGetNamedRenderbufferParameteriv + GLuint renderbuffer + GLenum pname + GLint *params + + + void glGetNamedRenderbufferParameterivEXT + GLuint renderbuffer + GLenum pname + GLint *params + + + void glGetNamedStringARB + GLint namelen + const GLchar *name + GLsizei bufSize + GLint *stringlen + GLchar *string + + + void glGetNamedStringivARB + GLint namelen + const GLchar *name + GLenum pname + GLint *params + + + void glGetNextPerfQueryIdINTEL + GLuint queryId + GLuint *nextQueryId + + + void glGetObjectBufferfvATI + GLuint buffer + GLenum pname + GLfloat *params + + + void glGetObjectBufferivATI + GLuint buffer + GLenum pname + GLint *params + + + void glGetObjectLabel + GLenum identifier + GLuint name + GLsizei bufSize + GLsizei *length + GLchar *label + + + void glGetObjectLabelEXT + GLenum type + GLuint object + GLsizei bufSize + GLsizei *length + GLchar *label + + + void glGetObjectLabelKHR + GLenum identifier + GLuint name + GLsizei bufSize + GLsizei *length + GLchar *label + + + + void glGetObjectParameterfvARB + GLhandleARB obj + GLenum pname + GLfloat *params + + + void glGetObjectParameterivAPPLE + GLenum objectType + GLuint name + GLenum pname + GLint *params + + + void glGetObjectParameterivARB + GLhandleARB obj + GLenum pname + GLint *params + + + void glGetObjectPtrLabel + const void *ptr + GLsizei bufSize + GLsizei *length + GLchar *label + + + void glGetObjectPtrLabelKHR + const void *ptr + GLsizei bufSize + GLsizei *length + GLchar *label + + + + void glGetOcclusionQueryivNV + GLuint id + GLenum pname + GLint *params + + + void glGetOcclusionQueryuivNV + GLuint id + GLenum pname + GLuint *params + + + void glGetPathColorGenfvNV + GLenum color + GLenum pname + GLfloat *value + + + void glGetPathColorGenivNV + GLenum color + GLenum pname + GLint *value + + + void glGetPathCommandsNV + GLuint path + GLubyte *commands + + + void glGetPathCoordsNV + GLuint path + GLfloat *coords + + + void glGetPathDashArrayNV + GLuint path + GLfloat *dashArray + + + GLfloat glGetPathLengthNV + GLuint path + GLsizei startSegment + GLsizei numSegments + + + void glGetPathMetricRangeNV + GLbitfield metricQueryMask + GLuint firstPathName + GLsizei numPaths + GLsizei stride + GLfloat *metrics + + + void glGetPathMetricsNV + GLbitfield metricQueryMask + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLsizei stride + GLfloat *metrics + + + void glGetPathParameterfvNV + GLuint path + GLenum pname + GLfloat *value + + + void glGetPathParameterivNV + GLuint path + GLenum pname + GLint *value + + + void glGetPathSpacingNV + GLenum pathListMode + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLfloat advanceScale + GLfloat kerningScale + GLenum transformType + GLfloat *returnedSpacing + + + void glGetPathTexGenfvNV + GLenum texCoordSet + GLenum pname + GLfloat *value + + + void glGetPathTexGenivNV + GLenum texCoordSet + GLenum pname + GLint *value + + + void glGetPerfCounterInfoINTEL + GLuint queryId + GLuint counterId + GLuint counterNameLength + GLchar *counterName + GLuint counterDescLength + GLchar *counterDesc + GLuint *counterOffset + GLuint *counterDataSize + GLuint *counterTypeEnum + GLuint *counterDataTypeEnum + GLuint64 *rawCounterMaxValue + + + void glGetPerfMonitorCounterDataAMD + GLuint monitor + GLenum pname + GLsizei dataSize + GLuint *data + GLint *bytesWritten + + + void glGetPerfMonitorCounterInfoAMD + GLuint group + GLuint counter + GLenum pname + void *data + + + void glGetPerfMonitorCounterStringAMD + GLuint group + GLuint counter + GLsizei bufSize + GLsizei *length + GLchar *counterString + + + void glGetPerfMonitorCountersAMD + GLuint group + GLint *numCounters + GLint *maxActiveCounters + GLsizei counterSize + GLuint *counters + + + void glGetPerfMonitorGroupStringAMD + GLuint group + GLsizei bufSize + GLsizei *length + GLchar *groupString + + + void glGetPerfMonitorGroupsAMD + GLint *numGroups + GLsizei groupsSize + GLuint *groups + + + void glGetPerfQueryDataINTEL + GLuint queryHandle + GLuint flags + GLsizei dataSize + void *data + GLuint *bytesWritten + + + void glGetPerfQueryIdByNameINTEL + GLchar *queryName + GLuint *queryId + + + void glGetPerfQueryInfoINTEL + GLuint queryId + GLuint queryNameLength + GLchar *queryName + GLuint *dataSize + GLuint *noCounters + GLuint *noInstances + GLuint *capsMask + + + void glGetPixelMapfv + GLenum map + GLfloat *values + + + + + void glGetPixelMapuiv + GLenum map + GLuint *values + + + + + void glGetPixelMapusv + GLenum map + GLushort *values + + + + + void glGetPixelMapxv + GLenum map + GLint size + GLfixed *values + + + void glGetPixelTexGenParameterfvSGIS + GLenum pname + GLfloat *params + + + void glGetPixelTexGenParameterivSGIS + GLenum pname + GLint *params + + + void glGetPixelTransformParameterfvEXT + GLenum target + GLenum pname + GLfloat *params + + + + void glGetPixelTransformParameterivEXT + GLenum target + GLenum pname + GLint *params + + + + void glGetPointerIndexedvEXT + GLenum target + GLuint index + void **data + + + void glGetPointeri_vEXT + GLenum pname + GLuint index + void **params + + + void glGetPointerv + GLenum pname + void **params + + + + void glGetPointervEXT + GLenum pname + void **params + + + + void glGetPointervKHR + GLenum pname + void **params + + + + void glGetPolygonStipple + GLubyte *mask + + + + + void glGetProgramBinary + GLuint program + GLsizei bufSize + GLsizei *length + GLenum *binaryFormat + void *binary + + + void glGetProgramBinaryOES + GLuint program + GLsizei bufSize + GLsizei *length + GLenum *binaryFormat + void *binary + + + + void glGetProgramEnvParameterIivNV + GLenum target + GLuint index + GLint *params + + + void glGetProgramEnvParameterIuivNV + GLenum target + GLuint index + GLuint *params + + + void glGetProgramEnvParameterdvARB + GLenum target + GLuint index + GLdouble *params + + + void glGetProgramEnvParameterfvARB + GLenum target + GLuint index + GLfloat *params + + + void glGetProgramInfoLog + GLuint program + GLsizei bufSize + GLsizei *length + GLchar *infoLog + + + + void glGetProgramInterfaceiv + GLuint program + GLenum programInterface + GLenum pname + GLint *params + + + void glGetProgramLocalParameterIivNV + GLenum target + GLuint index + GLint *params + + + void glGetProgramLocalParameterIuivNV + GLenum target + GLuint index + GLuint *params + + + void glGetProgramLocalParameterdvARB + GLenum target + GLuint index + GLdouble *params + + + void glGetProgramLocalParameterfvARB + GLenum target + GLuint index + GLfloat *params + + + void glGetProgramNamedParameterdvNV + GLuint id + GLsizei len + const GLubyte *name + GLdouble *params + + + + void glGetProgramNamedParameterfvNV + GLuint id + GLsizei len + const GLubyte *name + GLfloat *params + + + + void glGetProgramParameterdvNV + GLenum target + GLuint index + GLenum pname + GLdouble *params + + + + void glGetProgramParameterfvNV + GLenum target + GLuint index + GLenum pname + GLfloat *params + + + + void glGetProgramPipelineInfoLog + GLuint pipeline + GLsizei bufSize + GLsizei *length + GLchar *infoLog + + + void glGetProgramPipelineInfoLogEXT + GLuint pipeline + GLsizei bufSize + GLsizei *length + GLchar *infoLog + + + void glGetProgramPipelineiv + GLuint pipeline + GLenum pname + GLint *params + + + void glGetProgramPipelineivEXT + GLuint pipeline + GLenum pname + GLint *params + + + GLuint glGetProgramResourceIndex + GLuint program + GLenum programInterface + const GLchar *name + + + GLint glGetProgramResourceLocation + GLuint program + GLenum programInterface + const GLchar *name + + + GLint glGetProgramResourceLocationIndex + GLuint program + GLenum programInterface + const GLchar *name + + + GLint glGetProgramResourceLocationIndexEXT + GLuint program + GLenum programInterface + const GLchar *name + + + void glGetProgramResourceName + GLuint program + GLenum programInterface + GLuint index + GLsizei bufSize + GLsizei *length + GLchar *name + + + void glGetProgramResourcefvNV + GLuint program + GLenum programInterface + GLuint index + GLsizei propCount + const GLenum *props + GLsizei count + GLsizei *length + GLfloat *params + + + void glGetProgramResourceiv + GLuint program + GLenum programInterface + GLuint index + GLsizei propCount + const GLenum *props + GLsizei count + GLsizei *length + GLint *params + + + void glGetProgramStageiv + GLuint program + GLenum shadertype + GLenum pname + GLint *values + + + void glGetProgramStringARB + GLenum target + GLenum pname + void *string + + + void glGetProgramStringNV + GLuint id + GLenum pname + GLubyte *program + + + + void glGetProgramSubroutineParameteruivNV + GLenum target + GLuint index + GLuint *param + + + void glGetProgramiv + GLuint program + GLenum pname + GLint *params + + + + void glGetProgramivARB + GLenum target + GLenum pname + GLint *params + + + void glGetProgramivNV + GLuint id + GLenum pname + GLint *params + + + + void glGetQueryBufferObjecti64v + GLuint id + GLuint buffer + GLenum pname + GLintptr offset + + + void glGetQueryBufferObjectiv + GLuint id + GLuint buffer + GLenum pname + GLintptr offset + + + void glGetQueryBufferObjectui64v + GLuint id + GLuint buffer + GLenum pname + GLintptr offset + + + void glGetQueryBufferObjectuiv + GLuint id + GLuint buffer + GLenum pname + GLintptr offset + + + void glGetQueryIndexediv + GLenum target + GLuint index + GLenum pname + GLint *params + + + void glGetQueryObjecti64v + GLuint id + GLenum pname + GLint64 *params + + + void glGetQueryObjecti64vEXT + GLuint id + GLenum pname + GLint64 *params + + + + + void glGetQueryObjectiv + GLuint id + GLenum pname + GLint *params + + + + void glGetQueryObjectivARB + GLuint id + GLenum pname + GLint *params + + + + void glGetQueryObjectivEXT + GLuint id + GLenum pname + GLint *params + + + + void glGetQueryObjectui64v + GLuint id + GLenum pname + GLuint64 *params + + + void glGetQueryObjectui64vEXT + GLuint id + GLenum pname + GLuint64 *params + + + + + void glGetQueryObjectuiv + GLuint id + GLenum pname + GLuint *params + + + + void glGetQueryObjectuivARB + GLuint id + GLenum pname + GLuint *params + + + + void glGetQueryObjectuivEXT + GLuint id + GLenum pname + GLuint *params + + + void glGetQueryiv + GLenum target + GLenum pname + GLint *params + + + + void glGetQueryivARB + GLenum target + GLenum pname + GLint *params + + + + void glGetQueryivEXT + GLenum target + GLenum pname + GLint *params + + + void glGetRenderbufferParameteriv + GLenum target + GLenum pname + GLint *params + + + + void glGetRenderbufferParameterivEXT + GLenum target + GLenum pname + GLint *params + + + + + void glGetRenderbufferParameterivOES + GLenum target + GLenum pname + GLint *params + + + void glGetSamplerParameterIiv + GLuint sampler + GLenum pname + GLint *params + + + void glGetSamplerParameterIivEXT + GLuint sampler + GLenum pname + GLint *params + + + + void glGetSamplerParameterIivOES + GLuint sampler + GLenum pname + GLint *params + + + + void glGetSamplerParameterIuiv + GLuint sampler + GLenum pname + GLuint *params + + + void glGetSamplerParameterIuivEXT + GLuint sampler + GLenum pname + GLuint *params + + + + void glGetSamplerParameterIuivOES + GLuint sampler + GLenum pname + GLuint *params + + + + void glGetSamplerParameterfv + GLuint sampler + GLenum pname + GLfloat *params + + + void glGetSamplerParameteriv + GLuint sampler + GLenum pname + GLint *params + + + void glGetSemaphoreParameterivNV + GLuint semaphore + GLenum pname + GLint *params + + + void glGetSemaphoreParameterui64vEXT + GLuint semaphore + GLenum pname + GLuint64 *params + + + void glGetSeparableFilter + GLenum target + GLenum format + GLenum type + void *row + void *column + void *span + + + + + void glGetSeparableFilterEXT + GLenum target + GLenum format + GLenum type + void *row + void *column + void *span + + + + void glGetShaderInfoLog + GLuint shader + GLsizei bufSize + GLsizei *length + GLchar *infoLog + + + + void glGetShaderPrecisionFormat + GLenum shadertype + GLenum precisiontype + GLint *range + GLint *precision + + + void glGetShaderSource + GLuint shader + GLsizei bufSize + GLsizei *length + GLchar *source + + + void glGetShaderSourceARB + GLhandleARB obj + GLsizei maxLength + GLsizei *length + GLcharARB *source + + + + void glGetShaderiv + GLuint shader + GLenum pname + GLint *params + + + + void glGetShadingRateImagePaletteNV + GLuint viewport + GLuint entry + GLenum *rate + + + void glGetShadingRateSampleLocationivNV + GLenum rate + GLuint samples + GLuint index + GLint *location + + + void glGetSharpenTexFuncSGIS + GLenum target + GLfloat *points + + + + GLushort glGetStageIndexNV + GLenum shadertype + + + + const GLubyte *glGetString + GLenum name + + + + const GLubyte *glGetStringi + GLenum name + GLuint index + + + + GLuint glGetSubroutineIndex + GLuint program + GLenum shadertype + const GLchar *name + + + GLint glGetSubroutineUniformLocation + GLuint program + GLenum shadertype + const GLchar *name + + + void glGetSynciv + GLsync sync + GLenum pname + GLsizei count + GLsizei *length + GLint *values + + + void glGetSyncivAPPLE + GLsync sync + GLenum pname + GLsizei count + GLsizei *length + GLint *values + + + + void glGetTexBumpParameterfvATI + GLenum pname + GLfloat *param + + + void glGetTexBumpParameterivATI + GLenum pname + GLint *param + + + void glGetTexEnvfv + GLenum target + GLenum pname + GLfloat *params + + + + void glGetTexEnviv + GLenum target + GLenum pname + GLint *params + + + + void glGetTexEnvxv + GLenum target + GLenum pname + GLfixed *params + + + void glGetTexEnvxvOES + GLenum target + GLenum pname + GLfixed *params + + + void glGetTexFilterFuncSGIS + GLenum target + GLenum filter + GLfloat *weights + + + + void glGetTexGendv + GLenum coord + GLenum pname + GLdouble *params + + + + void glGetTexGenfv + GLenum coord + GLenum pname + GLfloat *params + + + + void glGetTexGenfvOES + GLenum coord + GLenum pname + GLfloat *params + + + void glGetTexGeniv + GLenum coord + GLenum pname + GLint *params + + + + void glGetTexGenivOES + GLenum coord + GLenum pname + GLint *params + + + void glGetTexGenxvOES + GLenum coord + GLenum pname + GLfixed *params + + + void glGetTexImage + GLenum target + GLint level + GLenum format + GLenum type + void *pixels + + + + + void glGetTexLevelParameterfv + GLenum target + GLint level + GLenum pname + GLfloat *params + + + + void glGetTexLevelParameteriv + GLenum target + GLint level + GLenum pname + GLint *params + + + + void glGetTexLevelParameterxvOES + GLenum target + GLint level + GLenum pname + GLfixed *params + + + void glGetTexParameterIiv + GLenum target + GLenum pname + GLint *params + + + + void glGetTexParameterIivEXT + GLenum target + GLenum pname + GLint *params + + + + void glGetTexParameterIivOES + GLenum target + GLenum pname + GLint *params + + + + void glGetTexParameterIuiv + GLenum target + GLenum pname + GLuint *params + + + + void glGetTexParameterIuivEXT + GLenum target + GLenum pname + GLuint *params + + + + void glGetTexParameterIuivOES + GLenum target + GLenum pname + GLuint *params + + + + void glGetTexParameterPointervAPPLE + GLenum target + GLenum pname + void **params + + + void glGetTexParameterfv + GLenum target + GLenum pname + GLfloat *params + + + + void glGetTexParameteriv + GLenum target + GLenum pname + GLint *params + + + + void glGetTexParameterxv + GLenum target + GLenum pname + GLfixed *params + + + void glGetTexParameterxvOES + GLenum target + GLenum pname + GLfixed *params + + + GLuint64 glGetTextureHandleARB + GLuint texture + + + GLuint64 glGetTextureHandleIMG + GLuint texture + + + + GLuint64 glGetTextureHandleNV + GLuint texture + + + void glGetTextureImage + GLuint texture + GLint level + GLenum format + GLenum type + GLsizei bufSize + void *pixels + + + void glGetTextureImageEXT + GLuint texture + GLenum target + GLint level + GLenum format + GLenum type + void *pixels + + + void glGetTextureLevelParameterfv + GLuint texture + GLint level + GLenum pname + GLfloat *params + + + void glGetTextureLevelParameterfvEXT + GLuint texture + GLenum target + GLint level + GLenum pname + GLfloat *params + + + void glGetTextureLevelParameteriv + GLuint texture + GLint level + GLenum pname + GLint *params + + + void glGetTextureLevelParameterivEXT + GLuint texture + GLenum target + GLint level + GLenum pname + GLint *params + + + void glGetTextureParameterIiv + GLuint texture + GLenum pname + GLint *params + + + void glGetTextureParameterIivEXT + GLuint texture + GLenum target + GLenum pname + GLint *params + + + void glGetTextureParameterIuiv + GLuint texture + GLenum pname + GLuint *params + + + void glGetTextureParameterIuivEXT + GLuint texture + GLenum target + GLenum pname + GLuint *params + + + void glGetTextureParameterfv + GLuint texture + GLenum pname + GLfloat *params + + + void glGetTextureParameterfvEXT + GLuint texture + GLenum target + GLenum pname + GLfloat *params + + + void glGetTextureParameteriv + GLuint texture + GLenum pname + GLint *params + + + void glGetTextureParameterivEXT + GLuint texture + GLenum target + GLenum pname + GLint *params + + + GLuint64 glGetTextureSamplerHandleARB + GLuint texture + GLuint sampler + + + GLuint64 glGetTextureSamplerHandleIMG + GLuint texture + GLuint sampler + + + + GLuint64 glGetTextureSamplerHandleNV + GLuint texture + GLuint sampler + + + void glGetTextureSubImage + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + GLsizei bufSize + void *pixels + + + void glGetTrackMatrixivNV + GLenum target + GLuint address + GLenum pname + GLint *params + + + + void glGetTransformFeedbackVarying + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLsizei *size + GLenum *type + GLchar *name + + + + void glGetTransformFeedbackVaryingEXT + GLuint program + GLuint index + GLsizei bufSize + GLsizei *length + GLsizei *size + GLenum *type + GLchar *name + + + + void glGetTransformFeedbackVaryingNV + GLuint program + GLuint index + GLint *location + + + void glGetTransformFeedbacki64_v + GLuint xfb + GLenum pname + GLuint index + GLint64 *param + + + void glGetTransformFeedbacki_v + GLuint xfb + GLenum pname + GLuint index + GLint *param + + + void glGetTransformFeedbackiv + GLuint xfb + GLenum pname + GLint *param + + + void glGetTranslatedShaderSourceANGLE + GLuint shader + GLsizei bufSize + GLsizei *length + GLchar *source + + + GLuint glGetUniformBlockIndex + GLuint program + const GLchar *uniformBlockName + + + + GLint glGetUniformBufferSizeEXT + GLuint program + GLint location + + + void glGetUniformIndices + GLuint program + GLsizei uniformCount + const GLchar *const*uniformNames + GLuint *uniformIndices + + + + GLint glGetUniformLocation + GLuint program + const GLchar *name + + + GLint glGetUniformLocationARB + GLhandleARB programObj + const GLcharARB *name + + + + GLintptr glGetUniformOffsetEXT + GLuint program + GLint location + + + void glGetUniformSubroutineuiv + GLenum shadertype + GLint location + GLuint *params + + + void glGetUniformdv + GLuint program + GLint location + GLdouble *params + + + void glGetUniformfv + GLuint program + GLint location + GLfloat *params + + + void glGetUniformfvARB + GLhandleARB programObj + GLint location + GLfloat *params + + + + void glGetUniformi64vARB + GLuint program + GLint location + GLint64 *params + + + void glGetUniformi64vNV + GLuint program + GLint location + GLint64EXT *params + + + void glGetUniformiv + GLuint program + GLint location + GLint *params + + + void glGetUniformivARB + GLhandleARB programObj + GLint location + GLint *params + + + + void glGetUniformui64vARB + GLuint program + GLint location + GLuint64 *params + + + void glGetUniformui64vNV + GLuint program + GLint location + GLuint64EXT *params + + + void glGetUniformuiv + GLuint program + GLint location + GLuint *params + + + void glGetUniformuivEXT + GLuint program + GLint location + GLuint *params + + + + void glGetUnsignedBytevEXT + GLenum pname + GLubyte *data + + + void glGetUnsignedBytei_vEXT + GLenum target + GLuint index + GLubyte *data + + + void glGetVariantArrayObjectfvATI + GLuint id + GLenum pname + GLfloat *params + + + void glGetVariantArrayObjectivATI + GLuint id + GLenum pname + GLint *params + + + void glGetVariantBooleanvEXT + GLuint id + GLenum value + GLboolean *data + + + void glGetVariantFloatvEXT + GLuint id + GLenum value + GLfloat *data + + + void glGetVariantIntegervEXT + GLuint id + GLenum value + GLint *data + + + void glGetVariantPointervEXT + GLuint id + GLenum value + void **data + + + GLint glGetVaryingLocationNV + GLuint program + const GLchar *name + + + void glGetVertexArrayIndexed64iv + GLuint vaobj + GLuint index + GLenum pname + GLint64 *param + + + void glGetVertexArrayIndexediv + GLuint vaobj + GLuint index + GLenum pname + GLint *param + + + void glGetVertexArrayIntegeri_vEXT + GLuint vaobj + GLuint index + GLenum pname + GLint *param + + + void glGetVertexArrayIntegervEXT + GLuint vaobj + GLenum pname + GLint *param + + + void glGetVertexArrayPointeri_vEXT + GLuint vaobj + GLuint index + GLenum pname + void **param + + + void glGetVertexArrayPointervEXT + GLuint vaobj + GLenum pname + void **param + + + void glGetVertexArrayiv + GLuint vaobj + GLenum pname + GLint *param + + + void glGetVertexAttribArrayObjectfvATI + GLuint index + GLenum pname + GLfloat *params + + + void glGetVertexAttribArrayObjectivATI + GLuint index + GLenum pname + GLint *params + + + void glGetVertexAttribIiv + GLuint index + GLenum pname + GLint *params + + + void glGetVertexAttribIivEXT + GLuint index + GLenum pname + GLint *params + + + + void glGetVertexAttribIuiv + GLuint index + GLenum pname + GLuint *params + + + void glGetVertexAttribIuivEXT + GLuint index + GLenum pname + GLuint *params + + + + void glGetVertexAttribLdv + GLuint index + GLenum pname + GLdouble *params + + + void glGetVertexAttribLdvEXT + GLuint index + GLenum pname + GLdouble *params + + + + void glGetVertexAttribLi64vNV + GLuint index + GLenum pname + GLint64EXT *params + + + void glGetVertexAttribLui64vARB + GLuint index + GLenum pname + GLuint64EXT *params + + + void glGetVertexAttribLui64vNV + GLuint index + GLenum pname + GLuint64EXT *params + + + void glGetVertexAttribPointerv + GLuint index + GLenum pname + void **pointer + + + + void glGetVertexAttribPointervARB + GLuint index + GLenum pname + void **pointer + + + + void glGetVertexAttribPointervNV + GLuint index + GLenum pname + void **pointer + + + + void glGetVertexAttribdv + GLuint index + GLenum pname + GLdouble *params + + + + void glGetVertexAttribdvARB + GLuint index + GLenum pname + GLdouble *params + + + + + void glGetVertexAttribdvNV + GLuint index + GLenum pname + GLdouble *params + + + + + void glGetVertexAttribfv + GLuint index + GLenum pname + GLfloat *params + + + + void glGetVertexAttribfvARB + GLuint index + GLenum pname + GLfloat *params + + + + + void glGetVertexAttribfvNV + GLuint index + GLenum pname + GLfloat *params + + + + + void glGetVertexAttribiv + GLuint index + GLenum pname + GLint *params + + + + void glGetVertexAttribivARB + GLuint index + GLenum pname + GLint *params + + + + + void glGetVertexAttribivNV + GLuint index + GLenum pname + GLint *params + + + + + void glGetVideoCaptureStreamdvNV + GLuint video_capture_slot + GLuint stream + GLenum pname + GLdouble *params + + + void glGetVideoCaptureStreamfvNV + GLuint video_capture_slot + GLuint stream + GLenum pname + GLfloat *params + + + void glGetVideoCaptureStreamivNV + GLuint video_capture_slot + GLuint stream + GLenum pname + GLint *params + + + void glGetVideoCaptureivNV + GLuint video_capture_slot + GLenum pname + GLint *params + + + void glGetVideoi64vNV + GLuint video_slot + GLenum pname + GLint64EXT *params + + + void glGetVideoivNV + GLuint video_slot + GLenum pname + GLint *params + + + void glGetVideoui64vNV + GLuint video_slot + GLenum pname + GLuint64EXT *params + + + void glGetVideouivNV + GLuint video_slot + GLenum pname + GLuint *params + + + void glGetnColorTable + GLenum target + GLenum format + GLenum type + GLsizei bufSize + void *table + + + void glGetnColorTableARB + GLenum target + GLenum format + GLenum type + GLsizei bufSize + void *table + + + void glGetnCompressedTexImage + GLenum target + GLint lod + GLsizei bufSize + void *pixels + + + void glGetnCompressedTexImageARB + GLenum target + GLint lod + GLsizei bufSize + void *img + + + void glGetnConvolutionFilter + GLenum target + GLenum format + GLenum type + GLsizei bufSize + void *image + + + void glGetnConvolutionFilterARB + GLenum target + GLenum format + GLenum type + GLsizei bufSize + void *image + + + void glGetnHistogram + GLenum target + GLboolean reset + GLenum format + GLenum type + GLsizei bufSize + void *values + + + void glGetnHistogramARB + GLenum target + GLboolean reset + GLenum format + GLenum type + GLsizei bufSize + void *values + + + void glGetnMapdv + GLenum target + GLenum query + GLsizei bufSize + GLdouble *v + + + void glGetnMapdvARB + GLenum target + GLenum query + GLsizei bufSize + GLdouble *v + + + void glGetnMapfv + GLenum target + GLenum query + GLsizei bufSize + GLfloat *v + + + void glGetnMapfvARB + GLenum target + GLenum query + GLsizei bufSize + GLfloat *v + + + void glGetnMapiv + GLenum target + GLenum query + GLsizei bufSize + GLint *v + + + void glGetnMapivARB + GLenum target + GLenum query + GLsizei bufSize + GLint *v + + + void glGetnMinmax + GLenum target + GLboolean reset + GLenum format + GLenum type + GLsizei bufSize + void *values + + + void glGetnMinmaxARB + GLenum target + GLboolean reset + GLenum format + GLenum type + GLsizei bufSize + void *values + + + void glGetnPixelMapfv + GLenum map + GLsizei bufSize + GLfloat *values + + + void glGetnPixelMapfvARB + GLenum map + GLsizei bufSize + GLfloat *values + + + void glGetnPixelMapuiv + GLenum map + GLsizei bufSize + GLuint *values + + + void glGetnPixelMapuivARB + GLenum map + GLsizei bufSize + GLuint *values + + + void glGetnPixelMapusv + GLenum map + GLsizei bufSize + GLushort *values + + + void glGetnPixelMapusvARB + GLenum map + GLsizei bufSize + GLushort *values + + + void glGetnPolygonStipple + GLsizei bufSize + GLubyte *pattern + + + void glGetnPolygonStippleARB + GLsizei bufSize + GLubyte *pattern + + + void glGetnSeparableFilter + GLenum target + GLenum format + GLenum type + GLsizei rowBufSize + void *row + GLsizei columnBufSize + void *column + void *span + + + void glGetnSeparableFilterARB + GLenum target + GLenum format + GLenum type + GLsizei rowBufSize + void *row + GLsizei columnBufSize + void *column + void *span + + + void glGetnTexImage + GLenum target + GLint level + GLenum format + GLenum type + GLsizei bufSize + void *pixels + + + void glGetnTexImageARB + GLenum target + GLint level + GLenum format + GLenum type + GLsizei bufSize + void *img + + + void glGetnUniformdv + GLuint program + GLint location + GLsizei bufSize + GLdouble *params + + + void glGetnUniformdvARB + GLuint program + GLint location + GLsizei bufSize + GLdouble *params + + + void glGetnUniformfv + GLuint program + GLint location + GLsizei bufSize + GLfloat *params + + + void glGetnUniformfvARB + GLuint program + GLint location + GLsizei bufSize + GLfloat *params + + + void glGetnUniformfvEXT + GLuint program + GLint location + GLsizei bufSize + GLfloat *params + + + + void glGetnUniformfvKHR + GLuint program + GLint location + GLsizei bufSize + GLfloat *params + + + + void glGetnUniformi64vARB + GLuint program + GLint location + GLsizei bufSize + GLint64 *params + + + void glGetnUniformiv + GLuint program + GLint location + GLsizei bufSize + GLint *params + + + void glGetnUniformivARB + GLuint program + GLint location + GLsizei bufSize + GLint *params + + + void glGetnUniformivEXT + GLuint program + GLint location + GLsizei bufSize + GLint *params + + + + void glGetnUniformivKHR + GLuint program + GLint location + GLsizei bufSize + GLint *params + + + + void glGetnUniformui64vARB + GLuint program + GLint location + GLsizei bufSize + GLuint64 *params + + + void glGetnUniformuiv + GLuint program + GLint location + GLsizei bufSize + GLuint *params + + + void glGetnUniformuivARB + GLuint program + GLint location + GLsizei bufSize + GLuint *params + + + void glGetnUniformuivKHR + GLuint program + GLint location + GLsizei bufSize + GLuint *params + + + + void glGlobalAlphaFactorbSUN + GLbyte factor + + + void glGlobalAlphaFactordSUN + GLdouble factor + + + void glGlobalAlphaFactorfSUN + GLfloat factor + + + void glGlobalAlphaFactoriSUN + GLint factor + + + void glGlobalAlphaFactorsSUN + GLshort factor + + + void glGlobalAlphaFactorubSUN + GLubyte factor + + + void glGlobalAlphaFactoruiSUN + GLuint factor + + + void glGlobalAlphaFactorusSUN + GLushort factor + + + void glHint + GLenum target + GLenum mode + + + + void glHintPGI + GLenum target + GLint mode + + + void glHistogram + GLenum target + GLsizei width + GLenum internalformat + GLboolean sink + + + + void glHistogramEXT + GLenum target + GLsizei width + GLenum internalformat + GLboolean sink + + + + + void glIglooInterfaceSGIX + GLenum pname + const void *params + + + + void glImageTransformParameterfHP + GLenum target + GLenum pname + GLfloat param + + + void glImageTransformParameterfvHP + GLenum target + GLenum pname + const GLfloat *params + + + void glImageTransformParameteriHP + GLenum target + GLenum pname + GLint param + + + void glImageTransformParameterivHP + GLenum target + GLenum pname + const GLint *params + + + void glImportMemoryFdEXT + GLuint memory + GLuint64 size + GLenum handleType + GLint fd + + + void glImportMemoryWin32HandleEXT + GLuint memory + GLuint64 size + GLenum handleType + void *handle + + + void glImportMemoryWin32NameEXT + GLuint memory + GLuint64 size + GLenum handleType + const void *name + + + void glImportSemaphoreFdEXT + GLuint semaphore + GLenum handleType + GLint fd + + + void glImportSemaphoreWin32HandleEXT + GLuint semaphore + GLenum handleType + void *handle + + + void glImportSemaphoreWin32NameEXT + GLuint semaphore + GLenum handleType + const void *name + + + GLsync glImportSyncEXT + GLenum external_sync_type + GLintptr external_sync + GLbitfield flags + + + void glIndexFormatNV + GLenum type + GLsizei stride + + + void glIndexFuncEXT + GLenum func + GLclampf ref + + + void glIndexMask + GLuint mask + + + + void glIndexMaterialEXT + GLenum face + GLenum mode + + + void glIndexPointer + GLenum type + GLsizei stride + const void *pointer + + + void glIndexPointerEXT + GLenum type + GLsizei stride + GLsizei count + const void *pointer + + + void glIndexPointerListIBM + GLenum type + GLint stride + const void **pointer + GLint ptrstride + + + void glIndexd + GLdouble c + + + + void glIndexdv + const GLdouble *c + + + + void glIndexf + GLfloat c + + + + void glIndexfv + const GLfloat *c + + + + void glIndexi + GLint c + + + + void glIndexiv + const GLint *c + + + + void glIndexs + GLshort c + + + + void glIndexsv + const GLshort *c + + + + void glIndexub + GLubyte c + + + + void glIndexubv + const GLubyte *c + + + + void glIndexxOES + GLfixed component + + + void glIndexxvOES + const GLfixed *component + + + void glInitNames + + + + void glInsertComponentEXT + GLuint res + GLuint src + GLuint num + + + void glInsertEventMarkerEXT + GLsizei length + const GLchar *marker + + + void glInstrumentsBufferSGIX + GLsizei size + GLint *buffer + + + + void glInterleavedArrays + GLenum format + GLsizei stride + const void *pointer + + + void glInterpolatePathsNV + GLuint resultPath + GLuint pathA + GLuint pathB + GLfloat weight + + + void glInvalidateBufferData + GLuint buffer + + + void glInvalidateBufferSubData + GLuint buffer + GLintptr offset + GLsizeiptr length + + + void glInvalidateFramebuffer + GLenum target + GLsizei numAttachments + const GLenum *attachments + + + void glInvalidateNamedFramebufferData + GLuint framebuffer + GLsizei numAttachments + const GLenum *attachments + + + void glInvalidateNamedFramebufferSubData + GLuint framebuffer + GLsizei numAttachments + const GLenum *attachments + GLint x + GLint y + GLsizei width + GLsizei height + + + void glInvalidateSubFramebuffer + GLenum target + GLsizei numAttachments + const GLenum *attachments + GLint x + GLint y + GLsizei width + GLsizei height + + + void glInvalidateTexImage + GLuint texture + GLint level + + + void glInvalidateTexSubImage + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + + + GLboolean glIsAsyncMarkerSGIX + GLuint marker + + + GLboolean glIsBuffer + GLuint buffer + + + GLboolean glIsBufferARB + GLuint buffer + + + + GLboolean glIsBufferResidentNV + GLenum target + + + GLboolean glIsCommandListNV + GLuint list + + + GLboolean glIsEnabled + GLenum cap + + + + GLboolean glIsEnabledIndexedEXT + GLenum target + GLuint index + + + + + GLboolean glIsEnabledi + GLenum target + GLuint index + + + GLboolean glIsEnablediEXT + GLenum target + GLuint index + + + + GLboolean glIsEnablediNV + GLenum target + GLuint index + + + + GLboolean glIsEnablediOES + GLenum target + GLuint index + + + + GLboolean glIsFenceAPPLE + GLuint fence + + + GLboolean glIsFenceNV + GLuint fence + + + + GLboolean glIsFramebuffer + GLuint framebuffer + + + + GLboolean glIsFramebufferEXT + GLuint framebuffer + + + + + GLboolean glIsFramebufferOES + GLuint framebuffer + + + GLboolean glIsImageHandleResidentARB + GLuint64 handle + + + GLboolean glIsImageHandleResidentNV + GLuint64 handle + + + GLboolean glIsList + GLuint list + + + + GLboolean glIsMemoryObjectEXT + GLuint memoryObject + + + GLboolean glIsNameAMD + GLenum identifier + GLuint name + + + GLboolean glIsNamedBufferResidentNV + GLuint buffer + + + GLboolean glIsNamedStringARB + GLint namelen + const GLchar *name + + + GLboolean glIsObjectBufferATI + GLuint buffer + + + GLboolean glIsOcclusionQueryNV + GLuint id + + + GLboolean glIsPathNV + GLuint path + + + GLboolean glIsPointInFillPathNV + GLuint path + GLuint mask + GLfloat x + GLfloat y + + + GLboolean glIsPointInStrokePathNV + GLuint path + GLfloat x + GLfloat y + + + GLboolean glIsProgram + GLuint program + + + + GLboolean glIsProgramARB + GLuint program + + + + GLboolean glIsProgramNV + GLuint id + + + + + GLboolean glIsProgramPipeline + GLuint pipeline + + + GLboolean glIsProgramPipelineEXT + GLuint pipeline + + + GLboolean glIsQuery + GLuint id + + + + GLboolean glIsQueryARB + GLuint id + + + + GLboolean glIsQueryEXT + GLuint id + + + GLboolean glIsRenderbuffer + GLuint renderbuffer + + + + GLboolean glIsRenderbufferEXT + GLuint renderbuffer + + + + + GLboolean glIsRenderbufferOES + GLuint renderbuffer + + + GLboolean glIsSemaphoreEXT + GLuint semaphore + + + GLboolean glIsSampler + GLuint sampler + + + GLboolean glIsShader + GLuint shader + + + + GLboolean glIsStateNV + GLuint state + + + GLboolean glIsSync + GLsync sync + + + GLboolean glIsSyncAPPLE + GLsync sync + + + + GLboolean glIsTexture + GLuint texture + + + + GLboolean glIsTextureEXT + GLuint texture + + + + GLboolean glIsTextureHandleResidentARB + GLuint64 handle + + + GLboolean glIsTextureHandleResidentNV + GLuint64 handle + + + GLboolean glIsTransformFeedback + GLuint id + + + GLboolean glIsTransformFeedbackNV + GLuint id + + + + GLboolean glIsVariantEnabledEXT + GLuint id + GLenum cap + + + GLboolean glIsVertexArray + GLuint array + + + + GLboolean glIsVertexArrayAPPLE + GLuint array + + + + GLboolean glIsVertexArrayOES + GLuint array + + + + GLboolean glIsVertexAttribEnabledAPPLE + GLuint index + GLenum pname + + + void glLGPUCopyImageSubDataNVX + GLuint sourceGpu + GLbitfield destinationGpuMask + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srxY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei width + GLsizei height + GLsizei depth + + + void glLGPUInterlockNVX + + + void glLGPUNamedBufferSubDataNVX + GLbitfield gpuMask + GLuint buffer + GLintptr offset + GLsizeiptr size + const void *data + + + void glLabelObjectEXT + GLenum type + GLuint object + GLsizei length + const GLchar *label + + + void glLightEnviSGIX + GLenum pname + GLint param + + + void glLightModelf + GLenum pname + GLfloat param + + + + void glLightModelfv + GLenum pname + const GLfloat *params + + + + void glLightModeli + GLenum pname + GLint param + + + + void glLightModeliv + GLenum pname + const GLint *params + + + + void glLightModelx + GLenum pname + GLfixed param + + + void glLightModelxOES + GLenum pname + GLfixed param + + + void glLightModelxv + GLenum pname + const GLfixed *param + + + void glLightModelxvOES + GLenum pname + const GLfixed *param + + + void glLightf + GLenum light + GLenum pname + GLfloat param + + + + void glLightfv + GLenum light + GLenum pname + const GLfloat *params + + + + void glLighti + GLenum light + GLenum pname + GLint param + + + + void glLightiv + GLenum light + GLenum pname + const GLint *params + + + + void glLightx + GLenum light + GLenum pname + GLfixed param + + + void glLightxOES + GLenum light + GLenum pname + GLfixed param + + + void glLightxv + GLenum light + GLenum pname + const GLfixed *params + + + void glLightxvOES + GLenum light + GLenum pname + const GLfixed *params + + + void glLineStipple + GLint factor + GLushort pattern + + + + void glLineWidth + GLfloat width + + + + void glLineWidthx + GLfixed width + + + void glLineWidthxOES + GLfixed width + + + void glLinkProgram + GLuint program + + + void glLinkProgramARB + GLhandleARB programObj + + + + void glListBase + GLuint base + + + + void glListDrawCommandsStatesClientNV + GLuint list + GLuint segment + const void **indirects + const GLsizei *sizes + const GLuint *states + const GLuint *fbos + GLuint count + + + void glListParameterfSGIX + GLuint list + GLenum pname + GLfloat param + + + + void glListParameterfvSGIX + GLuint list + GLenum pname + const GLfloat *params + + + + void glListParameteriSGIX + GLuint list + GLenum pname + GLint param + + + + void glListParameterivSGIX + GLuint list + GLenum pname + const GLint *params + + + + void glLoadIdentity + + + + void glLoadIdentityDeformationMapSGIX + GLbitfield mask + + + + void glLoadMatrixd + const GLdouble *m + + + + void glLoadMatrixf + const GLfloat *m + + + + void glLoadMatrixx + const GLfixed *m + + + void glLoadMatrixxOES + const GLfixed *m + + + void glLoadName + GLuint name + + + + void glLoadPaletteFromModelViewMatrixOES + + + void glLoadProgramNV + GLenum target + GLuint id + GLsizei len + const GLubyte *program + + + + void glLoadTransposeMatrixd + const GLdouble *m + + + void glLoadTransposeMatrixdARB + const GLdouble *m + + + + void glLoadTransposeMatrixf + const GLfloat *m + + + void glLoadTransposeMatrixfARB + const GLfloat *m + + + + void glLoadTransposeMatrixxOES + const GLfixed *m + + + void glLockArraysEXT + GLint first + GLsizei count + + + void glLogicOp + GLenum opcode + + + + void glMakeBufferNonResidentNV + GLenum target + + + void glMakeBufferResidentNV + GLenum target + GLenum access + + + void glMakeImageHandleNonResidentARB + GLuint64 handle + + + void glMakeImageHandleNonResidentNV + GLuint64 handle + + + void glMakeImageHandleResidentARB + GLuint64 handle + GLenum access + + + void glMakeImageHandleResidentNV + GLuint64 handle + GLenum access + + + void glMakeNamedBufferNonResidentNV + GLuint buffer + + + void glMakeNamedBufferResidentNV + GLuint buffer + GLenum access + + + void glMakeTextureHandleNonResidentARB + GLuint64 handle + + + void glMakeTextureHandleNonResidentNV + GLuint64 handle + + + void glMakeTextureHandleResidentARB + GLuint64 handle + + + void glMakeTextureHandleResidentNV + GLuint64 handle + + + void glMap1d + GLenum target + GLdouble u1 + GLdouble u2 + GLint stride + GLint order + const GLdouble *points + + + + void glMap1f + GLenum target + GLfloat u1 + GLfloat u2 + GLint stride + GLint order + const GLfloat *points + + + + void glMap1xOES + GLenum target + GLfixed u1 + GLfixed u2 + GLint stride + GLint order + GLfixed points + + + void glMap2d + GLenum target + GLdouble u1 + GLdouble u2 + GLint ustride + GLint uorder + GLdouble v1 + GLdouble v2 + GLint vstride + GLint vorder + const GLdouble *points + + + + void glMap2f + GLenum target + GLfloat u1 + GLfloat u2 + GLint ustride + GLint uorder + GLfloat v1 + GLfloat v2 + GLint vstride + GLint vorder + const GLfloat *points + + + + void glMap2xOES + GLenum target + GLfixed u1 + GLfixed u2 + GLint ustride + GLint uorder + GLfixed v1 + GLfixed v2 + GLint vstride + GLint vorder + GLfixed points + + + void *glMapBuffer + GLenum target + GLenum access + + + void *glMapBufferARB + GLenum target + GLenum access + + + + void *glMapBufferOES + GLenum target + GLenum access + + + + void *glMapBufferRange + GLenum target + GLintptr offset + GLsizeiptr length + GLbitfield access + + + + void *glMapBufferRangeEXT + GLenum target + GLintptr offset + GLsizeiptr length + GLbitfield access + + + + void glMapControlPointsNV + GLenum target + GLuint index + GLenum type + GLsizei ustride + GLsizei vstride + GLint uorder + GLint vorder + GLboolean packed + const void *points + + + void glMapGrid1d + GLint un + GLdouble u1 + GLdouble u2 + + + + void glMapGrid1f + GLint un + GLfloat u1 + GLfloat u2 + + + + void glMapGrid1xOES + GLint n + GLfixed u1 + GLfixed u2 + + + void glMapGrid2d + GLint un + GLdouble u1 + GLdouble u2 + GLint vn + GLdouble v1 + GLdouble v2 + + + + void glMapGrid2f + GLint un + GLfloat u1 + GLfloat u2 + GLint vn + GLfloat v1 + GLfloat v2 + + + + void glMapGrid2xOES + GLint n + GLfixed u1 + GLfixed u2 + GLfixed v1 + GLfixed v2 + + + void *glMapNamedBuffer + GLuint buffer + GLenum access + + + void *glMapNamedBufferEXT + GLuint buffer + GLenum access + + + void *glMapNamedBufferRange + GLuint buffer + GLintptr offset + GLsizeiptr length + GLbitfield access + + + void *glMapNamedBufferRangeEXT + GLuint buffer + GLintptr offset + GLsizeiptr length + GLbitfield access + + + void *glMapObjectBufferATI + GLuint buffer + + + void glMapParameterfvNV + GLenum target + GLenum pname + const GLfloat *params + + + void glMapParameterivNV + GLenum target + GLenum pname + const GLint *params + + + void *glMapTexture2DINTEL + GLuint texture + GLint level + GLbitfield access + GLint *stride + GLenum *layout + + + void glMapVertexAttrib1dAPPLE + GLuint index + GLuint size + GLdouble u1 + GLdouble u2 + GLint stride + GLint order + const GLdouble *points + + + void glMapVertexAttrib1fAPPLE + GLuint index + GLuint size + GLfloat u1 + GLfloat u2 + GLint stride + GLint order + const GLfloat *points + + + void glMapVertexAttrib2dAPPLE + GLuint index + GLuint size + GLdouble u1 + GLdouble u2 + GLint ustride + GLint uorder + GLdouble v1 + GLdouble v2 + GLint vstride + GLint vorder + const GLdouble *points + + + void glMapVertexAttrib2fAPPLE + GLuint index + GLuint size + GLfloat u1 + GLfloat u2 + GLint ustride + GLint uorder + GLfloat v1 + GLfloat v2 + GLint vstride + GLint vorder + const GLfloat *points + + + void glMaterialf + GLenum face + GLenum pname + GLfloat param + + + + void glMaterialfv + GLenum face + GLenum pname + const GLfloat *params + + + + void glMateriali + GLenum face + GLenum pname + GLint param + + + + void glMaterialiv + GLenum face + GLenum pname + const GLint *params + + + + void glMaterialx + GLenum face + GLenum pname + GLfixed param + + + void glMaterialxOES + GLenum face + GLenum pname + GLfixed param + + + void glMaterialxv + GLenum face + GLenum pname + const GLfixed *param + + + void glMaterialxvOES + GLenum face + GLenum pname + const GLfixed *param + + + void glMatrixFrustumEXT + GLenum mode + GLdouble left + GLdouble right + GLdouble bottom + GLdouble top + GLdouble zNear + GLdouble zFar + + + void glMatrixIndexPointerARB + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glMatrixIndexPointerOES + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glMatrixIndexubvARB + GLint size + const GLubyte *indices + + + + void glMatrixIndexuivARB + GLint size + const GLuint *indices + + + + void glMatrixIndexusvARB + GLint size + const GLushort *indices + + + + void glMatrixLoad3x2fNV + GLenum matrixMode + const GLfloat *m + + + void glMatrixLoad3x3fNV + GLenum matrixMode + const GLfloat *m + + + void glMatrixLoadIdentityEXT + GLenum mode + + + void glMatrixLoadTranspose3x3fNV + GLenum matrixMode + const GLfloat *m + + + void glMatrixLoadTransposedEXT + GLenum mode + const GLdouble *m + + + void glMatrixLoadTransposefEXT + GLenum mode + const GLfloat *m + + + void glMatrixLoaddEXT + GLenum mode + const GLdouble *m + + + void glMatrixLoadfEXT + GLenum mode + const GLfloat *m + + + void glMatrixMode + GLenum mode + + + + void glMatrixMult3x2fNV + GLenum matrixMode + const GLfloat *m + + + void glMatrixMult3x3fNV + GLenum matrixMode + const GLfloat *m + + + void glMatrixMultTranspose3x3fNV + GLenum matrixMode + const GLfloat *m + + + void glMatrixMultTransposedEXT + GLenum mode + const GLdouble *m + + + void glMatrixMultTransposefEXT + GLenum mode + const GLfloat *m + + + void glMatrixMultdEXT + GLenum mode + const GLdouble *m + + + void glMatrixMultfEXT + GLenum mode + const GLfloat *m + + + void glMatrixOrthoEXT + GLenum mode + GLdouble left + GLdouble right + GLdouble bottom + GLdouble top + GLdouble zNear + GLdouble zFar + + + void glMatrixPopEXT + GLenum mode + + + void glMatrixPushEXT + GLenum mode + + + void glMatrixRotatedEXT + GLenum mode + GLdouble angle + GLdouble x + GLdouble y + GLdouble z + + + void glMatrixRotatefEXT + GLenum mode + GLfloat angle + GLfloat x + GLfloat y + GLfloat z + + + void glMatrixScaledEXT + GLenum mode + GLdouble x + GLdouble y + GLdouble z + + + void glMatrixScalefEXT + GLenum mode + GLfloat x + GLfloat y + GLfloat z + + + void glMatrixTranslatedEXT + GLenum mode + GLdouble x + GLdouble y + GLdouble z + + + void glMatrixTranslatefEXT + GLenum mode + GLfloat x + GLfloat y + GLfloat z + + + void glMaxShaderCompilerThreadsKHR + GLuint count + + + void glMaxShaderCompilerThreadsARB + GLuint count + + + + void glMemoryBarrier + GLbitfield barriers + + + void glMemoryBarrierByRegion + GLbitfield barriers + + + void glMemoryBarrierEXT + GLbitfield barriers + + + + void glMemoryObjectParameterivEXT + GLuint memoryObject + GLenum pname + const GLint *params + + + void glMinSampleShading + GLfloat value + + + void glMinSampleShadingARB + GLfloat value + + + + void glMinSampleShadingOES + GLfloat value + + + + void glMinmax + GLenum target + GLenum internalformat + GLboolean sink + + + + void glMinmaxEXT + GLenum target + GLenum internalformat + GLboolean sink + + + + + void glMultMatrixd + const GLdouble *m + + + + void glMultMatrixf + const GLfloat *m + + + + void glMultMatrixx + const GLfixed *m + + + void glMultMatrixxOES + const GLfixed *m + + + void glMultTransposeMatrixd + const GLdouble *m + + + void glMultTransposeMatrixdARB + const GLdouble *m + + + + void glMultTransposeMatrixf + const GLfloat *m + + + void glMultTransposeMatrixfARB + const GLfloat *m + + + + void glMultTransposeMatrixxOES + const GLfixed *m + + + void glMultiDrawArrays + GLenum mode + const GLint *first + const GLsizei *count + GLsizei drawcount + + + void glMultiDrawArraysEXT + GLenum mode + const GLint *first + const GLsizei *count + GLsizei primcount + + + + void glMultiDrawArraysIndirect + GLenum mode + const void *indirect + GLsizei drawcount + GLsizei stride + + + void glMultiDrawArraysIndirectAMD + GLenum mode + const void *indirect + GLsizei primcount + GLsizei stride + + + + void glMultiDrawArraysIndirectBindlessCountNV + GLenum mode + const void *indirect + GLsizei drawCount + GLsizei maxDrawCount + GLsizei stride + GLint vertexBufferCount + + + void glMultiDrawArraysIndirectBindlessNV + GLenum mode + const void *indirect + GLsizei drawCount + GLsizei stride + GLint vertexBufferCount + + + void glMultiDrawArraysIndirectCount + GLenum mode + const void *indirect + GLintptr drawcount + GLsizei maxdrawcount + GLsizei stride + + + void glMultiDrawArraysIndirectCountARB + GLenum mode + const void *indirect + GLintptr drawcount + GLsizei maxdrawcount + GLsizei stride + + + + void glMultiDrawArraysIndirectEXT + GLenum mode + const void *indirect + GLsizei drawcount + GLsizei stride + + + + void glMultiDrawElementArrayAPPLE + GLenum mode + const GLint *first + const GLsizei *count + GLsizei primcount + + + void glMultiDrawElements + GLenum mode + const GLsizei *count + GLenum type + const void *const*indices + GLsizei drawcount + + + void glMultiDrawElementsBaseVertex + GLenum mode + const GLsizei *count + GLenum type + const void *const*indices + GLsizei drawcount + const GLint *basevertex + + + void glMultiDrawElementsBaseVertexEXT + GLenum mode + const GLsizei *count + GLenum type + const void *const*indices + GLsizei drawcount + const GLint *basevertex + + + + void glMultiDrawElementsEXT + GLenum mode + const GLsizei *count + GLenum type + const void *const*indices + GLsizei primcount + + + + void glMultiDrawElementsIndirect + GLenum mode + GLenum type + const void *indirect + GLsizei drawcount + GLsizei stride + + + void glMultiDrawElementsIndirectAMD + GLenum mode + GLenum type + const void *indirect + GLsizei primcount + GLsizei stride + + + + void glMultiDrawElementsIndirectBindlessCountNV + GLenum mode + GLenum type + const void *indirect + GLsizei drawCount + GLsizei maxDrawCount + GLsizei stride + GLint vertexBufferCount + + + void glMultiDrawElementsIndirectBindlessNV + GLenum mode + GLenum type + const void *indirect + GLsizei drawCount + GLsizei stride + GLint vertexBufferCount + + + void glMultiDrawElementsIndirectCount + GLenum mode + GLenum type + const void *indirect + GLintptr drawcount + GLsizei maxdrawcount + GLsizei stride + + + void glMultiDrawElementsIndirectCountARB + GLenum mode + GLenum type + const void *indirect + GLintptr drawcount + GLsizei maxdrawcount + GLsizei stride + + + + void glMultiDrawElementsIndirectEXT + GLenum mode + GLenum type + const void *indirect + GLsizei drawcount + GLsizei stride + + + + void glMultiDrawMeshTasksIndirectNV + GLintptr indirect + GLsizei drawcount + GLsizei stride + + + void glMultiDrawMeshTasksIndirectCountNV + GLintptr indirect + GLintptr drawcount + GLsizei maxdrawcount + GLsizei stride + + + void glMultiDrawRangeElementArrayAPPLE + GLenum mode + GLuint start + GLuint end + const GLint *first + const GLsizei *count + GLsizei primcount + + + void glMultiModeDrawArraysIBM + const GLenum *mode + const GLint *first + const GLsizei *count + GLsizei primcount + GLint modestride + + + void glMultiModeDrawElementsIBM + const GLenum *mode + const GLsizei *count + GLenum type + const void *const*indices + GLsizei primcount + GLint modestride + + + void glMultiTexBufferEXT + GLenum texunit + GLenum target + GLenum internalformat + GLuint buffer + + + void glMultiTexCoord1bOES + GLenum texture + GLbyte s + + + void glMultiTexCoord1bvOES + GLenum texture + const GLbyte *coords + + + void glMultiTexCoord1d + GLenum target + GLdouble s + + + + void glMultiTexCoord1dARB + GLenum target + GLdouble s + + + + + void glMultiTexCoord1dv + GLenum target + const GLdouble *v + + + + void glMultiTexCoord1dvARB + GLenum target + const GLdouble *v + + + + + void glMultiTexCoord1f + GLenum target + GLfloat s + + + + void glMultiTexCoord1fARB + GLenum target + GLfloat s + + + + + void glMultiTexCoord1fv + GLenum target + const GLfloat *v + + + + void glMultiTexCoord1fvARB + GLenum target + const GLfloat *v + + + + + void glMultiTexCoord1hNV + GLenum target + GLhalfNV s + + + + void glMultiTexCoord1hvNV + GLenum target + const GLhalfNV *v + + + + void glMultiTexCoord1i + GLenum target + GLint s + + + + void glMultiTexCoord1iARB + GLenum target + GLint s + + + + + void glMultiTexCoord1iv + GLenum target + const GLint *v + + + + void glMultiTexCoord1ivARB + GLenum target + const GLint *v + + + + + void glMultiTexCoord1s + GLenum target + GLshort s + + + + void glMultiTexCoord1sARB + GLenum target + GLshort s + + + + + void glMultiTexCoord1sv + GLenum target + const GLshort *v + + + + void glMultiTexCoord1svARB + GLenum target + const GLshort *v + + + + + void glMultiTexCoord1xOES + GLenum texture + GLfixed s + + + void glMultiTexCoord1xvOES + GLenum texture + const GLfixed *coords + + + void glMultiTexCoord2bOES + GLenum texture + GLbyte s + GLbyte t + + + void glMultiTexCoord2bvOES + GLenum texture + const GLbyte *coords + + + void glMultiTexCoord2d + GLenum target + GLdouble s + GLdouble t + + + + void glMultiTexCoord2dARB + GLenum target + GLdouble s + GLdouble t + + + + + void glMultiTexCoord2dv + GLenum target + const GLdouble *v + + + + void glMultiTexCoord2dvARB + GLenum target + const GLdouble *v + + + + + void glMultiTexCoord2f + GLenum target + GLfloat s + GLfloat t + + + + void glMultiTexCoord2fARB + GLenum target + GLfloat s + GLfloat t + + + + + void glMultiTexCoord2fv + GLenum target + const GLfloat *v + + + + void glMultiTexCoord2fvARB + GLenum target + const GLfloat *v + + + + + void glMultiTexCoord2hNV + GLenum target + GLhalfNV s + GLhalfNV t + + + + void glMultiTexCoord2hvNV + GLenum target + const GLhalfNV *v + + + + void glMultiTexCoord2i + GLenum target + GLint s + GLint t + + + + void glMultiTexCoord2iARB + GLenum target + GLint s + GLint t + + + + + void glMultiTexCoord2iv + GLenum target + const GLint *v + + + + void glMultiTexCoord2ivARB + GLenum target + const GLint *v + + + + + void glMultiTexCoord2s + GLenum target + GLshort s + GLshort t + + + + void glMultiTexCoord2sARB + GLenum target + GLshort s + GLshort t + + + + + void glMultiTexCoord2sv + GLenum target + const GLshort *v + + + + void glMultiTexCoord2svARB + GLenum target + const GLshort *v + + + + + void glMultiTexCoord2xOES + GLenum texture + GLfixed s + GLfixed t + + + void glMultiTexCoord2xvOES + GLenum texture + const GLfixed *coords + + + void glMultiTexCoord3bOES + GLenum texture + GLbyte s + GLbyte t + GLbyte r + + + void glMultiTexCoord3bvOES + GLenum texture + const GLbyte *coords + + + void glMultiTexCoord3d + GLenum target + GLdouble s + GLdouble t + GLdouble r + + + + void glMultiTexCoord3dARB + GLenum target + GLdouble s + GLdouble t + GLdouble r + + + + + void glMultiTexCoord3dv + GLenum target + const GLdouble *v + + + + void glMultiTexCoord3dvARB + GLenum target + const GLdouble *v + + + + + void glMultiTexCoord3f + GLenum target + GLfloat s + GLfloat t + GLfloat r + + + + void glMultiTexCoord3fARB + GLenum target + GLfloat s + GLfloat t + GLfloat r + + + + + void glMultiTexCoord3fv + GLenum target + const GLfloat *v + + + + void glMultiTexCoord3fvARB + GLenum target + const GLfloat *v + + + + + void glMultiTexCoord3hNV + GLenum target + GLhalfNV s + GLhalfNV t + GLhalfNV r + + + + void glMultiTexCoord3hvNV + GLenum target + const GLhalfNV *v + + + + void glMultiTexCoord3i + GLenum target + GLint s + GLint t + GLint r + + + + void glMultiTexCoord3iARB + GLenum target + GLint s + GLint t + GLint r + + + + + void glMultiTexCoord3iv + GLenum target + const GLint *v + + + + void glMultiTexCoord3ivARB + GLenum target + const GLint *v + + + + + void glMultiTexCoord3s + GLenum target + GLshort s + GLshort t + GLshort r + + + + void glMultiTexCoord3sARB + GLenum target + GLshort s + GLshort t + GLshort r + + + + + void glMultiTexCoord3sv + GLenum target + const GLshort *v + + + + void glMultiTexCoord3svARB + GLenum target + const GLshort *v + + + + + void glMultiTexCoord3xOES + GLenum texture + GLfixed s + GLfixed t + GLfixed r + + + void glMultiTexCoord3xvOES + GLenum texture + const GLfixed *coords + + + void glMultiTexCoord4bOES + GLenum texture + GLbyte s + GLbyte t + GLbyte r + GLbyte q + + + void glMultiTexCoord4bvOES + GLenum texture + const GLbyte *coords + + + void glMultiTexCoord4d + GLenum target + GLdouble s + GLdouble t + GLdouble r + GLdouble q + + + + void glMultiTexCoord4dARB + GLenum target + GLdouble s + GLdouble t + GLdouble r + GLdouble q + + + + + void glMultiTexCoord4dv + GLenum target + const GLdouble *v + + + + void glMultiTexCoord4dvARB + GLenum target + const GLdouble *v + + + + + void glMultiTexCoord4f + GLenum target + GLfloat s + GLfloat t + GLfloat r + GLfloat q + + + + void glMultiTexCoord4fARB + GLenum target + GLfloat s + GLfloat t + GLfloat r + GLfloat q + + + + + void glMultiTexCoord4fv + GLenum target + const GLfloat *v + + + + void glMultiTexCoord4fvARB + GLenum target + const GLfloat *v + + + + + void glMultiTexCoord4hNV + GLenum target + GLhalfNV s + GLhalfNV t + GLhalfNV r + GLhalfNV q + + + + void glMultiTexCoord4hvNV + GLenum target + const GLhalfNV *v + + + + void glMultiTexCoord4i + GLenum target + GLint s + GLint t + GLint r + GLint q + + + + void glMultiTexCoord4iARB + GLenum target + GLint s + GLint t + GLint r + GLint q + + + + + void glMultiTexCoord4iv + GLenum target + const GLint *v + + + + void glMultiTexCoord4ivARB + GLenum target + const GLint *v + + + + + void glMultiTexCoord4s + GLenum target + GLshort s + GLshort t + GLshort r + GLshort q + + + + void glMultiTexCoord4sARB + GLenum target + GLshort s + GLshort t + GLshort r + GLshort q + + + + + void glMultiTexCoord4sv + GLenum target + const GLshort *v + + + + void glMultiTexCoord4svARB + GLenum target + const GLshort *v + + + + + void glMultiTexCoord4x + GLenum texture + GLfixed s + GLfixed t + GLfixed r + GLfixed q + + + void glMultiTexCoord4xOES + GLenum texture + GLfixed s + GLfixed t + GLfixed r + GLfixed q + + + void glMultiTexCoord4xvOES + GLenum texture + const GLfixed *coords + + + void glMultiTexCoordP1ui + GLenum texture + GLenum type + GLuint coords + + + void glMultiTexCoordP1uiv + GLenum texture + GLenum type + const GLuint *coords + + + void glMultiTexCoordP2ui + GLenum texture + GLenum type + GLuint coords + + + void glMultiTexCoordP2uiv + GLenum texture + GLenum type + const GLuint *coords + + + void glMultiTexCoordP3ui + GLenum texture + GLenum type + GLuint coords + + + void glMultiTexCoordP3uiv + GLenum texture + GLenum type + const GLuint *coords + + + void glMultiTexCoordP4ui + GLenum texture + GLenum type + GLuint coords + + + void glMultiTexCoordP4uiv + GLenum texture + GLenum type + const GLuint *coords + + + void glMultiTexCoordPointerEXT + GLenum texunit + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glMultiTexEnvfEXT + GLenum texunit + GLenum target + GLenum pname + GLfloat param + + + + void glMultiTexEnvfvEXT + GLenum texunit + GLenum target + GLenum pname + const GLfloat *params + + + void glMultiTexEnviEXT + GLenum texunit + GLenum target + GLenum pname + GLint param + + + + void glMultiTexEnvivEXT + GLenum texunit + GLenum target + GLenum pname + const GLint *params + + + void glMultiTexGendEXT + GLenum texunit + GLenum coord + GLenum pname + GLdouble param + + + + void glMultiTexGendvEXT + GLenum texunit + GLenum coord + GLenum pname + const GLdouble *params + + + void glMultiTexGenfEXT + GLenum texunit + GLenum coord + GLenum pname + GLfloat param + + + + void glMultiTexGenfvEXT + GLenum texunit + GLenum coord + GLenum pname + const GLfloat *params + + + void glMultiTexGeniEXT + GLenum texunit + GLenum coord + GLenum pname + GLint param + + + + void glMultiTexGenivEXT + GLenum texunit + GLenum coord + GLenum pname + const GLint *params + + + void glMultiTexImage1DEXT + GLenum texunit + GLenum target + GLint level + GLint internalformat + GLsizei width + GLint border + GLenum format + GLenum type + const void *pixels + + + void glMultiTexImage2DEXT + GLenum texunit + GLenum target + GLint level + GLint internalformat + GLsizei width + GLsizei height + GLint border + GLenum format + GLenum type + const void *pixels + + + void glMultiTexImage3DEXT + GLenum texunit + GLenum target + GLint level + GLint internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const void *pixels + + + void glMultiTexParameterIivEXT + GLenum texunit + GLenum target + GLenum pname + const GLint *params + + + void glMultiTexParameterIuivEXT + GLenum texunit + GLenum target + GLenum pname + const GLuint *params + + + void glMultiTexParameterfEXT + GLenum texunit + GLenum target + GLenum pname + GLfloat param + + + + void glMultiTexParameterfvEXT + GLenum texunit + GLenum target + GLenum pname + const GLfloat *params + + + void glMultiTexParameteriEXT + GLenum texunit + GLenum target + GLenum pname + GLint param + + + + void glMultiTexParameterivEXT + GLenum texunit + GLenum target + GLenum pname + const GLint *params + + + void glMultiTexRenderbufferEXT + GLenum texunit + GLenum target + GLuint renderbuffer + + + void glMultiTexSubImage1DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const void *pixels + + + void glMultiTexSubImage2DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *pixels + + + void glMultiTexSubImage3DEXT + GLenum texunit + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *pixels + + + void glMulticastBarrierNV + + + void glMulticastBlitFramebufferNV + GLuint srcGpu + GLuint dstGpu + GLint srcX0 + GLint srcY0 + GLint srcX1 + GLint srcY1 + GLint dstX0 + GLint dstY0 + GLint dstX1 + GLint dstY1 + GLbitfield mask + GLenum filter + + + void glMulticastBufferSubDataNV + GLbitfield gpuMask + GLuint buffer + GLintptr offset + GLsizeiptr size + const void *data + + + void glMulticastCopyBufferSubDataNV + GLuint readGpu + GLbitfield writeGpuMask + GLuint readBuffer + GLuint writeBuffer + GLintptr readOffset + GLintptr writeOffset + GLsizeiptr size + + + void glMulticastCopyImageSubDataNV + GLuint srcGpu + GLbitfield dstGpuMask + GLuint srcName + GLenum srcTarget + GLint srcLevel + GLint srcX + GLint srcY + GLint srcZ + GLuint dstName + GLenum dstTarget + GLint dstLevel + GLint dstX + GLint dstY + GLint dstZ + GLsizei srcWidth + GLsizei srcHeight + GLsizei srcDepth + + + void glMulticastFramebufferSampleLocationsfvNV + GLuint gpu + GLuint framebuffer + GLuint start + GLsizei count + const GLfloat *v + + + void glMulticastGetQueryObjecti64vNV + GLuint gpu + GLuint id + GLenum pname + GLint64 *params + + + void glMulticastGetQueryObjectivNV + GLuint gpu + GLuint id + GLenum pname + GLint *params + + + void glMulticastGetQueryObjectui64vNV + GLuint gpu + GLuint id + GLenum pname + GLuint64 *params + + + void glMulticastGetQueryObjectuivNV + GLuint gpu + GLuint id + GLenum pname + GLuint *params + + + void glMulticastScissorArrayvNVX + GLuint gpu + GLuint first + GLsizei count + const GLint *v + + + void glMulticastViewportArrayvNVX + GLuint gpu + GLuint first + GLsizei count + const GLfloat *v + + + void glMulticastViewportPositionWScaleNVX + GLuint gpu + GLuint index + GLfloat xcoeff + GLfloat ycoeff + + + void glMulticastWaitSyncNV + GLuint signalGpu + GLbitfield waitGpuMask + + + void glNamedBufferAttachMemoryNV + GLuint buffer + GLuint memory + GLuint64 offset + + + void glNamedBufferData + GLuint buffer + GLsizeiptr size + const void *data + GLenum usage + + + void glNamedBufferDataEXT + GLuint buffer + GLsizeiptr size + const void *data + GLenum usage + + + void glNamedBufferPageCommitmentARB + GLuint buffer + GLintptr offset + GLsizeiptr size + GLboolean commit + + + void glNamedBufferPageCommitmentEXT + GLuint buffer + GLintptr offset + GLsizeiptr size + GLboolean commit + + + void glNamedBufferPageCommitmentMemNV + GLuint buffer + GLintptr offset + GLsizeiptr size + GLuint memory + GLuint64 memOffset + GLboolean commit + + + void glNamedBufferStorage + GLuint buffer + GLsizeiptr size + const void *data + GLbitfield flags + + + void glNamedBufferStorageExternalEXT + GLuint buffer + GLintptr offset + GLsizeiptr size + GLeglClientBufferEXT clientBuffer + GLbitfield flags + + + void glNamedBufferStorageEXT + GLuint buffer + GLsizeiptr size + const void *data + GLbitfield flags + + + + void glNamedBufferStorageMemEXT + GLuint buffer + GLsizeiptr size + GLuint memory + GLuint64 offset + + + void glNamedBufferSubData + GLuint buffer + GLintptr offset + GLsizeiptr size + const void *data + + + void glNamedBufferSubDataEXT + GLuint buffer + GLintptr offset + GLsizeiptr size + const void *data + + + + void glNamedCopyBufferSubDataEXT + GLuint readBuffer + GLuint writeBuffer + GLintptr readOffset + GLintptr writeOffset + GLsizeiptr size + + + void glNamedFramebufferDrawBuffer + GLuint framebuffer + GLenum buf + + + void glNamedFramebufferDrawBuffers + GLuint framebuffer + GLsizei n + const GLenum *bufs + + + void glNamedFramebufferParameteri + GLuint framebuffer + GLenum pname + GLint param + + + void glNamedFramebufferParameteriEXT + GLuint framebuffer + GLenum pname + GLint param + + + void glNamedFramebufferReadBuffer + GLuint framebuffer + GLenum src + + + void glNamedFramebufferRenderbuffer + GLuint framebuffer + GLenum attachment + GLenum renderbuffertarget + GLuint renderbuffer + + + void glNamedFramebufferRenderbufferEXT + GLuint framebuffer + GLenum attachment + GLenum renderbuffertarget + GLuint renderbuffer + + + void glNamedFramebufferSampleLocationsfvARB + GLuint framebuffer + GLuint start + GLsizei count + const GLfloat *v + + + void glNamedFramebufferSampleLocationsfvNV + GLuint framebuffer + GLuint start + GLsizei count + const GLfloat *v + + + void glNamedFramebufferTexture + GLuint framebuffer + GLenum attachment + GLuint texture + GLint level + + + void glNamedFramebufferSamplePositionsfvAMD + GLuint framebuffer + GLuint numsamples + GLuint pixelindex + const GLfloat *values + + + void glNamedFramebufferTexture1DEXT + GLuint framebuffer + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + void glNamedFramebufferTexture2DEXT + GLuint framebuffer + GLenum attachment + GLenum textarget + GLuint texture + GLint level + + + void glNamedFramebufferTexture3DEXT + GLuint framebuffer + GLenum attachment + GLenum textarget + GLuint texture + GLint level + GLint zoffset + + + void glNamedFramebufferTextureEXT + GLuint framebuffer + GLenum attachment + GLuint texture + GLint level + + + void glNamedFramebufferTextureFaceEXT + GLuint framebuffer + GLenum attachment + GLuint texture + GLint level + GLenum face + + + void glNamedFramebufferTextureLayer + GLuint framebuffer + GLenum attachment + GLuint texture + GLint level + GLint layer + + + void glNamedFramebufferTextureLayerEXT + GLuint framebuffer + GLenum attachment + GLuint texture + GLint level + GLint layer + + + void glNamedProgramLocalParameter4dEXT + GLuint program + GLenum target + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glNamedProgramLocalParameter4dvEXT + GLuint program + GLenum target + GLuint index + const GLdouble *params + + + void glNamedProgramLocalParameter4fEXT + GLuint program + GLenum target + GLuint index + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glNamedProgramLocalParameter4fvEXT + GLuint program + GLenum target + GLuint index + const GLfloat *params + + + void glNamedProgramLocalParameterI4iEXT + GLuint program + GLenum target + GLuint index + GLint x + GLint y + GLint z + GLint w + + + + void glNamedProgramLocalParameterI4ivEXT + GLuint program + GLenum target + GLuint index + const GLint *params + + + void glNamedProgramLocalParameterI4uiEXT + GLuint program + GLenum target + GLuint index + GLuint x + GLuint y + GLuint z + GLuint w + + + + void glNamedProgramLocalParameterI4uivEXT + GLuint program + GLenum target + GLuint index + const GLuint *params + + + void glNamedProgramLocalParameters4fvEXT + GLuint program + GLenum target + GLuint index + GLsizei count + const GLfloat *params + + + void glNamedProgramLocalParametersI4ivEXT + GLuint program + GLenum target + GLuint index + GLsizei count + const GLint *params + + + void glNamedProgramLocalParametersI4uivEXT + GLuint program + GLenum target + GLuint index + GLsizei count + const GLuint *params + + + void glNamedProgramStringEXT + GLuint program + GLenum target + GLenum format + GLsizei len + const void *string + + + void glNamedRenderbufferStorage + GLuint renderbuffer + GLenum internalformat + GLsizei width + GLsizei height + + + void glNamedRenderbufferStorageEXT + GLuint renderbuffer + GLenum internalformat + GLsizei width + GLsizei height + + + void glNamedRenderbufferStorageMultisample + GLuint renderbuffer + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + void glNamedRenderbufferStorageMultisampleAdvancedAMD + GLuint renderbuffer + GLsizei samples + GLsizei storageSamples + GLenum internalformat + GLsizei width + GLsizei height + + + void glNamedRenderbufferStorageMultisampleCoverageEXT + GLuint renderbuffer + GLsizei coverageSamples + GLsizei colorSamples + GLenum internalformat + GLsizei width + GLsizei height + + + void glNamedRenderbufferStorageMultisampleEXT + GLuint renderbuffer + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + void glNamedStringARB + GLenum type + GLint namelen + const GLchar *name + GLint stringlen + const GLchar *string + + + void glNewList + GLuint list + GLenum mode + + + + GLuint glNewObjectBufferATI + GLsizei size + const void *pointer + GLenum usage + + + void glNormal3b + GLbyte nx + GLbyte ny + GLbyte nz + + + + void glNormal3bv + const GLbyte *v + + + + void glNormal3d + GLdouble nx + GLdouble ny + GLdouble nz + + + + void glNormal3dv + const GLdouble *v + + + + void glNormal3f + GLfloat nx + GLfloat ny + GLfloat nz + + + + void glNormal3fVertex3fSUN + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glNormal3fVertex3fvSUN + const GLfloat *n + const GLfloat *v + + + void glNormal3fv + const GLfloat *v + + + + void glNormal3hNV + GLhalfNV nx + GLhalfNV ny + GLhalfNV nz + + + + void glNormal3hvNV + const GLhalfNV *v + + + + void glNormal3i + GLint nx + GLint ny + GLint nz + + + + void glNormal3iv + const GLint *v + + + + void glNormal3s + GLshort nx + GLshort ny + GLshort nz + + + + void glNormal3sv + const GLshort *v + + + + void glNormal3x + GLfixed nx + GLfixed ny + GLfixed nz + + + void glNormal3xOES + GLfixed nx + GLfixed ny + GLfixed nz + + + void glNormal3xvOES + const GLfixed *coords + + + void glNormalFormatNV + GLenum type + GLsizei stride + + + void glNormalP3ui + GLenum type + GLuint coords + + + void glNormalP3uiv + GLenum type + const GLuint *coords + + + void glNormalPointer + GLenum type + GLsizei stride + const void *pointer + + + void glNormalPointerEXT + GLenum type + GLsizei stride + GLsizei count + const void *pointer + + + void glNormalPointerListIBM + GLenum type + GLint stride + const void **pointer + GLint ptrstride + + + void glNormalPointervINTEL + GLenum type + const void **pointer + + + void glNormalStream3bATI + GLenum stream + GLbyte nx + GLbyte ny + GLbyte nz + + + void glNormalStream3bvATI + GLenum stream + const GLbyte *coords + + + void glNormalStream3dATI + GLenum stream + GLdouble nx + GLdouble ny + GLdouble nz + + + void glNormalStream3dvATI + GLenum stream + const GLdouble *coords + + + void glNormalStream3fATI + GLenum stream + GLfloat nx + GLfloat ny + GLfloat nz + + + void glNormalStream3fvATI + GLenum stream + const GLfloat *coords + + + void glNormalStream3iATI + GLenum stream + GLint nx + GLint ny + GLint nz + + + void glNormalStream3ivATI + GLenum stream + const GLint *coords + + + void glNormalStream3sATI + GLenum stream + GLshort nx + GLshort ny + GLshort nz + + + void glNormalStream3svATI + GLenum stream + const GLshort *coords + + + void glObjectLabel + GLenum identifier + GLuint name + GLsizei length + const GLchar *label + + + void glObjectLabelKHR + GLenum identifier + GLuint name + GLsizei length + const GLchar *label + + + + void glObjectPtrLabel + const void *ptr + GLsizei length + const GLchar *label + + + void glObjectPtrLabelKHR + const void *ptr + GLsizei length + const GLchar *label + + + + GLenum glObjectPurgeableAPPLE + GLenum objectType + GLuint name + GLenum option + + + GLenum glObjectUnpurgeableAPPLE + GLenum objectType + GLuint name + GLenum option + + + void glOrtho + GLdouble left + GLdouble right + GLdouble bottom + GLdouble top + GLdouble zNear + GLdouble zFar + + + + void glOrthof + GLfloat l + GLfloat r + GLfloat b + GLfloat t + GLfloat n + GLfloat f + + + void glOrthofOES + GLfloat l + GLfloat r + GLfloat b + GLfloat t + GLfloat n + GLfloat f + + + + void glOrthox + GLfixed l + GLfixed r + GLfixed b + GLfixed t + GLfixed n + GLfixed f + + + void glOrthoxOES + GLfixed l + GLfixed r + GLfixed b + GLfixed t + GLfixed n + GLfixed f + + + void glPNTrianglesfATI + GLenum pname + GLfloat param + + + void glPNTrianglesiATI + GLenum pname + GLint param + + + void glPassTexCoordATI + GLuint dst + GLuint coord + GLenum swizzle + + + void glPassThrough + GLfloat token + + + + void glPassThroughxOES + GLfixed token + + + void glPatchParameterfv + GLenum pname + const GLfloat *values + + + void glPatchParameteri + GLenum pname + GLint value + + + void glPatchParameteriEXT + GLenum pname + GLint value + + + + void glPatchParameteriOES + GLenum pname + GLint value + + + + void glPathColorGenNV + GLenum color + GLenum genMode + GLenum colorFormat + const GLfloat *coeffs + + + void glPathCommandsNV + GLuint path + GLsizei numCommands + const GLubyte *commands + GLsizei numCoords + GLenum coordType + const void *coords + + + void glPathCoordsNV + GLuint path + GLsizei numCoords + GLenum coordType + const void *coords + + + void glPathCoverDepthFuncNV + GLenum func + + + void glPathDashArrayNV + GLuint path + GLsizei dashCount + const GLfloat *dashArray + + + void glPathFogGenNV + GLenum genMode + + + GLenum glPathGlyphIndexArrayNV + GLuint firstPathName + GLenum fontTarget + const void *fontName + GLbitfield fontStyle + GLuint firstGlyphIndex + GLsizei numGlyphs + GLuint pathParameterTemplate + GLfloat emScale + + + GLenum glPathGlyphIndexRangeNV + GLenum fontTarget + const void *fontName + GLbitfield fontStyle + GLuint pathParameterTemplate + GLfloat emScale + GLuint *baseAndCount + + + void glPathGlyphRangeNV + GLuint firstPathName + GLenum fontTarget + const void *fontName + GLbitfield fontStyle + GLuint firstGlyph + GLsizei numGlyphs + GLenum handleMissingGlyphs + GLuint pathParameterTemplate + GLfloat emScale + + + void glPathGlyphsNV + GLuint firstPathName + GLenum fontTarget + const void *fontName + GLbitfield fontStyle + GLsizei numGlyphs + GLenum type + const void *charcodes + GLenum handleMissingGlyphs + GLuint pathParameterTemplate + GLfloat emScale + + + GLenum glPathMemoryGlyphIndexArrayNV + GLuint firstPathName + GLenum fontTarget + GLsizeiptr fontSize + const void *fontData + GLsizei faceIndex + GLuint firstGlyphIndex + GLsizei numGlyphs + GLuint pathParameterTemplate + GLfloat emScale + + + void glPathParameterfNV + GLuint path + GLenum pname + GLfloat value + + + void glPathParameterfvNV + GLuint path + GLenum pname + const GLfloat *value + + + void glPathParameteriNV + GLuint path + GLenum pname + GLint value + + + void glPathParameterivNV + GLuint path + GLenum pname + const GLint *value + + + void glPathStencilDepthOffsetNV + GLfloat factor + GLfloat units + + + void glPathStencilFuncNV + GLenum func + GLint ref + GLuint mask + + + void glPathStringNV + GLuint path + GLenum format + GLsizei length + const void *pathString + + + void glPathSubCommandsNV + GLuint path + GLsizei commandStart + GLsizei commandsToDelete + GLsizei numCommands + const GLubyte *commands + GLsizei numCoords + GLenum coordType + const void *coords + + + void glPathSubCoordsNV + GLuint path + GLsizei coordStart + GLsizei numCoords + GLenum coordType + const void *coords + + + void glPathTexGenNV + GLenum texCoordSet + GLenum genMode + GLint components + const GLfloat *coeffs + + + void glPauseTransformFeedback + + + void glPauseTransformFeedbackNV + + + + void glPixelDataRangeNV + GLenum target + GLsizei length + const void *pointer + + + void glPixelMapfv + GLenum map + GLsizei mapsize + const GLfloat *values + + + + + void glPixelMapuiv + GLenum map + GLsizei mapsize + const GLuint *values + + + + + void glPixelMapusv + GLenum map + GLsizei mapsize + const GLushort *values + + + + + void glPixelMapx + GLenum map + GLint size + const GLfixed *values + + + void glPixelStoref + GLenum pname + GLfloat param + + + + void glPixelStorei + GLenum pname + GLint param + + + + void glPixelStorex + GLenum pname + GLfixed param + + + void glPixelTexGenParameterfSGIS + GLenum pname + GLfloat param + + + void glPixelTexGenParameterfvSGIS + GLenum pname + const GLfloat *params + + + void glPixelTexGenParameteriSGIS + GLenum pname + GLint param + + + void glPixelTexGenParameterivSGIS + GLenum pname + const GLint *params + + + void glPixelTexGenSGIX + GLenum mode + + + + void glPixelTransferf + GLenum pname + GLfloat param + + + + void glPixelTransferi + GLenum pname + GLint param + + + + void glPixelTransferxOES + GLenum pname + GLfixed param + + + void glPixelTransformParameterfEXT + GLenum target + GLenum pname + GLfloat param + + + + void glPixelTransformParameterfvEXT + GLenum target + GLenum pname + const GLfloat *params + + + void glPixelTransformParameteriEXT + GLenum target + GLenum pname + GLint param + + + + void glPixelTransformParameterivEXT + GLenum target + GLenum pname + const GLint *params + + + void glPixelZoom + GLfloat xfactor + GLfloat yfactor + + + + void glPixelZoomxOES + GLfixed xfactor + GLfixed yfactor + + + GLboolean glPointAlongPathNV + GLuint path + GLsizei startSegment + GLsizei numSegments + GLfloat distance + GLfloat *x + GLfloat *y + GLfloat *tangentX + GLfloat *tangentY + + + void glPointParameterf + GLenum pname + GLfloat param + + + + void glPointParameterfARB + GLenum pname + GLfloat param + + + + + void glPointParameterfEXT + GLenum pname + GLfloat param + + + + void glPointParameterfSGIS + GLenum pname + GLfloat param + + + + void glPointParameterfv + GLenum pname + const GLfloat *params + + + + void glPointParameterfvARB + GLenum pname + const GLfloat *params + + + + + void glPointParameterfvEXT + GLenum pname + const GLfloat *params + + + + void glPointParameterfvSGIS + GLenum pname + const GLfloat *params + + + + void glPointParameteri + GLenum pname + GLint param + + + + void glPointParameteriNV + GLenum pname + GLint param + + + + + void glPointParameteriv + GLenum pname + const GLint *params + + + + void glPointParameterivNV + GLenum pname + const GLint *params + + + + + void glPointParameterx + GLenum pname + GLfixed param + + + void glPointParameterxOES + GLenum pname + GLfixed param + + + void glPointParameterxv + GLenum pname + const GLfixed *params + + + void glPointParameterxvOES + GLenum pname + const GLfixed *params + + + void glPointSize + GLfloat size + + + + void glPointSizePointerOES + GLenum type + GLsizei stride + const void *pointer + + + void glPointSizex + GLfixed size + + + void glPointSizexOES + GLfixed size + + + GLint glPollAsyncSGIX + GLuint *markerp + + + GLint glPollInstrumentsSGIX + GLint *marker_p + + + + void glPolygonMode + GLenum face + GLenum mode + + + + void glPolygonModeNV + GLenum face + GLenum mode + + + + void glPolygonOffset + GLfloat factor + GLfloat units + + + + void glPolygonOffsetClamp + GLfloat factor + GLfloat units + GLfloat clamp + + + + void glPolygonOffsetClampEXT + GLfloat factor + GLfloat units + GLfloat clamp + + + + void glPolygonOffsetEXT + GLfloat factor + GLfloat bias + + + + void glPolygonOffsetx + GLfixed factor + GLfixed units + + + void glPolygonOffsetxOES + GLfixed factor + GLfixed units + + + void glPolygonStipple + const GLubyte *mask + + + + + void glPopAttrib + + + + void glPopClientAttrib + + + void glPopDebugGroup + + + void glPopDebugGroupKHR + + + + void glPopGroupMarkerEXT + + + void glPopMatrix + + + + void glPopName + + + + void glPresentFrameDualFillNV + GLuint video_slot + GLuint64EXT minPresentTime + GLuint beginPresentTimeId + GLuint presentDurationId + GLenum type + GLenum target0 + GLuint fill0 + GLenum target1 + GLuint fill1 + GLenum target2 + GLuint fill2 + GLenum target3 + GLuint fill3 + + + void glPresentFrameKeyedNV + GLuint video_slot + GLuint64EXT minPresentTime + GLuint beginPresentTimeId + GLuint presentDurationId + GLenum type + GLenum target0 + GLuint fill0 + GLuint key0 + GLenum target1 + GLuint fill1 + GLuint key1 + + + void glPrimitiveBoundingBox + GLfloat minX + GLfloat minY + GLfloat minZ + GLfloat minW + GLfloat maxX + GLfloat maxY + GLfloat maxZ + GLfloat maxW + + + void glPrimitiveBoundingBoxARB + GLfloat minX + GLfloat minY + GLfloat minZ + GLfloat minW + GLfloat maxX + GLfloat maxY + GLfloat maxZ + GLfloat maxW + + + + void glPrimitiveBoundingBoxEXT + GLfloat minX + GLfloat minY + GLfloat minZ + GLfloat minW + GLfloat maxX + GLfloat maxY + GLfloat maxZ + GLfloat maxW + + + + void glPrimitiveBoundingBoxOES + GLfloat minX + GLfloat minY + GLfloat minZ + GLfloat minW + GLfloat maxX + GLfloat maxY + GLfloat maxZ + GLfloat maxW + + + + void glPrimitiveRestartIndex + GLuint index + + + void glPrimitiveRestartIndexNV + GLuint index + + + + void glPrimitiveRestartNV + + + + void glPrioritizeTextures + GLsizei n + const GLuint *textures + const GLfloat *priorities + + + + void glPrioritizeTexturesEXT + GLsizei n + const GLuint *textures + const GLclampf *priorities + + + + + void glPrioritizeTexturesxOES + GLsizei n + const GLuint *textures + const GLfixed *priorities + + + void glProgramBinary + GLuint program + GLenum binaryFormat + const void *binary + GLsizei length + + + void glProgramBinaryOES + GLuint program + GLenum binaryFormat + const void *binary + GLint length + + + + void glProgramBufferParametersIivNV + GLenum target + GLuint bindingIndex + GLuint wordIndex + GLsizei count + const GLint *params + + + void glProgramBufferParametersIuivNV + GLenum target + GLuint bindingIndex + GLuint wordIndex + GLsizei count + const GLuint *params + + + void glProgramBufferParametersfvNV + GLenum target + GLuint bindingIndex + GLuint wordIndex + GLsizei count + const GLfloat *params + + + void glProgramEnvParameter4dARB + GLenum target + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glProgramEnvParameter4dvARB + GLenum target + GLuint index + const GLdouble *params + + + void glProgramEnvParameter4fARB + GLenum target + GLuint index + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glProgramEnvParameter4fvARB + GLenum target + GLuint index + const GLfloat *params + + + void glProgramEnvParameterI4iNV + GLenum target + GLuint index + GLint x + GLint y + GLint z + GLint w + + + + void glProgramEnvParameterI4ivNV + GLenum target + GLuint index + const GLint *params + + + void glProgramEnvParameterI4uiNV + GLenum target + GLuint index + GLuint x + GLuint y + GLuint z + GLuint w + + + + void glProgramEnvParameterI4uivNV + GLenum target + GLuint index + const GLuint *params + + + void glProgramEnvParameters4fvEXT + GLenum target + GLuint index + GLsizei count + const GLfloat *params + + + + void glProgramEnvParametersI4ivNV + GLenum target + GLuint index + GLsizei count + const GLint *params + + + void glProgramEnvParametersI4uivNV + GLenum target + GLuint index + GLsizei count + const GLuint *params + + + void glProgramLocalParameter4dARB + GLenum target + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glProgramLocalParameter4dvARB + GLenum target + GLuint index + const GLdouble *params + + + void glProgramLocalParameter4fARB + GLenum target + GLuint index + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glProgramLocalParameter4fvARB + GLenum target + GLuint index + const GLfloat *params + + + void glProgramLocalParameterI4iNV + GLenum target + GLuint index + GLint x + GLint y + GLint z + GLint w + + + + void glProgramLocalParameterI4ivNV + GLenum target + GLuint index + const GLint *params + + + void glProgramLocalParameterI4uiNV + GLenum target + GLuint index + GLuint x + GLuint y + GLuint z + GLuint w + + + + void glProgramLocalParameterI4uivNV + GLenum target + GLuint index + const GLuint *params + + + void glProgramLocalParameters4fvEXT + GLenum target + GLuint index + GLsizei count + const GLfloat *params + + + + void glProgramLocalParametersI4ivNV + GLenum target + GLuint index + GLsizei count + const GLint *params + + + void glProgramLocalParametersI4uivNV + GLenum target + GLuint index + GLsizei count + const GLuint *params + + + void glProgramNamedParameter4dNV + GLuint id + GLsizei len + const GLubyte *name + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glProgramNamedParameter4dvNV + GLuint id + GLsizei len + const GLubyte *name + const GLdouble *v + + + + void glProgramNamedParameter4fNV + GLuint id + GLsizei len + const GLubyte *name + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glProgramNamedParameter4fvNV + GLuint id + GLsizei len + const GLubyte *name + const GLfloat *v + + + + void glProgramParameter4dNV + GLenum target + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glProgramParameter4dvNV + GLenum target + GLuint index + const GLdouble *v + + + + void glProgramParameter4fNV + GLenum target + GLuint index + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glProgramParameter4fvNV + GLenum target + GLuint index + const GLfloat *v + + + + void glProgramParameteri + GLuint program + GLenum pname + GLint value + + + void glProgramParameteriARB + GLuint program + GLenum pname + GLint value + + + + void glProgramParameteriEXT + GLuint program + GLenum pname + GLint value + + + + void glProgramParameters4dvNV + GLenum target + GLuint index + GLsizei count + const GLdouble *v + + + + void glProgramParameters4fvNV + GLenum target + GLuint index + GLsizei count + const GLfloat *v + + + + void glProgramPathFragmentInputGenNV + GLuint program + GLint location + GLenum genMode + GLint components + const GLfloat *coeffs + + + void glProgramStringARB + GLenum target + GLenum format + GLsizei len + const void *string + + + void glProgramSubroutineParametersuivNV + GLenum target + GLsizei count + const GLuint *params + + + void glProgramUniform1d + GLuint program + GLint location + GLdouble v0 + + + void glProgramUniform1dEXT + GLuint program + GLint location + GLdouble x + + + void glProgramUniform1dv + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform1dvEXT + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform1f + GLuint program + GLint location + GLfloat v0 + + + void glProgramUniform1fEXT + GLuint program + GLint location + GLfloat v0 + + + + void glProgramUniform1fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform1fvEXT + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + + void glProgramUniform1i + GLuint program + GLint location + GLint v0 + + + void glProgramUniform1i64ARB + GLuint program + GLint location + GLint64 x + + + void glProgramUniform1i64NV + GLuint program + GLint location + GLint64EXT x + + + void glProgramUniform1i64vARB + GLuint program + GLint location + GLsizei count + const GLint64 *value + + + void glProgramUniform1i64vNV + GLuint program + GLint location + GLsizei count + const GLint64EXT *value + + + void glProgramUniform1iEXT + GLuint program + GLint location + GLint v0 + + + + void glProgramUniform1iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform1ivEXT + GLuint program + GLint location + GLsizei count + const GLint *value + + + + void glProgramUniform1ui + GLuint program + GLint location + GLuint v0 + + + void glProgramUniform1ui64ARB + GLuint program + GLint location + GLuint64 x + + + void glProgramUniform1ui64NV + GLuint program + GLint location + GLuint64EXT x + + + void glProgramUniform1ui64vARB + GLuint program + GLint location + GLsizei count + const GLuint64 *value + + + void glProgramUniform1ui64vNV + GLuint program + GLint location + GLsizei count + const GLuint64EXT *value + + + void glProgramUniform1uiEXT + GLuint program + GLint location + GLuint v0 + + + + void glProgramUniform1uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + void glProgramUniform1uivEXT + GLuint program + GLint location + GLsizei count + const GLuint *value + + + + void glProgramUniform2d + GLuint program + GLint location + GLdouble v0 + GLdouble v1 + + + void glProgramUniform2dEXT + GLuint program + GLint location + GLdouble x + GLdouble y + + + void glProgramUniform2dv + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform2dvEXT + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform2f + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + + + void glProgramUniform2fEXT + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + + + + void glProgramUniform2fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform2fvEXT + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + + void glProgramUniform2i + GLuint program + GLint location + GLint v0 + GLint v1 + + + void glProgramUniform2i64ARB + GLuint program + GLint location + GLint64 x + GLint64 y + + + void glProgramUniform2i64NV + GLuint program + GLint location + GLint64EXT x + GLint64EXT y + + + void glProgramUniform2i64vARB + GLuint program + GLint location + GLsizei count + const GLint64 *value + + + void glProgramUniform2i64vNV + GLuint program + GLint location + GLsizei count + const GLint64EXT *value + + + void glProgramUniform2iEXT + GLuint program + GLint location + GLint v0 + GLint v1 + + + + void glProgramUniform2iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform2ivEXT + GLuint program + GLint location + GLsizei count + const GLint *value + + + + void glProgramUniform2ui + GLuint program + GLint location + GLuint v0 + GLuint v1 + + + void glProgramUniform2ui64ARB + GLuint program + GLint location + GLuint64 x + GLuint64 y + + + void glProgramUniform2ui64NV + GLuint program + GLint location + GLuint64EXT x + GLuint64EXT y + + + void glProgramUniform2ui64vARB + GLuint program + GLint location + GLsizei count + const GLuint64 *value + + + void glProgramUniform2ui64vNV + GLuint program + GLint location + GLsizei count + const GLuint64EXT *value + + + void glProgramUniform2uiEXT + GLuint program + GLint location + GLuint v0 + GLuint v1 + + + + void glProgramUniform2uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + void glProgramUniform2uivEXT + GLuint program + GLint location + GLsizei count + const GLuint *value + + + + void glProgramUniform3d + GLuint program + GLint location + GLdouble v0 + GLdouble v1 + GLdouble v2 + + + void glProgramUniform3dEXT + GLuint program + GLint location + GLdouble x + GLdouble y + GLdouble z + + + void glProgramUniform3dv + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform3dvEXT + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform3f + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glProgramUniform3fEXT + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + + void glProgramUniform3fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform3fvEXT + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + + void glProgramUniform3i + GLuint program + GLint location + GLint v0 + GLint v1 + GLint v2 + + + void glProgramUniform3i64ARB + GLuint program + GLint location + GLint64 x + GLint64 y + GLint64 z + + + void glProgramUniform3i64NV + GLuint program + GLint location + GLint64EXT x + GLint64EXT y + GLint64EXT z + + + void glProgramUniform3i64vARB + GLuint program + GLint location + GLsizei count + const GLint64 *value + + + void glProgramUniform3i64vNV + GLuint program + GLint location + GLsizei count + const GLint64EXT *value + + + void glProgramUniform3iEXT + GLuint program + GLint location + GLint v0 + GLint v1 + GLint v2 + + + + void glProgramUniform3iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform3ivEXT + GLuint program + GLint location + GLsizei count + const GLint *value + + + + void glProgramUniform3ui + GLuint program + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + + + void glProgramUniform3ui64ARB + GLuint program + GLint location + GLuint64 x + GLuint64 y + GLuint64 z + + + void glProgramUniform3ui64NV + GLuint program + GLint location + GLuint64EXT x + GLuint64EXT y + GLuint64EXT z + + + void glProgramUniform3ui64vARB + GLuint program + GLint location + GLsizei count + const GLuint64 *value + + + void glProgramUniform3ui64vNV + GLuint program + GLint location + GLsizei count + const GLuint64EXT *value + + + void glProgramUniform3uiEXT + GLuint program + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + + + + void glProgramUniform3uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + void glProgramUniform3uivEXT + GLuint program + GLint location + GLsizei count + const GLuint *value + + + + void glProgramUniform4d + GLuint program + GLint location + GLdouble v0 + GLdouble v1 + GLdouble v2 + GLdouble v3 + + + void glProgramUniform4dEXT + GLuint program + GLint location + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + void glProgramUniform4dv + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform4dvEXT + GLuint program + GLint location + GLsizei count + const GLdouble *value + + + void glProgramUniform4f + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glProgramUniform4fEXT + GLuint program + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + + void glProgramUniform4fv + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + void glProgramUniform4fvEXT + GLuint program + GLint location + GLsizei count + const GLfloat *value + + + + void glProgramUniform4i + GLuint program + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + void glProgramUniform4i64ARB + GLuint program + GLint location + GLint64 x + GLint64 y + GLint64 z + GLint64 w + + + void glProgramUniform4i64NV + GLuint program + GLint location + GLint64EXT x + GLint64EXT y + GLint64EXT z + GLint64EXT w + + + void glProgramUniform4i64vARB + GLuint program + GLint location + GLsizei count + const GLint64 *value + + + void glProgramUniform4i64vNV + GLuint program + GLint location + GLsizei count + const GLint64EXT *value + + + void glProgramUniform4iEXT + GLuint program + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + + void glProgramUniform4iv + GLuint program + GLint location + GLsizei count + const GLint *value + + + void glProgramUniform4ivEXT + GLuint program + GLint location + GLsizei count + const GLint *value + + + + void glProgramUniform4ui + GLuint program + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + void glProgramUniform4ui64ARB + GLuint program + GLint location + GLuint64 x + GLuint64 y + GLuint64 z + GLuint64 w + + + void glProgramUniform4ui64NV + GLuint program + GLint location + GLuint64EXT x + GLuint64EXT y + GLuint64EXT z + GLuint64EXT w + + + void glProgramUniform4ui64vARB + GLuint program + GLint location + GLsizei count + const GLuint64 *value + + + void glProgramUniform4ui64vNV + GLuint program + GLint location + GLsizei count + const GLuint64EXT *value + + + void glProgramUniform4uiEXT + GLuint program + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + + void glProgramUniform4uiv + GLuint program + GLint location + GLsizei count + const GLuint *value + + + void glProgramUniform4uivEXT + GLuint program + GLint location + GLsizei count + const GLuint *value + + + + void glProgramUniformHandleui64ARB + GLuint program + GLint location + GLuint64 value + + + void glProgramUniformHandleui64IMG + GLuint program + GLint location + GLuint64 value + + + + void glProgramUniformHandleui64NV + GLuint program + GLint location + GLuint64 value + + + void glProgramUniformHandleui64vARB + GLuint program + GLint location + GLsizei count + const GLuint64 *values + + + void glProgramUniformHandleui64vIMG + GLuint program + GLint location + GLsizei count + const GLuint64 *values + + + + void glProgramUniformHandleui64vNV + GLuint program + GLint location + GLsizei count + const GLuint64 *values + + + void glProgramUniformMatrix2dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix2dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix2fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix2fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix2x3dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix2x3dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix2x3fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix2x3fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix2x4dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix2x4dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix2x4fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix2x4fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix3dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix3dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix3fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix3fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix3x2dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix3x2dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix3x2fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix3x2fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix3x4dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix3x4dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix3x4fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix3x4fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix4dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix4dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix4fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix4fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix4x2dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix4x2dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix4x2fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix4x2fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformMatrix4x3dv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix4x3dvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glProgramUniformMatrix4x3fv + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glProgramUniformMatrix4x3fvEXT + GLuint program + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glProgramUniformui64NV + GLuint program + GLint location + GLuint64EXT value + + + void glProgramUniformui64vNV + GLuint program + GLint location + GLsizei count + const GLuint64EXT *value + + + void glProgramVertexLimitNV + GLenum target + GLint limit + + + void glProvokingVertex + GLenum mode + + + void glProvokingVertexEXT + GLenum mode + + + + void glPushAttrib + GLbitfield mask + + + + void glPushClientAttrib + GLbitfield mask + + + void glPushClientAttribDefaultEXT + GLbitfield mask + + + void glPushDebugGroup + GLenum source + GLuint id + GLsizei length + const GLchar *message + + + void glPushDebugGroupKHR + GLenum source + GLuint id + GLsizei length + const GLchar *message + + + + void glPushGroupMarkerEXT + GLsizei length + const GLchar *marker + + + void glPushMatrix + + + + void glPushName + GLuint name + + + + void glQueryCounter + GLuint id + GLenum target + + + void glQueryCounterEXT + GLuint id + GLenum target + + + + GLbitfield glQueryMatrixxOES + GLfixed *mantissa + GLint *exponent + + + void glQueryObjectParameteruiAMD + GLenum target + GLuint id + GLenum pname + GLuint param + + + GLint glQueryResourceNV + GLenum queryType + GLint tagId + GLuint count + GLint *buffer + + + void glQueryResourceTagNV + GLint tagId + const GLchar *tagString + + + void glRasterPos2d + GLdouble x + GLdouble y + + + + void glRasterPos2dv + const GLdouble *v + + + + void glRasterPos2f + GLfloat x + GLfloat y + + + + void glRasterPos2fv + const GLfloat *v + + + + void glRasterPos2i + GLint x + GLint y + + + + void glRasterPos2iv + const GLint *v + + + + void glRasterPos2s + GLshort x + GLshort y + + + + void glRasterPos2sv + const GLshort *v + + + + void glRasterPos2xOES + GLfixed x + GLfixed y + + + void glRasterPos2xvOES + const GLfixed *coords + + + void glRasterPos3d + GLdouble x + GLdouble y + GLdouble z + + + + void glRasterPos3dv + const GLdouble *v + + + + void glRasterPos3f + GLfloat x + GLfloat y + GLfloat z + + + + void glRasterPos3fv + const GLfloat *v + + + + void glRasterPos3i + GLint x + GLint y + GLint z + + + + void glRasterPos3iv + const GLint *v + + + + void glRasterPos3s + GLshort x + GLshort y + GLshort z + + + + void glRasterPos3sv + const GLshort *v + + + + void glRasterPos3xOES + GLfixed x + GLfixed y + GLfixed z + + + void glRasterPos3xvOES + const GLfixed *coords + + + void glRasterPos4d + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glRasterPos4dv + const GLdouble *v + + + + void glRasterPos4f + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glRasterPos4fv + const GLfloat *v + + + + void glRasterPos4i + GLint x + GLint y + GLint z + GLint w + + + + void glRasterPos4iv + const GLint *v + + + + void glRasterPos4s + GLshort x + GLshort y + GLshort z + GLshort w + + + + void glRasterPos4sv + const GLshort *v + + + + void glRasterPos4xOES + GLfixed x + GLfixed y + GLfixed z + GLfixed w + + + void glRasterPos4xvOES + const GLfixed *coords + + + void glRasterSamplesEXT + GLuint samples + GLboolean fixedsamplelocations + + + void glReadBuffer + GLenum src + + + + void glReadBufferIndexedEXT + GLenum src + GLint index + + + void glReadBufferNV + GLenum mode + + + void glReadInstrumentsSGIX + GLint marker + + + + void glReadPixels + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + void *pixels + + + + + void glReadnPixels + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + GLsizei bufSize + void *data + + + void glReadnPixelsARB + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + GLsizei bufSize + void *data + + + + void glReadnPixelsEXT + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + GLsizei bufSize + void *data + + + + void glReadnPixelsKHR + GLint x + GLint y + GLsizei width + GLsizei height + GLenum format + GLenum type + GLsizei bufSize + void *data + + + + GLboolean glReleaseKeyedMutexWin32EXT + GLuint memory + GLuint64 key + + + void glRectd + GLdouble x1 + GLdouble y1 + GLdouble x2 + GLdouble y2 + + + + void glRectdv + const GLdouble *v1 + const GLdouble *v2 + + + + void glRectf + GLfloat x1 + GLfloat y1 + GLfloat x2 + GLfloat y2 + + + + void glRectfv + const GLfloat *v1 + const GLfloat *v2 + + + + void glRecti + GLint x1 + GLint y1 + GLint x2 + GLint y2 + + + + void glRectiv + const GLint *v1 + const GLint *v2 + + + + void glRects + GLshort x1 + GLshort y1 + GLshort x2 + GLshort y2 + + + + void glRectsv + const GLshort *v1 + const GLshort *v2 + + + + void glRectxOES + GLfixed x1 + GLfixed y1 + GLfixed x2 + GLfixed y2 + + + void glRectxvOES + const GLfixed *v1 + const GLfixed *v2 + + + void glReferencePlaneSGIX + const GLdouble *equation + + + + void glReleaseShaderCompiler + + + void glRenderGpuMaskNV + GLbitfield mask + + + GLint glRenderMode + GLenum mode + + + + void glRenderbufferStorage + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + + + + void glRenderbufferStorageEXT + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + + + + + void glRenderbufferStorageMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + + void glRenderbufferStorageMultisampleANGLE + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + void glRenderbufferStorageMultisampleAPPLE + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + void glRenderbufferStorageMultisampleAdvancedAMD + GLenum target + GLsizei samples + GLsizei storageSamples + GLenum internalformat + GLsizei width + GLsizei height + + + void glRenderbufferStorageMultisampleCoverageNV + GLenum target + GLsizei coverageSamples + GLsizei colorSamples + GLenum internalformat + GLsizei width + GLsizei height + + + void glRenderbufferStorageMultisampleEXT + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + + + void glRenderbufferStorageMultisampleIMG + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + void glRenderbufferStorageMultisampleNV + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + + + + void glRenderbufferStorageOES + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + + + void glReplacementCodePointerSUN + GLenum type + GLsizei stride + const void **pointer + + + void glReplacementCodeubSUN + GLubyte code + + + void glReplacementCodeubvSUN + const GLubyte *code + + + void glReplacementCodeuiColor3fVertex3fSUN + GLuint rc + GLfloat r + GLfloat g + GLfloat b + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiColor3fVertex3fvSUN + const GLuint *rc + const GLfloat *c + const GLfloat *v + + + void glReplacementCodeuiColor4fNormal3fVertex3fSUN + GLuint rc + GLfloat r + GLfloat g + GLfloat b + GLfloat a + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiColor4fNormal3fVertex3fvSUN + const GLuint *rc + const GLfloat *c + const GLfloat *n + const GLfloat *v + + + void glReplacementCodeuiColor4ubVertex3fSUN + GLuint rc + GLubyte r + GLubyte g + GLubyte b + GLubyte a + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiColor4ubVertex3fvSUN + const GLuint *rc + const GLubyte *c + const GLfloat *v + + + void glReplacementCodeuiNormal3fVertex3fSUN + GLuint rc + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiNormal3fVertex3fvSUN + const GLuint *rc + const GLfloat *n + const GLfloat *v + + + void glReplacementCodeuiSUN + GLuint code + + + void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN + GLuint rc + GLfloat s + GLfloat t + GLfloat r + GLfloat g + GLfloat b + GLfloat a + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN + const GLuint *rc + const GLfloat *tc + const GLfloat *c + const GLfloat *n + const GLfloat *v + + + void glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN + GLuint rc + GLfloat s + GLfloat t + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN + const GLuint *rc + const GLfloat *tc + const GLfloat *n + const GLfloat *v + + + void glReplacementCodeuiTexCoord2fVertex3fSUN + GLuint rc + GLfloat s + GLfloat t + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiTexCoord2fVertex3fvSUN + const GLuint *rc + const GLfloat *tc + const GLfloat *v + + + void glReplacementCodeuiVertex3fSUN + GLuint rc + GLfloat x + GLfloat y + GLfloat z + + + void glReplacementCodeuiVertex3fvSUN + const GLuint *rc + const GLfloat *v + + + void glReplacementCodeuivSUN + const GLuint *code + + + void glReplacementCodeusSUN + GLushort code + + + void glReplacementCodeusvSUN + const GLushort *code + + + void glRequestResidentProgramsNV + GLsizei n + const GLuint *programs + + + + void glResetHistogram + GLenum target + + + + void glResetHistogramEXT + GLenum target + + + + + void glResetMemoryObjectParameterNV + GLuint memory + GLenum pname + + + void glResetMinmax + GLenum target + + + + void glResetMinmaxEXT + GLenum target + + + + + void glResizeBuffersMESA + + + void glResolveDepthValuesNV + + + void glResolveMultisampleFramebufferAPPLE + + + void glResumeTransformFeedback + + + void glResumeTransformFeedbackNV + + + + void glRotated + GLdouble angle + GLdouble x + GLdouble y + GLdouble z + + + + void glRotatef + GLfloat angle + GLfloat x + GLfloat y + GLfloat z + + + + void glRotatex + GLfixed angle + GLfixed x + GLfixed y + GLfixed z + + + void glRotatexOES + GLfixed angle + GLfixed x + GLfixed y + GLfixed z + + + void glSampleCoverage + GLfloat value + GLboolean invert + + + + void glSampleCoverageARB + GLfloat value + GLboolean invert + + + + void glSampleCoveragex + GLclampx value + GLboolean invert + + + void glSampleCoveragexOES + GLclampx value + GLboolean invert + + + void glSampleMapATI + GLuint dst + GLuint interp + GLenum swizzle + + + void glSampleMaskEXT + GLclampf value + GLboolean invert + + + void glSampleMaskIndexedNV + GLuint index + GLbitfield mask + + + void glSampleMaskSGIS + GLclampf value + GLboolean invert + + + + + void glSampleMaski + GLuint maskNumber + GLbitfield mask + + + void glSamplePatternEXT + GLenum pattern + + + void glSamplePatternSGIS + GLenum pattern + + + + + void glSamplerParameterIiv + GLuint sampler + GLenum pname + const GLint *param + + + void glSamplerParameterIivEXT + GLuint sampler + GLenum pname + const GLint *param + + + + void glSamplerParameterIivOES + GLuint sampler + GLenum pname + const GLint *param + + + + void glSamplerParameterIuiv + GLuint sampler + GLenum pname + const GLuint *param + + + void glSamplerParameterIuivEXT + GLuint sampler + GLenum pname + const GLuint *param + + + + void glSamplerParameterIuivOES + GLuint sampler + GLenum pname + const GLuint *param + + + + void glSamplerParameterf + GLuint sampler + GLenum pname + GLfloat param + + + void glSamplerParameterfv + GLuint sampler + GLenum pname + const GLfloat *param + + + void glSamplerParameteri + GLuint sampler + GLenum pname + GLint param + + + void glSamplerParameteriv + GLuint sampler + GLenum pname + const GLint *param + + + void glScaled + GLdouble x + GLdouble y + GLdouble z + + + + void glScalef + GLfloat x + GLfloat y + GLfloat z + + + + void glScalex + GLfixed x + GLfixed y + GLfixed z + + + void glScalexOES + GLfixed x + GLfixed y + GLfixed z + + + void glScissor + GLint x + GLint y + GLsizei width + GLsizei height + + + + void glScissorArrayv + GLuint first + GLsizei count + const GLint *v + + + void glScissorArrayvNV + GLuint first + GLsizei count + const GLint *v + + + + void glScissorArrayvOES + GLuint first + GLsizei count + const GLint *v + + + + void glScissorExclusiveArrayvNV + GLuint first + GLsizei count + const GLint *v + + + void glScissorExclusiveNV + GLint x + GLint y + GLsizei width + GLsizei height + + + void glScissorIndexed + GLuint index + GLint left + GLint bottom + GLsizei width + GLsizei height + + + void glScissorIndexedNV + GLuint index + GLint left + GLint bottom + GLsizei width + GLsizei height + + + + void glScissorIndexedOES + GLuint index + GLint left + GLint bottom + GLsizei width + GLsizei height + + + + void glScissorIndexedv + GLuint index + const GLint *v + + + void glScissorIndexedvNV + GLuint index + const GLint *v + + + + void glScissorIndexedvOES + GLuint index + const GLint *v + + + + void glSecondaryColor3b + GLbyte red + GLbyte green + GLbyte blue + + + + void glSecondaryColor3bEXT + GLbyte red + GLbyte green + GLbyte blue + + + + + void glSecondaryColor3bv + const GLbyte *v + + + + void glSecondaryColor3bvEXT + const GLbyte *v + + + + + void glSecondaryColor3d + GLdouble red + GLdouble green + GLdouble blue + + + + void glSecondaryColor3dEXT + GLdouble red + GLdouble green + GLdouble blue + + + + + void glSecondaryColor3dv + const GLdouble *v + + + + void glSecondaryColor3dvEXT + const GLdouble *v + + + + + void glSecondaryColor3f + GLfloat red + GLfloat green + GLfloat blue + + + + void glSecondaryColor3fEXT + GLfloat red + GLfloat green + GLfloat blue + + + + + void glSecondaryColor3fv + const GLfloat *v + + + + void glSecondaryColor3fvEXT + const GLfloat *v + + + + + void glSecondaryColor3hNV + GLhalfNV red + GLhalfNV green + GLhalfNV blue + + + + void glSecondaryColor3hvNV + const GLhalfNV *v + + + + void glSecondaryColor3i + GLint red + GLint green + GLint blue + + + + void glSecondaryColor3iEXT + GLint red + GLint green + GLint blue + + + + + void glSecondaryColor3iv + const GLint *v + + + + void glSecondaryColor3ivEXT + const GLint *v + + + + + void glSecondaryColor3s + GLshort red + GLshort green + GLshort blue + + + + void glSecondaryColor3sEXT + GLshort red + GLshort green + GLshort blue + + + + + void glSecondaryColor3sv + const GLshort *v + + + + void glSecondaryColor3svEXT + const GLshort *v + + + + + void glSecondaryColor3ub + GLubyte red + GLubyte green + GLubyte blue + + + + void glSecondaryColor3ubEXT + GLubyte red + GLubyte green + GLubyte blue + + + + + void glSecondaryColor3ubv + const GLubyte *v + + + + void glSecondaryColor3ubvEXT + const GLubyte *v + + + + + void glSecondaryColor3ui + GLuint red + GLuint green + GLuint blue + + + + void glSecondaryColor3uiEXT + GLuint red + GLuint green + GLuint blue + + + + + void glSecondaryColor3uiv + const GLuint *v + + + + void glSecondaryColor3uivEXT + const GLuint *v + + + + + void glSecondaryColor3us + GLushort red + GLushort green + GLushort blue + + + + void glSecondaryColor3usEXT + GLushort red + GLushort green + GLushort blue + + + + + void glSecondaryColor3usv + const GLushort *v + + + + void glSecondaryColor3usvEXT + const GLushort *v + + + + + void glSecondaryColorFormatNV + GLint size + GLenum type + GLsizei stride + + + void glSecondaryColorP3ui + GLenum type + GLuint color + + + void glSecondaryColorP3uiv + GLenum type + const GLuint *color + + + void glSecondaryColorPointer + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glSecondaryColorPointerEXT + GLint size + GLenum type + GLsizei stride + const void *pointer + + + + void glSecondaryColorPointerListIBM + GLint size + GLenum type + GLint stride + const void **pointer + GLint ptrstride + + + void glSelectBuffer + GLsizei size + GLuint *buffer + + + + void glSelectPerfMonitorCountersAMD + GLuint monitor + GLboolean enable + GLuint group + GLint numCounters + GLuint *counterList + + + void glSemaphoreParameterivNV + GLuint semaphore + GLenum pname + const GLint *params + + + void glSemaphoreParameterui64vEXT + GLuint semaphore + GLenum pname + const GLuint64 *params + + + void glSeparableFilter2D + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *row + const void *column + + + + + void glSeparableFilter2DEXT + GLenum target + GLenum internalformat + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *row + const void *column + + + + + void glSetFenceAPPLE + GLuint fence + + + void glSetFenceNV + GLuint fence + GLenum condition + + + void glSetFragmentShaderConstantATI + GLuint dst + const GLfloat *value + + + void glSetInvariantEXT + GLuint id + GLenum type + const void *addr + + + void glSetLocalConstantEXT + GLuint id + GLenum type + const void *addr + + + void glSetMultisamplefvAMD + GLenum pname + GLuint index + const GLfloat *val + + + void glShadeModel + GLenum mode + + + + void glShaderBinary + GLsizei count + const GLuint *shaders + GLenum binaryFormat + const void *binary + GLsizei length + + + void glShaderOp1EXT + GLenum op + GLuint res + GLuint arg1 + + + void glShaderOp2EXT + GLenum op + GLuint res + GLuint arg1 + GLuint arg2 + + + void glShaderOp3EXT + GLenum op + GLuint res + GLuint arg1 + GLuint arg2 + GLuint arg3 + + + void glShaderSource + GLuint shader + GLsizei count + const GLchar *const*string + const GLint *length + + + void glShaderSourceARB + GLhandleARB shaderObj + GLsizei count + const GLcharARB **string + const GLint *length + + + + void glShaderStorageBlockBinding + GLuint program + GLuint storageBlockIndex + GLuint storageBlockBinding + + + void glShadingRateImageBarrierNV + GLboolean synchronize + + + void glShadingRateQCOM + GLenum rate + + + void glShadingRateImagePaletteNV + GLuint viewport + GLuint first + GLsizei count + const GLenum *rates + + + void glShadingRateSampleOrderNV + GLenum order + + + void glShadingRateSampleOrderCustomNV + GLenum rate + GLuint samples + const GLint *locations + + + void glSharpenTexFuncSGIS + GLenum target + GLsizei n + const GLfloat *points + + + + void glSignalSemaphoreEXT + GLuint semaphore + GLuint numBufferBarriers + const GLuint *buffers + GLuint numTextureBarriers + const GLuint *textures + const GLenum *dstLayouts + + + void glSignalSemaphoreui64NVX + GLuint signalGpu + GLsizei fenceObjectCount + const GLuint *semaphoreArray + const GLuint64 *fenceValueArray + + + void glSpecializeShader + GLuint shader + const GLchar *pEntryPoint + GLuint numSpecializationConstants + const GLuint *pConstantIndex + const GLuint *pConstantValue + + + void glSpecializeShaderARB + GLuint shader + const GLchar *pEntryPoint + GLuint numSpecializationConstants + const GLuint *pConstantIndex + const GLuint *pConstantValue + + + + void glSpriteParameterfSGIX + GLenum pname + GLfloat param + + + + void glSpriteParameterfvSGIX + GLenum pname + const GLfloat *params + + + + void glSpriteParameteriSGIX + GLenum pname + GLint param + + + + void glSpriteParameterivSGIX + GLenum pname + const GLint *params + + + + void glStartInstrumentsSGIX + + + + void glStartTilingQCOM + GLuint x + GLuint y + GLuint width + GLuint height + GLbitfield preserveMask + + + void glStateCaptureNV + GLuint state + GLenum mode + + + void glStencilClearTagEXT + GLsizei stencilTagBits + GLuint stencilClearTag + + + + void glStencilFillPathInstancedNV + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLenum fillMode + GLuint mask + GLenum transformType + const GLfloat *transformValues + + + void glStencilFillPathNV + GLuint path + GLenum fillMode + GLuint mask + + + void glStencilFunc + GLenum func + GLint ref + GLuint mask + + + + void glStencilFuncSeparate + GLenum face + GLenum func + GLint ref + GLuint mask + + + void glStencilFuncSeparateATI + GLenum frontfunc + GLenum backfunc + GLint ref + GLuint mask + + + void glStencilMask + GLuint mask + + + + void glStencilMaskSeparate + GLenum face + GLuint mask + + + void glStencilOp + GLenum fail + GLenum zfail + GLenum zpass + + + + void glStencilOpSeparate + GLenum face + GLenum sfail + GLenum dpfail + GLenum dppass + + + void glStencilOpSeparateATI + GLenum face + GLenum sfail + GLenum dpfail + GLenum dppass + + + + void glStencilOpValueAMD + GLenum face + GLuint value + + + void glStencilStrokePathInstancedNV + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLint reference + GLuint mask + GLenum transformType + const GLfloat *transformValues + + + void glStencilStrokePathNV + GLuint path + GLint reference + GLuint mask + + + void glStencilThenCoverFillPathInstancedNV + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLenum fillMode + GLuint mask + GLenum coverMode + GLenum transformType + const GLfloat *transformValues + + + void glStencilThenCoverFillPathNV + GLuint path + GLenum fillMode + GLuint mask + GLenum coverMode + + + void glStencilThenCoverStrokePathInstancedNV + GLsizei numPaths + GLenum pathNameType + const void *paths + GLuint pathBase + GLint reference + GLuint mask + GLenum coverMode + GLenum transformType + const GLfloat *transformValues + + + void glStencilThenCoverStrokePathNV + GLuint path + GLint reference + GLuint mask + GLenum coverMode + + + void glStopInstrumentsSGIX + GLint marker + + + + void glStringMarkerGREMEDY + GLsizei len + const void *string + + + void glSubpixelPrecisionBiasNV + GLuint xbits + GLuint ybits + + + void glSwizzleEXT + GLuint res + GLuint in + GLenum outX + GLenum outY + GLenum outZ + GLenum outW + + + void glSyncTextureINTEL + GLuint texture + + + void glTagSampleBufferSGIX + + + + void glTangent3bEXT + GLbyte tx + GLbyte ty + GLbyte tz + + + + void glTangent3bvEXT + const GLbyte *v + + + void glTangent3dEXT + GLdouble tx + GLdouble ty + GLdouble tz + + + + void glTangent3dvEXT + const GLdouble *v + + + void glTangent3fEXT + GLfloat tx + GLfloat ty + GLfloat tz + + + + void glTangent3fvEXT + const GLfloat *v + + + void glTangent3iEXT + GLint tx + GLint ty + GLint tz + + + + void glTangent3ivEXT + const GLint *v + + + void glTangent3sEXT + GLshort tx + GLshort ty + GLshort tz + + + + void glTangent3svEXT + const GLshort *v + + + void glTangentPointerEXT + GLenum type + GLsizei stride + const void *pointer + + + void glTbufferMask3DFX + GLuint mask + + + void glTessellationFactorAMD + GLfloat factor + + + void glTessellationModeAMD + GLenum mode + + + GLboolean glTestFenceAPPLE + GLuint fence + + + GLboolean glTestFenceNV + GLuint fence + + + + GLboolean glTestObjectAPPLE + GLenum object + GLuint name + + + void glTexAttachMemoryNV + GLenum target + GLuint memory + GLuint64 offset + + + void glTexBuffer + GLenum target + GLenum internalformat + GLuint buffer + + + void glTexBufferARB + GLenum target + GLenum internalformat + GLuint buffer + + + + + void glTexBufferEXT + GLenum target + GLenum internalformat + GLuint buffer + + + + void glTexBufferOES + GLenum target + GLenum internalformat + GLuint buffer + + + + void glTexBufferRange + GLenum target + GLenum internalformat + GLuint buffer + GLintptr offset + GLsizeiptr size + + + void glTexBufferRangeEXT + GLenum target + GLenum internalformat + GLuint buffer + GLintptr offset + GLsizeiptr size + + + + void glTexBufferRangeOES + GLenum target + GLenum internalformat + GLuint buffer + GLintptr offset + GLsizeiptr size + + + + void glTexBumpParameterfvATI + GLenum pname + const GLfloat *param + + + void glTexBumpParameterivATI + GLenum pname + const GLint *param + + + void glTexCoord1bOES + GLbyte s + + + void glTexCoord1bvOES + const GLbyte *coords + + + void glTexCoord1d + GLdouble s + + + + void glTexCoord1dv + const GLdouble *v + + + + void glTexCoord1f + GLfloat s + + + + void glTexCoord1fv + const GLfloat *v + + + + void glTexCoord1hNV + GLhalfNV s + + + + void glTexCoord1hvNV + const GLhalfNV *v + + + + void glTexCoord1i + GLint s + + + + void glTexCoord1iv + const GLint *v + + + + void glTexCoord1s + GLshort s + + + + void glTexCoord1sv + const GLshort *v + + + + void glTexCoord1xOES + GLfixed s + + + void glTexCoord1xvOES + const GLfixed *coords + + + void glTexCoord2bOES + GLbyte s + GLbyte t + + + void glTexCoord2bvOES + const GLbyte *coords + + + void glTexCoord2d + GLdouble s + GLdouble t + + + + void glTexCoord2dv + const GLdouble *v + + + + void glTexCoord2f + GLfloat s + GLfloat t + + + + void glTexCoord2fColor3fVertex3fSUN + GLfloat s + GLfloat t + GLfloat r + GLfloat g + GLfloat b + GLfloat x + GLfloat y + GLfloat z + + + void glTexCoord2fColor3fVertex3fvSUN + const GLfloat *tc + const GLfloat *c + const GLfloat *v + + + void glTexCoord2fColor4fNormal3fVertex3fSUN + GLfloat s + GLfloat t + GLfloat r + GLfloat g + GLfloat b + GLfloat a + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glTexCoord2fColor4fNormal3fVertex3fvSUN + const GLfloat *tc + const GLfloat *c + const GLfloat *n + const GLfloat *v + + + void glTexCoord2fColor4ubVertex3fSUN + GLfloat s + GLfloat t + GLubyte r + GLubyte g + GLubyte b + GLubyte a + GLfloat x + GLfloat y + GLfloat z + + + void glTexCoord2fColor4ubVertex3fvSUN + const GLfloat *tc + const GLubyte *c + const GLfloat *v + + + void glTexCoord2fNormal3fVertex3fSUN + GLfloat s + GLfloat t + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + + + void glTexCoord2fNormal3fVertex3fvSUN + const GLfloat *tc + const GLfloat *n + const GLfloat *v + + + void glTexCoord2fVertex3fSUN + GLfloat s + GLfloat t + GLfloat x + GLfloat y + GLfloat z + + + void glTexCoord2fVertex3fvSUN + const GLfloat *tc + const GLfloat *v + + + void glTexCoord2fv + const GLfloat *v + + + + void glTexCoord2hNV + GLhalfNV s + GLhalfNV t + + + + void glTexCoord2hvNV + const GLhalfNV *v + + + + void glTexCoord2i + GLint s + GLint t + + + + void glTexCoord2iv + const GLint *v + + + + void glTexCoord2s + GLshort s + GLshort t + + + + void glTexCoord2sv + const GLshort *v + + + + void glTexCoord2xOES + GLfixed s + GLfixed t + + + void glTexCoord2xvOES + const GLfixed *coords + + + void glTexCoord3bOES + GLbyte s + GLbyte t + GLbyte r + + + void glTexCoord3bvOES + const GLbyte *coords + + + void glTexCoord3d + GLdouble s + GLdouble t + GLdouble r + + + + void glTexCoord3dv + const GLdouble *v + + + + void glTexCoord3f + GLfloat s + GLfloat t + GLfloat r + + + + void glTexCoord3fv + const GLfloat *v + + + + void glTexCoord3hNV + GLhalfNV s + GLhalfNV t + GLhalfNV r + + + + void glTexCoord3hvNV + const GLhalfNV *v + + + + void glTexCoord3i + GLint s + GLint t + GLint r + + + + void glTexCoord3iv + const GLint *v + + + + void glTexCoord3s + GLshort s + GLshort t + GLshort r + + + + void glTexCoord3sv + const GLshort *v + + + + void glTexCoord3xOES + GLfixed s + GLfixed t + GLfixed r + + + void glTexCoord3xvOES + const GLfixed *coords + + + void glTexCoord4bOES + GLbyte s + GLbyte t + GLbyte r + GLbyte q + + + void glTexCoord4bvOES + const GLbyte *coords + + + void glTexCoord4d + GLdouble s + GLdouble t + GLdouble r + GLdouble q + + + + void glTexCoord4dv + const GLdouble *v + + + + void glTexCoord4f + GLfloat s + GLfloat t + GLfloat r + GLfloat q + + + + void glTexCoord4fColor4fNormal3fVertex4fSUN + GLfloat s + GLfloat t + GLfloat p + GLfloat q + GLfloat r + GLfloat g + GLfloat b + GLfloat a + GLfloat nx + GLfloat ny + GLfloat nz + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + void glTexCoord4fColor4fNormal3fVertex4fvSUN + const GLfloat *tc + const GLfloat *c + const GLfloat *n + const GLfloat *v + + + void glTexCoord4fVertex4fSUN + GLfloat s + GLfloat t + GLfloat p + GLfloat q + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + void glTexCoord4fVertex4fvSUN + const GLfloat *tc + const GLfloat *v + + + void glTexCoord4fv + const GLfloat *v + + + + void glTexCoord4hNV + GLhalfNV s + GLhalfNV t + GLhalfNV r + GLhalfNV q + + + + void glTexCoord4hvNV + const GLhalfNV *v + + + + void glTexCoord4i + GLint s + GLint t + GLint r + GLint q + + + + void glTexCoord4iv + const GLint *v + + + + void glTexCoord4s + GLshort s + GLshort t + GLshort r + GLshort q + + + + void glTexCoord4sv + const GLshort *v + + + + void glTexCoord4xOES + GLfixed s + GLfixed t + GLfixed r + GLfixed q + + + void glTexCoord4xvOES + const GLfixed *coords + + + void glTexCoordFormatNV + GLint size + GLenum type + GLsizei stride + + + void glTexCoordP1ui + GLenum type + GLuint coords + + + void glTexCoordP1uiv + GLenum type + const GLuint *coords + + + void glTexCoordP2ui + GLenum type + GLuint coords + + + void glTexCoordP2uiv + GLenum type + const GLuint *coords + + + void glTexCoordP3ui + GLenum type + GLuint coords + + + void glTexCoordP3uiv + GLenum type + const GLuint *coords + + + void glTexCoordP4ui + GLenum type + GLuint coords + + + void glTexCoordP4uiv + GLenum type + const GLuint *coords + + + void glTexCoordPointer + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glTexCoordPointerEXT + GLint size + GLenum type + GLsizei stride + GLsizei count + const void *pointer + + + void glTexCoordPointerListIBM + GLint size + GLenum type + GLint stride + const void **pointer + GLint ptrstride + + + void glTexCoordPointervINTEL + GLint size + GLenum type + const void **pointer + + + void glTexEnvf + GLenum target + GLenum pname + GLfloat param + + + + void glTexEnvfv + GLenum target + GLenum pname + const GLfloat *params + + + + void glTexEnvi + GLenum target + GLenum pname + GLint param + + + + void glTexEnviv + GLenum target + GLenum pname + const GLint *params + + + + void glTexEnvx + GLenum target + GLenum pname + GLfixed param + + + void glTexEnvxOES + GLenum target + GLenum pname + GLfixed param + + + void glTexEnvxv + GLenum target + GLenum pname + const GLfixed *params + + + void glTexEnvxvOES + GLenum target + GLenum pname + const GLfixed *params + + + void glTexEstimateMotionQCOM + GLuint ref + GLuint target + GLuint output + + + void glTexEstimateMotionRegionsQCOM + GLuint ref + GLuint target + GLuint output + GLuint mask + + + void glExtrapolateTex2DQCOM + GLuint src1 + GLuint src2 + GLuint output + GLfloat scaleFactor + + + void glTexFilterFuncSGIS + GLenum target + GLenum filter + GLsizei n + const GLfloat *weights + + + + void glTexGend + GLenum coord + GLenum pname + GLdouble param + + + + void glTexGendv + GLenum coord + GLenum pname + const GLdouble *params + + + + void glTexGenf + GLenum coord + GLenum pname + GLfloat param + + + + void glTexGenfOES + GLenum coord + GLenum pname + GLfloat param + + + void glTexGenfv + GLenum coord + GLenum pname + const GLfloat *params + + + + void glTexGenfvOES + GLenum coord + GLenum pname + const GLfloat *params + + + void glTexGeni + GLenum coord + GLenum pname + GLint param + + + + void glTexGeniOES + GLenum coord + GLenum pname + GLint param + + + void glTexGeniv + GLenum coord + GLenum pname + const GLint *params + + + + void glTexGenivOES + GLenum coord + GLenum pname + const GLint *params + + + void glTexGenxOES + GLenum coord + GLenum pname + GLfixed param + + + void glTexGenxvOES + GLenum coord + GLenum pname + const GLfixed *params + + + void glTexImage1D + GLenum target + GLint level + GLint internalformat + GLsizei width + GLint border + GLenum format + GLenum type + const void *pixels + + + + + void glTexImage2D + GLenum target + GLint level + GLint internalformat + GLsizei width + GLsizei height + GLint border + GLenum format + GLenum type + const void *pixels + + + + + void glTexImage2DMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLboolean fixedsamplelocations + + + void glTexImage2DMultisampleCoverageNV + GLenum target + GLsizei coverageSamples + GLsizei colorSamples + GLint internalFormat + GLsizei width + GLsizei height + GLboolean fixedSampleLocations + + + void glTexImage3D + GLenum target + GLint level + GLint internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const void *pixels + + + + + void glTexImage3DEXT + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const void *pixels + + + + + void glTexImage3DMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + void glTexImage3DMultisampleCoverageNV + GLenum target + GLsizei coverageSamples + GLsizei colorSamples + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedSampleLocations + + + void glTexImage3DOES + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const void *pixels + + + void glTexImage4DSGIS + GLenum target + GLint level + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLsizei size4d + GLint border + GLenum format + GLenum type + const void *pixels + + + + void glTexPageCommitmentARB + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLboolean commit + + + void glTexPageCommitmentEXT + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLboolean commit + + + + void glTexPageCommitmentMemNV + GLenum target + GLint layer + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLuint memory + GLuint64 offset + GLboolean commit + + + void glTexParameterIiv + GLenum target + GLenum pname + const GLint *params + + + + void glTexParameterIivEXT + GLenum target + GLenum pname + const GLint *params + + + + void glTexParameterIivOES + GLenum target + GLenum pname + const GLint *params + + + + void glTexParameterIuiv + GLenum target + GLenum pname + const GLuint *params + + + + void glTexParameterIuivEXT + GLenum target + GLenum pname + const GLuint *params + + + + void glTexParameterIuivOES + GLenum target + GLenum pname + const GLuint *params + + + + void glTexParameterf + GLenum target + GLenum pname + GLfloat param + + + + void glTexParameterfv + GLenum target + GLenum pname + const GLfloat *params + + + + void glTexParameteri + GLenum target + GLenum pname + GLint param + + + + void glTexParameteriv + GLenum target + GLenum pname + const GLint *params + + + + void glTexParameterx + GLenum target + GLenum pname + GLfixed param + + + void glTexParameterxOES + GLenum target + GLenum pname + GLfixed param + + + void glTexParameterxv + GLenum target + GLenum pname + const GLfixed *params + + + void glTexParameterxvOES + GLenum target + GLenum pname + const GLfixed *params + + + void glTexRenderbufferNV + GLenum target + GLuint renderbuffer + + + void glTexStorage1D + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + + + void glTexStorage1DEXT + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + + + + void glTexStorage2D + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + + + void glTexStorage2DEXT + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + + + + void glTexStorage2DMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLboolean fixedsamplelocations + + + void glTexStorage3D + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + + + void glTexStorage3DEXT + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + + + + void glTexStorage3DMultisample + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + void glTexStorage3DMultisampleOES + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + + void TexStorageAttribs2DEXT + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + const int *attrib_list + + + void TexStorageAttribs3DEXT + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + const int *attrib_list + + + void glTexStorageMem1DEXT + GLenum target + GLsizei levels + GLenum internalFormat + GLsizei width + GLuint memory + GLuint64 offset + + + void glTexStorageMem2DEXT + GLenum target + GLsizei levels + GLenum internalFormat + GLsizei width + GLsizei height + GLuint memory + GLuint64 offset + + + void glTexStorageMem2DMultisampleEXT + GLenum target + GLsizei samples + GLenum internalFormat + GLsizei width + GLsizei height + GLboolean fixedSampleLocations + GLuint memory + GLuint64 offset + + + void glTexStorageMem3DEXT + GLenum target + GLsizei levels + GLenum internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLuint memory + GLuint64 offset + + + void glTexStorageMem3DMultisampleEXT + GLenum target + GLsizei samples + GLenum internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedSampleLocations + GLuint memory + GLuint64 offset + + + void glTexStorageSparseAMD + GLenum target + GLenum internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLsizei layers + GLbitfield flags + + + void glTexSubImage1D + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const void *pixels + + + + + void glTexSubImage1DEXT + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const void *pixels + + + + + void glTexSubImage2D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *pixels + + + + + void glTexSubImage2DEXT + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *pixels + + + + + void glTexSubImage3D + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *pixels + + + + + void glTexSubImage3DEXT + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *pixels + + + + + void glTexSubImage3DOES + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *pixels + + + void glTexSubImage4DSGIS + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLint woffset + GLsizei width + GLsizei height + GLsizei depth + GLsizei size4d + GLenum format + GLenum type + const void *pixels + + + + void glTextureAttachMemoryNV + GLuint texture + GLuint memory + GLuint64 offset + + + void glTextureBarrier + + + void glTextureBarrierNV + + + + void glTextureBuffer + GLuint texture + GLenum internalformat + GLuint buffer + + + void glTextureBufferEXT + GLuint texture + GLenum target + GLenum internalformat + GLuint buffer + + + void glTextureBufferRange + GLuint texture + GLenum internalformat + GLuint buffer + GLintptr offset + GLsizeiptr size + + + void glTextureBufferRangeEXT + GLuint texture + GLenum target + GLenum internalformat + GLuint buffer + GLintptr offset + GLsizeiptr size + + + void glTextureColorMaskSGIS + GLboolean red + GLboolean green + GLboolean blue + GLboolean alpha + + + + void glTextureFoveationParametersQCOM + GLuint texture + GLuint layer + GLuint focalPoint + GLfloat focalX + GLfloat focalY + GLfloat gainX + GLfloat gainY + GLfloat foveaArea + + + void glTextureImage1DEXT + GLuint texture + GLenum target + GLint level + GLint internalformat + GLsizei width + GLint border + GLenum format + GLenum type + const void *pixels + + + void glTextureImage2DEXT + GLuint texture + GLenum target + GLint level + GLint internalformat + GLsizei width + GLsizei height + GLint border + GLenum format + GLenum type + const void *pixels + + + void glTextureImage2DMultisampleCoverageNV + GLuint texture + GLenum target + GLsizei coverageSamples + GLsizei colorSamples + GLint internalFormat + GLsizei width + GLsizei height + GLboolean fixedSampleLocations + + + void glTextureImage2DMultisampleNV + GLuint texture + GLenum target + GLsizei samples + GLint internalFormat + GLsizei width + GLsizei height + GLboolean fixedSampleLocations + + + void glTextureImage3DEXT + GLuint texture + GLenum target + GLint level + GLint internalformat + GLsizei width + GLsizei height + GLsizei depth + GLint border + GLenum format + GLenum type + const void *pixels + + + void glTextureImage3DMultisampleCoverageNV + GLuint texture + GLenum target + GLsizei coverageSamples + GLsizei colorSamples + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedSampleLocations + + + void glTextureImage3DMultisampleNV + GLuint texture + GLenum target + GLsizei samples + GLint internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedSampleLocations + + + void glTextureLightEXT + GLenum pname + + + void glTextureMaterialEXT + GLenum face + GLenum mode + + + void glTextureNormalEXT + GLenum mode + + + void glTexturePageCommitmentEXT + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLboolean commit + + + void glTexturePageCommitmentMemNV + GLuint texture + GLint layer + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLuint memory + GLuint64 offset + GLboolean commit + + + void glTextureParameterIiv + GLuint texture + GLenum pname + const GLint *params + + + void glTextureParameterIivEXT + GLuint texture + GLenum target + GLenum pname + const GLint *params + + + void glTextureParameterIuiv + GLuint texture + GLenum pname + const GLuint *params + + + void glTextureParameterIuivEXT + GLuint texture + GLenum target + GLenum pname + const GLuint *params + + + void glTextureParameterf + GLuint texture + GLenum pname + GLfloat param + + + void glTextureParameterfEXT + GLuint texture + GLenum target + GLenum pname + GLfloat param + + + + void glTextureParameterfv + GLuint texture + GLenum pname + const GLfloat *param + + + void glTextureParameterfvEXT + GLuint texture + GLenum target + GLenum pname + const GLfloat *params + + + void glTextureParameteri + GLuint texture + GLenum pname + GLint param + + + void glTextureParameteriEXT + GLuint texture + GLenum target + GLenum pname + GLint param + + + + void glTextureParameteriv + GLuint texture + GLenum pname + const GLint *param + + + void glTextureParameterivEXT + GLuint texture + GLenum target + GLenum pname + const GLint *params + + + void glTextureRangeAPPLE + GLenum target + GLsizei length + const void *pointer + + + void glTextureRenderbufferEXT + GLuint texture + GLenum target + GLuint renderbuffer + + + void glTextureStorage1D + GLuint texture + GLsizei levels + GLenum internalformat + GLsizei width + + + void glTextureStorage1DEXT + GLuint texture + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + + + void glTextureStorage2D + GLuint texture + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + + + void glTextureStorage2DEXT + GLuint texture + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + + + void glTextureStorage2DMultisample + GLuint texture + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLboolean fixedsamplelocations + + + void glTextureStorage2DMultisampleEXT + GLuint texture + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLboolean fixedsamplelocations + + + void glTextureStorage3D + GLuint texture + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + + + void glTextureStorage3DEXT + GLuint texture + GLenum target + GLsizei levels + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + + + void glTextureStorage3DMultisample + GLuint texture + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + void glTextureStorage3DMultisampleEXT + GLuint texture + GLenum target + GLsizei samples + GLenum internalformat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedsamplelocations + + + void glTextureStorageMem1DEXT + GLuint texture + GLsizei levels + GLenum internalFormat + GLsizei width + GLuint memory + GLuint64 offset + + + void glTextureStorageMem2DEXT + GLuint texture + GLsizei levels + GLenum internalFormat + GLsizei width + GLsizei height + GLuint memory + GLuint64 offset + + + void glTextureStorageMem2DMultisampleEXT + GLuint texture + GLsizei samples + GLenum internalFormat + GLsizei width + GLsizei height + GLboolean fixedSampleLocations + GLuint memory + GLuint64 offset + + + void glTextureStorageMem3DEXT + GLuint texture + GLsizei levels + GLenum internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLuint memory + GLuint64 offset + + + void glTextureStorageMem3DMultisampleEXT + GLuint texture + GLsizei samples + GLenum internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLboolean fixedSampleLocations + GLuint memory + GLuint64 offset + + + void glTextureStorageSparseAMD + GLuint texture + GLenum target + GLenum internalFormat + GLsizei width + GLsizei height + GLsizei depth + GLsizei layers + GLbitfield flags + + + void glTextureSubImage1D + GLuint texture + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const void *pixels + + + void glTextureSubImage1DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLsizei width + GLenum format + GLenum type + const void *pixels + + + void glTextureSubImage2D + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *pixels + + + void glTextureSubImage2DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLsizei width + GLsizei height + GLenum format + GLenum type + const void *pixels + + + void glTextureSubImage3D + GLuint texture + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *pixels + + + void glTextureSubImage3DEXT + GLuint texture + GLenum target + GLint level + GLint xoffset + GLint yoffset + GLint zoffset + GLsizei width + GLsizei height + GLsizei depth + GLenum format + GLenum type + const void *pixels + + + void glTextureView + GLuint texture + GLenum target + GLuint origtexture + GLenum internalformat + GLuint minlevel + GLuint numlevels + GLuint minlayer + GLuint numlayers + + + void glTextureViewEXT + GLuint texture + GLenum target + GLuint origtexture + GLenum internalformat + GLuint minlevel + GLuint numlevels + GLuint minlayer + GLuint numlayers + + + + void glTextureViewOES + GLuint texture + GLenum target + GLuint origtexture + GLenum internalformat + GLuint minlevel + GLuint numlevels + GLuint minlayer + GLuint numlayers + + + + void glTrackMatrixNV + GLenum target + GLuint address + GLenum matrix + GLenum transform + + + + void glTransformFeedbackAttribsNV + GLsizei count + const GLint *attribs + GLenum bufferMode + + + void glTransformFeedbackBufferBase + GLuint xfb + GLuint index + GLuint buffer + + + void glTransformFeedbackBufferRange + GLuint xfb + GLuint index + GLuint buffer + GLintptr offset + GLsizeiptr size + + + void glTransformFeedbackStreamAttribsNV + GLsizei count + const GLint *attribs + GLsizei nbuffers + const GLint *bufstreams + GLenum bufferMode + + + void glTransformFeedbackVaryings + GLuint program + GLsizei count + const GLchar *const*varyings + GLenum bufferMode + + + + void glTransformFeedbackVaryingsEXT + GLuint program + GLsizei count + const GLchar *const*varyings + GLenum bufferMode + + + + void glTransformFeedbackVaryingsNV + GLuint program + GLsizei count + const GLint *locations + GLenum bufferMode + + + void glTransformPathNV + GLuint resultPath + GLuint srcPath + GLenum transformType + const GLfloat *transformValues + + + void glTranslated + GLdouble x + GLdouble y + GLdouble z + + + + void glTranslatef + GLfloat x + GLfloat y + GLfloat z + + + + void glTranslatex + GLfixed x + GLfixed y + GLfixed z + + + void glTranslatexOES + GLfixed x + GLfixed y + GLfixed z + + + void glUniform1d + GLint location + GLdouble x + + + void glUniform1dv + GLint location + GLsizei count + const GLdouble *value + + + void glUniform1f + GLint location + GLfloat v0 + + + void glUniform1fARB + GLint location + GLfloat v0 + + + + void glUniform1fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform1fvARB + GLint location + GLsizei count + const GLfloat *value + + + + void glUniform1i + GLint location + GLint v0 + + + void glUniform1i64ARB + GLint location + GLint64 x + + + void glUniform1i64NV + GLint location + GLint64EXT x + + + void glUniform1i64vARB + GLint location + GLsizei count + const GLint64 *value + + + void glUniform1i64vNV + GLint location + GLsizei count + const GLint64EXT *value + + + void glUniform1iARB + GLint location + GLint v0 + + + + void glUniform1iv + GLint location + GLsizei count + const GLint *value + + + void glUniform1ivARB + GLint location + GLsizei count + const GLint *value + + + + void glUniform1ui + GLint location + GLuint v0 + + + void glUniform1ui64ARB + GLint location + GLuint64 x + + + void glUniform1ui64NV + GLint location + GLuint64EXT x + + + void glUniform1ui64vARB + GLint location + GLsizei count + const GLuint64 *value + + + void glUniform1ui64vNV + GLint location + GLsizei count + const GLuint64EXT *value + + + void glUniform1uiEXT + GLint location + GLuint v0 + + + + void glUniform1uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform1uivEXT + GLint location + GLsizei count + const GLuint *value + + + + void glUniform2d + GLint location + GLdouble x + GLdouble y + + + void glUniform2dv + GLint location + GLsizei count + const GLdouble *value + + + void glUniform2f + GLint location + GLfloat v0 + GLfloat v1 + + + void glUniform2fARB + GLint location + GLfloat v0 + GLfloat v1 + + + + void glUniform2fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform2fvARB + GLint location + GLsizei count + const GLfloat *value + + + + void glUniform2i + GLint location + GLint v0 + GLint v1 + + + void glUniform2i64ARB + GLint location + GLint64 x + GLint64 y + + + void glUniform2i64NV + GLint location + GLint64EXT x + GLint64EXT y + + + void glUniform2i64vARB + GLint location + GLsizei count + const GLint64 *value + + + void glUniform2i64vNV + GLint location + GLsizei count + const GLint64EXT *value + + + void glUniform2iARB + GLint location + GLint v0 + GLint v1 + + + + void glUniform2iv + GLint location + GLsizei count + const GLint *value + + + void glUniform2ivARB + GLint location + GLsizei count + const GLint *value + + + + void glUniform2ui + GLint location + GLuint v0 + GLuint v1 + + + void glUniform2ui64ARB + GLint location + GLuint64 x + GLuint64 y + + + void glUniform2ui64NV + GLint location + GLuint64EXT x + GLuint64EXT y + + + void glUniform2ui64vARB + GLint location + GLsizei count + const GLuint64 *value + + + void glUniform2ui64vNV + GLint location + GLsizei count + const GLuint64EXT *value + + + void glUniform2uiEXT + GLint location + GLuint v0 + GLuint v1 + + + + void glUniform2uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform2uivEXT + GLint location + GLsizei count + const GLuint *value + + + + void glUniform3d + GLint location + GLdouble x + GLdouble y + GLdouble z + + + void glUniform3dv + GLint location + GLsizei count + const GLdouble *value + + + void glUniform3f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + void glUniform3fARB + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + + + + void glUniform3fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform3fvARB + GLint location + GLsizei count + const GLfloat *value + + + + void glUniform3i + GLint location + GLint v0 + GLint v1 + GLint v2 + + + void glUniform3i64ARB + GLint location + GLint64 x + GLint64 y + GLint64 z + + + void glUniform3i64NV + GLint location + GLint64EXT x + GLint64EXT y + GLint64EXT z + + + void glUniform3i64vARB + GLint location + GLsizei count + const GLint64 *value + + + void glUniform3i64vNV + GLint location + GLsizei count + const GLint64EXT *value + + + void glUniform3iARB + GLint location + GLint v0 + GLint v1 + GLint v2 + + + + void glUniform3iv + GLint location + GLsizei count + const GLint *value + + + void glUniform3ivARB + GLint location + GLsizei count + const GLint *value + + + + void glUniform3ui + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + + + void glUniform3ui64ARB + GLint location + GLuint64 x + GLuint64 y + GLuint64 z + + + void glUniform3ui64NV + GLint location + GLuint64EXT x + GLuint64EXT y + GLuint64EXT z + + + void glUniform3ui64vARB + GLint location + GLsizei count + const GLuint64 *value + + + void glUniform3ui64vNV + GLint location + GLsizei count + const GLuint64EXT *value + + + void glUniform3uiEXT + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + + + + void glUniform3uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform3uivEXT + GLint location + GLsizei count + const GLuint *value + + + + void glUniform4d + GLint location + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + void glUniform4dv + GLint location + GLsizei count + const GLdouble *value + + + void glUniform4f + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + void glUniform4fARB + GLint location + GLfloat v0 + GLfloat v1 + GLfloat v2 + GLfloat v3 + + + + void glUniform4fv + GLint location + GLsizei count + const GLfloat *value + + + void glUniform4fvARB + GLint location + GLsizei count + const GLfloat *value + + + + void glUniform4i + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + void glUniform4i64ARB + GLint location + GLint64 x + GLint64 y + GLint64 z + GLint64 w + + + void glUniform4i64NV + GLint location + GLint64EXT x + GLint64EXT y + GLint64EXT z + GLint64EXT w + + + void glUniform4i64vARB + GLint location + GLsizei count + const GLint64 *value + + + void glUniform4i64vNV + GLint location + GLsizei count + const GLint64EXT *value + + + void glUniform4iARB + GLint location + GLint v0 + GLint v1 + GLint v2 + GLint v3 + + + + void glUniform4iv + GLint location + GLsizei count + const GLint *value + + + void glUniform4ivARB + GLint location + GLsizei count + const GLint *value + + + + void glUniform4ui + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + void glUniform4ui64ARB + GLint location + GLuint64 x + GLuint64 y + GLuint64 z + GLuint64 w + + + void glUniform4ui64NV + GLint location + GLuint64EXT x + GLuint64EXT y + GLuint64EXT z + GLuint64EXT w + + + void glUniform4ui64vARB + GLint location + GLsizei count + const GLuint64 *value + + + void glUniform4ui64vNV + GLint location + GLsizei count + const GLuint64EXT *value + + + void glUniform4uiEXT + GLint location + GLuint v0 + GLuint v1 + GLuint v2 + GLuint v3 + + + + void glUniform4uiv + GLint location + GLsizei count + const GLuint *value + + + void glUniform4uivEXT + GLint location + GLsizei count + const GLuint *value + + + + void glUniformBlockBinding + GLuint program + GLuint uniformBlockIndex + GLuint uniformBlockBinding + + + + void glUniformBufferEXT + GLuint program + GLint location + GLuint buffer + + + void glUniformHandleui64ARB + GLint location + GLuint64 value + + + void glUniformHandleui64IMG + GLint location + GLuint64 value + + + + void glUniformHandleui64NV + GLint location + GLuint64 value + + + void glUniformHandleui64vARB + GLint location + GLsizei count + const GLuint64 *value + + + void glUniformHandleui64vIMG + GLint location + GLsizei count + const GLuint64 *value + + + + void glUniformHandleui64vNV + GLint location + GLsizei count + const GLuint64 *value + + + void glUniformMatrix2dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix2fvARB + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix2x3dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix2x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix2x3fvNV + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix2x4dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix2x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix2x4fvNV + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix3dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix3fvARB + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix3x2dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix3x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix3x2fvNV + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix3x4dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix3x4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix3x4fvNV + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix4dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix4fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + void glUniformMatrix4fvARB + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix4x2dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix4x2fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix4x2fvNV + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix4x3dv + GLint location + GLsizei count + GLboolean transpose + const GLdouble *value + + + void glUniformMatrix4x3fv + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformMatrix4x3fvNV + GLint location + GLsizei count + GLboolean transpose + const GLfloat *value + + + + void glUniformSubroutinesuiv + GLenum shadertype + GLsizei count + const GLuint *indices + + + void glUniformui64NV + GLint location + GLuint64EXT value + + + void glUniformui64vNV + GLint location + GLsizei count + const GLuint64EXT *value + + + void glUnlockArraysEXT + + + GLboolean glUnmapBuffer + GLenum target + + + GLboolean glUnmapBufferARB + GLenum target + + + + GLboolean glUnmapBufferOES + GLenum target + + + + GLboolean glUnmapNamedBuffer + GLuint buffer + + + GLboolean glUnmapNamedBufferEXT + GLuint buffer + + + void glUnmapObjectBufferATI + GLuint buffer + + + void glUnmapTexture2DINTEL + GLuint texture + GLint level + + + void glUpdateObjectBufferATI + GLuint buffer + GLuint offset + GLsizei size + const void *pointer + GLenum preserve + + + void glUploadGpuMaskNVX + GLbitfield mask + + + void glUseProgram + GLuint program + + + void glUseProgramObjectARB + GLhandleARB programObj + + + + void glUseProgramStages + GLuint pipeline + GLbitfield stages + GLuint program + + + void glUseProgramStagesEXT + GLuint pipeline + GLbitfield stages + GLuint program + + + void glUseShaderProgramEXT + GLenum type + GLuint program + + + void glVDPAUFiniNV + + + void glVDPAUGetSurfaceivNV + GLvdpauSurfaceNV surface + GLenum pname + GLsizei count + GLsizei *length + GLint *values + + + void glVDPAUInitNV + const void *vdpDevice + const void *getProcAddress + + + GLboolean glVDPAUIsSurfaceNV + GLvdpauSurfaceNV surface + + + void glVDPAUMapSurfacesNV + GLsizei numSurfaces + const GLvdpauSurfaceNV *surfaces + + + GLvdpauSurfaceNV glVDPAURegisterOutputSurfaceNV + const void *vdpSurface + GLenum target + GLsizei numTextureNames + const GLuint *textureNames + + + GLvdpauSurfaceNV glVDPAURegisterVideoSurfaceNV + const void *vdpSurface + GLenum target + GLsizei numTextureNames + const GLuint *textureNames + + + GLvdpauSurfaceNV glVDPAURegisterVideoSurfaceWithPictureStructureNV + const void *vdpSurface + GLenum target + GLsizei numTextureNames + const GLuint *textureNames + GLboolean isFrameStructure + + + void glVDPAUSurfaceAccessNV + GLvdpauSurfaceNV surface + GLenum access + + + void glVDPAUUnmapSurfacesNV + GLsizei numSurface + const GLvdpauSurfaceNV *surfaces + + + void glVDPAUUnregisterSurfaceNV + GLvdpauSurfaceNV surface + + + void glValidateProgram + GLuint program + + + void glValidateProgramARB + GLhandleARB programObj + + + + void glValidateProgramPipeline + GLuint pipeline + + + void glValidateProgramPipelineEXT + GLuint pipeline + + + void glVariantArrayObjectATI + GLuint id + GLenum type + GLsizei stride + GLuint buffer + GLuint offset + + + void glVariantPointerEXT + GLuint id + GLenum type + GLuint stride + const void *addr + + + void glVariantbvEXT + GLuint id + const GLbyte *addr + + + void glVariantdvEXT + GLuint id + const GLdouble *addr + + + void glVariantfvEXT + GLuint id + const GLfloat *addr + + + void glVariantivEXT + GLuint id + const GLint *addr + + + void glVariantsvEXT + GLuint id + const GLshort *addr + + + void glVariantubvEXT + GLuint id + const GLubyte *addr + + + void glVariantuivEXT + GLuint id + const GLuint *addr + + + void glVariantusvEXT + GLuint id + const GLushort *addr + + + void glVertex2bOES + GLbyte x + GLbyte y + + + void glVertex2bvOES + const GLbyte *coords + + + void glVertex2d + GLdouble x + GLdouble y + + + + void glVertex2dv + const GLdouble *v + + + + void glVertex2f + GLfloat x + GLfloat y + + + + void glVertex2fv + const GLfloat *v + + + + void glVertex2hNV + GLhalfNV x + GLhalfNV y + + + + void glVertex2hvNV + const GLhalfNV *v + + + + void glVertex2i + GLint x + GLint y + + + + void glVertex2iv + const GLint *v + + + + void glVertex2s + GLshort x + GLshort y + + + + void glVertex2sv + const GLshort *v + + + + void glVertex2xOES + GLfixed x + + + void glVertex2xvOES + const GLfixed *coords + + + void glVertex3bOES + GLbyte x + GLbyte y + GLbyte z + + + void glVertex3bvOES + const GLbyte *coords + + + void glVertex3d + GLdouble x + GLdouble y + GLdouble z + + + + void glVertex3dv + const GLdouble *v + + + + void glVertex3f + GLfloat x + GLfloat y + GLfloat z + + + + void glVertex3fv + const GLfloat *v + + + + void glVertex3hNV + GLhalfNV x + GLhalfNV y + GLhalfNV z + + + + void glVertex3hvNV + const GLhalfNV *v + + + + void glVertex3i + GLint x + GLint y + GLint z + + + + void glVertex3iv + const GLint *v + + + + void glVertex3s + GLshort x + GLshort y + GLshort z + + + + void glVertex3sv + const GLshort *v + + + + void glVertex3xOES + GLfixed x + GLfixed y + + + void glVertex3xvOES + const GLfixed *coords + + + void glVertex4bOES + GLbyte x + GLbyte y + GLbyte z + GLbyte w + + + void glVertex4bvOES + const GLbyte *coords + + + void glVertex4d + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glVertex4dv + const GLdouble *v + + + + void glVertex4f + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glVertex4fv + const GLfloat *v + + + + void glVertex4hNV + GLhalfNV x + GLhalfNV y + GLhalfNV z + GLhalfNV w + + + + void glVertex4hvNV + const GLhalfNV *v + + + + void glVertex4i + GLint x + GLint y + GLint z + GLint w + + + + void glVertex4iv + const GLint *v + + + + void glVertex4s + GLshort x + GLshort y + GLshort z + GLshort w + + + + void glVertex4sv + const GLshort *v + + + + void glVertex4xOES + GLfixed x + GLfixed y + GLfixed z + + + void glVertex4xvOES + const GLfixed *coords + + + void glVertexArrayAttribBinding + GLuint vaobj + GLuint attribindex + GLuint bindingindex + + + void glVertexArrayAttribFormat + GLuint vaobj + GLuint attribindex + GLint size + GLenum type + GLboolean normalized + GLuint relativeoffset + + + void glVertexArrayAttribIFormat + GLuint vaobj + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + void glVertexArrayAttribLFormat + GLuint vaobj + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + void glVertexArrayBindVertexBufferEXT + GLuint vaobj + GLuint bindingindex + GLuint buffer + GLintptr offset + GLsizei stride + + + void glVertexArrayBindingDivisor + GLuint vaobj + GLuint bindingindex + GLuint divisor + + + void glVertexArrayColorOffsetEXT + GLuint vaobj + GLuint buffer + GLint size + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayEdgeFlagOffsetEXT + GLuint vaobj + GLuint buffer + GLsizei stride + GLintptr offset + + + void glVertexArrayElementBuffer + GLuint vaobj + GLuint buffer + + + void glVertexArrayFogCoordOffsetEXT + GLuint vaobj + GLuint buffer + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayIndexOffsetEXT + GLuint vaobj + GLuint buffer + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayMultiTexCoordOffsetEXT + GLuint vaobj + GLuint buffer + GLenum texunit + GLint size + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayNormalOffsetEXT + GLuint vaobj + GLuint buffer + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayParameteriAPPLE + GLenum pname + GLint param + + + void glVertexArrayRangeAPPLE + GLsizei length + void *pointer + + + void glVertexArrayRangeNV + GLsizei length + const void *pointer + + + void glVertexArraySecondaryColorOffsetEXT + GLuint vaobj + GLuint buffer + GLint size + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayTexCoordOffsetEXT + GLuint vaobj + GLuint buffer + GLint size + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayVertexAttribBindingEXT + GLuint vaobj + GLuint attribindex + GLuint bindingindex + + + void glVertexArrayVertexAttribDivisorEXT + GLuint vaobj + GLuint index + GLuint divisor + + + void glVertexArrayVertexAttribFormatEXT + GLuint vaobj + GLuint attribindex + GLint size + GLenum type + GLboolean normalized + GLuint relativeoffset + + + void glVertexArrayVertexAttribIFormatEXT + GLuint vaobj + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + void glVertexArrayVertexAttribIOffsetEXT + GLuint vaobj + GLuint buffer + GLuint index + GLint size + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayVertexAttribLFormatEXT + GLuint vaobj + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + void glVertexArrayVertexAttribLOffsetEXT + GLuint vaobj + GLuint buffer + GLuint index + GLint size + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexArrayVertexAttribOffsetEXT + GLuint vaobj + GLuint buffer + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + GLintptr offset + + + void glVertexArrayVertexBindingDivisorEXT + GLuint vaobj + GLuint bindingindex + GLuint divisor + + + void glVertexArrayVertexBuffer + GLuint vaobj + GLuint bindingindex + GLuint buffer + GLintptr offset + GLsizei stride + + + void glVertexArrayVertexBuffers + GLuint vaobj + GLuint first + GLsizei count + const GLuint *buffers + const GLintptr *offsets + const GLsizei *strides + + + void glVertexArrayVertexOffsetEXT + GLuint vaobj + GLuint buffer + GLint size + GLenum type + GLsizei stride + GLintptr offset + + + void glVertexAttrib1d + GLuint index + GLdouble x + + + + void glVertexAttrib1dARB + GLuint index + GLdouble x + + + + + void glVertexAttrib1dNV + GLuint index + GLdouble x + + + + + void glVertexAttrib1dv + GLuint index + const GLdouble *v + + + + void glVertexAttrib1dvARB + GLuint index + const GLdouble *v + + + + + void glVertexAttrib1dvNV + GLuint index + const GLdouble *v + + + + + void glVertexAttrib1f + GLuint index + GLfloat x + + + + void glVertexAttrib1fARB + GLuint index + GLfloat x + + + + + void glVertexAttrib1fNV + GLuint index + GLfloat x + + + + + void glVertexAttrib1fv + GLuint index + const GLfloat *v + + + + void glVertexAttrib1fvARB + GLuint index + const GLfloat *v + + + + + void glVertexAttrib1fvNV + GLuint index + const GLfloat *v + + + + + void glVertexAttrib1hNV + GLuint index + GLhalfNV x + + + + void glVertexAttrib1hvNV + GLuint index + const GLhalfNV *v + + + + void glVertexAttrib1s + GLuint index + GLshort x + + + + void glVertexAttrib1sARB + GLuint index + GLshort x + + + + + void glVertexAttrib1sNV + GLuint index + GLshort x + + + + + void glVertexAttrib1sv + GLuint index + const GLshort *v + + + + void glVertexAttrib1svARB + GLuint index + const GLshort *v + + + + + void glVertexAttrib1svNV + GLuint index + const GLshort *v + + + + + void glVertexAttrib2d + GLuint index + GLdouble x + GLdouble y + + + + void glVertexAttrib2dARB + GLuint index + GLdouble x + GLdouble y + + + + + void glVertexAttrib2dNV + GLuint index + GLdouble x + GLdouble y + + + + + void glVertexAttrib2dv + GLuint index + const GLdouble *v + + + + void glVertexAttrib2dvARB + GLuint index + const GLdouble *v + + + + + void glVertexAttrib2dvNV + GLuint index + const GLdouble *v + + + + + void glVertexAttrib2f + GLuint index + GLfloat x + GLfloat y + + + + void glVertexAttrib2fARB + GLuint index + GLfloat x + GLfloat y + + + + + void glVertexAttrib2fNV + GLuint index + GLfloat x + GLfloat y + + + + + void glVertexAttrib2fv + GLuint index + const GLfloat *v + + + + void glVertexAttrib2fvARB + GLuint index + const GLfloat *v + + + + + void glVertexAttrib2fvNV + GLuint index + const GLfloat *v + + + + + void glVertexAttrib2hNV + GLuint index + GLhalfNV x + GLhalfNV y + + + + void glVertexAttrib2hvNV + GLuint index + const GLhalfNV *v + + + + void glVertexAttrib2s + GLuint index + GLshort x + GLshort y + + + + void glVertexAttrib2sARB + GLuint index + GLshort x + GLshort y + + + + + void glVertexAttrib2sNV + GLuint index + GLshort x + GLshort y + + + + + void glVertexAttrib2sv + GLuint index + const GLshort *v + + + + void glVertexAttrib2svARB + GLuint index + const GLshort *v + + + + + void glVertexAttrib2svNV + GLuint index + const GLshort *v + + + + + void glVertexAttrib3d + GLuint index + GLdouble x + GLdouble y + GLdouble z + + + + void glVertexAttrib3dARB + GLuint index + GLdouble x + GLdouble y + GLdouble z + + + + + void glVertexAttrib3dNV + GLuint index + GLdouble x + GLdouble y + GLdouble z + + + + + void glVertexAttrib3dv + GLuint index + const GLdouble *v + + + + void glVertexAttrib3dvARB + GLuint index + const GLdouble *v + + + + + void glVertexAttrib3dvNV + GLuint index + const GLdouble *v + + + + + void glVertexAttrib3f + GLuint index + GLfloat x + GLfloat y + GLfloat z + + + + void glVertexAttrib3fARB + GLuint index + GLfloat x + GLfloat y + GLfloat z + + + + + void glVertexAttrib3fNV + GLuint index + GLfloat x + GLfloat y + GLfloat z + + + + + void glVertexAttrib3fv + GLuint index + const GLfloat *v + + + + void glVertexAttrib3fvARB + GLuint index + const GLfloat *v + + + + + void glVertexAttrib3fvNV + GLuint index + const GLfloat *v + + + + + void glVertexAttrib3hNV + GLuint index + GLhalfNV x + GLhalfNV y + GLhalfNV z + + + + void glVertexAttrib3hvNV + GLuint index + const GLhalfNV *v + + + + void glVertexAttrib3s + GLuint index + GLshort x + GLshort y + GLshort z + + + + void glVertexAttrib3sARB + GLuint index + GLshort x + GLshort y + GLshort z + + + + + void glVertexAttrib3sNV + GLuint index + GLshort x + GLshort y + GLshort z + + + + + void glVertexAttrib3sv + GLuint index + const GLshort *v + + + + void glVertexAttrib3svARB + GLuint index + const GLshort *v + + + + + void glVertexAttrib3svNV + GLuint index + const GLshort *v + + + + + void glVertexAttrib4Nbv + GLuint index + const GLbyte *v + + + void glVertexAttrib4NbvARB + GLuint index + const GLbyte *v + + + + void glVertexAttrib4Niv + GLuint index + const GLint *v + + + void glVertexAttrib4NivARB + GLuint index + const GLint *v + + + + void glVertexAttrib4Nsv + GLuint index + const GLshort *v + + + void glVertexAttrib4NsvARB + GLuint index + const GLshort *v + + + + void glVertexAttrib4Nub + GLuint index + GLubyte x + GLubyte y + GLubyte z + GLubyte w + + + void glVertexAttrib4NubARB + GLuint index + GLubyte x + GLubyte y + GLubyte z + GLubyte w + + + + void glVertexAttrib4Nubv + GLuint index + const GLubyte *v + + + + void glVertexAttrib4NubvARB + GLuint index + const GLubyte *v + + + + + void glVertexAttrib4Nuiv + GLuint index + const GLuint *v + + + void glVertexAttrib4NuivARB + GLuint index + const GLuint *v + + + + void glVertexAttrib4Nusv + GLuint index + const GLushort *v + + + void glVertexAttrib4NusvARB + GLuint index + const GLushort *v + + + + void glVertexAttrib4bv + GLuint index + const GLbyte *v + + + void glVertexAttrib4bvARB + GLuint index + const GLbyte *v + + + + void glVertexAttrib4d + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glVertexAttrib4dARB + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + + void glVertexAttrib4dNV + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + + void glVertexAttrib4dv + GLuint index + const GLdouble *v + + + + void glVertexAttrib4dvARB + GLuint index + const GLdouble *v + + + + + void glVertexAttrib4dvNV + GLuint index + const GLdouble *v + + + + + void glVertexAttrib4f + GLuint index + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glVertexAttrib4fARB + GLuint index + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + + void glVertexAttrib4fNV + GLuint index + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + + void glVertexAttrib4fv + GLuint index + const GLfloat *v + + + + void glVertexAttrib4fvARB + GLuint index + const GLfloat *v + + + + + void glVertexAttrib4fvNV + GLuint index + const GLfloat *v + + + + + void glVertexAttrib4hNV + GLuint index + GLhalfNV x + GLhalfNV y + GLhalfNV z + GLhalfNV w + + + + void glVertexAttrib4hvNV + GLuint index + const GLhalfNV *v + + + + void glVertexAttrib4iv + GLuint index + const GLint *v + + + void glVertexAttrib4ivARB + GLuint index + const GLint *v + + + + void glVertexAttrib4s + GLuint index + GLshort x + GLshort y + GLshort z + GLshort w + + + + void glVertexAttrib4sARB + GLuint index + GLshort x + GLshort y + GLshort z + GLshort w + + + + + void glVertexAttrib4sNV + GLuint index + GLshort x + GLshort y + GLshort z + GLshort w + + + + + void glVertexAttrib4sv + GLuint index + const GLshort *v + + + + void glVertexAttrib4svARB + GLuint index + const GLshort *v + + + + + void glVertexAttrib4svNV + GLuint index + const GLshort *v + + + + + void glVertexAttrib4ubNV + GLuint index + GLubyte x + GLubyte y + GLubyte z + GLubyte w + + + + + void glVertexAttrib4ubv + GLuint index + const GLubyte *v + + + void glVertexAttrib4ubvARB + GLuint index + const GLubyte *v + + + + void glVertexAttrib4ubvNV + GLuint index + const GLubyte *v + + + + + void glVertexAttrib4uiv + GLuint index + const GLuint *v + + + void glVertexAttrib4uivARB + GLuint index + const GLuint *v + + + + void glVertexAttrib4usv + GLuint index + const GLushort *v + + + void glVertexAttrib4usvARB + GLuint index + const GLushort *v + + + + void glVertexAttribArrayObjectATI + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + GLuint buffer + GLuint offset + + + void glVertexAttribBinding + GLuint attribindex + GLuint bindingindex + + + void glVertexAttribDivisor + GLuint index + GLuint divisor + + + void glVertexAttribDivisorANGLE + GLuint index + GLuint divisor + + + + void glVertexAttribDivisorARB + GLuint index + GLuint divisor + + + + void glVertexAttribDivisorEXT + GLuint index + GLuint divisor + + + + void glVertexAttribDivisorNV + GLuint index + GLuint divisor + + + + void glVertexAttribFormat + GLuint attribindex + GLint size + GLenum type + GLboolean normalized + GLuint relativeoffset + + + void glVertexAttribFormatNV + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + + + void glVertexAttribI1i + GLuint index + GLint x + + + + void glVertexAttribI1iEXT + GLuint index + GLint x + + + + + void glVertexAttribI1iv + GLuint index + const GLint *v + + + void glVertexAttribI1ivEXT + GLuint index + const GLint *v + + + + void glVertexAttribI1ui + GLuint index + GLuint x + + + + void glVertexAttribI1uiEXT + GLuint index + GLuint x + + + + + void glVertexAttribI1uiv + GLuint index + const GLuint *v + + + void glVertexAttribI1uivEXT + GLuint index + const GLuint *v + + + + void glVertexAttribI2i + GLuint index + GLint x + GLint y + + + + void glVertexAttribI2iEXT + GLuint index + GLint x + GLint y + + + + + void glVertexAttribI2iv + GLuint index + const GLint *v + + + void glVertexAttribI2ivEXT + GLuint index + const GLint *v + + + + void glVertexAttribI2ui + GLuint index + GLuint x + GLuint y + + + + void glVertexAttribI2uiEXT + GLuint index + GLuint x + GLuint y + + + + + void glVertexAttribI2uiv + GLuint index + const GLuint *v + + + void glVertexAttribI2uivEXT + GLuint index + const GLuint *v + + + + void glVertexAttribI3i + GLuint index + GLint x + GLint y + GLint z + + + + void glVertexAttribI3iEXT + GLuint index + GLint x + GLint y + GLint z + + + + + void glVertexAttribI3iv + GLuint index + const GLint *v + + + void glVertexAttribI3ivEXT + GLuint index + const GLint *v + + + + void glVertexAttribI3ui + GLuint index + GLuint x + GLuint y + GLuint z + + + + void glVertexAttribI3uiEXT + GLuint index + GLuint x + GLuint y + GLuint z + + + + + void glVertexAttribI3uiv + GLuint index + const GLuint *v + + + void glVertexAttribI3uivEXT + GLuint index + const GLuint *v + + + + void glVertexAttribI4bv + GLuint index + const GLbyte *v + + + void glVertexAttribI4bvEXT + GLuint index + const GLbyte *v + + + + void glVertexAttribI4i + GLuint index + GLint x + GLint y + GLint z + GLint w + + + + void glVertexAttribI4iEXT + GLuint index + GLint x + GLint y + GLint z + GLint w + + + + + void glVertexAttribI4iv + GLuint index + const GLint *v + + + void glVertexAttribI4ivEXT + GLuint index + const GLint *v + + + + void glVertexAttribI4sv + GLuint index + const GLshort *v + + + void glVertexAttribI4svEXT + GLuint index + const GLshort *v + + + + void glVertexAttribI4ubv + GLuint index + const GLubyte *v + + + void glVertexAttribI4ubvEXT + GLuint index + const GLubyte *v + + + + void glVertexAttribI4ui + GLuint index + GLuint x + GLuint y + GLuint z + GLuint w + + + + void glVertexAttribI4uiEXT + GLuint index + GLuint x + GLuint y + GLuint z + GLuint w + + + + + void glVertexAttribI4uiv + GLuint index + const GLuint *v + + + void glVertexAttribI4uivEXT + GLuint index + const GLuint *v + + + + void glVertexAttribI4usv + GLuint index + const GLushort *v + + + void glVertexAttribI4usvEXT + GLuint index + const GLushort *v + + + + void glVertexAttribIFormat + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + void glVertexAttribIFormatNV + GLuint index + GLint size + GLenum type + GLsizei stride + + + void glVertexAttribIPointer + GLuint index + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glVertexAttribIPointerEXT + GLuint index + GLint size + GLenum type + GLsizei stride + const void *pointer + + + + void glVertexAttribL1d + GLuint index + GLdouble x + + + void glVertexAttribL1dEXT + GLuint index + GLdouble x + + + + void glVertexAttribL1dv + GLuint index + const GLdouble *v + + + void glVertexAttribL1dvEXT + GLuint index + const GLdouble *v + + + + void glVertexAttribL1i64NV + GLuint index + GLint64EXT x + + + void glVertexAttribL1i64vNV + GLuint index + const GLint64EXT *v + + + void glVertexAttribL1ui64ARB + GLuint index + GLuint64EXT x + + + void glVertexAttribL1ui64NV + GLuint index + GLuint64EXT x + + + void glVertexAttribL1ui64vARB + GLuint index + const GLuint64EXT *v + + + void glVertexAttribL1ui64vNV + GLuint index + const GLuint64EXT *v + + + void glVertexAttribL2d + GLuint index + GLdouble x + GLdouble y + + + void glVertexAttribL2dEXT + GLuint index + GLdouble x + GLdouble y + + + + void glVertexAttribL2dv + GLuint index + const GLdouble *v + + + void glVertexAttribL2dvEXT + GLuint index + const GLdouble *v + + + + void glVertexAttribL2i64NV + GLuint index + GLint64EXT x + GLint64EXT y + + + void glVertexAttribL2i64vNV + GLuint index + const GLint64EXT *v + + + void glVertexAttribL2ui64NV + GLuint index + GLuint64EXT x + GLuint64EXT y + + + void glVertexAttribL2ui64vNV + GLuint index + const GLuint64EXT *v + + + void glVertexAttribL3d + GLuint index + GLdouble x + GLdouble y + GLdouble z + + + void glVertexAttribL3dEXT + GLuint index + GLdouble x + GLdouble y + GLdouble z + + + + void glVertexAttribL3dv + GLuint index + const GLdouble *v + + + void glVertexAttribL3dvEXT + GLuint index + const GLdouble *v + + + + void glVertexAttribL3i64NV + GLuint index + GLint64EXT x + GLint64EXT y + GLint64EXT z + + + void glVertexAttribL3i64vNV + GLuint index + const GLint64EXT *v + + + void glVertexAttribL3ui64NV + GLuint index + GLuint64EXT x + GLuint64EXT y + GLuint64EXT z + + + void glVertexAttribL3ui64vNV + GLuint index + const GLuint64EXT *v + + + void glVertexAttribL4d + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + void glVertexAttribL4dEXT + GLuint index + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glVertexAttribL4dv + GLuint index + const GLdouble *v + + + void glVertexAttribL4dvEXT + GLuint index + const GLdouble *v + + + + void glVertexAttribL4i64NV + GLuint index + GLint64EXT x + GLint64EXT y + GLint64EXT z + GLint64EXT w + + + void glVertexAttribL4i64vNV + GLuint index + const GLint64EXT *v + + + void glVertexAttribL4ui64NV + GLuint index + GLuint64EXT x + GLuint64EXT y + GLuint64EXT z + GLuint64EXT w + + + void glVertexAttribL4ui64vNV + GLuint index + const GLuint64EXT *v + + + void glVertexAttribLFormat + GLuint attribindex + GLint size + GLenum type + GLuint relativeoffset + + + void glVertexAttribLFormatNV + GLuint index + GLint size + GLenum type + GLsizei stride + + + void glVertexAttribLPointer + GLuint index + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glVertexAttribLPointerEXT + GLuint index + GLint size + GLenum type + GLsizei stride + const void *pointer + + + + void glVertexAttribP1ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP1uiv + GLuint index + GLenum type + GLboolean normalized + const GLuint *value + + + void glVertexAttribP2ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP2uiv + GLuint index + GLenum type + GLboolean normalized + const GLuint *value + + + void glVertexAttribP3ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP3uiv + GLuint index + GLenum type + GLboolean normalized + const GLuint *value + + + void glVertexAttribP4ui + GLuint index + GLenum type + GLboolean normalized + GLuint value + + + void glVertexAttribP4uiv + GLuint index + GLenum type + GLboolean normalized + const GLuint *value + + + void glVertexAttribParameteriAMD + GLuint index + GLenum pname + GLint param + + + void glVertexAttribPointer + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + const void *pointer + + + void glVertexAttribPointerARB + GLuint index + GLint size + GLenum type + GLboolean normalized + GLsizei stride + const void *pointer + + + + void glVertexAttribPointerNV + GLuint index + GLint fsize + GLenum type + GLsizei stride + const void *pointer + + + void glVertexAttribs1dvNV + GLuint index + GLsizei count + const GLdouble *v + + + + void glVertexAttribs1fvNV + GLuint index + GLsizei count + const GLfloat *v + + + + void glVertexAttribs1hvNV + GLuint index + GLsizei n + const GLhalfNV *v + + + + void glVertexAttribs1svNV + GLuint index + GLsizei count + const GLshort *v + + + + void glVertexAttribs2dvNV + GLuint index + GLsizei count + const GLdouble *v + + + + void glVertexAttribs2fvNV + GLuint index + GLsizei count + const GLfloat *v + + + + void glVertexAttribs2hvNV + GLuint index + GLsizei n + const GLhalfNV *v + + + + void glVertexAttribs2svNV + GLuint index + GLsizei count + const GLshort *v + + + + void glVertexAttribs3dvNV + GLuint index + GLsizei count + const GLdouble *v + + + + void glVertexAttribs3fvNV + GLuint index + GLsizei count + const GLfloat *v + + + + void glVertexAttribs3hvNV + GLuint index + GLsizei n + const GLhalfNV *v + + + + void glVertexAttribs3svNV + GLuint index + GLsizei count + const GLshort *v + + + + void glVertexAttribs4dvNV + GLuint index + GLsizei count + const GLdouble *v + + + + void glVertexAttribs4fvNV + GLuint index + GLsizei count + const GLfloat *v + + + + void glVertexAttribs4hvNV + GLuint index + GLsizei n + const GLhalfNV *v + + + + void glVertexAttribs4svNV + GLuint index + GLsizei count + const GLshort *v + + + + void glVertexAttribs4ubvNV + GLuint index + GLsizei count + const GLubyte *v + + + + void glVertexBindingDivisor + GLuint bindingindex + GLuint divisor + + + void glVertexBlendARB + GLint count + + + + void glVertexBlendEnvfATI + GLenum pname + GLfloat param + + + void glVertexBlendEnviATI + GLenum pname + GLint param + + + void glVertexFormatNV + GLint size + GLenum type + GLsizei stride + + + void glVertexP2ui + GLenum type + GLuint value + + + void glVertexP2uiv + GLenum type + const GLuint *value + + + void glVertexP3ui + GLenum type + GLuint value + + + void glVertexP3uiv + GLenum type + const GLuint *value + + + void glVertexP4ui + GLenum type + GLuint value + + + void glVertexP4uiv + GLenum type + const GLuint *value + + + void glVertexPointer + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glVertexPointerEXT + GLint size + GLenum type + GLsizei stride + GLsizei count + const void *pointer + + + void glVertexPointerListIBM + GLint size + GLenum type + GLint stride + const void **pointer + GLint ptrstride + + + void glVertexPointervINTEL + GLint size + GLenum type + const void **pointer + + + void glVertexStream1dATI + GLenum stream + GLdouble x + + + void glVertexStream1dvATI + GLenum stream + const GLdouble *coords + + + void glVertexStream1fATI + GLenum stream + GLfloat x + + + void glVertexStream1fvATI + GLenum stream + const GLfloat *coords + + + void glVertexStream1iATI + GLenum stream + GLint x + + + void glVertexStream1ivATI + GLenum stream + const GLint *coords + + + void glVertexStream1sATI + GLenum stream + GLshort x + + + void glVertexStream1svATI + GLenum stream + const GLshort *coords + + + void glVertexStream2dATI + GLenum stream + GLdouble x + GLdouble y + + + void glVertexStream2dvATI + GLenum stream + const GLdouble *coords + + + void glVertexStream2fATI + GLenum stream + GLfloat x + GLfloat y + + + void glVertexStream2fvATI + GLenum stream + const GLfloat *coords + + + void glVertexStream2iATI + GLenum stream + GLint x + GLint y + + + void glVertexStream2ivATI + GLenum stream + const GLint *coords + + + void glVertexStream2sATI + GLenum stream + GLshort x + GLshort y + + + void glVertexStream2svATI + GLenum stream + const GLshort *coords + + + void glVertexStream3dATI + GLenum stream + GLdouble x + GLdouble y + GLdouble z + + + void glVertexStream3dvATI + GLenum stream + const GLdouble *coords + + + void glVertexStream3fATI + GLenum stream + GLfloat x + GLfloat y + GLfloat z + + + void glVertexStream3fvATI + GLenum stream + const GLfloat *coords + + + void glVertexStream3iATI + GLenum stream + GLint x + GLint y + GLint z + + + void glVertexStream3ivATI + GLenum stream + const GLint *coords + + + void glVertexStream3sATI + GLenum stream + GLshort x + GLshort y + GLshort z + + + void glVertexStream3svATI + GLenum stream + const GLshort *coords + + + void glVertexStream4dATI + GLenum stream + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + void glVertexStream4dvATI + GLenum stream + const GLdouble *coords + + + void glVertexStream4fATI + GLenum stream + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + void glVertexStream4fvATI + GLenum stream + const GLfloat *coords + + + void glVertexStream4iATI + GLenum stream + GLint x + GLint y + GLint z + GLint w + + + void glVertexStream4ivATI + GLenum stream + const GLint *coords + + + void glVertexStream4sATI + GLenum stream + GLshort x + GLshort y + GLshort z + GLshort w + + + void glVertexStream4svATI + GLenum stream + const GLshort *coords + + + void glVertexWeightPointerEXT + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glVertexWeightfEXT + GLfloat weight + + + + void glVertexWeightfvEXT + const GLfloat *weight + + + + void glVertexWeighthNV + GLhalfNV weight + + + + void glVertexWeighthvNV + const GLhalfNV *weight + + + + GLenum glVideoCaptureNV + GLuint video_capture_slot + GLuint *sequence_num + GLuint64EXT *capture_time + + + void glVideoCaptureStreamParameterdvNV + GLuint video_capture_slot + GLuint stream + GLenum pname + const GLdouble *params + + + void glVideoCaptureStreamParameterfvNV + GLuint video_capture_slot + GLuint stream + GLenum pname + const GLfloat *params + + + void glVideoCaptureStreamParameterivNV + GLuint video_capture_slot + GLuint stream + GLenum pname + const GLint *params + + + void glViewport + GLint x + GLint y + GLsizei width + GLsizei height + + + + void glViewportArrayv + GLuint first + GLsizei count + const GLfloat *v + + + void glViewportArrayvNV + GLuint first + GLsizei count + const GLfloat *v + + + + void glViewportArrayvOES + GLuint first + GLsizei count + const GLfloat *v + + + + void glViewportIndexedf + GLuint index + GLfloat x + GLfloat y + GLfloat w + GLfloat h + + + void glViewportIndexedfOES + GLuint index + GLfloat x + GLfloat y + GLfloat w + GLfloat h + + + + void glViewportIndexedfNV + GLuint index + GLfloat x + GLfloat y + GLfloat w + GLfloat h + + + + void glViewportIndexedfv + GLuint index + const GLfloat *v + + + void glViewportIndexedfvOES + GLuint index + const GLfloat *v + + + + void glViewportIndexedfvNV + GLuint index + const GLfloat *v + + + + void glViewportPositionWScaleNV + GLuint index + GLfloat xcoeff + GLfloat ycoeff + + + void glViewportSwizzleNV + GLuint index + GLenum swizzlex + GLenum swizzley + GLenum swizzlez + GLenum swizzlew + + + void glWaitSemaphoreEXT + GLuint semaphore + GLuint numBufferBarriers + const GLuint *buffers + GLuint numTextureBarriers + const GLuint *textures + const GLenum *srcLayouts + + + void glWaitSemaphoreui64NVX + GLuint waitGpu + GLsizei fenceObjectCount + const GLuint *semaphoreArray + const GLuint64 *fenceValueArray + + + void glWaitSync + GLsync sync + GLbitfield flags + GLuint64 timeout + + + void glWaitSyncAPPLE + GLsync sync + GLbitfield flags + GLuint64 timeout + + + + void glWeightPathsNV + GLuint resultPath + GLsizei numPaths + const GLuint *paths + const GLfloat *weights + + + void glWeightPointerARB + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glWeightPointerOES + GLint size + GLenum type + GLsizei stride + const void *pointer + + + void glWeightbvARB + GLint size + const GLbyte *weights + + + + void glWeightdvARB + GLint size + const GLdouble *weights + + + + void glWeightfvARB + GLint size + const GLfloat *weights + + + + void glWeightivARB + GLint size + const GLint *weights + + + + void glWeightsvARB + GLint size + const GLshort *weights + + + + void glWeightubvARB + GLint size + const GLubyte *weights + + + + void glWeightuivARB + GLint size + const GLuint *weights + + + + void glWeightusvARB + GLint size + const GLushort *weights + + + + void glWindowPos2d + GLdouble x + GLdouble y + + + + void glWindowPos2dARB + GLdouble x + GLdouble y + + + + + void glWindowPos2dMESA + GLdouble x + GLdouble y + + + + + void glWindowPos2dv + const GLdouble *v + + + + void glWindowPos2dvARB + const GLdouble *v + + + + + void glWindowPos2dvMESA + const GLdouble *v + + + + void glWindowPos2f + GLfloat x + GLfloat y + + + + void glWindowPos2fARB + GLfloat x + GLfloat y + + + + + void glWindowPos2fMESA + GLfloat x + GLfloat y + + + + + void glWindowPos2fv + const GLfloat *v + + + + void glWindowPos2fvARB + const GLfloat *v + + + + + void glWindowPos2fvMESA + const GLfloat *v + + + + void glWindowPos2i + GLint x + GLint y + + + + void glWindowPos2iARB + GLint x + GLint y + + + + + void glWindowPos2iMESA + GLint x + GLint y + + + + + void glWindowPos2iv + const GLint *v + + + + void glWindowPos2ivARB + const GLint *v + + + + + void glWindowPos2ivMESA + const GLint *v + + + + void glWindowPos2s + GLshort x + GLshort y + + + + void glWindowPos2sARB + GLshort x + GLshort y + + + + + void glWindowPos2sMESA + GLshort x + GLshort y + + + + + void glWindowPos2sv + const GLshort *v + + + + void glWindowPos2svARB + const GLshort *v + + + + + void glWindowPos2svMESA + const GLshort *v + + + + void glWindowPos3d + GLdouble x + GLdouble y + GLdouble z + + + + void glWindowPos3dARB + GLdouble x + GLdouble y + GLdouble z + + + + + void glWindowPos3dMESA + GLdouble x + GLdouble y + GLdouble z + + + + + void glWindowPos3dv + const GLdouble *v + + + + void glWindowPos3dvARB + const GLdouble *v + + + + + void glWindowPos3dvMESA + const GLdouble *v + + + + void glWindowPos3f + GLfloat x + GLfloat y + GLfloat z + + + + void glWindowPos3fARB + GLfloat x + GLfloat y + GLfloat z + + + + + void glWindowPos3fMESA + GLfloat x + GLfloat y + GLfloat z + + + + + void glWindowPos3fv + const GLfloat *v + + + + void glWindowPos3fvARB + const GLfloat *v + + + + + void glWindowPos3fvMESA + const GLfloat *v + + + + void glWindowPos3i + GLint x + GLint y + GLint z + + + + void glWindowPos3iARB + GLint x + GLint y + GLint z + + + + + void glWindowPos3iMESA + GLint x + GLint y + GLint z + + + + + void glWindowPos3iv + const GLint *v + + + + void glWindowPos3ivARB + const GLint *v + + + + + void glWindowPos3ivMESA + const GLint *v + + + + void glWindowPos3s + GLshort x + GLshort y + GLshort z + + + + void glWindowPos3sARB + GLshort x + GLshort y + GLshort z + + + + + void glWindowPos3sMESA + GLshort x + GLshort y + GLshort z + + + + + void glWindowPos3sv + const GLshort *v + + + + void glWindowPos3svARB + const GLshort *v + + + + + void glWindowPos3svMESA + const GLshort *v + + + + void glWindowPos4dMESA + GLdouble x + GLdouble y + GLdouble z + GLdouble w + + + + void glWindowPos4dvMESA + const GLdouble *v + + + void glWindowPos4fMESA + GLfloat x + GLfloat y + GLfloat z + GLfloat w + + + + void glWindowPos4fvMESA + const GLfloat *v + + + void glWindowPos4iMESA + GLint x + GLint y + GLint z + GLint w + + + + void glWindowPos4ivMESA + const GLint *v + + + void glWindowPos4sMESA + GLshort x + GLshort y + GLshort z + GLshort w + + + + void glWindowPos4svMESA + const GLshort *v + + + void glWindowRectanglesEXT + GLenum mode + GLsizei count + const GLint *box + + + void glWriteMaskEXT + GLuint res + GLuint in + GLenum outX + GLenum outY + GLenum outZ + GLenum outW + + + void glDrawVkImageNV + GLuint64 vkImage + GLuint sampler + GLfloat x0 + GLfloat y0 + GLfloat x1 + GLfloat y1 + GLfloat z + GLfloat s0 + GLfloat t0 + GLfloat s1 + GLfloat t1 + + + GLVULKANPROCNV glGetVkProcAddrNV + const GLchar *name + + + void glWaitVkSemaphoreNV + GLuint64 vkSemaphore + + + void glSignalVkSemaphoreNV + GLuint64 vkSemaphore + + + void glSignalVkFenceNV + GLuint64 vkFence + + + void glFramebufferParameteriMESA + GLenum target + GLenum pname + GLint param + + + void glGetFramebufferParameterivMESA + GLenum target + GLenum pname + GLint *params + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index fa2d47a..7888896 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -79,11 +79,13 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result vendor = Some(a.value), "comment" => comment = Some(a.value) } - match_elements!{ctx, attributes, "enum" => if let Some(v) = parse_enum(ctx, attributes) { children.push(EnumsChild::Enum(v)); }, + "unused" => { + consume_current_element(ctx); + }, "comment" => children.push(EnumsChild::Comment(parse_text_element(ctx))) } registry.0.push(RegistryChild::Enums( @@ -110,9 +112,23 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result registry.0.push(parse_extensions(ctx, attributes)) + "extensions" => registry.0.push(parse_extensions(ctx, attributes)), + "feature" => { + match_attributes!{ctx, a in attributes, + "api"=> {}, + "name" => {}, + "number" => {} + } + match_elements!{ctx, attributes, + "require" => { + consume_current_element(ctx); + }, + "remove" => { + consume_current_element(ctx); + } + } + } } - Ok(registry) } @@ -122,21 +138,28 @@ fn parse_type( attributes: Vec, ) -> Type { let mut name = None; + let mut type_name = None; let mut requires = None; let mut comment = None; let mut code: String = String::new(); - match_attributes! {ctx, a in attributes, "requires" => requires = Some(a.value), - "comment" => comment = Some(a.value) + "comment" => comment = Some(a.value), + "name" => name = Some(a.value) } match_elements_combine_text! {ctx, code, - "name" => name = Some(parse_text_element(ctx)) + "name" => { + type_name = Some(parse_text_element(ctx)); + }, + "apientry" => { + consume_current_element(ctx) + } //skip } Type { requires, + type_name, name, comment, code @@ -193,11 +216,14 @@ fn parse_extension( match_attributes! {ctx, a in attributes, "name" => name = Some(a.value), - "supported" => supported = Some(a.value) + "supported" => supported = Some(a.value), + "comment" => {} } match_elements! { ctx, attributes, - "require" => children.push(parse_extension_item_require(ctx, attributes)) + "require" => { + consume_current_element(ctx); + } } Some(Extension { @@ -270,10 +296,17 @@ fn parse_command(ctx: &mut ParseCtx, attributes: Vec) }); } }, + "alias" => { + consume_current_element(ctx); + }, + "glx" => { + consume_current_element(ctx); + }, "vecequiv" => { match_attributes!{ctx, a in attributes, "name" => vec_equiv = Some(a.value) } + consume_current_element(ctx); } } @@ -333,8 +366,13 @@ fn parse_enum(ctx: &mut ParseCtx, attributes: Vec) -> match_attributes! {ctx, a in attributes, "name" => name = Some(a.value), "value" => value = Some(a.value), - "group" => group = Some(a.value) + "group" => group = Some(a.value), + "alias" => {}, + "type" => {}, + "api" => {}, + "comment" => {} } + consume_current_element(ctx); unwrap_attribute!(ctx, enum, name); Some(Enum { name, value, group }) } diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index 0e97f1b..c47023d 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -197,6 +197,12 @@ pub struct Type { )] pub name: Option, + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub type_name: Option, + #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") diff --git a/khronos-registry-parse/tests/test.rs b/khronos-registry-parse/tests/test.rs index 2d19604..f79e748 100644 --- a/khronos-registry-parse/tests/test.rs +++ b/khronos-registry-parse/tests/test.rs @@ -2,6 +2,7 @@ extern crate khronos_registry_parse; use std::fs::File; +use std::io::BufReader; use std::path::{Path, PathBuf}; #[cfg(feature = "opengl")] use khronos_registry_parse::gl; @@ -71,11 +72,10 @@ macro_rules! test_version { #[cfg(feature = "opengl")] fn test_opengl_main() { use std::io::Cursor; - let mut buf = Cursor::new(vec![0; 0]); - download(&mut buf, URL_MAIN_GL); - buf.set_position(0); + let path = Path::new(env!("CARGO_MANIFEST_DIR")).join("resources/test/gl.xml"); + let mut file = BufReader::new(File::open(&path).expect("Unable to open gl.xml")); - match gl::parse_stream(buf.clone()) { + match gl::parse_stream(file) { Ok((_reg, errors)) => { if !errors.is_empty() { panic!("{:?}", errors); From 65a4c0d2c1b7f80c8ab2301e3c6f6a71be4e4080 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Thu, 3 Mar 2022 21:54:00 -0800 Subject: [PATCH 10/15] feat: fill in missing stubs --- khronos-registry-parse/src/gl/parse.rs | 156 +++++++++++++------------ khronos-registry-parse/src/gl/types.rs | 77 ++++++++++++ khronos-registry-parse/src/vk/parse.rs | 1 - 3 files changed, 157 insertions(+), 77 deletions(-) diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index 7888896..173126b 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -1,14 +1,11 @@ extern crate xml; use std; -use std::io; -use std::io::{BufReader, Read}; -use std::str::FromStr; +use std::io::Read; use types::*; use util::*; use gl::types::*; use xml::reader::XmlEvent; -use std::str; pub const BOM: &'static [u8] = &[0xEF, 0xBB, 0xBF]; @@ -20,7 +17,7 @@ pub fn parse_file(path: &std::path::Path) -> Result<(Registry, Vec), Fata pub fn parse_stream(mut stream: T) -> Result<(Registry, Vec), FatalError> { let mut buffer = vec![0; 0]; - stream.read_to_end(&mut buffer); + stream.read_to_end(&mut buffer)?; let mut offset = 0; for (i, _) in buffer.iter().enumerate() { @@ -114,25 +111,83 @@ fn parse_registry(ctx: &mut ParseCtx) -> Result registry.0.push(parse_extensions(ctx, attributes)), "feature" => { + let mut children = Vec::new(); + let mut api = None; + let mut name = None; + let mut number = None; match_attributes!{ctx, a in attributes, - "api"=> {}, - "name" => {}, - "number" => {} + "api"=> api = Some(a.value), + "name" => name = Some(a.value), + "number" => number = Some(a.value) } match_elements!{ctx, attributes, - "require" => { - consume_current_element(ctx); + "require" => if let Some(ext) = parse_extension_items(ctx, ExtensionType::Required, attributes) { + children.push(ext); }, - "remove" => { - consume_current_element(ctx); + "remove" => if let Some(ext) = parse_extension_items(ctx, ExtensionType::Removed, attributes) { + children.push(ext); } } + registry.0.push(RegistryChild::Features(Features{name, api, number, children})); } } Ok(registry) } + +fn parse_extension_items( + ctx: &mut ParseCtx, + ext_type: ExtensionType, + attributes: Vec, +) -> Option { + let mut required_children = Vec::new(); + let mut required_comment = None; + + match_attributes! {ctx, a in attributes, + "comment" => required_comment = Some(a.value) + } + + match_elements! { ctx, attributes, + "enum" => if let Some(e) = parse_enum(ctx, attributes) { + required_children.push(InterfaceItem::Enum(e)); + }, + "type" => { + let mut name = None; + let mut comment = None; + match_attributes! {ctx, a in attributes, + "name" => name = Some(a.value), + "comment" => comment = Some(a.value) + } + unwrap_attribute!(ctx, type, name); + consume_current_element(ctx); + required_children.push(InterfaceItem::Type { name, comment }); + }, + "command" => { + let mut name = None; + let mut comment = None; + match_attributes! {ctx, a in attributes, + "name" => name = Some(a.value), + "comment" => comment = Some(a.value) + } + unwrap_attribute!(ctx, type, name); + consume_current_element(ctx); + required_children.push(InterfaceItem::Command { name, comment }); + } + } + match ext_type { + ExtensionType::Required => Some(ExtensionChild::Require { + items: required_children, + comment: required_comment + }), + ExtensionType::Removed => Some(ExtensionChild::Removed { + items: required_children, + comment: required_comment + }) + } + +} + fn parse_type( ctx: &mut ParseCtx, attributes: Vec, @@ -142,6 +197,7 @@ fn parse_type( let mut requires = None; let mut comment = None; let mut code: String = String::new(); + let mut api_entry = false; match_attributes! {ctx, a in attributes, "requires" => requires = Some(a.value), "comment" => comment = Some(a.value), @@ -153,11 +209,13 @@ fn parse_type( type_name = Some(parse_text_element(ctx)); }, "apientry" => { - consume_current_element(ctx) - } //skip + api_entry = true; + consume_current_element(ctx) //skip + } } Type { + api_entry, requires, type_name, name, @@ -168,7 +226,7 @@ fn parse_type( fn parse_extensions( ctx: &mut ParseCtx, - attributes: Vec, + _attributes: Vec, ) -> RegistryChild { let mut children = Vec::new(); match_elements! {ctx, attributes, @@ -179,90 +237,36 @@ fn parse_extensions( RegistryChild::Extensions(Extensions { children }) } -fn parse_extension_item_require( - ctx: &mut ParseCtx, - attributes: Vec, -) -> ExtensionChild { - let mut items = Vec::new(); - - while let Some(Ok(e)) = ctx.events.next() { - match e { - XmlEvent::StartElement { - name, attributes, .. - } => { - let name = name.local_name.as_str(); - ctx.push_element(name); - if let Some(v) = parse_interface_item(ctx, name, attributes) { - items.push(v); - } - } - XmlEvent::EndElement { .. } => { - ctx.pop_element(); - break; - } - _ => {} - } - } - ExtensionChild::Require { items } -} - fn parse_extension( ctx: &mut ParseCtx, attributes: Vec, ) -> Option { let mut name = None; let mut supported = None; - let mut children = Vec::new(); + let mut comment = None; + let mut children: Vec = Vec::new(); match_attributes! {ctx, a in attributes, "name" => name = Some(a.value), "supported" => supported = Some(a.value), - "comment" => {} + "comment" => comment = Some(a.value) } match_elements! { ctx, attributes, - "require" => { - consume_current_element(ctx); + "require" => if let Some(ext) = parse_extension_items(ctx, ExtensionType::Required, attributes) { + children.push(ext); } } Some(Extension { name, supported, + comment, children, }) } -fn parse_interface_item( - ctx: &mut ParseCtx, - name: &str, - attributes: Vec, -) -> Option { - match name { - // "comment" => Some(InterfaceItem::Comment(parse_text_element(ctx))), - "enum" => parse_enum(ctx, attributes).map(|v| InterfaceItem::Enum(v)), - "command" => { - let mut name = None; - let mut comment = None; - match_attributes! {ctx, a in attributes, - "name" => name = Some(a.value), - "comment" => comment = Some(a.value) - } - unwrap_attribute!(ctx, type, name); - consume_current_element(ctx); - Some(InterfaceItem::Command { name, comment }) - } - _ => { - ctx.errors.push(Error::UnexpectedElement { - xpath: ctx.xpath.clone(), - name: String::from(name), - }); - return None; - } - } -} - -fn parse_command(ctx: &mut ParseCtx, attributes: Vec) -> Option { +fn parse_command(ctx: &mut ParseCtx, _attributes: Vec) -> Option { let mut code = String::new(); let mut proto = None; let mut vec_equiv = None; diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index c47023d..312f1b9 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -126,6 +126,15 @@ pub struct Extensions { #[non_exhaustive] pub enum InterfaceItem { Enum(Enum), + Type { + name: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + }, Command { name: String, @@ -151,9 +160,34 @@ pub enum ExtensionChild { serde(default, skip_serializing_if = "is_default") )] items: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + }, + Removed { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + items: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, }, } +pub enum ExtensionType { + Required, + Removed, +} + + #[derive(Debug, Clone, PartialEq, Eq, Default)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] @@ -166,12 +200,46 @@ pub struct Extension { )] pub supported: Option, + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub comment: Option, + /// The items which make up this extension. #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") )] pub children: Vec, + +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct Features { + pub name: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub api: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub number: Option, + + /// The items which make up this extension. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub children: Vec, + } @@ -209,6 +277,11 @@ pub struct Type { )] pub code: String, + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub api_entry: bool } #[derive(Debug, Clone, PartialEq, Eq, Default)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] @@ -237,6 +310,10 @@ pub enum RegistryChild { /// Container for all published Vulkan specification extensions. Extensions(Extensions), + + + /// Container for all published Vulkan specification extensions. + Features(Features), } diff --git a/khronos-registry-parse/src/vk/parse.rs b/khronos-registry-parse/src/vk/parse.rs index e573fee..45daf32 100644 --- a/khronos-registry-parse/src/vk/parse.rs +++ b/khronos-registry-parse/src/vk/parse.rs @@ -2,7 +2,6 @@ extern crate xml; use std; use std::io::Read; -use std::str::FromStr; use types::*; use util::*; use vk::types::*; From 449860011a88df8a85bc5ea2e2898a3df53633a0 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 6 Mar 2022 12:19:25 -0800 Subject: [PATCH 11/15] chore: update fields for command --- khronos-registry-parse/src/gl/mod.rs | 5 +- khronos-registry-parse/src/gl/parse.rs | 62 ++++++++---- khronos-registry-parse/src/gl/types.rs | 132 +++++++++++++++---------- khronos-registry-parse/src/vk/mod.rs | 3 +- khronos-registry-parse/tests/test.rs | 15 ++- 5 files changed, 134 insertions(+), 83 deletions(-) diff --git a/khronos-registry-parse/src/gl/mod.rs b/khronos-registry-parse/src/gl/mod.rs index d5fac54..27f9fd3 100644 --- a/khronos-registry-parse/src/gl/mod.rs +++ b/khronos-registry-parse/src/gl/mod.rs @@ -1,8 +1,7 @@ mod parse; mod types; -pub use types::*; -pub use gl::types::*; pub use gl::parse::parse_file; pub use gl::parse::parse_stream; - +pub use gl::types::*; +pub use types::*; diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index 173126b..fb24c21 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -1,15 +1,14 @@ extern crate xml; +use gl::types::*; use std; use std::io::Read; use types::*; use util::*; -use gl::types::*; use xml::reader::XmlEvent; pub const BOM: &'static [u8] = &[0xEF, 0xBB, 0xBF]; - pub fn parse_file(path: &std::path::Path) -> Result<(Registry, Vec), FatalError> { let file = std::io::BufReader::new(std::fs::File::open(path)?); parse_stream(file) @@ -25,7 +24,7 @@ pub fn parse_stream(mut stream: T) -> Result<(Registry, Vec(ctx: &mut ParseCtx) -> Result( ctx: &mut ParseCtx, ext_type: ExtensionType, @@ -143,9 +140,13 @@ fn parse_extension_items( ) -> Option { let mut required_children = Vec::new(); let mut required_comment = None; + let mut profile = None; + let mut api = None; match_attributes! {ctx, a in attributes, - "comment" => required_comment = Some(a.value) + "comment" => required_comment = Some(a.value), + "profile" => profile = Some(a.value), + "api" => api = Some(a.value) } match_elements! { ctx, attributes, @@ -178,20 +179,18 @@ fn parse_extension_items( match ext_type { ExtensionType::Required => Some(ExtensionChild::Require { items: required_children, - comment: required_comment + comment: required_comment, + api, }), ExtensionType::Removed => Some(ExtensionChild::Removed { items: required_children, - comment: required_comment - }) + comment: required_comment, + profile, + }), } - } -fn parse_type( - ctx: &mut ParseCtx, - attributes: Vec, -) -> Type { +fn parse_type(ctx: &mut ParseCtx, attributes: Vec) -> Type { let mut name = None; let mut type_name = None; let mut requires = None; @@ -220,7 +219,7 @@ fn parse_type( type_name, name, comment, - code + code, } } @@ -266,11 +265,16 @@ fn parse_extension( }) } -fn parse_command(ctx: &mut ParseCtx, _attributes: Vec) -> Option { +fn parse_command( + ctx: &mut ParseCtx, + _attributes: Vec, +) -> Option { let mut code = String::new(); let mut proto = None; let mut vec_equiv = None; let mut params = Vec::new(); + let mut aliases = Vec::new(); + let mut glx = None; match_elements! {ctx, attributes, "proto" => { @@ -301,9 +305,28 @@ fn parse_command(ctx: &mut ParseCtx, _attributes: Vec) } }, "alias" => { + match_attributes!{ctx, a in attributes, + "name" => aliases.push(a.value) + } consume_current_element(ctx); }, "glx" => { + let mut glx_type = None; + let mut opcode = None; + let mut name = None; + let mut comment = None; + match_attributes!{ctx, a in attributes, + "type" => glx_type = Some(a.value), + "opcode" => opcode = Some(a.value), + "name" => name = Some(a.value), + "comment" => comment = Some(a.value) + } + glx = Some(Glx { + glx_type, + opcode, + name, + comment + }); consume_current_element(ctx); }, "vecequiv" => { @@ -313,7 +336,6 @@ fn parse_command(ctx: &mut ParseCtx, _attributes: Vec) consume_current_element(ctx); } } - let proto = if let Some(v) = proto { v } else { @@ -323,12 +345,14 @@ fn parse_command(ctx: &mut ParseCtx, _attributes: Vec) }); return None; }; - Some(Command::Definition(CommandDefinition { + Some(Command { proto, params, code, vec_equiv, - })) + glx, + aliases, + }) } fn parse_name_with_type( diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index 312f1b9..b33aa87 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -68,45 +68,74 @@ pub struct CommentedChildren { pub children: Vec, } -#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[derive(Debug, Clone, PartialEq, Eq)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] -pub struct CommandDefinition { +pub struct Glx { #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") )] - pub proto: NameWithType, + pub name: Option, #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") )] - pub params: Vec, + pub comment: Option, #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") )] - pub code: String, + pub glx_type: Option, #[cfg_attr( feature = "serialize", serde(default, skip_serializing_if = "is_default") )] - pub vec_equiv: Option, + pub opcode: Option, } -/// A command is just a Vulkan function. #[derive(Debug, Clone, PartialEq, Eq)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] -pub enum Command { - /// Indicates this function is an alias for another one. - Alias { name: String, alias: String }, +pub struct Command { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub proto: NameWithType, - /// Defines a new Vulkan function. - Definition(CommandDefinition), + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub params: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub code: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub vec_equiv: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub aliases: Vec, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub glx: Option, } pub type Commands = CommentedChildren; @@ -162,23 +191,31 @@ pub enum ExtensionChild { items: Vec, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + comment: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] - comment: Option, + api: Option, }, Removed { #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] items: Vec, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] comment: Option, + + profile: Option, }, } @@ -187,7 +224,6 @@ pub enum ExtensionType { Removed, } - #[derive(Debug, Clone, PartialEq, Eq, Default)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] @@ -201,8 +237,8 @@ pub struct Extension { pub supported: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub comment: Option, @@ -212,7 +248,6 @@ pub struct Extension { serde(default, skip_serializing_if = "is_default") )] pub children: Vec, - } #[derive(Debug, Clone, PartialEq, Eq, Default)] @@ -222,66 +257,64 @@ pub struct Features { pub name: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub api: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub number: Option, /// The items which make up this extension. #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub children: Vec, - } - #[derive(Debug, Clone, PartialEq, Eq, Default)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] pub struct Type { #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub requires: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub comment: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub name: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub type_name: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub code: String, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] - pub api_entry: bool + pub api_entry: bool, } #[derive(Debug, Clone, PartialEq, Eq, Default)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] @@ -290,7 +323,6 @@ pub struct Types { pub children: Vec, } - /// An element of the Vulkan registry. #[derive(Debug, Clone, PartialEq, Eq)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] @@ -311,12 +343,10 @@ pub enum RegistryChild { /// Container for all published Vulkan specification extensions. Extensions(Extensions), - /// Container for all published Vulkan specification extensions. Features(Features), } - #[derive(Debug, Clone, PartialEq, Eq, Default)] #[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] #[non_exhaustive] @@ -328,14 +358,14 @@ pub struct Enums { pub namespace: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub group: Option, #[cfg_attr( - feature = "serialize", - serde(default, skip_serializing_if = "is_default") + feature = "serialize", + serde(default, skip_serializing_if = "is_default") )] pub enum_type: Option, diff --git a/khronos-registry-parse/src/vk/mod.rs b/khronos-registry-parse/src/vk/mod.rs index 2bd0f0f..554a3e4 100644 --- a/khronos-registry-parse/src/vk/mod.rs +++ b/khronos-registry-parse/src/vk/mod.rs @@ -10,8 +10,7 @@ pub use vk::convert::parse_file_as_vkxml; #[cfg(feature = "vkxml-convert")] pub use vk::convert::parse_stream_as_vkxml; -pub use vk::types::*; pub use types::*; pub use vk::parse::parse_file; pub use vk::parse::parse_stream; - +pub use vk::types::*; diff --git a/khronos-registry-parse/tests/test.rs b/khronos-registry-parse/tests/test.rs index f79e748..86819c7 100644 --- a/khronos-registry-parse/tests/test.rs +++ b/khronos-registry-parse/tests/test.rs @@ -1,17 +1,18 @@ - extern crate khronos_registry_parse; -use std::fs::File; -use std::io::BufReader; -use std::path::{Path, PathBuf}; #[cfg(feature = "opengl")] use khronos_registry_parse::gl; #[cfg(feature = "vulkan")] use khronos_registry_parse::vk; +use std::fs::File; +use std::io::BufReader; +use std::path::{Path, PathBuf}; const URL_REPO: &str = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs"; -const URL_MAIN_VK: &str = "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml"; -const URL_MAIN_GL: &str = "https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/main/xml/gl.xml"; +const URL_MAIN_VK: &str = + "https://raw.githubusercontent.com/KhronosGroup/Vulkan-Docs/main/xml/vk.xml"; +const URL_MAIN_GL: &str = + "https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/main/xml/gl.xml"; fn download(dst: &mut T, url: &str) { let resp = minreq::get(url) @@ -30,7 +31,6 @@ fn download(dst: &mut T, url: &str) { .expect("Failed to write response body."); } - #[cfg(feature = "vulkan")] fn parsing_test(major: u32, minor: u32, patch: u32, url_suffix: &str) { let src = format!( @@ -85,7 +85,6 @@ fn test_opengl_main() { } } - #[test] #[cfg(feature = "vulkan")] fn test_vulkan_main() { From 87c13863dc712cab559a3d33ff7ea10f62930cc1 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sat, 12 Mar 2022 21:43:18 -0800 Subject: [PATCH 12/15] feat: add buffer to named types --- khronos-registry-parse/src/gl/parse.rs | 2 +- khronos-registry-parse/src/gl/types.rs | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index fb24c21..c4b68cf 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -384,7 +384,7 @@ fn parse_name_with_type( return None; }; - Some(NameWithType { name, type_name }) + Some(NameWithType { name, type_name, buffer: buffer.to_string() }) } fn parse_enum(ctx: &mut ParseCtx, attributes: Vec) -> Option { diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index b33aa87..afc582d 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -23,6 +23,12 @@ pub struct NameWithType { serde(default, skip_serializing_if = "is_default") )] pub name: String, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub buffer: String } #[derive(Debug, Clone, PartialEq, Eq, Default)] From 6b2d93112ce325f4c73fd38a02389ed65ad9ad18 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 13 Mar 2022 09:23:06 -0700 Subject: [PATCH 13/15] feat: update proto definition --- khronos-registry-parse/src/gl/parse.rs | 17 +++++++++++++-- khronos-registry-parse/src/gl/types.rs | 29 ++++++++++++++++++++++++-- 2 files changed, 42 insertions(+), 4 deletions(-) diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index c4b68cf..8ed5c8b 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -278,7 +278,19 @@ fn parse_command( match_elements! {ctx, attributes, "proto" => { - proto = parse_name_with_type(ctx, &mut code); + let mut group = None; + let mut class = None; + match_attributes! {ctx, a in attributes, + "group" => group = Some(a.value), + "class" => class = Some(a.value) + } + if let Some(definition) = parse_name_with_type(ctx, &mut code) { + proto = Some(CommandProto { + group, + class, + definition + }); + } code.push('('); }, "param" => { @@ -374,6 +386,7 @@ fn parse_name_with_type( name = Some(text); } } + let name = if let Some(v) = name { v } else { @@ -384,7 +397,7 @@ fn parse_name_with_type( return None; }; - Some(NameWithType { name, type_name, buffer: buffer.to_string() }) + Some(NameWithType { name, type_name, code: buffer.to_string() }) } fn parse_enum(ctx: &mut ParseCtx, attributes: Vec) -> Option { diff --git a/khronos-registry-parse/src/gl/types.rs b/khronos-registry-parse/src/gl/types.rs index afc582d..4f9a630 100644 --- a/khronos-registry-parse/src/gl/types.rs +++ b/khronos-registry-parse/src/gl/types.rs @@ -28,7 +28,32 @@ pub struct NameWithType { feature = "serialize", serde(default, skip_serializing_if = "is_default") )] - pub buffer: String + pub code: String +} + +#[derive(Debug, Clone, PartialEq, Eq, Default)] +#[cfg_attr(feature = "serialize", derive(Serialize, Deserialize))] +#[non_exhaustive] +pub struct CommandProto { + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub group: Option, + + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub class: Option, + + /// The definition of this parameter. + #[cfg_attr( + feature = "serialize", + serde(default, skip_serializing_if = "is_default") + )] + pub definition: NameWithType, + } #[derive(Debug, Clone, PartialEq, Eq, Default)] @@ -111,7 +136,7 @@ pub struct Command { feature = "serialize", serde(default, skip_serializing_if = "is_default") )] - pub proto: NameWithType, + pub proto: CommandProto, #[cfg_attr( feature = "serialize", From 62c4fdbfc9661abec6c62c18df4b7c14b80180f7 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 13 Mar 2022 20:31:22 -0700 Subject: [PATCH 14/15] feat: update parser for type --- khronos-registry-parse/src/gl/parse.rs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/khronos-registry-parse/src/gl/parse.rs b/khronos-registry-parse/src/gl/parse.rs index 8ed5c8b..c9ca6fb 100644 --- a/khronos-registry-parse/src/gl/parse.rs +++ b/khronos-registry-parse/src/gl/parse.rs @@ -374,18 +374,20 @@ fn parse_name_with_type( let mut name = None; let mut type_name = None; - match_elements_combine_text! {ctx, buffer, + let mut arg_buffer: String = String::new(); + match_elements_combine_text! {ctx, arg_buffer, "ptype" => { let text = parse_text_element(ctx); - buffer.push_str(&text); + arg_buffer.push_str(&text); type_name = Some(text); }, "name" => { let text = parse_text_element(ctx); - buffer.push_str(&text); + arg_buffer.push_str(&text); name = Some(text); } } + buffer.push_str(arg_buffer.as_str()); let name = if let Some(v) = name { v @@ -397,7 +399,7 @@ fn parse_name_with_type( return None; }; - Some(NameWithType { name, type_name, code: buffer.to_string() }) + Some(NameWithType { name, type_name, code: arg_buffer.to_string() }) } fn parse_enum(ctx: &mut ParseCtx, attributes: Vec) -> Option { From 8e41a749a358483c462f5733e88ebe259f7610d3 Mon Sep 17 00:00:00 2001 From: Michael Pollind Date: Sun, 10 Apr 2022 11:57:44 -0700 Subject: [PATCH 15/15] add ci back --- Cargo.toml | 3 +- ci/Cargo.toml | 15 + ci/src/lib.rs | 7 + {khronos-registry-parse => ci}/tests/test.rs | 14 +- khronos-registry-parse/resources/test/gl.xml | 47242 ----------------- khronos-registry-parse/src/vk/convert.rs | 1 - 6 files changed, 28 insertions(+), 47254 deletions(-) create mode 100644 ci/Cargo.toml create mode 100644 ci/src/lib.rs rename {khronos-registry-parse => ci}/tests/test.rs (96%) delete mode 100644 khronos-registry-parse/resources/test/gl.xml diff --git a/Cargo.toml b/Cargo.toml index 6169173..fc70f44 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,4 +1,5 @@ [workspace] members = [ - "khronos-registry-parse" + "khronos-registry-parse", + "ci" ] diff --git a/ci/Cargo.toml b/ci/Cargo.toml new file mode 100644 index 0000000..561a1f9 --- /dev/null +++ b/ci/Cargo.toml @@ -0,0 +1,15 @@ +[package] +name = "ci" +version = "0.1.0" +authors = ["Martin Krošlák "] + +[dependencies] + +[dev-dependencies] +minreq = { version = "^2", features = ["https"] } +ron = "^0.4" +serde = "^1.0.75" +serde_derive = "^1.0.75" +khronos-registry-parse = { path = "../khronos-registry-parse", features = ["serialize", "vkxml-convert", "vulkan", "opengl"] } +vkxml = "^0.3" +xml-rs = "^0.8" diff --git a/ci/src/lib.rs b/ci/src/lib.rs new file mode 100644 index 0000000..31e1bb2 --- /dev/null +++ b/ci/src/lib.rs @@ -0,0 +1,7 @@ +#[cfg(test)] +mod tests { + #[test] + fn it_works() { + assert_eq!(2 + 2, 4); + } +} diff --git a/khronos-registry-parse/tests/test.rs b/ci/tests/test.rs similarity index 96% rename from khronos-registry-parse/tests/test.rs rename to ci/tests/test.rs index 86819c7..65d9f2a 100644 --- a/khronos-registry-parse/tests/test.rs +++ b/ci/tests/test.rs @@ -1,8 +1,6 @@ extern crate khronos_registry_parse; -#[cfg(feature = "opengl")] use khronos_registry_parse::gl; -#[cfg(feature = "vulkan")] use khronos_registry_parse::vk; use std::fs::File; use std::io::BufReader; @@ -31,7 +29,6 @@ fn download(dst: &mut T, url: &str) { .expect("Failed to write response body."); } -#[cfg(feature = "vulkan")] fn parsing_test(major: u32, minor: u32, patch: u32, url_suffix: &str) { let src = format!( "{}/v{}.{}.{}{}/vk.xml", @@ -61,7 +58,6 @@ fn parsing_test(major: u32, minor: u32, patch: u32, url_suffix: &str) { macro_rules! test_version { ($test_name:ident, $major:expr, $minor:expr, $patch:expr, $url_suffix:expr) => { #[test] - #[cfg(feature = "vulkan")] fn $test_name() { parsing_test($major, $minor, $patch, $url_suffix); } @@ -69,13 +65,13 @@ macro_rules! test_version { } #[test] -#[cfg(feature = "opengl")] fn test_opengl_main() { use std::io::Cursor; - let path = Path::new(env!("CARGO_MANIFEST_DIR")).join("resources/test/gl.xml"); - let mut file = BufReader::new(File::open(&path).expect("Unable to open gl.xml")); + let mut buf = Cursor::new(vec![0; 15]); + download(&mut buf, URL_MAIN_GL); + buf.set_position(0); - match gl::parse_stream(file) { + match gl::parse_stream(buf.clone()) { Ok((_reg, errors)) => { if !errors.is_empty() { panic!("{:?}", errors); @@ -86,7 +82,6 @@ fn test_opengl_main() { } #[test] -#[cfg(feature = "vulkan")] fn test_vulkan_main() { use std::io::Cursor; let mut buf = Cursor::new(vec![0; 15]); @@ -102,7 +97,6 @@ fn test_vulkan_main() { Err(fatal_error) => panic!("{:?}", fatal_error), } - #[cfg(feature = "vkxml-convert")] match vk::parse_stream_as_vkxml(buf) { Ok(_) => (), Err(fatal_error) => panic!("{:?}", fatal_error), diff --git a/khronos-registry-parse/resources/test/gl.xml b/khronos-registry-parse/resources/test/gl.xml deleted file mode 100644 index f4aa948..0000000 --- a/khronos-registry-parse/resources/test/gl.xml +++ /dev/null @@ -1,47242 +0,0 @@ - - - -Copyright 2013-2020 The Khronos Group Inc. -SPDX-License-Identifier: Apache-2.0 - -This file, gl.xml, is the OpenGL and OpenGL API Registry. The canonical -version of the registry, together with documentation, schema, and Python -generator scripts used to generate C header files for OpenGL and OpenGL ES, -can always be found in the Khronos Registry at -https://github.com/KhronosGroup/OpenGL-Registry - - - - - - #include <KHR/khrplatform.h> - - typedef unsigned int GLenum; - typedef unsigned char GLboolean; - typedef unsigned int GLbitfield; - typedef void GLvoid; - typedef khronos_int8_t GLbyte; - typedef khronos_uint8_t GLubyte; - typedef khronos_int16_t GLshort; - typedef khronos_uint16_t GLushort; - typedef int GLint; - typedef unsigned int GLuint; - typedef khronos_int32_t GLclampx; - typedef int GLsizei; - typedef khronos_float_t GLfloat; - typedef khronos_float_t GLclampf; - typedef double GLdouble; - typedef double GLclampd; - typedef void *GLeglClientBufferEXT; - typedef void *GLeglImageOES; - typedef char GLchar; - typedef char GLcharARB; - #ifdef __APPLE__ -typedef void *GLhandleARB; -#else -typedef unsigned int GLhandleARB; -#endif - typedef khronos_uint16_t GLhalf; - typedef khronos_uint16_t GLhalfARB; - typedef khronos_int32_t GLfixed; - typedef khronos_intptr_t GLintptr; - typedef khronos_intptr_t GLintptrARB; - typedef khronos_ssize_t GLsizeiptr; - typedef khronos_ssize_t GLsizeiptrARB; - typedef khronos_int64_t GLint64; - typedef khronos_int64_t GLint64EXT; - typedef khronos_uint64_t GLuint64; - typedef khronos_uint64_t GLuint64EXT; - typedef struct __GLsync *GLsync; - struct _cl_context; - struct _cl_event; - typedef void ( *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); - typedef void ( *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); - typedef void ( *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); - - - typedef void ( *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,void *userParam); - typedef unsigned short GLhalfNV; - typedef GLintptr GLvdpauSurfaceNV; - typedef void ( *GLVULKANPROCNV)(void); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void glAccum - GLenum op - GLfloat value - - - - void glAccumxOES - GLenum op - GLfixed value - - - void glActiveProgramEXT - GLuint program - - - void glActiveShaderProgram - GLuint pipeline - GLuint program - - - void glActiveShaderProgramEXT - GLuint pipeline - GLuint program - - - void glActiveStencilFaceEXT - GLenum face - - - - void glActiveTexture - GLenum texture - - - - void glActiveTextureARB - GLenum texture - - - - - void glActiveVaryingNV - GLuint program - const GLchar *name - - - void glAlphaFragmentOp1ATI - GLenum op - GLuint dst - GLuint dstMod - GLuint arg1 - GLuint arg1Rep - GLuint arg1Mod - - - void glAlphaFragmentOp2ATI - GLenum op - GLuint dst - GLuint dstMod - GLuint arg1 - GLuint arg1Rep - GLuint arg1Mod - GLuint arg2 - GLuint arg2Rep - GLuint arg2Mod - - - void glAlphaFragmentOp3ATI - GLenum op - GLuint dst - GLuint dstMod - GLuint arg1 - GLuint arg1Rep - GLuint arg1Mod - GLuint arg2 - GLuint arg2Rep - GLuint arg2Mod - GLuint arg3 - GLuint arg3Rep - GLuint arg3Mod - - - void glAlphaFunc - GLenum func - GLfloat ref - - - - void glAlphaFuncQCOM - GLenum func - GLclampf ref - - - void glAlphaFuncx - GLenum func - GLfixed ref - - - void glAlphaFuncxOES - GLenum func - GLfixed ref - - - void glAlphaToCoverageDitherControlNV - GLenum mode - - - void glApplyFramebufferAttachmentCMAAINTEL - - - void glApplyTextureEXT - GLenum mode - - - GLboolean glAcquireKeyedMutexWin32EXT - GLuint memory - GLuint64 key - GLuint timeout - - - GLboolean glAreProgramsResidentNV - GLsizei n - const GLuint *programs - GLboolean *residences - - - - GLboolean glAreTexturesResident - GLsizei n - const GLuint *textures - GLboolean *residences - - - - GLboolean glAreTexturesResidentEXT - GLsizei n - const GLuint *textures - GLboolean *residences - - - - void glArrayElement - GLint i - - - void glArrayElementEXT - GLint i - - - - void glArrayObjectATI - GLenum array - GLint size - GLenum type - GLsizei stride - GLuint buffer - GLuint offset - - - GLuint glAsyncCopyBufferSubDataNVX - GLsizei waitSemaphoreCount - const GLuint *waitSemaphoreArray - const GLuint64 *fenceValueArray - GLuint readGpu - GLbitfield writeGpuMask - GLuint readBuffer - GLuint writeBuffer - GLintptr readOffset - GLintptr writeOffset - GLsizeiptr size - GLsizei signalSemaphoreCount - const GLuint *signalSemaphoreArray - const GLuint64 *signalValueArray - - - GLuint glAsyncCopyImageSubDataNVX - GLsizei waitSemaphoreCount - const GLuint *waitSemaphoreArray - const GLuint64 *waitValueArray - GLuint srcGpu - GLbitfield dstGpuMask - GLuint srcName - GLenum srcTarget - GLint srcLevel - GLint srcX - GLint srcY - GLint srcZ - GLuint dstName - GLenum dstTarget - GLint dstLevel - GLint dstX - GLint dstY - GLint dstZ - GLsizei srcWidth - GLsizei srcHeight - GLsizei srcDepth - GLsizei signalSemaphoreCount - const GLuint *signalSemaphoreArray - const GLuint64 *signalValueArray - - - void glAsyncMarkerSGIX - GLuint marker - - - void glAttachObjectARB - GLhandleARB containerObj - GLhandleARB obj - - - - void glAttachShader - GLuint program - GLuint shader - - - void glBegin - GLenum mode - - - - void glBeginConditionalRender - GLuint id - GLenum mode - - - void glBeginConditionalRenderNV - GLuint id - GLenum mode - - - - - void glBeginConditionalRenderNVX - GLuint id - - - void glBeginFragmentShaderATI - - - void glBeginOcclusionQueryNV - GLuint id - - - void glBeginPerfMonitorAMD - GLuint monitor - - - void glBeginPerfQueryINTEL - GLuint queryHandle - - - void glBeginQuery - GLenum target - GLuint id - - - - void glBeginQueryARB - GLenum target - GLuint id - - - - void glBeginQueryEXT - GLenum target - GLuint id - - - void glBeginQueryIndexed - GLenum target - GLuint index - GLuint id - - - void glBeginTransformFeedback - GLenum primitiveMode - - - - void glBeginTransformFeedbackEXT - GLenum primitiveMode - - - - void glBeginTransformFeedbackNV - GLenum primitiveMode - - - - void glBeginVertexShaderEXT - - - void glBeginVideoCaptureNV - GLuint video_capture_slot - - - void glBindAttribLocation - GLuint program - GLuint index - const GLchar *name - - - void glBindAttribLocationARB - GLhandleARB programObj - GLuint index - const GLcharARB *name - - - - void glBindBuffer - GLenum target - GLuint buffer - - - void glBindBufferARB - GLenum target - GLuint buffer - - - - void glBindBufferBase - GLenum target - GLuint index - GLuint buffer - - - - void glBindBufferBaseEXT - GLenum target - GLuint index - GLuint buffer - - - - void glBindBufferBaseNV - GLenum target - GLuint index - GLuint buffer - - - - void glBindBufferOffsetEXT - GLenum target - GLuint index - GLuint buffer - GLintptr offset - - - void glBindBufferOffsetNV - GLenum target - GLuint index - GLuint buffer - GLintptr offset - - - - void glBindBufferRange - GLenum target - GLuint index - GLuint buffer - GLintptr offset - GLsizeiptr size - - - - void glBindBufferRangeEXT - GLenum target - GLuint index - GLuint buffer - GLintptr offset - GLsizeiptr size - - - - void glBindBufferRangeNV - GLenum target - GLuint index - GLuint buffer - GLintptr offset - GLsizeiptr size - - - - void glBindBuffersBase - GLenum target - GLuint first - GLsizei count - const GLuint *buffers - - - void glBindBuffersRange - GLenum target - GLuint first - GLsizei count - const GLuint *buffers - const GLintptr *offsets - const GLsizeiptr *sizes - - - void glBindFragDataLocation - GLuint program - GLuint color - const GLchar *name - - - void glBindFragDataLocationEXT - GLuint program - GLuint color - const GLchar *name - - - - void glBindFragDataLocationIndexed - GLuint program - GLuint colorNumber - GLuint index - const GLchar *name - - - void glBindFragDataLocationIndexedEXT - GLuint program - GLuint colorNumber - GLuint index - const GLchar *name - - - - void glBindFragmentShaderATI - GLuint id - - - void glBindFramebuffer - GLenum target - GLuint framebuffer - - - - void glBindFramebufferEXT - GLenum target - GLuint framebuffer - - - - void glBindFramebufferOES - GLenum target - GLuint framebuffer - - - void glBindImageTexture - GLuint unit - GLuint texture - GLint level - GLboolean layered - GLint layer - GLenum access - GLenum format - - - void glBindImageTextureEXT - GLuint index - GLuint texture - GLint level - GLboolean layered - GLint layer - GLenum access - GLint format - - - void glBindImageTextures - GLuint first - GLsizei count - const GLuint *textures - - - GLuint glBindLightParameterEXT - GLenum light - GLenum value - - - GLuint glBindMaterialParameterEXT - GLenum face - GLenum value - - - void glBindMultiTextureEXT - GLenum texunit - GLenum target - GLuint texture - - - GLuint glBindParameterEXT - GLenum value - - - void glBindProgramARB - GLenum target - GLuint program - - - - void glBindProgramNV - GLenum target - GLuint id - - - - - void glBindProgramPipeline - GLuint pipeline - - - void glBindProgramPipelineEXT - GLuint pipeline - - - void glBindRenderbuffer - GLenum target - GLuint renderbuffer - - - - void glBindRenderbufferEXT - GLenum target - GLuint renderbuffer - - - - void glBindRenderbufferOES - GLenum target - GLuint renderbuffer - - - void glBindSampler - GLuint unit - GLuint sampler - - - void glBindSamplers - GLuint first - GLsizei count - const GLuint *samplers - - - void glBindShadingRateImageNV - GLuint texture - - - GLuint glBindTexGenParameterEXT - GLenum unit - GLenum coord - GLenum value - - - void glBindTexture - GLenum target - GLuint texture - - - - void glBindTextureEXT - GLenum target - GLuint texture - - - - - void glBindTextureUnit - GLuint unit - GLuint texture - - - GLuint glBindTextureUnitParameterEXT - GLenum unit - GLenum value - - - void glBindTextures - GLuint first - GLsizei count - const GLuint *textures - - - void glBindTransformFeedback - GLenum target - GLuint id - - - void glBindTransformFeedbackNV - GLenum target - GLuint id - - - void glBindVertexArray - GLuint array - - - - void glBindVertexArrayAPPLE - GLuint array - - - void glBindVertexArrayOES - GLuint array - - - - void glBindVertexBuffer - GLuint bindingindex - GLuint buffer - GLintptr offset - GLsizei stride - - - void glBindVertexBuffers - GLuint first - GLsizei count - const GLuint *buffers - const GLintptr *offsets - const GLsizei *strides - - - void glBindVertexShaderEXT - GLuint id - - - void glBindVideoCaptureStreamBufferNV - GLuint video_capture_slot - GLuint stream - GLenum frame_region - GLintptrARB offset - - - void glBindVideoCaptureStreamTextureNV - GLuint video_capture_slot - GLuint stream - GLenum frame_region - GLenum target - GLuint texture - - - void glBinormal3bEXT - GLbyte bx - GLbyte by - GLbyte bz - - - - void glBinormal3bvEXT - const GLbyte *v - - - void glBinormal3dEXT - GLdouble bx - GLdouble by - GLdouble bz - - - - void glBinormal3dvEXT - const GLdouble *v - - - void glBinormal3fEXT - GLfloat bx - GLfloat by - GLfloat bz - - - - void glBinormal3fvEXT - const GLfloat *v - - - void glBinormal3iEXT - GLint bx - GLint by - GLint bz - - - - void glBinormal3ivEXT - const GLint *v - - - void glBinormal3sEXT - GLshort bx - GLshort by - GLshort bz - - - - void glBinormal3svEXT - const GLshort *v - - - void glBinormalPointerEXT - GLenum type - GLsizei stride - const void *pointer - - - void glBitmap - GLsizei width - GLsizei height - GLfloat xorig - GLfloat yorig - GLfloat xmove - GLfloat ymove - const GLubyte *bitmap - - - - - void glBitmapxOES - GLsizei width - GLsizei height - GLfixed xorig - GLfixed yorig - GLfixed xmove - GLfixed ymove - const GLubyte *bitmap - - - void glBlendBarrier - - - void glBlendBarrierKHR - - - - void glBlendBarrierNV - - - - void glBlendColor - GLfloat red - GLfloat green - GLfloat blue - GLfloat alpha - - - - void glBlendColorEXT - GLfloat red - GLfloat green - GLfloat blue - GLfloat alpha - - - - - void glBlendColorxOES - GLfixed red - GLfixed green - GLfixed blue - GLfixed alpha - - - void glBlendEquation - GLenum mode - - - - void glBlendEquationEXT - GLenum mode - - - - - void glBlendEquationIndexedAMD - GLuint buf - GLenum mode - - - - void glBlendEquationOES - GLenum mode - - - void glBlendEquationSeparate - GLenum modeRGB - GLenum modeAlpha - - - - void glBlendEquationSeparateEXT - GLenum modeRGB - GLenum modeAlpha - - - - - void glBlendEquationSeparateIndexedAMD - GLuint buf - GLenum modeRGB - GLenum modeAlpha - - - - void glBlendEquationSeparateOES - GLenum modeRGB - GLenum modeAlpha - - - void glBlendEquationSeparatei - GLuint buf - GLenum modeRGB - GLenum modeAlpha - - - void glBlendEquationSeparateiARB - GLuint buf - GLenum modeRGB - GLenum modeAlpha - - - - void glBlendEquationSeparateiEXT - GLuint buf - GLenum modeRGB - GLenum modeAlpha - - - - void glBlendEquationSeparateiOES - GLuint buf - GLenum modeRGB - GLenum modeAlpha - - - - void glBlendEquationi - GLuint buf - GLenum mode - - - void glBlendEquationiARB - GLuint buf - GLenum mode - - - - void glBlendEquationiEXT - GLuint buf - GLenum mode - - - - void glBlendEquationiOES - GLuint buf - GLenum mode - - - - void glBlendFunc - GLenum sfactor - GLenum dfactor - - - - void glBlendFuncIndexedAMD - GLuint buf - GLenum src - GLenum dst - - - - void glBlendFuncSeparate - GLenum sfactorRGB - GLenum dfactorRGB - GLenum sfactorAlpha - GLenum dfactorAlpha - - - - void glBlendFuncSeparateEXT - GLenum sfactorRGB - GLenum dfactorRGB - GLenum sfactorAlpha - GLenum dfactorAlpha - - - - - void glBlendFuncSeparateINGR - GLenum sfactorRGB - GLenum dfactorRGB - GLenum sfactorAlpha - GLenum dfactorAlpha - - - - - void glBlendFuncSeparateIndexedAMD - GLuint buf - GLenum srcRGB - GLenum dstRGB - GLenum srcAlpha - GLenum dstAlpha - - - - void glBlendFuncSeparateOES - GLenum srcRGB - GLenum dstRGB - GLenum srcAlpha - GLenum dstAlpha - - - void glBlendFuncSeparatei - GLuint buf - GLenum srcRGB - GLenum dstRGB - GLenum srcAlpha - GLenum dstAlpha - - - void glBlendFuncSeparateiARB - GLuint buf - GLenum srcRGB - GLenum dstRGB - GLenum srcAlpha - GLenum dstAlpha - - - - void glBlendFuncSeparateiEXT - GLuint buf - GLenum srcRGB - GLenum dstRGB - GLenum srcAlpha - GLenum dstAlpha - - - - void glBlendFuncSeparateiOES - GLuint buf - GLenum srcRGB - GLenum dstRGB - GLenum srcAlpha - GLenum dstAlpha - - - - void glBlendFunci - GLuint buf - GLenum src - GLenum dst - - - void glBlendFunciARB - GLuint buf - GLenum src - GLenum dst - - - - void glBlendFunciEXT - GLuint buf - GLenum src - GLenum dst - - - - void glBlendFunciOES - GLuint buf - GLenum src - GLenum dst - - - - void glBlendParameteriNV - GLenum pname - GLint value - - - void glBlitFramebuffer - GLint srcX0 - GLint srcY0 - GLint srcX1 - GLint srcY1 - GLint dstX0 - GLint dstY0 - GLint dstX1 - GLint dstY1 - GLbitfield mask - GLenum filter - - - - void glBlitFramebufferANGLE - GLint srcX0 - GLint srcY0 - GLint srcX1 - GLint srcY1 - GLint dstX0 - GLint dstY0 - GLint dstX1 - GLint dstY1 - GLbitfield mask - GLenum filter - - - void glBlitFramebufferEXT - GLint srcX0 - GLint srcY0 - GLint srcX1 - GLint srcY1 - GLint dstX0 - GLint dstY0 - GLint dstX1 - GLint dstY1 - GLbitfield mask - GLenum filter - - - - - void glBlitFramebufferNV - GLint srcX0 - GLint srcY0 - GLint srcX1 - GLint srcY1 - GLint dstX0 - GLint dstY0 - GLint dstX1 - GLint dstY1 - GLbitfield mask - GLenum filter - - - - void glBlitNamedFramebuffer - GLuint readFramebuffer - GLuint drawFramebuffer - GLint srcX0 - GLint srcY0 - GLint srcX1 - GLint srcY1 - GLint dstX0 - GLint dstY0 - GLint dstX1 - GLint dstY1 - GLbitfield mask - GLenum filter - - - void glBufferAddressRangeNV - GLenum pname - GLuint index - GLuint64EXT address - GLsizeiptr length - - - void glBufferAttachMemoryNV - GLenum target - GLuint memory - GLuint64 offset - - - void glBufferData - GLenum target - GLsizeiptr size - const void *data - GLenum usage - - - void glBufferDataARB - GLenum target - GLsizeiptrARB size - const void *data - GLenum usage - - - - void glBufferPageCommitmentARB - GLenum target - GLintptr offset - GLsizeiptr size - GLboolean commit - - - void glBufferPageCommitmentMemNV - GLenum target - GLintptr offset - GLsizeiptr size - GLuint memory - GLuint64 memOffset - GLboolean commit - - - void glBufferParameteriAPPLE - GLenum target - GLenum pname - GLint param - - - void glBufferStorage - GLenum target - GLsizeiptr size - const void *data - GLbitfield flags - - - void glBufferStorageEXT - GLenum target - GLsizeiptr size - const void *data - GLbitfield flags - - - - void glBufferStorageExternalEXT - GLenum target - GLintptr offset - GLsizeiptr size - GLeglClientBufferEXT clientBuffer - GLbitfield flags - - - void glBufferStorageMemEXT - GLenum target - GLsizeiptr size - GLuint memory - GLuint64 offset - - - void glBufferSubData - GLenum target - GLintptr offset - GLsizeiptr size - const void *data - - - void glBufferSubDataARB - GLenum target - GLintptrARB offset - GLsizeiptrARB size - const void *data - - - - void glCallCommandListNV - GLuint list - - - void glCallList - GLuint list - - - - void glCallLists - GLsizei n - GLenum type - const void *lists - - - - GLenum glCheckFramebufferStatus - GLenum target - - - - GLenum glCheckFramebufferStatusEXT - GLenum target - - - - - GLenum glCheckFramebufferStatusOES - GLenum target - - - GLenum glCheckNamedFramebufferStatus - GLuint framebuffer - GLenum target - - - GLenum glCheckNamedFramebufferStatusEXT - GLuint framebuffer - GLenum target - - - void glClampColor - GLenum target - GLenum clamp - - - - void glClampColorARB - GLenum target - GLenum clamp - - - - - void glClear - GLbitfield mask - - - - void glClearAccum - GLfloat red - GLfloat green - GLfloat blue - GLfloat alpha - - - - void glClearAccumxOES - GLfixed red - GLfixed green - GLfixed blue - GLfixed alpha - - - void glClearBufferData - GLenum target - GLenum internalformat - GLenum format - GLenum type - const void *data - - - void glClearBufferSubData - GLenum target - GLenum internalformat - GLintptr offset - GLsizeiptr size - GLenum format - GLenum type - const void *data - - - void glClearBufferfi - GLenum buffer - GLint drawbuffer - GLfloat depth - GLint stencil - - - - void glClearBufferfv - GLenum buffer - GLint drawbuffer - const GLfloat *value - - - - void glClearBufferiv - GLenum buffer - GLint drawbuffer - const GLint *value - - - - void glClearBufferuiv - GLenum buffer - GLint drawbuffer - const GLuint *value - - - - void glClearColor - GLfloat red - GLfloat green - GLfloat blue - GLfloat alpha - - - - void glClearColorIiEXT - GLint red - GLint green - GLint blue - GLint alpha - - - - void glClearColorIuiEXT - GLuint red - GLuint green - GLuint blue - GLuint alpha - - - - void glClearColorx - GLfixed red - GLfixed green - GLfixed blue - GLfixed alpha - - - void glClearColorxOES - GLfixed red - GLfixed green - GLfixed blue - GLfixed alpha - - - void glClearDepth - GLdouble depth - - - - void glClearDepthdNV - GLdouble depth - - - - void glClearDepthf - GLfloat d - - - void glClearDepthfOES - GLclampf depth - - - - - void glClearDepthx - GLfixed depth - - - void glClearDepthxOES - GLfixed depth - - - void glClearIndex - GLfloat c - - - - void glClearNamedBufferData - GLuint buffer - GLenum internalformat - GLenum format - GLenum type - const void *data - - - void glClearNamedBufferDataEXT - GLuint buffer - GLenum internalformat - GLenum format - GLenum type - const void *data - - - void glClearNamedBufferSubData - GLuint buffer - GLenum internalformat - GLintptr offset - GLsizeiptr size - GLenum format - GLenum type - const void *data - - - void glClearNamedBufferSubDataEXT - GLuint buffer - GLenum internalformat - GLsizeiptr offset - GLsizeiptr size - GLenum format - GLenum type - const void *data - - - void glClearNamedFramebufferfi - GLuint framebuffer - GLenum buffer - GLint drawbuffer - GLfloat depth - GLint stencil - - - void glClearNamedFramebufferfv - GLuint framebuffer - GLenum buffer - GLint drawbuffer - const GLfloat *value - - - void glClearNamedFramebufferiv - GLuint framebuffer - GLenum buffer - GLint drawbuffer - const GLint *value - - - void glClearNamedFramebufferuiv - GLuint framebuffer - GLenum buffer - GLint drawbuffer - const GLuint *value - - - void glClearPixelLocalStorageuiEXT - GLsizei offset - GLsizei n - const GLuint *values - - - void glClearStencil - GLint s - - - - void glClearTexImage - GLuint texture - GLint level - GLenum format - GLenum type - const void *data - - - void glClearTexImageEXT - GLuint texture - GLint level - GLenum format - GLenum type - const void *data - - - - void glClearTexSubImage - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *data - - - void glClearTexSubImageEXT - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *data - - - - void glClientActiveTexture - GLenum texture - - - void glClientActiveTextureARB - GLenum texture - - - - void glClientActiveVertexStreamATI - GLenum stream - - - void glClientAttribDefaultEXT - GLbitfield mask - - - void glClientWaitSemaphoreui64NVX - GLsizei fenceObjectCount - const GLuint *semaphoreArray - const GLuint64 *fenceValueArray - - - GLenum glClientWaitSync - GLsync sync - GLbitfield flags - GLuint64 timeout - - - GLenum glClientWaitSyncAPPLE - GLsync sync - GLbitfield flags - GLuint64 timeout - - - - void glClipControl - GLenum origin - GLenum depth - - - void glClipControlEXT - GLenum origin - GLenum depth - - - - void glClipPlane - GLenum plane - const GLdouble *equation - - - - void glClipPlanef - GLenum p - const GLfloat *eqn - - - void glClipPlanefIMG - GLenum p - const GLfloat *eqn - - - void glClipPlanefOES - GLenum plane - const GLfloat *equation - - - - void glClipPlanex - GLenum plane - const GLfixed *equation - - - void glClipPlanexIMG - GLenum p - const GLfixed *eqn - - - void glClipPlanexOES - GLenum plane - const GLfixed *equation - - - void glColor3b - GLbyte red - GLbyte green - GLbyte blue - - - - void glColor3bv - const GLbyte *v - - - - void glColor3d - GLdouble red - GLdouble green - GLdouble blue - - - - void glColor3dv - const GLdouble *v - - - - void glColor3f - GLfloat red - GLfloat green - GLfloat blue - - - - void glColor3fVertex3fSUN - GLfloat r - GLfloat g - GLfloat b - GLfloat x - GLfloat y - GLfloat z - - - void glColor3fVertex3fvSUN - const GLfloat *c - const GLfloat *v - - - void glColor3fv - const GLfloat *v - - - - void glColor3hNV - GLhalfNV red - GLhalfNV green - GLhalfNV blue - - - - void glColor3hvNV - const GLhalfNV *v - - - - void glColor3i - GLint red - GLint green - GLint blue - - - - void glColor3iv - const GLint *v - - - - void glColor3s - GLshort red - GLshort green - GLshort blue - - - - void glColor3sv - const GLshort *v - - - - void glColor3ub - GLubyte red - GLubyte green - GLubyte blue - - - - void glColor3ubv - const GLubyte *v - - - - void glColor3ui - GLuint red - GLuint green - GLuint blue - - - - void glColor3uiv - const GLuint *v - - - - void glColor3us - GLushort red - GLushort green - GLushort blue - - - - void glColor3usv - const GLushort *v - - - - void glColor3xOES - GLfixed red - GLfixed green - GLfixed blue - - - void glColor3xvOES - const GLfixed *components - - - void glColor4b - GLbyte red - GLbyte green - GLbyte blue - GLbyte alpha - - - - void glColor4bv - const GLbyte *v - - - - void glColor4d - GLdouble red - GLdouble green - GLdouble blue - GLdouble alpha - - - - void glColor4dv - const GLdouble *v - - - - void glColor4f - GLfloat red - GLfloat green - GLfloat blue - GLfloat alpha - - - - void glColor4fNormal3fVertex3fSUN - GLfloat r - GLfloat g - GLfloat b - GLfloat a - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glColor4fNormal3fVertex3fvSUN - const GLfloat *c - const GLfloat *n - const GLfloat *v - - - void glColor4fv - const GLfloat *v - - - - void glColor4hNV - GLhalfNV red - GLhalfNV green - GLhalfNV blue - GLhalfNV alpha - - - - void glColor4hvNV - const GLhalfNV *v - - - - void glColor4i - GLint red - GLint green - GLint blue - GLint alpha - - - - void glColor4iv - const GLint *v - - - - void glColor4s - GLshort red - GLshort green - GLshort blue - GLshort alpha - - - - void glColor4sv - const GLshort *v - - - - void glColor4ub - GLubyte red - GLubyte green - GLubyte blue - GLubyte alpha - - - - void glColor4ubVertex2fSUN - GLubyte r - GLubyte g - GLubyte b - GLubyte a - GLfloat x - GLfloat y - - - void glColor4ubVertex2fvSUN - const GLubyte *c - const GLfloat *v - - - void glColor4ubVertex3fSUN - GLubyte r - GLubyte g - GLubyte b - GLubyte a - GLfloat x - GLfloat y - GLfloat z - - - void glColor4ubVertex3fvSUN - const GLubyte *c - const GLfloat *v - - - void glColor4ubv - const GLubyte *v - - - - void glColor4ui - GLuint red - GLuint green - GLuint blue - GLuint alpha - - - - void glColor4uiv - const GLuint *v - - - - void glColor4us - GLushort red - GLushort green - GLushort blue - GLushort alpha - - - - void glColor4usv - const GLushort *v - - - - void glColor4x - GLfixed red - GLfixed green - GLfixed blue - GLfixed alpha - - - void glColor4xOES - GLfixed red - GLfixed green - GLfixed blue - GLfixed alpha - - - void glColor4xvOES - const GLfixed *components - - - void glColorFormatNV - GLint size - GLenum type - GLsizei stride - - - void glColorFragmentOp1ATI - GLenum op - GLuint dst - GLuint dstMask - GLuint dstMod - GLuint arg1 - GLuint arg1Rep - GLuint arg1Mod - - - void glColorFragmentOp2ATI - GLenum op - GLuint dst - GLuint dstMask - GLuint dstMod - GLuint arg1 - GLuint arg1Rep - GLuint arg1Mod - GLuint arg2 - GLuint arg2Rep - GLuint arg2Mod - - - void glColorFragmentOp3ATI - GLenum op - GLuint dst - GLuint dstMask - GLuint dstMod - GLuint arg1 - GLuint arg1Rep - GLuint arg1Mod - GLuint arg2 - GLuint arg2Rep - GLuint arg2Mod - GLuint arg3 - GLuint arg3Rep - GLuint arg3Mod - - - void glColorMask - GLboolean red - GLboolean green - GLboolean blue - GLboolean alpha - - - - void glColorMaskIndexedEXT - GLuint index - GLboolean r - GLboolean g - GLboolean b - GLboolean a - - - - - void glColorMaski - GLuint index - GLboolean r - GLboolean g - GLboolean b - GLboolean a - - - void glColorMaskiEXT - GLuint index - GLboolean r - GLboolean g - GLboolean b - GLboolean a - - - - void glColorMaskiOES - GLuint index - GLboolean r - GLboolean g - GLboolean b - GLboolean a - - - - void glColorMaterial - GLenum face - GLenum mode - - - - void glColorP3ui - GLenum type - GLuint color - - - void glColorP3uiv - GLenum type - const GLuint *color - - - void glColorP4ui - GLenum type - GLuint color - - - void glColorP4uiv - GLenum type - const GLuint *color - - - void glColorPointer - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glColorPointerEXT - GLint size - GLenum type - GLsizei stride - GLsizei count - const void *pointer - - - void glColorPointerListIBM - GLint size - GLenum type - GLint stride - const void **pointer - GLint ptrstride - - - void glColorPointervINTEL - GLint size - GLenum type - const void **pointer - - - void glColorSubTable - GLenum target - GLsizei start - GLsizei count - GLenum format - GLenum type - const void *data - - - - - void glColorSubTableEXT - GLenum target - GLsizei start - GLsizei count - GLenum format - GLenum type - const void *data - - - - void glColorTable - GLenum target - GLenum internalformat - GLsizei width - GLenum format - GLenum type - const void *table - - - - - void glColorTableEXT - GLenum target - GLenum internalFormat - GLsizei width - GLenum format - GLenum type - const void *table - - - - void glColorTableParameterfv - GLenum target - GLenum pname - const GLfloat *params - - - - void glColorTableParameterfvSGI - GLenum target - GLenum pname - const GLfloat *params - - - - - void glColorTableParameteriv - GLenum target - GLenum pname - const GLint *params - - - - void glColorTableParameterivSGI - GLenum target - GLenum pname - const GLint *params - - - - - void glColorTableSGI - GLenum target - GLenum internalformat - GLsizei width - GLenum format - GLenum type - const void *table - - - - - void glCombinerInputNV - GLenum stage - GLenum portion - GLenum variable - GLenum input - GLenum mapping - GLenum componentUsage - - - - void glCombinerOutputNV - GLenum stage - GLenum portion - GLenum abOutput - GLenum cdOutput - GLenum sumOutput - GLenum scale - GLenum bias - GLboolean abDotProduct - GLboolean cdDotProduct - GLboolean muxSum - - - - void glCombinerParameterfNV - GLenum pname - GLfloat param - - - - void glCombinerParameterfvNV - GLenum pname - const GLfloat *params - - - - void glCombinerParameteriNV - GLenum pname - GLint param - - - - void glCombinerParameterivNV - GLenum pname - const GLint *params - - - - void glCombinerStageParameterfvNV - GLenum stage - GLenum pname - const GLfloat *params - - - void glCommandListSegmentsNV - GLuint list - GLuint segments - - - void glCompileCommandListNV - GLuint list - - - void glCompileShader - GLuint shader - - - void glCompileShaderARB - GLhandleARB shaderObj - - - - void glCompileShaderIncludeARB - GLuint shader - GLsizei count - const GLchar *const*path - const GLint *length - - - void glCompressedMultiTexImage1DEXT - GLenum texunit - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLint border - GLsizei imageSize - const void *bits - - - void glCompressedMultiTexImage2DEXT - GLenum texunit - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLint border - GLsizei imageSize - const void *bits - - - void glCompressedMultiTexImage3DEXT - GLenum texunit - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLsizei imageSize - const void *bits - - - void glCompressedMultiTexSubImage1DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLsizei imageSize - const void *bits - - - void glCompressedMultiTexSubImage2DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLsizei imageSize - const void *bits - - - void glCompressedMultiTexSubImage3DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLsizei imageSize - const void *bits - - - void glCompressedTexImage1D - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLint border - GLsizei imageSize - const void *data - - - - - void glCompressedTexImage1DARB - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLint border - GLsizei imageSize - const void *data - - - - - void glCompressedTexImage2D - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLint border - GLsizei imageSize - const void *data - - - - - void glCompressedTexImage2DARB - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLint border - GLsizei imageSize - const void *data - - - - - void glCompressedTexImage3D - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLsizei imageSize - const void *data - - - - - void glCompressedTexImage3DARB - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLsizei imageSize - const void *data - - - - - void glCompressedTexImage3DOES - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLsizei imageSize - const void *data - - - void glCompressedTexSubImage1D - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLsizei imageSize - const void *data - - - - - void glCompressedTexSubImage1DARB - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLsizei imageSize - const void *data - - - - - void glCompressedTexSubImage2D - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLsizei imageSize - const void *data - - - - - void glCompressedTexSubImage2DARB - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLsizei imageSize - const void *data - - - - - void glCompressedTexSubImage3D - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLsizei imageSize - const void *data - - - - - void glCompressedTexSubImage3DARB - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLsizei imageSize - const void *data - - - - - void glCompressedTexSubImage3DOES - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLsizei imageSize - const void *data - - - void glCompressedTextureImage1DEXT - GLuint texture - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLint border - GLsizei imageSize - const void *bits - - - void glCompressedTextureImage2DEXT - GLuint texture - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLint border - GLsizei imageSize - const void *bits - - - void glCompressedTextureImage3DEXT - GLuint texture - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLsizei imageSize - const void *bits - - - void glCompressedTextureSubImage1D - GLuint texture - GLint level - GLint xoffset - GLsizei width - GLenum format - GLsizei imageSize - const void *data - - - void glCompressedTextureSubImage1DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLsizei imageSize - const void *bits - - - void glCompressedTextureSubImage2D - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLsizei imageSize - const void *data - - - void glCompressedTextureSubImage2DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLsizei imageSize - const void *bits - - - void glCompressedTextureSubImage3D - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLsizei imageSize - const void *data - - - void glCompressedTextureSubImage3DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLsizei imageSize - const void *bits - - - void glConservativeRasterParameterfNV - GLenum pname - GLfloat value - - - void glConservativeRasterParameteriNV - GLenum pname - GLint param - - - void glConvolutionFilter1D - GLenum target - GLenum internalformat - GLsizei width - GLenum format - GLenum type - const void *image - - - - - void glConvolutionFilter1DEXT - GLenum target - GLenum internalformat - GLsizei width - GLenum format - GLenum type - const void *image - - - - - void glConvolutionFilter2D - GLenum target - GLenum internalformat - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *image - - - - - void glConvolutionFilter2DEXT - GLenum target - GLenum internalformat - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *image - - - - - void glConvolutionParameterf - GLenum target - GLenum pname - GLfloat params - - - - void glConvolutionParameterfEXT - GLenum target - GLenum pname - GLfloat params - - - - - void glConvolutionParameterfv - GLenum target - GLenum pname - const GLfloat *params - - - - void glConvolutionParameterfvEXT - GLenum target - GLenum pname - const GLfloat *params - - - - - void glConvolutionParameteri - GLenum target - GLenum pname - GLint params - - - - void glConvolutionParameteriEXT - GLenum target - GLenum pname - GLint params - - - - - void glConvolutionParameteriv - GLenum target - GLenum pname - const GLint *params - - - - void glConvolutionParameterivEXT - GLenum target - GLenum pname - const GLint *params - - - - - void glConvolutionParameterxOES - GLenum target - GLenum pname - GLfixed param - - - void glConvolutionParameterxvOES - GLenum target - GLenum pname - const GLfixed *params - - - void glCopyBufferSubData - GLenum readTarget - GLenum writeTarget - GLintptr readOffset - GLintptr writeOffset - GLsizeiptr size - - - - void glCopyBufferSubDataNV - GLenum readTarget - GLenum writeTarget - GLintptr readOffset - GLintptr writeOffset - GLsizeiptr size - - - - void glCopyColorSubTable - GLenum target - GLsizei start - GLint x - GLint y - GLsizei width - - - - void glCopyColorSubTableEXT - GLenum target - GLsizei start - GLint x - GLint y - GLsizei width - - - - void glCopyColorTable - GLenum target - GLenum internalformat - GLint x - GLint y - GLsizei width - - - - void glCopyColorTableSGI - GLenum target - GLenum internalformat - GLint x - GLint y - GLsizei width - - - - - void glCopyConvolutionFilter1D - GLenum target - GLenum internalformat - GLint x - GLint y - GLsizei width - - - - void glCopyConvolutionFilter1DEXT - GLenum target - GLenum internalformat - GLint x - GLint y - GLsizei width - - - - - void glCopyConvolutionFilter2D - GLenum target - GLenum internalformat - GLint x - GLint y - GLsizei width - GLsizei height - - - - void glCopyConvolutionFilter2DEXT - GLenum target - GLenum internalformat - GLint x - GLint y - GLsizei width - GLsizei height - - - - - void glCopyImageSubData - GLuint srcName - GLenum srcTarget - GLint srcLevel - GLint srcX - GLint srcY - GLint srcZ - GLuint dstName - GLenum dstTarget - GLint dstLevel - GLint dstX - GLint dstY - GLint dstZ - GLsizei srcWidth - GLsizei srcHeight - GLsizei srcDepth - - - void glCopyImageSubDataEXT - GLuint srcName - GLenum srcTarget - GLint srcLevel - GLint srcX - GLint srcY - GLint srcZ - GLuint dstName - GLenum dstTarget - GLint dstLevel - GLint dstX - GLint dstY - GLint dstZ - GLsizei srcWidth - GLsizei srcHeight - GLsizei srcDepth - - - - void glCopyImageSubDataNV - GLuint srcName - GLenum srcTarget - GLint srcLevel - GLint srcX - GLint srcY - GLint srcZ - GLuint dstName - GLenum dstTarget - GLint dstLevel - GLint dstX - GLint dstY - GLint dstZ - GLsizei width - GLsizei height - GLsizei depth - - - - void glCopyImageSubDataOES - GLuint srcName - GLenum srcTarget - GLint srcLevel - GLint srcX - GLint srcY - GLint srcZ - GLuint dstName - GLenum dstTarget - GLint dstLevel - GLint dstX - GLint dstY - GLint dstZ - GLsizei srcWidth - GLsizei srcHeight - GLsizei srcDepth - - - - void glCopyMultiTexImage1DEXT - GLenum texunit - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLint border - - - void glCopyMultiTexImage2DEXT - GLenum texunit - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLsizei height - GLint border - - - void glCopyMultiTexSubImage1DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLint x - GLint y - GLsizei width - - - void glCopyMultiTexSubImage2DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - void glCopyMultiTexSubImage3DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - void glCopyNamedBufferSubData - GLuint readBuffer - GLuint writeBuffer - GLintptr readOffset - GLintptr writeOffset - GLsizeiptr size - - - void glCopyPathNV - GLuint resultPath - GLuint srcPath - - - void glCopyPixels - GLint x - GLint y - GLsizei width - GLsizei height - GLenum type - - - - void glCopyTexImage1D - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLint border - - - - void glCopyTexImage1DEXT - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLint border - - - - - void glCopyTexImage2D - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLsizei height - GLint border - - - - void glCopyTexImage2DEXT - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLsizei height - GLint border - - - - - void glCopyTexSubImage1D - GLenum target - GLint level - GLint xoffset - GLint x - GLint y - GLsizei width - - - - void glCopyTexSubImage1DEXT - GLenum target - GLint level - GLint xoffset - GLint x - GLint y - GLsizei width - - - - - void glCopyTexSubImage2D - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - - void glCopyTexSubImage2DEXT - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - - - void glCopyTexSubImage3D - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - - void glCopyTexSubImage3DEXT - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - - - void glCopyTexSubImage3DOES - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - void glCopyTextureImage1DEXT - GLuint texture - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLint border - - - void glCopyTextureImage2DEXT - GLuint texture - GLenum target - GLint level - GLenum internalformat - GLint x - GLint y - GLsizei width - GLsizei height - GLint border - - - void glCopyTextureLevelsAPPLE - GLuint destinationTexture - GLuint sourceTexture - GLint sourceBaseLevel - GLsizei sourceLevelCount - - - void glCopyTextureSubImage1D - GLuint texture - GLint level - GLint xoffset - GLint x - GLint y - GLsizei width - - - void glCopyTextureSubImage1DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLint x - GLint y - GLsizei width - - - void glCopyTextureSubImage2D - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - void glCopyTextureSubImage2DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - void glCopyTextureSubImage3D - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - void glCopyTextureSubImage3DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLint x - GLint y - GLsizei width - GLsizei height - - - void glCoverFillPathInstancedNV - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLenum coverMode - GLenum transformType - const GLfloat *transformValues - - - void glCoverFillPathNV - GLuint path - GLenum coverMode - - - void glCoverStrokePathInstancedNV - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLenum coverMode - GLenum transformType - const GLfloat *transformValues - - - void glCoverStrokePathNV - GLuint path - GLenum coverMode - - - void glCoverageMaskNV - GLboolean mask - - - void glCoverageModulationNV - GLenum components - - - void glCoverageModulationTableNV - GLsizei n - const GLfloat *v - - - void glCoverageOperationNV - GLenum operation - - - void glCreateBuffers - GLsizei n - GLuint *buffers - - - void glCreateCommandListsNV - GLsizei n - GLuint *lists - - - void glCreateFramebuffers - GLsizei n - GLuint *framebuffers - - - void glCreateMemoryObjectsEXT - GLsizei n - GLuint *memoryObjects - - - void glCreatePerfQueryINTEL - GLuint queryId - GLuint *queryHandle - - - GLuint glCreateProgram - - - GLhandleARB glCreateProgramObjectARB - - - - void glCreateProgramPipelines - GLsizei n - GLuint *pipelines - - - GLuint glCreateProgressFenceNVX - - - void glCreateQueries - GLenum target - GLsizei n - GLuint *ids - - - void glCreateRenderbuffers - GLsizei n - GLuint *renderbuffers - - - void glCreateSamplers - GLsizei n - GLuint *samplers - - - void glCreateSemaphoresNV - GLsizei n - GLuint *semaphores - - - GLuint glCreateShader - GLenum type - - - GLhandleARB glCreateShaderObjectARB - GLenum shaderType - - - - GLuint glCreateShaderProgramEXT - GLenum type - const GLchar *string - - - GLuint glCreateShaderProgramv - GLenum type - GLsizei count - const GLchar *const*strings - - - GLuint glCreateShaderProgramvEXT - GLenum type - GLsizei count - const GLchar **strings - - - void glCreateStatesNV - GLsizei n - GLuint *states - - - GLsync glCreateSyncFromCLeventARB - struct _cl_context *context - struct _cl_event *event - GLbitfield flags - - - void glCreateTextures - GLenum target - GLsizei n - GLuint *textures - - - void glCreateTransformFeedbacks - GLsizei n - GLuint *ids - - - void glCreateVertexArrays - GLsizei n - GLuint *arrays - - - void glCullFace - GLenum mode - - - - void glCullParameterdvEXT - GLenum pname - GLdouble *params - - - void glCullParameterfvEXT - GLenum pname - GLfloat *params - - - void glCurrentPaletteMatrixARB - GLint index - - - - void glCurrentPaletteMatrixOES - GLuint matrixpaletteindex - - - void glDebugMessageCallback - GLDEBUGPROC callback - const void *userParam - - - void glDebugMessageCallbackAMD - GLDEBUGPROCAMD callback - void *userParam - - - void glDebugMessageCallbackARB - GLDEBUGPROCARB callback - const void *userParam - - - - void glDebugMessageCallbackKHR - GLDEBUGPROCKHR callback - const void *userParam - - - - void glDebugMessageControl - GLenum source - GLenum type - GLenum severity - GLsizei count - const GLuint *ids - GLboolean enabled - - - void glDebugMessageControlARB - GLenum source - GLenum type - GLenum severity - GLsizei count - const GLuint *ids - GLboolean enabled - - - - void glDebugMessageControlKHR - GLenum source - GLenum type - GLenum severity - GLsizei count - const GLuint *ids - GLboolean enabled - - - - void glDebugMessageEnableAMD - GLenum category - GLenum severity - GLsizei count - const GLuint *ids - GLboolean enabled - - - void glDebugMessageInsert - GLenum source - GLenum type - GLuint id - GLenum severity - GLsizei length - const GLchar *buf - - - void glDebugMessageInsertAMD - GLenum category - GLenum severity - GLuint id - GLsizei length - const GLchar *buf - - - void glDebugMessageInsertARB - GLenum source - GLenum type - GLuint id - GLenum severity - GLsizei length - const GLchar *buf - - - - void glDebugMessageInsertKHR - GLenum source - GLenum type - GLuint id - GLenum severity - GLsizei length - const GLchar *buf - - - - void glDeformSGIX - GLbitfield mask - - - - void glDeformationMap3dSGIX - GLenum target - GLdouble u1 - GLdouble u2 - GLint ustride - GLint uorder - GLdouble v1 - GLdouble v2 - GLint vstride - GLint vorder - GLdouble w1 - GLdouble w2 - GLint wstride - GLint worder - const GLdouble *points - - - - void glDeformationMap3fSGIX - GLenum target - GLfloat u1 - GLfloat u2 - GLint ustride - GLint uorder - GLfloat v1 - GLfloat v2 - GLint vstride - GLint vorder - GLfloat w1 - GLfloat w2 - GLint wstride - GLint worder - const GLfloat *points - - - - void glDeleteAsyncMarkersSGIX - GLuint marker - GLsizei range - - - void glDeleteBuffers - GLsizei n - const GLuint *buffers - - - void glDeleteBuffersARB - GLsizei n - const GLuint *buffers - - - - void glDeleteCommandListsNV - GLsizei n - const GLuint *lists - - - void glDeleteFencesAPPLE - GLsizei n - const GLuint *fences - - - void glDeleteFencesNV - GLsizei n - const GLuint *fences - - - - void glDeleteFragmentShaderATI - GLuint id - - - void glDeleteFramebuffers - GLsizei n - const GLuint *framebuffers - - - - void glDeleteFramebuffersEXT - GLsizei n - const GLuint *framebuffers - - - - - void glDeleteFramebuffersOES - GLsizei n - const GLuint *framebuffers - - - void glDeleteLists - GLuint list - GLsizei range - - - - void glDeleteMemoryObjectsEXT - GLsizei n - const GLuint *memoryObjects - - - void glDeleteNamedStringARB - GLint namelen - const GLchar *name - - - void glDeleteNamesAMD - GLenum identifier - GLuint num - const GLuint *names - - - void glDeleteObjectARB - GLhandleARB obj - - - void glDeleteOcclusionQueriesNV - GLsizei n - const GLuint *ids - - - void glDeletePathsNV - GLuint path - GLsizei range - - - void glDeletePerfMonitorsAMD - GLsizei n - GLuint *monitors - - - void glDeletePerfQueryINTEL - GLuint queryHandle - - - void glDeleteProgram - GLuint program - - - - void glDeleteProgramPipelines - GLsizei n - const GLuint *pipelines - - - void glDeleteProgramPipelinesEXT - GLsizei n - const GLuint *pipelines - - - void glDeleteProgramsARB - GLsizei n - const GLuint *programs - - - - void glDeleteProgramsNV - GLsizei n - const GLuint *programs - - - - - void glDeleteQueries - GLsizei n - const GLuint *ids - - - - void glDeleteQueriesARB - GLsizei n - const GLuint *ids - - - - void glDeleteQueriesEXT - GLsizei n - const GLuint *ids - - - void glDeleteQueryResourceTagNV - GLsizei n - const GLint *tagIds - - - void glDeleteRenderbuffers - GLsizei n - const GLuint *renderbuffers - - - - void glDeleteRenderbuffersEXT - GLsizei n - const GLuint *renderbuffers - - - - - void glDeleteRenderbuffersOES - GLsizei n - const GLuint *renderbuffers - - - void glDeleteSamplers - GLsizei count - const GLuint *samplers - - - void glDeleteSemaphoresEXT - GLsizei n - const GLuint *semaphores - - - void glDeleteShader - GLuint shader - - - - void glDeleteStatesNV - GLsizei n - const GLuint *states - - - void glDeleteSync - GLsync sync - - - void glDeleteSyncAPPLE - GLsync sync - - - - void glDeleteTextures - GLsizei n - const GLuint *textures - - - - void glDeleteTexturesEXT - GLsizei n - const GLuint *textures - - - - void glDeleteTransformFeedbacks - GLsizei n - const GLuint *ids - - - void glDeleteTransformFeedbacksNV - GLsizei n - const GLuint *ids - - - - void glDeleteVertexArrays - GLsizei n - const GLuint *arrays - - - - void glDeleteVertexArraysAPPLE - GLsizei n - const GLuint *arrays - - - - void glDeleteVertexArraysOES - GLsizei n - const GLuint *arrays - - - - void glDeleteVertexShaderEXT - GLuint id - - - void glDepthBoundsEXT - GLclampd zmin - GLclampd zmax - - - - void glDepthBoundsdNV - GLdouble zmin - GLdouble zmax - - - - void glDepthFunc - GLenum func - - - - void glDepthMask - GLboolean flag - - - - void glDepthRange - GLdouble n - GLdouble f - - - - void glDepthRangeArraydvNV - GLuint first - GLsizei count - const GLdouble *v - - - void glDepthRangeArrayfvNV - GLuint first - GLsizei count - const GLfloat *v - - - void glDepthRangeArrayfvOES - GLuint first - GLsizei count - const GLfloat *v - - - void glDepthRangeArrayv - GLuint first - GLsizei count - const GLdouble *v - - - void glDepthRangeIndexed - GLuint index - GLdouble n - GLdouble f - - - void glDepthRangeIndexeddNV - GLuint index - GLdouble n - GLdouble f - - - void glDepthRangeIndexedfNV - GLuint index - GLfloat n - GLfloat f - - - void glDepthRangeIndexedfOES - GLuint index - GLfloat n - GLfloat f - - - void glDepthRangedNV - GLdouble zNear - GLdouble zFar - - - - void glDepthRangef - GLfloat n - GLfloat f - - - void glDepthRangefOES - GLclampf n - GLclampf f - - - - - void glDepthRangex - GLfixed n - GLfixed f - - - void glDepthRangexOES - GLfixed n - GLfixed f - - - void glDetachObjectARB - GLhandleARB containerObj - GLhandleARB attachedObj - - - - void glDetachShader - GLuint program - GLuint shader - - - void glDetailTexFuncSGIS - GLenum target - GLsizei n - const GLfloat *points - - - - void glDisable - GLenum cap - - - - void glDisableClientState - GLenum array - - - void glDisableClientStateIndexedEXT - GLenum array - GLuint index - - - void glDisableClientStateiEXT - GLenum array - GLuint index - - - void glDisableDriverControlQCOM - GLuint driverControl - - - void glDisableIndexedEXT - GLenum target - GLuint index - - - - - void glDisableVariantClientStateEXT - GLuint id - - - void glDisableVertexArrayAttrib - GLuint vaobj - GLuint index - - - void glDisableVertexArrayAttribEXT - GLuint vaobj - GLuint index - - - void glDisableVertexArrayEXT - GLuint vaobj - GLenum array - - - void glDisableVertexAttribAPPLE - GLuint index - GLenum pname - - - void glDisableVertexAttribArray - GLuint index - - - void glDisableVertexAttribArrayARB - GLuint index - - - - void glDisablei - GLenum target - GLuint index - - - void glDisableiEXT - GLenum target - GLuint index - - - - void glDisableiNV - GLenum target - GLuint index - - - - void glDisableiOES - GLenum target - GLuint index - - - - void glDiscardFramebufferEXT - GLenum target - GLsizei numAttachments - const GLenum *attachments - - - void glDispatchCompute - GLuint num_groups_x - GLuint num_groups_y - GLuint num_groups_z - - - void glDispatchComputeGroupSizeARB - GLuint num_groups_x - GLuint num_groups_y - GLuint num_groups_z - GLuint group_size_x - GLuint group_size_y - GLuint group_size_z - - - void glDispatchComputeIndirect - GLintptr indirect - - - void glDrawArrays - GLenum mode - GLint first - GLsizei count - - - - void glDrawArraysEXT - GLenum mode - GLint first - GLsizei count - - - - - void glDrawArraysIndirect - GLenum mode - const void *indirect - - - void glDrawArraysInstanced - GLenum mode - GLint first - GLsizei count - GLsizei instancecount - - - void glDrawArraysInstancedANGLE - GLenum mode - GLint first - GLsizei count - GLsizei primcount - - - - void glDrawArraysInstancedARB - GLenum mode - GLint first - GLsizei count - GLsizei primcount - - - - void glDrawArraysInstancedBaseInstance - GLenum mode - GLint first - GLsizei count - GLsizei instancecount - GLuint baseinstance - - - void glDrawArraysInstancedBaseInstanceEXT - GLenum mode - GLint first - GLsizei count - GLsizei instancecount - GLuint baseinstance - - - - void glDrawArraysInstancedEXT - GLenum mode - GLint start - GLsizei count - GLsizei primcount - - - - void glDrawArraysInstancedNV - GLenum mode - GLint first - GLsizei count - GLsizei primcount - - - - void glDrawBuffer - GLenum buf - - - - void glDrawBuffers - GLsizei n - const GLenum *bufs - - - - void glDrawBuffersARB - GLsizei n - const GLenum *bufs - - - - void glDrawBuffersATI - GLsizei n - const GLenum *bufs - - - - - void glDrawBuffersEXT - GLsizei n - const GLenum *bufs - - - - void glDrawBuffersIndexedEXT - GLint n - const GLenum *location - const GLint *indices - - - void glDrawBuffersNV - GLsizei n - const GLenum *bufs - - - void glDrawCommandsAddressNV - GLenum primitiveMode - const GLuint64 *indirects - const GLsizei *sizes - GLuint count - - - void glDrawCommandsNV - GLenum primitiveMode - GLuint buffer - const GLintptr *indirects - const GLsizei *sizes - GLuint count - - - void glDrawCommandsStatesAddressNV - const GLuint64 *indirects - const GLsizei *sizes - const GLuint *states - const GLuint *fbos - GLuint count - - - void glDrawCommandsStatesNV - GLuint buffer - const GLintptr *indirects - const GLsizei *sizes - const GLuint *states - const GLuint *fbos - GLuint count - - - void glDrawElementArrayAPPLE - GLenum mode - GLint first - GLsizei count - - - void glDrawElementArrayATI - GLenum mode - GLsizei count - - - void glDrawElements - GLenum mode - GLsizei count - GLenum type - const void *indices - - - void glDrawElementsBaseVertex - GLenum mode - GLsizei count - GLenum type - const void *indices - GLint basevertex - - - void glDrawElementsBaseVertexEXT - GLenum mode - GLsizei count - GLenum type - const void *indices - GLint basevertex - - - - void glDrawElementsBaseVertexOES - GLenum mode - GLsizei count - GLenum type - const void *indices - GLint basevertex - - - - void glDrawElementsIndirect - GLenum mode - GLenum type - const void *indirect - - - void glDrawElementsInstanced - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - - - void glDrawElementsInstancedANGLE - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei primcount - - - - void glDrawElementsInstancedARB - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei primcount - - - - void glDrawElementsInstancedBaseInstance - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - GLuint baseinstance - - - void glDrawElementsInstancedBaseInstanceEXT - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - GLuint baseinstance - - - - void glDrawElementsInstancedBaseVertex - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - GLint basevertex - - - void glDrawElementsInstancedBaseVertexBaseInstance - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - GLint basevertex - GLuint baseinstance - - - void glDrawElementsInstancedBaseVertexBaseInstanceEXT - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - GLint basevertex - GLuint baseinstance - - - - void glDrawElementsInstancedBaseVertexEXT - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - GLint basevertex - - - - void glDrawElementsInstancedBaseVertexOES - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei instancecount - GLint basevertex - - - - void glDrawElementsInstancedEXT - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei primcount - - - - void glDrawElementsInstancedNV - GLenum mode - GLsizei count - GLenum type - const void *indices - GLsizei primcount - - - - void glDrawMeshArraysSUN - GLenum mode - GLint first - GLsizei count - GLsizei width - - - void glDrawMeshTasksNV - GLuint first - GLuint count - - - void glDrawMeshTasksIndirectNV - GLintptr indirect - - - void glDrawPixels - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *pixels - - - - - void glDrawRangeElementArrayAPPLE - GLenum mode - GLuint start - GLuint end - GLint first - GLsizei count - - - void glDrawRangeElementArrayATI - GLenum mode - GLuint start - GLuint end - GLsizei count - - - void glDrawRangeElements - GLenum mode - GLuint start - GLuint end - GLsizei count - GLenum type - const void *indices - - - void glDrawRangeElementsBaseVertex - GLenum mode - GLuint start - GLuint end - GLsizei count - GLenum type - const void *indices - GLint basevertex - - - void glDrawRangeElementsBaseVertexEXT - GLenum mode - GLuint start - GLuint end - GLsizei count - GLenum type - const void *indices - GLint basevertex - - - - void glDrawRangeElementsBaseVertexOES - GLenum mode - GLuint start - GLuint end - GLsizei count - GLenum type - const void *indices - GLint basevertex - - - - void glDrawRangeElementsEXT - GLenum mode - GLuint start - GLuint end - GLsizei count - GLenum type - const void *indices - - - - void glDrawTexfOES - GLfloat x - GLfloat y - GLfloat z - GLfloat width - GLfloat height - - - - void glDrawTexfvOES - const GLfloat *coords - - - void glDrawTexiOES - GLint x - GLint y - GLint z - GLint width - GLint height - - - - void glDrawTexivOES - const GLint *coords - - - void glDrawTexsOES - GLshort x - GLshort y - GLshort z - GLshort width - GLshort height - - - - void glDrawTexsvOES - const GLshort *coords - - - void glDrawTextureNV - GLuint texture - GLuint sampler - GLfloat x0 - GLfloat y0 - GLfloat x1 - GLfloat y1 - GLfloat z - GLfloat s0 - GLfloat t0 - GLfloat s1 - GLfloat t1 - - - void glDrawTexxOES - GLfixed x - GLfixed y - GLfixed z - GLfixed width - GLfixed height - - - - void glDrawTexxvOES - const GLfixed *coords - - - void glDrawTransformFeedback - GLenum mode - GLuint id - - - void glDrawTransformFeedbackEXT - GLenum mode - GLuint id - - - - void glDrawTransformFeedbackInstanced - GLenum mode - GLuint id - GLsizei instancecount - - - void glDrawTransformFeedbackInstancedEXT - GLenum mode - GLuint id - GLsizei instancecount - - - - void glDrawTransformFeedbackNV - GLenum mode - GLuint id - - - - void glDrawTransformFeedbackStream - GLenum mode - GLuint id - GLuint stream - - - void glDrawTransformFeedbackStreamInstanced - GLenum mode - GLuint id - GLuint stream - GLsizei instancecount - - - void glEGLImageTargetRenderbufferStorageOES - GLenum target - GLeglImageOES image - - - void glEGLImageTargetTexStorageEXT - GLenum target - GLeglImageOES image - const GLint* attrib_list - - - void glEGLImageTargetTexture2DOES - GLenum target - GLeglImageOES image - - - void glEGLImageTargetTextureStorageEXT - GLuint texture - GLeglImageOES image - const GLint* attrib_list - - - void glEdgeFlag - GLboolean flag - - - - void glEdgeFlagFormatNV - GLsizei stride - - - void glEdgeFlagPointer - GLsizei stride - const void *pointer - - - void glEdgeFlagPointerEXT - GLsizei stride - GLsizei count - const GLboolean *pointer - - - void glEdgeFlagPointerListIBM - GLint stride - const GLboolean **pointer - GLint ptrstride - - - void glEdgeFlagv - const GLboolean *flag - - - - void glElementPointerAPPLE - GLenum type - const void *pointer - - - void glElementPointerATI - GLenum type - const void *pointer - - - void glEnable - GLenum cap - - - - void glEnableClientState - GLenum array - - - void glEnableClientStateIndexedEXT - GLenum array - GLuint index - - - void glEnableClientStateiEXT - GLenum array - GLuint index - - - void glEnableDriverControlQCOM - GLuint driverControl - - - void glEnableIndexedEXT - GLenum target - GLuint index - - - - - void glEnableVariantClientStateEXT - GLuint id - - - void glEnableVertexArrayAttrib - GLuint vaobj - GLuint index - - - void glEnableVertexArrayAttribEXT - GLuint vaobj - GLuint index - - - void glEnableVertexArrayEXT - GLuint vaobj - GLenum array - - - void glEnableVertexAttribAPPLE - GLuint index - GLenum pname - - - void glEnableVertexAttribArray - GLuint index - - - void glEnableVertexAttribArrayARB - GLuint index - - - - void glEnablei - GLenum target - GLuint index - - - void glEnableiEXT - GLenum target - GLuint index - - - - void glEnableiNV - GLenum target - GLuint index - - - - void glEnableiOES - GLenum target - GLuint index - - - - void glEnd - - - - void glEndConditionalRender - - - - void glEndConditionalRenderNV - - - - void glEndConditionalRenderNVX - - - - void glEndFragmentShaderATI - - - void glEndList - - - - void glEndOcclusionQueryNV - - - void glEndPerfMonitorAMD - GLuint monitor - - - void glEndPerfQueryINTEL - GLuint queryHandle - - - void glEndQuery - GLenum target - - - - void glEndQueryARB - GLenum target - - - - void glEndQueryEXT - GLenum target - - - void glEndQueryIndexed - GLenum target - GLuint index - - - void glEndTilingQCOM - GLbitfield preserveMask - - - void glEndTransformFeedback - - - - void glEndTransformFeedbackEXT - - - - void glEndTransformFeedbackNV - - - - void glEndVertexShaderEXT - - - void glEndVideoCaptureNV - GLuint video_capture_slot - - - void glEvalCoord1d - GLdouble u - - - - void glEvalCoord1dv - const GLdouble *u - - - - void glEvalCoord1f - GLfloat u - - - - void glEvalCoord1fv - const GLfloat *u - - - - void glEvalCoord1xOES - GLfixed u - - - void glEvalCoord1xvOES - const GLfixed *coords - - - void glEvalCoord2d - GLdouble u - GLdouble v - - - - void glEvalCoord2dv - const GLdouble *u - - - - void glEvalCoord2f - GLfloat u - GLfloat v - - - - void glEvalCoord2fv - const GLfloat *u - - - - void glEvalCoord2xOES - GLfixed u - GLfixed v - - - void glEvalCoord2xvOES - const GLfixed *coords - - - void glEvalMapsNV - GLenum target - GLenum mode - - - void glEvalMesh1 - GLenum mode - GLint i1 - GLint i2 - - - - void glEvalMesh2 - GLenum mode - GLint i1 - GLint i2 - GLint j1 - GLint j2 - - - - void glEvalPoint1 - GLint i - - - - void glEvalPoint2 - GLint i - GLint j - - - - void glEvaluateDepthValuesARB - - - void glExecuteProgramNV - GLenum target - GLuint id - const GLfloat *params - - - - void glExtGetBufferPointervQCOM - GLenum target - void **params - - - void glExtGetBuffersQCOM - GLuint *buffers - GLint maxBuffers - GLint *numBuffers - - - void glExtGetFramebuffersQCOM - GLuint *framebuffers - GLint maxFramebuffers - GLint *numFramebuffers - - - void glExtGetProgramBinarySourceQCOM - GLuint program - GLenum shadertype - GLchar *source - GLint *length - - - void glExtGetProgramsQCOM - GLuint *programs - GLint maxPrograms - GLint *numPrograms - - - void glExtGetRenderbuffersQCOM - GLuint *renderbuffers - GLint maxRenderbuffers - GLint *numRenderbuffers - - - void glExtGetShadersQCOM - GLuint *shaders - GLint maxShaders - GLint *numShaders - - - void glExtGetTexLevelParameterivQCOM - GLuint texture - GLenum face - GLint level - GLenum pname - GLint *params - - - void glExtGetTexSubImageQCOM - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - void *texels - - - void glExtGetTexturesQCOM - GLuint *textures - GLint maxTextures - GLint *numTextures - - - GLboolean glExtIsProgramBinaryQCOM - GLuint program - - - void glExtTexObjectStateOverrideiQCOM - GLenum target - GLenum pname - GLint param - - - void glExtractComponentEXT - GLuint res - GLuint src - GLuint num - - - void glFeedbackBuffer - GLsizei size - GLenum type - GLfloat *buffer - - - - void glFeedbackBufferxOES - GLsizei n - GLenum type - const GLfixed *buffer - - - GLsync glFenceSync - GLenum condition - GLbitfield flags - - - GLsync glFenceSyncAPPLE - GLenum condition - GLbitfield flags - - - - void glFinalCombinerInputNV - GLenum variable - GLenum input - GLenum mapping - GLenum componentUsage - - - - void glFinish - - - - GLint glFinishAsyncSGIX - GLuint *markerp - - - void glFinishFenceAPPLE - GLuint fence - - - void glFinishFenceNV - GLuint fence - - - - void glFinishObjectAPPLE - GLenum object - GLint name - - - void glFinishTextureSUNX - - - void glFlush - - - - void glFlushMappedBufferRange - GLenum target - GLintptr offset - GLsizeiptr length - - - void glFlushMappedBufferRangeAPPLE - GLenum target - GLintptr offset - GLsizeiptr size - - - - void glFlushMappedBufferRangeEXT - GLenum target - GLintptr offset - GLsizeiptr length - - - - void glFlushMappedNamedBufferRange - GLuint buffer - GLintptr offset - GLsizeiptr length - - - void glFlushMappedNamedBufferRangeEXT - GLuint buffer - GLintptr offset - GLsizeiptr length - - - void glFlushPixelDataRangeNV - GLenum target - - - void glFlushRasterSGIX - - - - void glFlushStaticDataIBM - GLenum target - - - void glFlushVertexArrayRangeAPPLE - GLsizei length - void *pointer - - - void glFlushVertexArrayRangeNV - - - void glFogCoordFormatNV - GLenum type - GLsizei stride - - - void glFogCoordPointer - GLenum type - GLsizei stride - const void *pointer - - - void glFogCoordPointerEXT - GLenum type - GLsizei stride - const void *pointer - - - - void glFogCoordPointerListIBM - GLenum type - GLint stride - const void **pointer - GLint ptrstride - - - void glFogCoordd - GLdouble coord - - - - void glFogCoorddEXT - GLdouble coord - - - - - void glFogCoorddv - const GLdouble *coord - - - - void glFogCoorddvEXT - const GLdouble *coord - - - - - void glFogCoordf - GLfloat coord - - - - void glFogCoordfEXT - GLfloat coord - - - - - void glFogCoordfv - const GLfloat *coord - - - - void glFogCoordfvEXT - const GLfloat *coord - - - - - void glFogCoordhNV - GLhalfNV fog - - - - void glFogCoordhvNV - const GLhalfNV *fog - - - - void glFogFuncSGIS - GLsizei n - const GLfloat *points - - - - void glFogf - GLenum pname - GLfloat param - - - - void glFogfv - GLenum pname - const GLfloat *params - - - - void glFogi - GLenum pname - GLint param - - - - void glFogiv - GLenum pname - const GLint *params - - - - void glFogx - GLenum pname - GLfixed param - - - void glFogxOES - GLenum pname - GLfixed param - - - void glFogxv - GLenum pname - const GLfixed *param - - - void glFogxvOES - GLenum pname - const GLfixed *param - - - void glFragmentColorMaterialSGIX - GLenum face - GLenum mode - - - void glFragmentCoverageColorNV - GLuint color - - - void glFragmentLightModelfSGIX - GLenum pname - GLfloat param - - - void glFragmentLightModelfvSGIX - GLenum pname - const GLfloat *params - - - void glFragmentLightModeliSGIX - GLenum pname - GLint param - - - void glFragmentLightModelivSGIX - GLenum pname - const GLint *params - - - void glFragmentLightfSGIX - GLenum light - GLenum pname - GLfloat param - - - void glFragmentLightfvSGIX - GLenum light - GLenum pname - const GLfloat *params - - - void glFragmentLightiSGIX - GLenum light - GLenum pname - GLint param - - - void glFragmentLightivSGIX - GLenum light - GLenum pname - const GLint *params - - - void glFragmentMaterialfSGIX - GLenum face - GLenum pname - GLfloat param - - - void glFragmentMaterialfvSGIX - GLenum face - GLenum pname - const GLfloat *params - - - void glFragmentMaterialiSGIX - GLenum face - GLenum pname - GLint param - - - void glFragmentMaterialivSGIX - GLenum face - GLenum pname - const GLint *params - - - void glFrameTerminatorGREMEDY - - - void glFrameZoomSGIX - GLint factor - - - - void glFramebufferDrawBufferEXT - GLuint framebuffer - GLenum mode - - - void glFramebufferDrawBuffersEXT - GLuint framebuffer - GLsizei n - const GLenum *bufs - - - void glFramebufferFetchBarrierEXT - - - void glFramebufferFetchBarrierQCOM - - - void glFramebufferFoveationConfigQCOM - GLuint framebuffer - GLuint numLayers - GLuint focalPointsPerLayer - GLuint requestedFeatures - GLuint *providedFeatures - - - void glFramebufferFoveationParametersQCOM - GLuint framebuffer - GLuint layer - GLuint focalPoint - GLfloat focalX - GLfloat focalY - GLfloat gainX - GLfloat gainY - GLfloat foveaArea - - - void glFramebufferParameteri - GLenum target - GLenum pname - GLint param - - - void glFramebufferPixelLocalStorageSizeEXT - GLuint target - GLsizei size - - - void glFramebufferReadBufferEXT - GLuint framebuffer - GLenum mode - - - void glFramebufferRenderbuffer - GLenum target - GLenum attachment - GLenum renderbuffertarget - GLuint renderbuffer - - - - void glFramebufferRenderbufferEXT - GLenum target - GLenum attachment - GLenum renderbuffertarget - GLuint renderbuffer - - - - - void glFramebufferRenderbufferOES - GLenum target - GLenum attachment - GLenum renderbuffertarget - GLuint renderbuffer - - - void glFramebufferSampleLocationsfvARB - GLenum target - GLuint start - GLsizei count - const GLfloat *v - - - void glFramebufferSampleLocationsfvNV - GLenum target - GLuint start - GLsizei count - const GLfloat *v - - - void glFramebufferSamplePositionsfvAMD - GLenum target - GLuint numsamples - GLuint pixelindex - const GLfloat *values - - - void glFramebufferTexture - GLenum target - GLenum attachment - GLuint texture - GLint level - - - void glFramebufferTexture1D - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - - - - void glFramebufferTexture1DEXT - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - - - - - void glFramebufferTexture2D - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - - - - void glFramebufferTexture2DEXT - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - - - - - void glFramebufferTexture2DDownsampleIMG - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - GLint xscale - GLint yscale - - - void glFramebufferTexture2DMultisampleEXT - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - GLsizei samples - - - void glFramebufferTexture2DMultisampleIMG - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - GLsizei samples - - - void glFramebufferTexture2DOES - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - - - void glFramebufferTexture3D - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - GLint zoffset - - - - void glFramebufferTexture3DEXT - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - GLint zoffset - - - - - void glFramebufferTexture3DOES - GLenum target - GLenum attachment - GLenum textarget - GLuint texture - GLint level - GLint zoffset - - - void glFramebufferTextureARB - GLenum target - GLenum attachment - GLuint texture - GLint level - - - - void glFramebufferTextureEXT - GLenum target - GLenum attachment - GLuint texture - GLint level - - - - void glFramebufferTextureFaceARB - GLenum target - GLenum attachment - GLuint texture - GLint level - GLenum face - - - void glFramebufferTextureFaceEXT - GLenum target - GLenum attachment - GLuint texture - GLint level - GLenum face - - - - void glFramebufferTextureLayer - GLenum target - GLenum attachment - GLuint texture - GLint level - GLint layer - - - - void glFramebufferTextureLayerARB - GLenum target - GLenum attachment - GLuint texture - GLint level - GLint layer - - - - void glFramebufferTextureLayerEXT - GLenum target - GLenum attachment - GLuint texture - GLint level - GLint layer - - - - void glFramebufferTextureLayerDownsampleIMG - GLenum target - GLenum attachment - GLuint texture - GLint level - GLint layer - GLint xscale - GLint yscale - - - void glFramebufferTextureMultisampleMultiviewOVR - GLenum target - GLenum attachment - GLuint texture - GLint level - GLsizei samples - GLint baseViewIndex - GLsizei numViews - - - void glFramebufferTextureMultiviewOVR - GLenum target - GLenum attachment - GLuint texture - GLint level - GLint baseViewIndex - GLsizei numViews - - - void glFramebufferTextureOES - GLenum target - GLenum attachment - GLuint texture - GLint level - - - - void glFreeObjectBufferATI - GLuint buffer - - - void glFrontFace - GLenum mode - - - - void glFrustum - GLdouble left - GLdouble right - GLdouble bottom - GLdouble top - GLdouble zNear - GLdouble zFar - - - - void glFrustumf - GLfloat l - GLfloat r - GLfloat b - GLfloat t - GLfloat n - GLfloat f - - - void glFrustumfOES - GLfloat l - GLfloat r - GLfloat b - GLfloat t - GLfloat n - GLfloat f - - - - void glFrustumx - GLfixed l - GLfixed r - GLfixed b - GLfixed t - GLfixed n - GLfixed f - - - void glFrustumxOES - GLfixed l - GLfixed r - GLfixed b - GLfixed t - GLfixed n - GLfixed f - - - GLuint glGenAsyncMarkersSGIX - GLsizei range - - - void glGenBuffers - GLsizei n - GLuint *buffers - - - void glGenBuffersARB - GLsizei n - GLuint *buffers - - - - void glGenFencesAPPLE - GLsizei n - GLuint *fences - - - void glGenFencesNV - GLsizei n - GLuint *fences - - - - GLuint glGenFragmentShadersATI - GLuint range - - - void glGenFramebuffers - GLsizei n - GLuint *framebuffers - - - - void glGenFramebuffersEXT - GLsizei n - GLuint *framebuffers - - - - - void glGenFramebuffersOES - GLsizei n - GLuint *framebuffers - - - GLuint glGenLists - GLsizei range - - - - void glGenNamesAMD - GLenum identifier - GLuint num - GLuint *names - - - void glGenOcclusionQueriesNV - GLsizei n - GLuint *ids - - - GLuint glGenPathsNV - GLsizei range - - - void glGenPerfMonitorsAMD - GLsizei n - GLuint *monitors - - - void glGenProgramPipelines - GLsizei n - GLuint *pipelines - - - void glGenProgramPipelinesEXT - GLsizei n - GLuint *pipelines - - - void glGenProgramsARB - GLsizei n - GLuint *programs - - - - void glGenProgramsNV - GLsizei n - GLuint *programs - - - - - void glGenQueries - GLsizei n - GLuint *ids - - - - void glGenQueriesARB - GLsizei n - GLuint *ids - - - - void glGenQueriesEXT - GLsizei n - GLuint *ids - - - void glGenQueryResourceTagNV - GLsizei n - GLint *tagIds - - - void glGenRenderbuffers - GLsizei n - GLuint *renderbuffers - - - - void glGenRenderbuffersEXT - GLsizei n - GLuint *renderbuffers - - - - - void glGenRenderbuffersOES - GLsizei n - GLuint *renderbuffers - - - void glGenSamplers - GLsizei count - GLuint *samplers - - - void glGenSemaphoresEXT - GLsizei n - GLuint *semaphores - - - GLuint glGenSymbolsEXT - GLenum datatype - GLenum storagetype - GLenum range - GLuint components - - - void glGenTextures - GLsizei n - GLuint *textures - - - - void glGenTexturesEXT - GLsizei n - GLuint *textures - - - - void glGenTransformFeedbacks - GLsizei n - GLuint *ids - - - void glGenTransformFeedbacksNV - GLsizei n - GLuint *ids - - - - void glGenVertexArrays - GLsizei n - GLuint *arrays - - - - void glGenVertexArraysAPPLE - GLsizei n - GLuint *arrays - - - - void glGenVertexArraysOES - GLsizei n - GLuint *arrays - - - - GLuint glGenVertexShadersEXT - GLuint range - - - void glGenerateMipmap - GLenum target - - - - void glGenerateMipmapEXT - GLenum target - - - - - void glGenerateMipmapOES - GLenum target - - - void glGenerateMultiTexMipmapEXT - GLenum texunit - GLenum target - - - void glGenerateTextureMipmap - GLuint texture - - - void glGenerateTextureMipmapEXT - GLuint texture - GLenum target - - - void glGetActiveAtomicCounterBufferiv - GLuint program - GLuint bufferIndex - GLenum pname - GLint *params - - - void glGetActiveAttrib - GLuint program - GLuint index - GLsizei bufSize - GLsizei *length - GLint *size - GLenum *type - GLchar *name - - - void glGetActiveAttribARB - GLhandleARB programObj - GLuint index - GLsizei maxLength - GLsizei *length - GLint *size - GLenum *type - GLcharARB *name - - - - void glGetActiveSubroutineName - GLuint program - GLenum shadertype - GLuint index - GLsizei bufSize - GLsizei *length - GLchar *name - - - void glGetActiveSubroutineUniformName - GLuint program - GLenum shadertype - GLuint index - GLsizei bufSize - GLsizei *length - GLchar *name - - - void glGetActiveSubroutineUniformiv - GLuint program - GLenum shadertype - GLuint index - GLenum pname - GLint *values - - - void glGetActiveUniform - GLuint program - GLuint index - GLsizei bufSize - GLsizei *length - GLint *size - GLenum *type - GLchar *name - - - void glGetActiveUniformARB - GLhandleARB programObj - GLuint index - GLsizei maxLength - GLsizei *length - GLint *size - GLenum *type - GLcharARB *name - - - - void glGetActiveUniformBlockName - GLuint program - GLuint uniformBlockIndex - GLsizei bufSize - GLsizei *length - GLchar *uniformBlockName - - - - void glGetActiveUniformBlockiv - GLuint program - GLuint uniformBlockIndex - GLenum pname - GLint *params - - - - void glGetActiveUniformName - GLuint program - GLuint uniformIndex - GLsizei bufSize - GLsizei *length - GLchar *uniformName - - - - void glGetActiveUniformsiv - GLuint program - GLsizei uniformCount - const GLuint *uniformIndices - GLenum pname - GLint *params - - - - void glGetActiveVaryingNV - GLuint program - GLuint index - GLsizei bufSize - GLsizei *length - GLsizei *size - GLenum *type - GLchar *name - - - void glGetArrayObjectfvATI - GLenum array - GLenum pname - GLfloat *params - - - void glGetArrayObjectivATI - GLenum array - GLenum pname - GLint *params - - - void glGetAttachedObjectsARB - GLhandleARB containerObj - GLsizei maxCount - GLsizei *count - GLhandleARB *obj - - - void glGetAttachedShaders - GLuint program - GLsizei maxCount - GLsizei *count - GLuint *shaders - - - GLint glGetAttribLocation - GLuint program - const GLchar *name - - - GLint glGetAttribLocationARB - GLhandleARB programObj - const GLcharARB *name - - - - void glGetBooleanIndexedvEXT - GLenum target - GLuint index - GLboolean *data - - - - - void glGetBooleani_v - GLenum target - GLuint index - GLboolean *data - - - void glGetBooleanv - GLenum pname - GLboolean *data - - - - void glGetBufferParameteri64v - GLenum target - GLenum pname - GLint64 *params - - - void glGetBufferParameteriv - GLenum target - GLenum pname - GLint *params - - - void glGetBufferParameterivARB - GLenum target - GLenum pname - GLint *params - - - - void glGetBufferParameterui64vNV - GLenum target - GLenum pname - GLuint64EXT *params - - - void glGetBufferPointerv - GLenum target - GLenum pname - void **params - - - void glGetBufferPointervARB - GLenum target - GLenum pname - void **params - - - - void glGetBufferPointervOES - GLenum target - GLenum pname - void **params - - - - void glGetBufferSubData - GLenum target - GLintptr offset - GLsizeiptr size - void *data - - - void glGetBufferSubDataARB - GLenum target - GLintptrARB offset - GLsizeiptrARB size - void *data - - - - void glGetClipPlane - GLenum plane - GLdouble *equation - - - - void glGetClipPlanef - GLenum plane - GLfloat *equation - - - void glGetClipPlanefOES - GLenum plane - GLfloat *equation - - - - void glGetClipPlanex - GLenum plane - GLfixed *equation - - - void glGetClipPlanexOES - GLenum plane - GLfixed *equation - - - void glGetColorTable - GLenum target - GLenum format - GLenum type - void *table - - - - - void glGetColorTableEXT - GLenum target - GLenum format - GLenum type - void *data - - - - void glGetColorTableParameterfv - GLenum target - GLenum pname - GLfloat *params - - - - void glGetColorTableParameterfvEXT - GLenum target - GLenum pname - GLfloat *params - - - - void glGetColorTableParameterfvSGI - GLenum target - GLenum pname - GLfloat *params - - - - void glGetColorTableParameteriv - GLenum target - GLenum pname - GLint *params - - - - void glGetColorTableParameterivEXT - GLenum target - GLenum pname - GLint *params - - - - void glGetColorTableParameterivSGI - GLenum target - GLenum pname - GLint *params - - - - void glGetColorTableSGI - GLenum target - GLenum format - GLenum type - void *table - - - - void glGetCombinerInputParameterfvNV - GLenum stage - GLenum portion - GLenum variable - GLenum pname - GLfloat *params - - - - void glGetCombinerInputParameterivNV - GLenum stage - GLenum portion - GLenum variable - GLenum pname - GLint *params - - - - void glGetCombinerOutputParameterfvNV - GLenum stage - GLenum portion - GLenum pname - GLfloat *params - - - - void glGetCombinerOutputParameterivNV - GLenum stage - GLenum portion - GLenum pname - GLint *params - - - - void glGetCombinerStageParameterfvNV - GLenum stage - GLenum pname - GLfloat *params - - - GLuint glGetCommandHeaderNV - GLenum tokenID - GLuint size - - - void glGetCompressedMultiTexImageEXT - GLenum texunit - GLenum target - GLint lod - void *img - - - void glGetCompressedTexImage - GLenum target - GLint level - void *img - - - - - void glGetCompressedTexImageARB - GLenum target - GLint level - void *img - - - - - void glGetCompressedTextureImage - GLuint texture - GLint level - GLsizei bufSize - void *pixels - - - void glGetCompressedTextureImageEXT - GLuint texture - GLenum target - GLint lod - void *img - - - void glGetCompressedTextureSubImage - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLsizei bufSize - void *pixels - - - void glGetConvolutionFilter - GLenum target - GLenum format - GLenum type - void *image - - - - - void glGetConvolutionFilterEXT - GLenum target - GLenum format - GLenum type - void *image - - - - void glGetConvolutionParameterfv - GLenum target - GLenum pname - GLfloat *params - - - - void glGetConvolutionParameterfvEXT - GLenum target - GLenum pname - GLfloat *params - - - - void glGetConvolutionParameteriv - GLenum target - GLenum pname - GLint *params - - - - void glGetConvolutionParameterivEXT - GLenum target - GLenum pname - GLint *params - - - - void glGetConvolutionParameterxvOES - GLenum target - GLenum pname - GLfixed *params - - - void glGetCoverageModulationTableNV - GLsizei bufSize - GLfloat *v - - - GLuint glGetDebugMessageLog - GLuint count - GLsizei bufSize - GLenum *sources - GLenum *types - GLuint *ids - GLenum *severities - GLsizei *lengths - GLchar *messageLog - - - GLuint glGetDebugMessageLogAMD - GLuint count - GLsizei bufSize - GLenum *categories - GLuint *severities - GLuint *ids - GLsizei *lengths - GLchar *message - - - GLuint glGetDebugMessageLogARB - GLuint count - GLsizei bufSize - GLenum *sources - GLenum *types - GLuint *ids - GLenum *severities - GLsizei *lengths - GLchar *messageLog - - - - GLuint glGetDebugMessageLogKHR - GLuint count - GLsizei bufSize - GLenum *sources - GLenum *types - GLuint *ids - GLenum *severities - GLsizei *lengths - GLchar *messageLog - - - - void glGetDetailTexFuncSGIS - GLenum target - GLfloat *points - - - - void glGetDoubleIndexedvEXT - GLenum target - GLuint index - GLdouble *data - - - - void glGetDoublei_v - GLenum target - GLuint index - GLdouble *data - - - void glGetDoublei_vEXT - GLenum pname - GLuint index - GLdouble *params - - - - void glGetDoublev - GLenum pname - GLdouble *data - - - - void glGetDriverControlStringQCOM - GLuint driverControl - GLsizei bufSize - GLsizei *length - GLchar *driverControlString - - - void glGetDriverControlsQCOM - GLint *num - GLsizei size - GLuint *driverControls - - - GLenum glGetError - - - - void glGetFenceivNV - GLuint fence - GLenum pname - GLint *params - - - - void glGetFinalCombinerInputParameterfvNV - GLenum variable - GLenum pname - GLfloat *params - - - - void glGetFinalCombinerInputParameterivNV - GLenum variable - GLenum pname - GLint *params - - - - void glGetFirstPerfQueryIdINTEL - GLuint *queryId - - - void glGetFixedv - GLenum pname - GLfixed *params - - - void glGetFixedvOES - GLenum pname - GLfixed *params - - - void glGetFloatIndexedvEXT - GLenum target - GLuint index - GLfloat *data - - - - void glGetFloati_v - GLenum target - GLuint index - GLfloat *data - - - void glGetFloati_vEXT - GLenum pname - GLuint index - GLfloat *params - - - - void glGetFloati_vNV - GLenum target - GLuint index - GLfloat *data - - - - void glGetFloati_vOES - GLenum target - GLuint index - GLfloat *data - - - - void glGetFloatv - GLenum pname - GLfloat *data - - - - void glGetFogFuncSGIS - GLfloat *points - - - GLint glGetFragDataIndex - GLuint program - const GLchar *name - - - GLint glGetFragDataIndexEXT - GLuint program - const GLchar *name - - - - GLint glGetFragDataLocation - GLuint program - const GLchar *name - - - GLint glGetFragDataLocationEXT - GLuint program - const GLchar *name - - - - void glGetFragmentLightfvSGIX - GLenum light - GLenum pname - GLfloat *params - - - void glGetFragmentLightivSGIX - GLenum light - GLenum pname - GLint *params - - - void glGetFragmentMaterialfvSGIX - GLenum face - GLenum pname - GLfloat *params - - - void glGetFragmentMaterialivSGIX - GLenum face - GLenum pname - GLint *params - - - void glGetFramebufferAttachmentParameteriv - GLenum target - GLenum attachment - GLenum pname - GLint *params - - - - void glGetFramebufferAttachmentParameterivEXT - GLenum target - GLenum attachment - GLenum pname - GLint *params - - - - - void glGetFramebufferAttachmentParameterivOES - GLenum target - GLenum attachment - GLenum pname - GLint *params - - - void glGetFramebufferParameterfvAMD - GLenum target - GLenum pname - GLuint numsamples - GLuint pixelindex - GLsizei size - GLfloat *values - - - void glGetFramebufferParameteriv - GLenum target - GLenum pname - GLint *params - - - void glGetFramebufferParameterivEXT - GLuint framebuffer - GLenum pname - GLint *params - - - GLsizei glGetFramebufferPixelLocalStorageSizeEXT - GLuint target - - - GLenum glGetGraphicsResetStatus - - - GLenum glGetGraphicsResetStatusARB - - - GLenum glGetGraphicsResetStatusEXT - - - - GLenum glGetGraphicsResetStatusKHR - - - - GLhandleARB glGetHandleARB - GLenum pname - - - void glGetHistogram - GLenum target - GLboolean reset - GLenum format - GLenum type - void *values - - - - - void glGetHistogramEXT - GLenum target - GLboolean reset - GLenum format - GLenum type - void *values - - - - void glGetHistogramParameterfv - GLenum target - GLenum pname - GLfloat *params - - - - void glGetHistogramParameterfvEXT - GLenum target - GLenum pname - GLfloat *params - - - - void glGetHistogramParameteriv - GLenum target - GLenum pname - GLint *params - - - - void glGetHistogramParameterivEXT - GLenum target - GLenum pname - GLint *params - - - - void glGetHistogramParameterxvOES - GLenum target - GLenum pname - GLfixed *params - - - GLuint64 glGetImageHandleARB - GLuint texture - GLint level - GLboolean layered - GLint layer - GLenum format - - - GLuint64 glGetImageHandleNV - GLuint texture - GLint level - GLboolean layered - GLint layer - GLenum format - - - void glGetImageTransformParameterfvHP - GLenum target - GLenum pname - GLfloat *params - - - void glGetImageTransformParameterivHP - GLenum target - GLenum pname - GLint *params - - - void glGetInfoLogARB - GLhandleARB obj - GLsizei maxLength - GLsizei *length - GLcharARB *infoLog - - - GLint glGetInstrumentsSGIX - - - - void glGetInteger64i_v - GLenum target - GLuint index - GLint64 *data - - - void glGetInteger64v - GLenum pname - GLint64 *data - - - void glGetInteger64vAPPLE - GLenum pname - GLint64 *params - - - - void glGetInteger64vEXT - GLenum pname - GLint64 *data - - - - void glGetIntegerIndexedvEXT - GLenum target - GLuint index - GLint *data - - - - - void glGetIntegeri_v - GLenum target - GLuint index - GLint *data - - - void glGetIntegeri_vEXT - GLenum target - GLuint index - GLint *data - - - void glGetIntegerui64i_vNV - GLenum value - GLuint index - GLuint64EXT *result - - - void glGetIntegerui64vNV - GLenum value - GLuint64EXT *result - - - void glGetIntegerv - GLenum pname - GLint *data - - - - void glGetInternalformatSampleivNV - GLenum target - GLenum internalformat - GLsizei samples - GLenum pname - GLsizei count - GLint *params - - - void glGetInternalformati64v - GLenum target - GLenum internalformat - GLenum pname - GLsizei count - GLint64 *params - - - void glGetInternalformativ - GLenum target - GLenum internalformat - GLenum pname - GLsizei count - GLint *params - - - void glGetInvariantBooleanvEXT - GLuint id - GLenum value - GLboolean *data - - - void glGetInvariantFloatvEXT - GLuint id - GLenum value - GLfloat *data - - - void glGetInvariantIntegervEXT - GLuint id - GLenum value - GLint *data - - - void glGetLightfv - GLenum light - GLenum pname - GLfloat *params - - - - void glGetLightiv - GLenum light - GLenum pname - GLint *params - - - - void glGetLightxOES - GLenum light - GLenum pname - GLfixed *params - - - void glGetLightxv - GLenum light - GLenum pname - GLfixed *params - - - void glGetLightxvOES - GLenum light - GLenum pname - GLfixed *params - - - void glGetListParameterfvSGIX - GLuint list - GLenum pname - GLfloat *params - - - void glGetListParameterivSGIX - GLuint list - GLenum pname - GLint *params - - - void glGetLocalConstantBooleanvEXT - GLuint id - GLenum value - GLboolean *data - - - void glGetLocalConstantFloatvEXT - GLuint id - GLenum value - GLfloat *data - - - void glGetLocalConstantIntegervEXT - GLuint id - GLenum value - GLint *data - - - void glGetMapAttribParameterfvNV - GLenum target - GLuint index - GLenum pname - GLfloat *params - - - void glGetMapAttribParameterivNV - GLenum target - GLuint index - GLenum pname - GLint *params - - - void glGetMapControlPointsNV - GLenum target - GLuint index - GLenum type - GLsizei ustride - GLsizei vstride - GLboolean packed - void *points - - - void glGetMapParameterfvNV - GLenum target - GLenum pname - GLfloat *params - - - void glGetMapParameterivNV - GLenum target - GLenum pname - GLint *params - - - void glGetMapdv - GLenum target - GLenum query - GLdouble *v - - - - void glGetMapfv - GLenum target - GLenum query - GLfloat *v - - - - void glGetMapiv - GLenum target - GLenum query - GLint *v - - - - void glGetMapxvOES - GLenum target - GLenum query - GLfixed *v - - - void glGetMaterialfv - GLenum face - GLenum pname - GLfloat *params - - - - void glGetMaterialiv - GLenum face - GLenum pname - GLint *params - - - - void glGetMaterialxOES - GLenum face - GLenum pname - GLfixed param - - - void glGetMaterialxv - GLenum face - GLenum pname - GLfixed *params - - - void glGetMaterialxvOES - GLenum face - GLenum pname - GLfixed *params - - - void glGetMemoryObjectDetachedResourcesuivNV - GLuint memory - GLenum pname - GLint first - GLsizei count - GLuint *params - - - void glGetMemoryObjectParameterivEXT - GLuint memoryObject - GLenum pname - GLint *params - - - void glGetMinmax - GLenum target - GLboolean reset - GLenum format - GLenum type - void *values - - - - - void glGetMinmaxEXT - GLenum target - GLboolean reset - GLenum format - GLenum type - void *values - - - - void glGetMinmaxParameterfv - GLenum target - GLenum pname - GLfloat *params - - - - void glGetMinmaxParameterfvEXT - GLenum target - GLenum pname - GLfloat *params - - - - void glGetMinmaxParameteriv - GLenum target - GLenum pname - GLint *params - - - - void glGetMinmaxParameterivEXT - GLenum target - GLenum pname - GLint *params - - - - void glGetMultiTexEnvfvEXT - GLenum texunit - GLenum target - GLenum pname - GLfloat *params - - - void glGetMultiTexEnvivEXT - GLenum texunit - GLenum target - GLenum pname - GLint *params - - - void glGetMultiTexGendvEXT - GLenum texunit - GLenum coord - GLenum pname - GLdouble *params - - - void glGetMultiTexGenfvEXT - GLenum texunit - GLenum coord - GLenum pname - GLfloat *params - - - void glGetMultiTexGenivEXT - GLenum texunit - GLenum coord - GLenum pname - GLint *params - - - void glGetMultiTexImageEXT - GLenum texunit - GLenum target - GLint level - GLenum format - GLenum type - void *pixels - - - void glGetMultiTexLevelParameterfvEXT - GLenum texunit - GLenum target - GLint level - GLenum pname - GLfloat *params - - - void glGetMultiTexLevelParameterivEXT - GLenum texunit - GLenum target - GLint level - GLenum pname - GLint *params - - - void glGetMultiTexParameterIivEXT - GLenum texunit - GLenum target - GLenum pname - GLint *params - - - void glGetMultiTexParameterIuivEXT - GLenum texunit - GLenum target - GLenum pname - GLuint *params - - - void glGetMultiTexParameterfvEXT - GLenum texunit - GLenum target - GLenum pname - GLfloat *params - - - void glGetMultiTexParameterivEXT - GLenum texunit - GLenum target - GLenum pname - GLint *params - - - void glGetMultisamplefv - GLenum pname - GLuint index - GLfloat *val - - - void glGetMultisamplefvNV - GLenum pname - GLuint index - GLfloat *val - - - - void glGetNamedBufferParameteri64v - GLuint buffer - GLenum pname - GLint64 *params - - - void glGetNamedBufferParameteriv - GLuint buffer - GLenum pname - GLint *params - - - void glGetNamedBufferParameterivEXT - GLuint buffer - GLenum pname - GLint *params - - - void glGetNamedBufferParameterui64vNV - GLuint buffer - GLenum pname - GLuint64EXT *params - - - void glGetNamedBufferPointerv - GLuint buffer - GLenum pname - void **params - - - void glGetNamedBufferPointervEXT - GLuint buffer - GLenum pname - void **params - - - void glGetNamedBufferSubData - GLuint buffer - GLintptr offset - GLsizeiptr size - void *data - - - void glGetNamedBufferSubDataEXT - GLuint buffer - GLintptr offset - GLsizeiptr size - void *data - - - void glGetNamedFramebufferParameterfvAMD - GLuint framebuffer - GLenum pname - GLuint numsamples - GLuint pixelindex - GLsizei size - GLfloat *values - - - void glGetNamedFramebufferAttachmentParameteriv - GLuint framebuffer - GLenum attachment - GLenum pname - GLint *params - - - void glGetNamedFramebufferAttachmentParameterivEXT - GLuint framebuffer - GLenum attachment - GLenum pname - GLint *params - - - void glGetNamedFramebufferParameteriv - GLuint framebuffer - GLenum pname - GLint *param - - - void glGetNamedFramebufferParameterivEXT - GLuint framebuffer - GLenum pname - GLint *params - - - void glGetNamedProgramLocalParameterIivEXT - GLuint program - GLenum target - GLuint index - GLint *params - - - void glGetNamedProgramLocalParameterIuivEXT - GLuint program - GLenum target - GLuint index - GLuint *params - - - void glGetNamedProgramLocalParameterdvEXT - GLuint program - GLenum target - GLuint index - GLdouble *params - - - void glGetNamedProgramLocalParameterfvEXT - GLuint program - GLenum target - GLuint index - GLfloat *params - - - void glGetNamedProgramStringEXT - GLuint program - GLenum target - GLenum pname - void *string - - - void glGetNamedProgramivEXT - GLuint program - GLenum target - GLenum pname - GLint *params - - - void glGetNamedRenderbufferParameteriv - GLuint renderbuffer - GLenum pname - GLint *params - - - void glGetNamedRenderbufferParameterivEXT - GLuint renderbuffer - GLenum pname - GLint *params - - - void glGetNamedStringARB - GLint namelen - const GLchar *name - GLsizei bufSize - GLint *stringlen - GLchar *string - - - void glGetNamedStringivARB - GLint namelen - const GLchar *name - GLenum pname - GLint *params - - - void glGetNextPerfQueryIdINTEL - GLuint queryId - GLuint *nextQueryId - - - void glGetObjectBufferfvATI - GLuint buffer - GLenum pname - GLfloat *params - - - void glGetObjectBufferivATI - GLuint buffer - GLenum pname - GLint *params - - - void glGetObjectLabel - GLenum identifier - GLuint name - GLsizei bufSize - GLsizei *length - GLchar *label - - - void glGetObjectLabelEXT - GLenum type - GLuint object - GLsizei bufSize - GLsizei *length - GLchar *label - - - void glGetObjectLabelKHR - GLenum identifier - GLuint name - GLsizei bufSize - GLsizei *length - GLchar *label - - - - void glGetObjectParameterfvARB - GLhandleARB obj - GLenum pname - GLfloat *params - - - void glGetObjectParameterivAPPLE - GLenum objectType - GLuint name - GLenum pname - GLint *params - - - void glGetObjectParameterivARB - GLhandleARB obj - GLenum pname - GLint *params - - - void glGetObjectPtrLabel - const void *ptr - GLsizei bufSize - GLsizei *length - GLchar *label - - - void glGetObjectPtrLabelKHR - const void *ptr - GLsizei bufSize - GLsizei *length - GLchar *label - - - - void glGetOcclusionQueryivNV - GLuint id - GLenum pname - GLint *params - - - void glGetOcclusionQueryuivNV - GLuint id - GLenum pname - GLuint *params - - - void glGetPathColorGenfvNV - GLenum color - GLenum pname - GLfloat *value - - - void glGetPathColorGenivNV - GLenum color - GLenum pname - GLint *value - - - void glGetPathCommandsNV - GLuint path - GLubyte *commands - - - void glGetPathCoordsNV - GLuint path - GLfloat *coords - - - void glGetPathDashArrayNV - GLuint path - GLfloat *dashArray - - - GLfloat glGetPathLengthNV - GLuint path - GLsizei startSegment - GLsizei numSegments - - - void glGetPathMetricRangeNV - GLbitfield metricQueryMask - GLuint firstPathName - GLsizei numPaths - GLsizei stride - GLfloat *metrics - - - void glGetPathMetricsNV - GLbitfield metricQueryMask - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLsizei stride - GLfloat *metrics - - - void glGetPathParameterfvNV - GLuint path - GLenum pname - GLfloat *value - - - void glGetPathParameterivNV - GLuint path - GLenum pname - GLint *value - - - void glGetPathSpacingNV - GLenum pathListMode - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLfloat advanceScale - GLfloat kerningScale - GLenum transformType - GLfloat *returnedSpacing - - - void glGetPathTexGenfvNV - GLenum texCoordSet - GLenum pname - GLfloat *value - - - void glGetPathTexGenivNV - GLenum texCoordSet - GLenum pname - GLint *value - - - void glGetPerfCounterInfoINTEL - GLuint queryId - GLuint counterId - GLuint counterNameLength - GLchar *counterName - GLuint counterDescLength - GLchar *counterDesc - GLuint *counterOffset - GLuint *counterDataSize - GLuint *counterTypeEnum - GLuint *counterDataTypeEnum - GLuint64 *rawCounterMaxValue - - - void glGetPerfMonitorCounterDataAMD - GLuint monitor - GLenum pname - GLsizei dataSize - GLuint *data - GLint *bytesWritten - - - void glGetPerfMonitorCounterInfoAMD - GLuint group - GLuint counter - GLenum pname - void *data - - - void glGetPerfMonitorCounterStringAMD - GLuint group - GLuint counter - GLsizei bufSize - GLsizei *length - GLchar *counterString - - - void glGetPerfMonitorCountersAMD - GLuint group - GLint *numCounters - GLint *maxActiveCounters - GLsizei counterSize - GLuint *counters - - - void glGetPerfMonitorGroupStringAMD - GLuint group - GLsizei bufSize - GLsizei *length - GLchar *groupString - - - void glGetPerfMonitorGroupsAMD - GLint *numGroups - GLsizei groupsSize - GLuint *groups - - - void glGetPerfQueryDataINTEL - GLuint queryHandle - GLuint flags - GLsizei dataSize - void *data - GLuint *bytesWritten - - - void glGetPerfQueryIdByNameINTEL - GLchar *queryName - GLuint *queryId - - - void glGetPerfQueryInfoINTEL - GLuint queryId - GLuint queryNameLength - GLchar *queryName - GLuint *dataSize - GLuint *noCounters - GLuint *noInstances - GLuint *capsMask - - - void glGetPixelMapfv - GLenum map - GLfloat *values - - - - - void glGetPixelMapuiv - GLenum map - GLuint *values - - - - - void glGetPixelMapusv - GLenum map - GLushort *values - - - - - void glGetPixelMapxv - GLenum map - GLint size - GLfixed *values - - - void glGetPixelTexGenParameterfvSGIS - GLenum pname - GLfloat *params - - - void glGetPixelTexGenParameterivSGIS - GLenum pname - GLint *params - - - void glGetPixelTransformParameterfvEXT - GLenum target - GLenum pname - GLfloat *params - - - - void glGetPixelTransformParameterivEXT - GLenum target - GLenum pname - GLint *params - - - - void glGetPointerIndexedvEXT - GLenum target - GLuint index - void **data - - - void glGetPointeri_vEXT - GLenum pname - GLuint index - void **params - - - void glGetPointerv - GLenum pname - void **params - - - - void glGetPointervEXT - GLenum pname - void **params - - - - void glGetPointervKHR - GLenum pname - void **params - - - - void glGetPolygonStipple - GLubyte *mask - - - - - void glGetProgramBinary - GLuint program - GLsizei bufSize - GLsizei *length - GLenum *binaryFormat - void *binary - - - void glGetProgramBinaryOES - GLuint program - GLsizei bufSize - GLsizei *length - GLenum *binaryFormat - void *binary - - - - void glGetProgramEnvParameterIivNV - GLenum target - GLuint index - GLint *params - - - void glGetProgramEnvParameterIuivNV - GLenum target - GLuint index - GLuint *params - - - void glGetProgramEnvParameterdvARB - GLenum target - GLuint index - GLdouble *params - - - void glGetProgramEnvParameterfvARB - GLenum target - GLuint index - GLfloat *params - - - void glGetProgramInfoLog - GLuint program - GLsizei bufSize - GLsizei *length - GLchar *infoLog - - - - void glGetProgramInterfaceiv - GLuint program - GLenum programInterface - GLenum pname - GLint *params - - - void glGetProgramLocalParameterIivNV - GLenum target - GLuint index - GLint *params - - - void glGetProgramLocalParameterIuivNV - GLenum target - GLuint index - GLuint *params - - - void glGetProgramLocalParameterdvARB - GLenum target - GLuint index - GLdouble *params - - - void glGetProgramLocalParameterfvARB - GLenum target - GLuint index - GLfloat *params - - - void glGetProgramNamedParameterdvNV - GLuint id - GLsizei len - const GLubyte *name - GLdouble *params - - - - void glGetProgramNamedParameterfvNV - GLuint id - GLsizei len - const GLubyte *name - GLfloat *params - - - - void glGetProgramParameterdvNV - GLenum target - GLuint index - GLenum pname - GLdouble *params - - - - void glGetProgramParameterfvNV - GLenum target - GLuint index - GLenum pname - GLfloat *params - - - - void glGetProgramPipelineInfoLog - GLuint pipeline - GLsizei bufSize - GLsizei *length - GLchar *infoLog - - - void glGetProgramPipelineInfoLogEXT - GLuint pipeline - GLsizei bufSize - GLsizei *length - GLchar *infoLog - - - void glGetProgramPipelineiv - GLuint pipeline - GLenum pname - GLint *params - - - void glGetProgramPipelineivEXT - GLuint pipeline - GLenum pname - GLint *params - - - GLuint glGetProgramResourceIndex - GLuint program - GLenum programInterface - const GLchar *name - - - GLint glGetProgramResourceLocation - GLuint program - GLenum programInterface - const GLchar *name - - - GLint glGetProgramResourceLocationIndex - GLuint program - GLenum programInterface - const GLchar *name - - - GLint glGetProgramResourceLocationIndexEXT - GLuint program - GLenum programInterface - const GLchar *name - - - void glGetProgramResourceName - GLuint program - GLenum programInterface - GLuint index - GLsizei bufSize - GLsizei *length - GLchar *name - - - void glGetProgramResourcefvNV - GLuint program - GLenum programInterface - GLuint index - GLsizei propCount - const GLenum *props - GLsizei count - GLsizei *length - GLfloat *params - - - void glGetProgramResourceiv - GLuint program - GLenum programInterface - GLuint index - GLsizei propCount - const GLenum *props - GLsizei count - GLsizei *length - GLint *params - - - void glGetProgramStageiv - GLuint program - GLenum shadertype - GLenum pname - GLint *values - - - void glGetProgramStringARB - GLenum target - GLenum pname - void *string - - - void glGetProgramStringNV - GLuint id - GLenum pname - GLubyte *program - - - - void glGetProgramSubroutineParameteruivNV - GLenum target - GLuint index - GLuint *param - - - void glGetProgramiv - GLuint program - GLenum pname - GLint *params - - - - void glGetProgramivARB - GLenum target - GLenum pname - GLint *params - - - void glGetProgramivNV - GLuint id - GLenum pname - GLint *params - - - - void glGetQueryBufferObjecti64v - GLuint id - GLuint buffer - GLenum pname - GLintptr offset - - - void glGetQueryBufferObjectiv - GLuint id - GLuint buffer - GLenum pname - GLintptr offset - - - void glGetQueryBufferObjectui64v - GLuint id - GLuint buffer - GLenum pname - GLintptr offset - - - void glGetQueryBufferObjectuiv - GLuint id - GLuint buffer - GLenum pname - GLintptr offset - - - void glGetQueryIndexediv - GLenum target - GLuint index - GLenum pname - GLint *params - - - void glGetQueryObjecti64v - GLuint id - GLenum pname - GLint64 *params - - - void glGetQueryObjecti64vEXT - GLuint id - GLenum pname - GLint64 *params - - - - - void glGetQueryObjectiv - GLuint id - GLenum pname - GLint *params - - - - void glGetQueryObjectivARB - GLuint id - GLenum pname - GLint *params - - - - void glGetQueryObjectivEXT - GLuint id - GLenum pname - GLint *params - - - - void glGetQueryObjectui64v - GLuint id - GLenum pname - GLuint64 *params - - - void glGetQueryObjectui64vEXT - GLuint id - GLenum pname - GLuint64 *params - - - - - void glGetQueryObjectuiv - GLuint id - GLenum pname - GLuint *params - - - - void glGetQueryObjectuivARB - GLuint id - GLenum pname - GLuint *params - - - - void glGetQueryObjectuivEXT - GLuint id - GLenum pname - GLuint *params - - - void glGetQueryiv - GLenum target - GLenum pname - GLint *params - - - - void glGetQueryivARB - GLenum target - GLenum pname - GLint *params - - - - void glGetQueryivEXT - GLenum target - GLenum pname - GLint *params - - - void glGetRenderbufferParameteriv - GLenum target - GLenum pname - GLint *params - - - - void glGetRenderbufferParameterivEXT - GLenum target - GLenum pname - GLint *params - - - - - void glGetRenderbufferParameterivOES - GLenum target - GLenum pname - GLint *params - - - void glGetSamplerParameterIiv - GLuint sampler - GLenum pname - GLint *params - - - void glGetSamplerParameterIivEXT - GLuint sampler - GLenum pname - GLint *params - - - - void glGetSamplerParameterIivOES - GLuint sampler - GLenum pname - GLint *params - - - - void glGetSamplerParameterIuiv - GLuint sampler - GLenum pname - GLuint *params - - - void glGetSamplerParameterIuivEXT - GLuint sampler - GLenum pname - GLuint *params - - - - void glGetSamplerParameterIuivOES - GLuint sampler - GLenum pname - GLuint *params - - - - void glGetSamplerParameterfv - GLuint sampler - GLenum pname - GLfloat *params - - - void glGetSamplerParameteriv - GLuint sampler - GLenum pname - GLint *params - - - void glGetSemaphoreParameterivNV - GLuint semaphore - GLenum pname - GLint *params - - - void glGetSemaphoreParameterui64vEXT - GLuint semaphore - GLenum pname - GLuint64 *params - - - void glGetSeparableFilter - GLenum target - GLenum format - GLenum type - void *row - void *column - void *span - - - - - void glGetSeparableFilterEXT - GLenum target - GLenum format - GLenum type - void *row - void *column - void *span - - - - void glGetShaderInfoLog - GLuint shader - GLsizei bufSize - GLsizei *length - GLchar *infoLog - - - - void glGetShaderPrecisionFormat - GLenum shadertype - GLenum precisiontype - GLint *range - GLint *precision - - - void glGetShaderSource - GLuint shader - GLsizei bufSize - GLsizei *length - GLchar *source - - - void glGetShaderSourceARB - GLhandleARB obj - GLsizei maxLength - GLsizei *length - GLcharARB *source - - - - void glGetShaderiv - GLuint shader - GLenum pname - GLint *params - - - - void glGetShadingRateImagePaletteNV - GLuint viewport - GLuint entry - GLenum *rate - - - void glGetShadingRateSampleLocationivNV - GLenum rate - GLuint samples - GLuint index - GLint *location - - - void glGetSharpenTexFuncSGIS - GLenum target - GLfloat *points - - - - GLushort glGetStageIndexNV - GLenum shadertype - - - - const GLubyte *glGetString - GLenum name - - - - const GLubyte *glGetStringi - GLenum name - GLuint index - - - - GLuint glGetSubroutineIndex - GLuint program - GLenum shadertype - const GLchar *name - - - GLint glGetSubroutineUniformLocation - GLuint program - GLenum shadertype - const GLchar *name - - - void glGetSynciv - GLsync sync - GLenum pname - GLsizei count - GLsizei *length - GLint *values - - - void glGetSyncivAPPLE - GLsync sync - GLenum pname - GLsizei count - GLsizei *length - GLint *values - - - - void glGetTexBumpParameterfvATI - GLenum pname - GLfloat *param - - - void glGetTexBumpParameterivATI - GLenum pname - GLint *param - - - void glGetTexEnvfv - GLenum target - GLenum pname - GLfloat *params - - - - void glGetTexEnviv - GLenum target - GLenum pname - GLint *params - - - - void glGetTexEnvxv - GLenum target - GLenum pname - GLfixed *params - - - void glGetTexEnvxvOES - GLenum target - GLenum pname - GLfixed *params - - - void glGetTexFilterFuncSGIS - GLenum target - GLenum filter - GLfloat *weights - - - - void glGetTexGendv - GLenum coord - GLenum pname - GLdouble *params - - - - void glGetTexGenfv - GLenum coord - GLenum pname - GLfloat *params - - - - void glGetTexGenfvOES - GLenum coord - GLenum pname - GLfloat *params - - - void glGetTexGeniv - GLenum coord - GLenum pname - GLint *params - - - - void glGetTexGenivOES - GLenum coord - GLenum pname - GLint *params - - - void glGetTexGenxvOES - GLenum coord - GLenum pname - GLfixed *params - - - void glGetTexImage - GLenum target - GLint level - GLenum format - GLenum type - void *pixels - - - - - void glGetTexLevelParameterfv - GLenum target - GLint level - GLenum pname - GLfloat *params - - - - void glGetTexLevelParameteriv - GLenum target - GLint level - GLenum pname - GLint *params - - - - void glGetTexLevelParameterxvOES - GLenum target - GLint level - GLenum pname - GLfixed *params - - - void glGetTexParameterIiv - GLenum target - GLenum pname - GLint *params - - - - void glGetTexParameterIivEXT - GLenum target - GLenum pname - GLint *params - - - - void glGetTexParameterIivOES - GLenum target - GLenum pname - GLint *params - - - - void glGetTexParameterIuiv - GLenum target - GLenum pname - GLuint *params - - - - void glGetTexParameterIuivEXT - GLenum target - GLenum pname - GLuint *params - - - - void glGetTexParameterIuivOES - GLenum target - GLenum pname - GLuint *params - - - - void glGetTexParameterPointervAPPLE - GLenum target - GLenum pname - void **params - - - void glGetTexParameterfv - GLenum target - GLenum pname - GLfloat *params - - - - void glGetTexParameteriv - GLenum target - GLenum pname - GLint *params - - - - void glGetTexParameterxv - GLenum target - GLenum pname - GLfixed *params - - - void glGetTexParameterxvOES - GLenum target - GLenum pname - GLfixed *params - - - GLuint64 glGetTextureHandleARB - GLuint texture - - - GLuint64 glGetTextureHandleIMG - GLuint texture - - - - GLuint64 glGetTextureHandleNV - GLuint texture - - - void glGetTextureImage - GLuint texture - GLint level - GLenum format - GLenum type - GLsizei bufSize - void *pixels - - - void glGetTextureImageEXT - GLuint texture - GLenum target - GLint level - GLenum format - GLenum type - void *pixels - - - void glGetTextureLevelParameterfv - GLuint texture - GLint level - GLenum pname - GLfloat *params - - - void glGetTextureLevelParameterfvEXT - GLuint texture - GLenum target - GLint level - GLenum pname - GLfloat *params - - - void glGetTextureLevelParameteriv - GLuint texture - GLint level - GLenum pname - GLint *params - - - void glGetTextureLevelParameterivEXT - GLuint texture - GLenum target - GLint level - GLenum pname - GLint *params - - - void glGetTextureParameterIiv - GLuint texture - GLenum pname - GLint *params - - - void glGetTextureParameterIivEXT - GLuint texture - GLenum target - GLenum pname - GLint *params - - - void glGetTextureParameterIuiv - GLuint texture - GLenum pname - GLuint *params - - - void glGetTextureParameterIuivEXT - GLuint texture - GLenum target - GLenum pname - GLuint *params - - - void glGetTextureParameterfv - GLuint texture - GLenum pname - GLfloat *params - - - void glGetTextureParameterfvEXT - GLuint texture - GLenum target - GLenum pname - GLfloat *params - - - void glGetTextureParameteriv - GLuint texture - GLenum pname - GLint *params - - - void glGetTextureParameterivEXT - GLuint texture - GLenum target - GLenum pname - GLint *params - - - GLuint64 glGetTextureSamplerHandleARB - GLuint texture - GLuint sampler - - - GLuint64 glGetTextureSamplerHandleIMG - GLuint texture - GLuint sampler - - - - GLuint64 glGetTextureSamplerHandleNV - GLuint texture - GLuint sampler - - - void glGetTextureSubImage - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - GLsizei bufSize - void *pixels - - - void glGetTrackMatrixivNV - GLenum target - GLuint address - GLenum pname - GLint *params - - - - void glGetTransformFeedbackVarying - GLuint program - GLuint index - GLsizei bufSize - GLsizei *length - GLsizei *size - GLenum *type - GLchar *name - - - - void glGetTransformFeedbackVaryingEXT - GLuint program - GLuint index - GLsizei bufSize - GLsizei *length - GLsizei *size - GLenum *type - GLchar *name - - - - void glGetTransformFeedbackVaryingNV - GLuint program - GLuint index - GLint *location - - - void glGetTransformFeedbacki64_v - GLuint xfb - GLenum pname - GLuint index - GLint64 *param - - - void glGetTransformFeedbacki_v - GLuint xfb - GLenum pname - GLuint index - GLint *param - - - void glGetTransformFeedbackiv - GLuint xfb - GLenum pname - GLint *param - - - void glGetTranslatedShaderSourceANGLE - GLuint shader - GLsizei bufSize - GLsizei *length - GLchar *source - - - GLuint glGetUniformBlockIndex - GLuint program - const GLchar *uniformBlockName - - - - GLint glGetUniformBufferSizeEXT - GLuint program - GLint location - - - void glGetUniformIndices - GLuint program - GLsizei uniformCount - const GLchar *const*uniformNames - GLuint *uniformIndices - - - - GLint glGetUniformLocation - GLuint program - const GLchar *name - - - GLint glGetUniformLocationARB - GLhandleARB programObj - const GLcharARB *name - - - - GLintptr glGetUniformOffsetEXT - GLuint program - GLint location - - - void glGetUniformSubroutineuiv - GLenum shadertype - GLint location - GLuint *params - - - void glGetUniformdv - GLuint program - GLint location - GLdouble *params - - - void glGetUniformfv - GLuint program - GLint location - GLfloat *params - - - void glGetUniformfvARB - GLhandleARB programObj - GLint location - GLfloat *params - - - - void glGetUniformi64vARB - GLuint program - GLint location - GLint64 *params - - - void glGetUniformi64vNV - GLuint program - GLint location - GLint64EXT *params - - - void glGetUniformiv - GLuint program - GLint location - GLint *params - - - void glGetUniformivARB - GLhandleARB programObj - GLint location - GLint *params - - - - void glGetUniformui64vARB - GLuint program - GLint location - GLuint64 *params - - - void glGetUniformui64vNV - GLuint program - GLint location - GLuint64EXT *params - - - void glGetUniformuiv - GLuint program - GLint location - GLuint *params - - - void glGetUniformuivEXT - GLuint program - GLint location - GLuint *params - - - - void glGetUnsignedBytevEXT - GLenum pname - GLubyte *data - - - void glGetUnsignedBytei_vEXT - GLenum target - GLuint index - GLubyte *data - - - void glGetVariantArrayObjectfvATI - GLuint id - GLenum pname - GLfloat *params - - - void glGetVariantArrayObjectivATI - GLuint id - GLenum pname - GLint *params - - - void glGetVariantBooleanvEXT - GLuint id - GLenum value - GLboolean *data - - - void glGetVariantFloatvEXT - GLuint id - GLenum value - GLfloat *data - - - void glGetVariantIntegervEXT - GLuint id - GLenum value - GLint *data - - - void glGetVariantPointervEXT - GLuint id - GLenum value - void **data - - - GLint glGetVaryingLocationNV - GLuint program - const GLchar *name - - - void glGetVertexArrayIndexed64iv - GLuint vaobj - GLuint index - GLenum pname - GLint64 *param - - - void glGetVertexArrayIndexediv - GLuint vaobj - GLuint index - GLenum pname - GLint *param - - - void glGetVertexArrayIntegeri_vEXT - GLuint vaobj - GLuint index - GLenum pname - GLint *param - - - void glGetVertexArrayIntegervEXT - GLuint vaobj - GLenum pname - GLint *param - - - void glGetVertexArrayPointeri_vEXT - GLuint vaobj - GLuint index - GLenum pname - void **param - - - void glGetVertexArrayPointervEXT - GLuint vaobj - GLenum pname - void **param - - - void glGetVertexArrayiv - GLuint vaobj - GLenum pname - GLint *param - - - void glGetVertexAttribArrayObjectfvATI - GLuint index - GLenum pname - GLfloat *params - - - void glGetVertexAttribArrayObjectivATI - GLuint index - GLenum pname - GLint *params - - - void glGetVertexAttribIiv - GLuint index - GLenum pname - GLint *params - - - void glGetVertexAttribIivEXT - GLuint index - GLenum pname - GLint *params - - - - void glGetVertexAttribIuiv - GLuint index - GLenum pname - GLuint *params - - - void glGetVertexAttribIuivEXT - GLuint index - GLenum pname - GLuint *params - - - - void glGetVertexAttribLdv - GLuint index - GLenum pname - GLdouble *params - - - void glGetVertexAttribLdvEXT - GLuint index - GLenum pname - GLdouble *params - - - - void glGetVertexAttribLi64vNV - GLuint index - GLenum pname - GLint64EXT *params - - - void glGetVertexAttribLui64vARB - GLuint index - GLenum pname - GLuint64EXT *params - - - void glGetVertexAttribLui64vNV - GLuint index - GLenum pname - GLuint64EXT *params - - - void glGetVertexAttribPointerv - GLuint index - GLenum pname - void **pointer - - - - void glGetVertexAttribPointervARB - GLuint index - GLenum pname - void **pointer - - - - void glGetVertexAttribPointervNV - GLuint index - GLenum pname - void **pointer - - - - void glGetVertexAttribdv - GLuint index - GLenum pname - GLdouble *params - - - - void glGetVertexAttribdvARB - GLuint index - GLenum pname - GLdouble *params - - - - - void glGetVertexAttribdvNV - GLuint index - GLenum pname - GLdouble *params - - - - - void glGetVertexAttribfv - GLuint index - GLenum pname - GLfloat *params - - - - void glGetVertexAttribfvARB - GLuint index - GLenum pname - GLfloat *params - - - - - void glGetVertexAttribfvNV - GLuint index - GLenum pname - GLfloat *params - - - - - void glGetVertexAttribiv - GLuint index - GLenum pname - GLint *params - - - - void glGetVertexAttribivARB - GLuint index - GLenum pname - GLint *params - - - - - void glGetVertexAttribivNV - GLuint index - GLenum pname - GLint *params - - - - - void glGetVideoCaptureStreamdvNV - GLuint video_capture_slot - GLuint stream - GLenum pname - GLdouble *params - - - void glGetVideoCaptureStreamfvNV - GLuint video_capture_slot - GLuint stream - GLenum pname - GLfloat *params - - - void glGetVideoCaptureStreamivNV - GLuint video_capture_slot - GLuint stream - GLenum pname - GLint *params - - - void glGetVideoCaptureivNV - GLuint video_capture_slot - GLenum pname - GLint *params - - - void glGetVideoi64vNV - GLuint video_slot - GLenum pname - GLint64EXT *params - - - void glGetVideoivNV - GLuint video_slot - GLenum pname - GLint *params - - - void glGetVideoui64vNV - GLuint video_slot - GLenum pname - GLuint64EXT *params - - - void glGetVideouivNV - GLuint video_slot - GLenum pname - GLuint *params - - - void glGetnColorTable - GLenum target - GLenum format - GLenum type - GLsizei bufSize - void *table - - - void glGetnColorTableARB - GLenum target - GLenum format - GLenum type - GLsizei bufSize - void *table - - - void glGetnCompressedTexImage - GLenum target - GLint lod - GLsizei bufSize - void *pixels - - - void glGetnCompressedTexImageARB - GLenum target - GLint lod - GLsizei bufSize - void *img - - - void glGetnConvolutionFilter - GLenum target - GLenum format - GLenum type - GLsizei bufSize - void *image - - - void glGetnConvolutionFilterARB - GLenum target - GLenum format - GLenum type - GLsizei bufSize - void *image - - - void glGetnHistogram - GLenum target - GLboolean reset - GLenum format - GLenum type - GLsizei bufSize - void *values - - - void glGetnHistogramARB - GLenum target - GLboolean reset - GLenum format - GLenum type - GLsizei bufSize - void *values - - - void glGetnMapdv - GLenum target - GLenum query - GLsizei bufSize - GLdouble *v - - - void glGetnMapdvARB - GLenum target - GLenum query - GLsizei bufSize - GLdouble *v - - - void glGetnMapfv - GLenum target - GLenum query - GLsizei bufSize - GLfloat *v - - - void glGetnMapfvARB - GLenum target - GLenum query - GLsizei bufSize - GLfloat *v - - - void glGetnMapiv - GLenum target - GLenum query - GLsizei bufSize - GLint *v - - - void glGetnMapivARB - GLenum target - GLenum query - GLsizei bufSize - GLint *v - - - void glGetnMinmax - GLenum target - GLboolean reset - GLenum format - GLenum type - GLsizei bufSize - void *values - - - void glGetnMinmaxARB - GLenum target - GLboolean reset - GLenum format - GLenum type - GLsizei bufSize - void *values - - - void glGetnPixelMapfv - GLenum map - GLsizei bufSize - GLfloat *values - - - void glGetnPixelMapfvARB - GLenum map - GLsizei bufSize - GLfloat *values - - - void glGetnPixelMapuiv - GLenum map - GLsizei bufSize - GLuint *values - - - void glGetnPixelMapuivARB - GLenum map - GLsizei bufSize - GLuint *values - - - void glGetnPixelMapusv - GLenum map - GLsizei bufSize - GLushort *values - - - void glGetnPixelMapusvARB - GLenum map - GLsizei bufSize - GLushort *values - - - void glGetnPolygonStipple - GLsizei bufSize - GLubyte *pattern - - - void glGetnPolygonStippleARB - GLsizei bufSize - GLubyte *pattern - - - void glGetnSeparableFilter - GLenum target - GLenum format - GLenum type - GLsizei rowBufSize - void *row - GLsizei columnBufSize - void *column - void *span - - - void glGetnSeparableFilterARB - GLenum target - GLenum format - GLenum type - GLsizei rowBufSize - void *row - GLsizei columnBufSize - void *column - void *span - - - void glGetnTexImage - GLenum target - GLint level - GLenum format - GLenum type - GLsizei bufSize - void *pixels - - - void glGetnTexImageARB - GLenum target - GLint level - GLenum format - GLenum type - GLsizei bufSize - void *img - - - void glGetnUniformdv - GLuint program - GLint location - GLsizei bufSize - GLdouble *params - - - void glGetnUniformdvARB - GLuint program - GLint location - GLsizei bufSize - GLdouble *params - - - void glGetnUniformfv - GLuint program - GLint location - GLsizei bufSize - GLfloat *params - - - void glGetnUniformfvARB - GLuint program - GLint location - GLsizei bufSize - GLfloat *params - - - void glGetnUniformfvEXT - GLuint program - GLint location - GLsizei bufSize - GLfloat *params - - - - void glGetnUniformfvKHR - GLuint program - GLint location - GLsizei bufSize - GLfloat *params - - - - void glGetnUniformi64vARB - GLuint program - GLint location - GLsizei bufSize - GLint64 *params - - - void glGetnUniformiv - GLuint program - GLint location - GLsizei bufSize - GLint *params - - - void glGetnUniformivARB - GLuint program - GLint location - GLsizei bufSize - GLint *params - - - void glGetnUniformivEXT - GLuint program - GLint location - GLsizei bufSize - GLint *params - - - - void glGetnUniformivKHR - GLuint program - GLint location - GLsizei bufSize - GLint *params - - - - void glGetnUniformui64vARB - GLuint program - GLint location - GLsizei bufSize - GLuint64 *params - - - void glGetnUniformuiv - GLuint program - GLint location - GLsizei bufSize - GLuint *params - - - void glGetnUniformuivARB - GLuint program - GLint location - GLsizei bufSize - GLuint *params - - - void glGetnUniformuivKHR - GLuint program - GLint location - GLsizei bufSize - GLuint *params - - - - void glGlobalAlphaFactorbSUN - GLbyte factor - - - void glGlobalAlphaFactordSUN - GLdouble factor - - - void glGlobalAlphaFactorfSUN - GLfloat factor - - - void glGlobalAlphaFactoriSUN - GLint factor - - - void glGlobalAlphaFactorsSUN - GLshort factor - - - void glGlobalAlphaFactorubSUN - GLubyte factor - - - void glGlobalAlphaFactoruiSUN - GLuint factor - - - void glGlobalAlphaFactorusSUN - GLushort factor - - - void glHint - GLenum target - GLenum mode - - - - void glHintPGI - GLenum target - GLint mode - - - void glHistogram - GLenum target - GLsizei width - GLenum internalformat - GLboolean sink - - - - void glHistogramEXT - GLenum target - GLsizei width - GLenum internalformat - GLboolean sink - - - - - void glIglooInterfaceSGIX - GLenum pname - const void *params - - - - void glImageTransformParameterfHP - GLenum target - GLenum pname - GLfloat param - - - void glImageTransformParameterfvHP - GLenum target - GLenum pname - const GLfloat *params - - - void glImageTransformParameteriHP - GLenum target - GLenum pname - GLint param - - - void glImageTransformParameterivHP - GLenum target - GLenum pname - const GLint *params - - - void glImportMemoryFdEXT - GLuint memory - GLuint64 size - GLenum handleType - GLint fd - - - void glImportMemoryWin32HandleEXT - GLuint memory - GLuint64 size - GLenum handleType - void *handle - - - void glImportMemoryWin32NameEXT - GLuint memory - GLuint64 size - GLenum handleType - const void *name - - - void glImportSemaphoreFdEXT - GLuint semaphore - GLenum handleType - GLint fd - - - void glImportSemaphoreWin32HandleEXT - GLuint semaphore - GLenum handleType - void *handle - - - void glImportSemaphoreWin32NameEXT - GLuint semaphore - GLenum handleType - const void *name - - - GLsync glImportSyncEXT - GLenum external_sync_type - GLintptr external_sync - GLbitfield flags - - - void glIndexFormatNV - GLenum type - GLsizei stride - - - void glIndexFuncEXT - GLenum func - GLclampf ref - - - void glIndexMask - GLuint mask - - - - void glIndexMaterialEXT - GLenum face - GLenum mode - - - void glIndexPointer - GLenum type - GLsizei stride - const void *pointer - - - void glIndexPointerEXT - GLenum type - GLsizei stride - GLsizei count - const void *pointer - - - void glIndexPointerListIBM - GLenum type - GLint stride - const void **pointer - GLint ptrstride - - - void glIndexd - GLdouble c - - - - void glIndexdv - const GLdouble *c - - - - void glIndexf - GLfloat c - - - - void glIndexfv - const GLfloat *c - - - - void glIndexi - GLint c - - - - void glIndexiv - const GLint *c - - - - void glIndexs - GLshort c - - - - void glIndexsv - const GLshort *c - - - - void glIndexub - GLubyte c - - - - void glIndexubv - const GLubyte *c - - - - void glIndexxOES - GLfixed component - - - void glIndexxvOES - const GLfixed *component - - - void glInitNames - - - - void glInsertComponentEXT - GLuint res - GLuint src - GLuint num - - - void glInsertEventMarkerEXT - GLsizei length - const GLchar *marker - - - void glInstrumentsBufferSGIX - GLsizei size - GLint *buffer - - - - void glInterleavedArrays - GLenum format - GLsizei stride - const void *pointer - - - void glInterpolatePathsNV - GLuint resultPath - GLuint pathA - GLuint pathB - GLfloat weight - - - void glInvalidateBufferData - GLuint buffer - - - void glInvalidateBufferSubData - GLuint buffer - GLintptr offset - GLsizeiptr length - - - void glInvalidateFramebuffer - GLenum target - GLsizei numAttachments - const GLenum *attachments - - - void glInvalidateNamedFramebufferData - GLuint framebuffer - GLsizei numAttachments - const GLenum *attachments - - - void glInvalidateNamedFramebufferSubData - GLuint framebuffer - GLsizei numAttachments - const GLenum *attachments - GLint x - GLint y - GLsizei width - GLsizei height - - - void glInvalidateSubFramebuffer - GLenum target - GLsizei numAttachments - const GLenum *attachments - GLint x - GLint y - GLsizei width - GLsizei height - - - void glInvalidateTexImage - GLuint texture - GLint level - - - void glInvalidateTexSubImage - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - - - GLboolean glIsAsyncMarkerSGIX - GLuint marker - - - GLboolean glIsBuffer - GLuint buffer - - - GLboolean glIsBufferARB - GLuint buffer - - - - GLboolean glIsBufferResidentNV - GLenum target - - - GLboolean glIsCommandListNV - GLuint list - - - GLboolean glIsEnabled - GLenum cap - - - - GLboolean glIsEnabledIndexedEXT - GLenum target - GLuint index - - - - - GLboolean glIsEnabledi - GLenum target - GLuint index - - - GLboolean glIsEnablediEXT - GLenum target - GLuint index - - - - GLboolean glIsEnablediNV - GLenum target - GLuint index - - - - GLboolean glIsEnablediOES - GLenum target - GLuint index - - - - GLboolean glIsFenceAPPLE - GLuint fence - - - GLboolean glIsFenceNV - GLuint fence - - - - GLboolean glIsFramebuffer - GLuint framebuffer - - - - GLboolean glIsFramebufferEXT - GLuint framebuffer - - - - - GLboolean glIsFramebufferOES - GLuint framebuffer - - - GLboolean glIsImageHandleResidentARB - GLuint64 handle - - - GLboolean glIsImageHandleResidentNV - GLuint64 handle - - - GLboolean glIsList - GLuint list - - - - GLboolean glIsMemoryObjectEXT - GLuint memoryObject - - - GLboolean glIsNameAMD - GLenum identifier - GLuint name - - - GLboolean glIsNamedBufferResidentNV - GLuint buffer - - - GLboolean glIsNamedStringARB - GLint namelen - const GLchar *name - - - GLboolean glIsObjectBufferATI - GLuint buffer - - - GLboolean glIsOcclusionQueryNV - GLuint id - - - GLboolean glIsPathNV - GLuint path - - - GLboolean glIsPointInFillPathNV - GLuint path - GLuint mask - GLfloat x - GLfloat y - - - GLboolean glIsPointInStrokePathNV - GLuint path - GLfloat x - GLfloat y - - - GLboolean glIsProgram - GLuint program - - - - GLboolean glIsProgramARB - GLuint program - - - - GLboolean glIsProgramNV - GLuint id - - - - - GLboolean glIsProgramPipeline - GLuint pipeline - - - GLboolean glIsProgramPipelineEXT - GLuint pipeline - - - GLboolean glIsQuery - GLuint id - - - - GLboolean glIsQueryARB - GLuint id - - - - GLboolean glIsQueryEXT - GLuint id - - - GLboolean glIsRenderbuffer - GLuint renderbuffer - - - - GLboolean glIsRenderbufferEXT - GLuint renderbuffer - - - - - GLboolean glIsRenderbufferOES - GLuint renderbuffer - - - GLboolean glIsSemaphoreEXT - GLuint semaphore - - - GLboolean glIsSampler - GLuint sampler - - - GLboolean glIsShader - GLuint shader - - - - GLboolean glIsStateNV - GLuint state - - - GLboolean glIsSync - GLsync sync - - - GLboolean glIsSyncAPPLE - GLsync sync - - - - GLboolean glIsTexture - GLuint texture - - - - GLboolean glIsTextureEXT - GLuint texture - - - - GLboolean glIsTextureHandleResidentARB - GLuint64 handle - - - GLboolean glIsTextureHandleResidentNV - GLuint64 handle - - - GLboolean glIsTransformFeedback - GLuint id - - - GLboolean glIsTransformFeedbackNV - GLuint id - - - - GLboolean glIsVariantEnabledEXT - GLuint id - GLenum cap - - - GLboolean glIsVertexArray - GLuint array - - - - GLboolean glIsVertexArrayAPPLE - GLuint array - - - - GLboolean glIsVertexArrayOES - GLuint array - - - - GLboolean glIsVertexAttribEnabledAPPLE - GLuint index - GLenum pname - - - void glLGPUCopyImageSubDataNVX - GLuint sourceGpu - GLbitfield destinationGpuMask - GLuint srcName - GLenum srcTarget - GLint srcLevel - GLint srcX - GLint srxY - GLint srcZ - GLuint dstName - GLenum dstTarget - GLint dstLevel - GLint dstX - GLint dstY - GLint dstZ - GLsizei width - GLsizei height - GLsizei depth - - - void glLGPUInterlockNVX - - - void glLGPUNamedBufferSubDataNVX - GLbitfield gpuMask - GLuint buffer - GLintptr offset - GLsizeiptr size - const void *data - - - void glLabelObjectEXT - GLenum type - GLuint object - GLsizei length - const GLchar *label - - - void glLightEnviSGIX - GLenum pname - GLint param - - - void glLightModelf - GLenum pname - GLfloat param - - - - void glLightModelfv - GLenum pname - const GLfloat *params - - - - void glLightModeli - GLenum pname - GLint param - - - - void glLightModeliv - GLenum pname - const GLint *params - - - - void glLightModelx - GLenum pname - GLfixed param - - - void glLightModelxOES - GLenum pname - GLfixed param - - - void glLightModelxv - GLenum pname - const GLfixed *param - - - void glLightModelxvOES - GLenum pname - const GLfixed *param - - - void glLightf - GLenum light - GLenum pname - GLfloat param - - - - void glLightfv - GLenum light - GLenum pname - const GLfloat *params - - - - void glLighti - GLenum light - GLenum pname - GLint param - - - - void glLightiv - GLenum light - GLenum pname - const GLint *params - - - - void glLightx - GLenum light - GLenum pname - GLfixed param - - - void glLightxOES - GLenum light - GLenum pname - GLfixed param - - - void glLightxv - GLenum light - GLenum pname - const GLfixed *params - - - void glLightxvOES - GLenum light - GLenum pname - const GLfixed *params - - - void glLineStipple - GLint factor - GLushort pattern - - - - void glLineWidth - GLfloat width - - - - void glLineWidthx - GLfixed width - - - void glLineWidthxOES - GLfixed width - - - void glLinkProgram - GLuint program - - - void glLinkProgramARB - GLhandleARB programObj - - - - void glListBase - GLuint base - - - - void glListDrawCommandsStatesClientNV - GLuint list - GLuint segment - const void **indirects - const GLsizei *sizes - const GLuint *states - const GLuint *fbos - GLuint count - - - void glListParameterfSGIX - GLuint list - GLenum pname - GLfloat param - - - - void glListParameterfvSGIX - GLuint list - GLenum pname - const GLfloat *params - - - - void glListParameteriSGIX - GLuint list - GLenum pname - GLint param - - - - void glListParameterivSGIX - GLuint list - GLenum pname - const GLint *params - - - - void glLoadIdentity - - - - void glLoadIdentityDeformationMapSGIX - GLbitfield mask - - - - void glLoadMatrixd - const GLdouble *m - - - - void glLoadMatrixf - const GLfloat *m - - - - void glLoadMatrixx - const GLfixed *m - - - void glLoadMatrixxOES - const GLfixed *m - - - void glLoadName - GLuint name - - - - void glLoadPaletteFromModelViewMatrixOES - - - void glLoadProgramNV - GLenum target - GLuint id - GLsizei len - const GLubyte *program - - - - void glLoadTransposeMatrixd - const GLdouble *m - - - void glLoadTransposeMatrixdARB - const GLdouble *m - - - - void glLoadTransposeMatrixf - const GLfloat *m - - - void glLoadTransposeMatrixfARB - const GLfloat *m - - - - void glLoadTransposeMatrixxOES - const GLfixed *m - - - void glLockArraysEXT - GLint first - GLsizei count - - - void glLogicOp - GLenum opcode - - - - void glMakeBufferNonResidentNV - GLenum target - - - void glMakeBufferResidentNV - GLenum target - GLenum access - - - void glMakeImageHandleNonResidentARB - GLuint64 handle - - - void glMakeImageHandleNonResidentNV - GLuint64 handle - - - void glMakeImageHandleResidentARB - GLuint64 handle - GLenum access - - - void glMakeImageHandleResidentNV - GLuint64 handle - GLenum access - - - void glMakeNamedBufferNonResidentNV - GLuint buffer - - - void glMakeNamedBufferResidentNV - GLuint buffer - GLenum access - - - void glMakeTextureHandleNonResidentARB - GLuint64 handle - - - void glMakeTextureHandleNonResidentNV - GLuint64 handle - - - void glMakeTextureHandleResidentARB - GLuint64 handle - - - void glMakeTextureHandleResidentNV - GLuint64 handle - - - void glMap1d - GLenum target - GLdouble u1 - GLdouble u2 - GLint stride - GLint order - const GLdouble *points - - - - void glMap1f - GLenum target - GLfloat u1 - GLfloat u2 - GLint stride - GLint order - const GLfloat *points - - - - void glMap1xOES - GLenum target - GLfixed u1 - GLfixed u2 - GLint stride - GLint order - GLfixed points - - - void glMap2d - GLenum target - GLdouble u1 - GLdouble u2 - GLint ustride - GLint uorder - GLdouble v1 - GLdouble v2 - GLint vstride - GLint vorder - const GLdouble *points - - - - void glMap2f - GLenum target - GLfloat u1 - GLfloat u2 - GLint ustride - GLint uorder - GLfloat v1 - GLfloat v2 - GLint vstride - GLint vorder - const GLfloat *points - - - - void glMap2xOES - GLenum target - GLfixed u1 - GLfixed u2 - GLint ustride - GLint uorder - GLfixed v1 - GLfixed v2 - GLint vstride - GLint vorder - GLfixed points - - - void *glMapBuffer - GLenum target - GLenum access - - - void *glMapBufferARB - GLenum target - GLenum access - - - - void *glMapBufferOES - GLenum target - GLenum access - - - - void *glMapBufferRange - GLenum target - GLintptr offset - GLsizeiptr length - GLbitfield access - - - - void *glMapBufferRangeEXT - GLenum target - GLintptr offset - GLsizeiptr length - GLbitfield access - - - - void glMapControlPointsNV - GLenum target - GLuint index - GLenum type - GLsizei ustride - GLsizei vstride - GLint uorder - GLint vorder - GLboolean packed - const void *points - - - void glMapGrid1d - GLint un - GLdouble u1 - GLdouble u2 - - - - void glMapGrid1f - GLint un - GLfloat u1 - GLfloat u2 - - - - void glMapGrid1xOES - GLint n - GLfixed u1 - GLfixed u2 - - - void glMapGrid2d - GLint un - GLdouble u1 - GLdouble u2 - GLint vn - GLdouble v1 - GLdouble v2 - - - - void glMapGrid2f - GLint un - GLfloat u1 - GLfloat u2 - GLint vn - GLfloat v1 - GLfloat v2 - - - - void glMapGrid2xOES - GLint n - GLfixed u1 - GLfixed u2 - GLfixed v1 - GLfixed v2 - - - void *glMapNamedBuffer - GLuint buffer - GLenum access - - - void *glMapNamedBufferEXT - GLuint buffer - GLenum access - - - void *glMapNamedBufferRange - GLuint buffer - GLintptr offset - GLsizeiptr length - GLbitfield access - - - void *glMapNamedBufferRangeEXT - GLuint buffer - GLintptr offset - GLsizeiptr length - GLbitfield access - - - void *glMapObjectBufferATI - GLuint buffer - - - void glMapParameterfvNV - GLenum target - GLenum pname - const GLfloat *params - - - void glMapParameterivNV - GLenum target - GLenum pname - const GLint *params - - - void *glMapTexture2DINTEL - GLuint texture - GLint level - GLbitfield access - GLint *stride - GLenum *layout - - - void glMapVertexAttrib1dAPPLE - GLuint index - GLuint size - GLdouble u1 - GLdouble u2 - GLint stride - GLint order - const GLdouble *points - - - void glMapVertexAttrib1fAPPLE - GLuint index - GLuint size - GLfloat u1 - GLfloat u2 - GLint stride - GLint order - const GLfloat *points - - - void glMapVertexAttrib2dAPPLE - GLuint index - GLuint size - GLdouble u1 - GLdouble u2 - GLint ustride - GLint uorder - GLdouble v1 - GLdouble v2 - GLint vstride - GLint vorder - const GLdouble *points - - - void glMapVertexAttrib2fAPPLE - GLuint index - GLuint size - GLfloat u1 - GLfloat u2 - GLint ustride - GLint uorder - GLfloat v1 - GLfloat v2 - GLint vstride - GLint vorder - const GLfloat *points - - - void glMaterialf - GLenum face - GLenum pname - GLfloat param - - - - void glMaterialfv - GLenum face - GLenum pname - const GLfloat *params - - - - void glMateriali - GLenum face - GLenum pname - GLint param - - - - void glMaterialiv - GLenum face - GLenum pname - const GLint *params - - - - void glMaterialx - GLenum face - GLenum pname - GLfixed param - - - void glMaterialxOES - GLenum face - GLenum pname - GLfixed param - - - void glMaterialxv - GLenum face - GLenum pname - const GLfixed *param - - - void glMaterialxvOES - GLenum face - GLenum pname - const GLfixed *param - - - void glMatrixFrustumEXT - GLenum mode - GLdouble left - GLdouble right - GLdouble bottom - GLdouble top - GLdouble zNear - GLdouble zFar - - - void glMatrixIndexPointerARB - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glMatrixIndexPointerOES - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glMatrixIndexubvARB - GLint size - const GLubyte *indices - - - - void glMatrixIndexuivARB - GLint size - const GLuint *indices - - - - void glMatrixIndexusvARB - GLint size - const GLushort *indices - - - - void glMatrixLoad3x2fNV - GLenum matrixMode - const GLfloat *m - - - void glMatrixLoad3x3fNV - GLenum matrixMode - const GLfloat *m - - - void glMatrixLoadIdentityEXT - GLenum mode - - - void glMatrixLoadTranspose3x3fNV - GLenum matrixMode - const GLfloat *m - - - void glMatrixLoadTransposedEXT - GLenum mode - const GLdouble *m - - - void glMatrixLoadTransposefEXT - GLenum mode - const GLfloat *m - - - void glMatrixLoaddEXT - GLenum mode - const GLdouble *m - - - void glMatrixLoadfEXT - GLenum mode - const GLfloat *m - - - void glMatrixMode - GLenum mode - - - - void glMatrixMult3x2fNV - GLenum matrixMode - const GLfloat *m - - - void glMatrixMult3x3fNV - GLenum matrixMode - const GLfloat *m - - - void glMatrixMultTranspose3x3fNV - GLenum matrixMode - const GLfloat *m - - - void glMatrixMultTransposedEXT - GLenum mode - const GLdouble *m - - - void glMatrixMultTransposefEXT - GLenum mode - const GLfloat *m - - - void glMatrixMultdEXT - GLenum mode - const GLdouble *m - - - void glMatrixMultfEXT - GLenum mode - const GLfloat *m - - - void glMatrixOrthoEXT - GLenum mode - GLdouble left - GLdouble right - GLdouble bottom - GLdouble top - GLdouble zNear - GLdouble zFar - - - void glMatrixPopEXT - GLenum mode - - - void glMatrixPushEXT - GLenum mode - - - void glMatrixRotatedEXT - GLenum mode - GLdouble angle - GLdouble x - GLdouble y - GLdouble z - - - void glMatrixRotatefEXT - GLenum mode - GLfloat angle - GLfloat x - GLfloat y - GLfloat z - - - void glMatrixScaledEXT - GLenum mode - GLdouble x - GLdouble y - GLdouble z - - - void glMatrixScalefEXT - GLenum mode - GLfloat x - GLfloat y - GLfloat z - - - void glMatrixTranslatedEXT - GLenum mode - GLdouble x - GLdouble y - GLdouble z - - - void glMatrixTranslatefEXT - GLenum mode - GLfloat x - GLfloat y - GLfloat z - - - void glMaxShaderCompilerThreadsKHR - GLuint count - - - void glMaxShaderCompilerThreadsARB - GLuint count - - - - void glMemoryBarrier - GLbitfield barriers - - - void glMemoryBarrierByRegion - GLbitfield barriers - - - void glMemoryBarrierEXT - GLbitfield barriers - - - - void glMemoryObjectParameterivEXT - GLuint memoryObject - GLenum pname - const GLint *params - - - void glMinSampleShading - GLfloat value - - - void glMinSampleShadingARB - GLfloat value - - - - void glMinSampleShadingOES - GLfloat value - - - - void glMinmax - GLenum target - GLenum internalformat - GLboolean sink - - - - void glMinmaxEXT - GLenum target - GLenum internalformat - GLboolean sink - - - - - void glMultMatrixd - const GLdouble *m - - - - void glMultMatrixf - const GLfloat *m - - - - void glMultMatrixx - const GLfixed *m - - - void glMultMatrixxOES - const GLfixed *m - - - void glMultTransposeMatrixd - const GLdouble *m - - - void glMultTransposeMatrixdARB - const GLdouble *m - - - - void glMultTransposeMatrixf - const GLfloat *m - - - void glMultTransposeMatrixfARB - const GLfloat *m - - - - void glMultTransposeMatrixxOES - const GLfixed *m - - - void glMultiDrawArrays - GLenum mode - const GLint *first - const GLsizei *count - GLsizei drawcount - - - void glMultiDrawArraysEXT - GLenum mode - const GLint *first - const GLsizei *count - GLsizei primcount - - - - void glMultiDrawArraysIndirect - GLenum mode - const void *indirect - GLsizei drawcount - GLsizei stride - - - void glMultiDrawArraysIndirectAMD - GLenum mode - const void *indirect - GLsizei primcount - GLsizei stride - - - - void glMultiDrawArraysIndirectBindlessCountNV - GLenum mode - const void *indirect - GLsizei drawCount - GLsizei maxDrawCount - GLsizei stride - GLint vertexBufferCount - - - void glMultiDrawArraysIndirectBindlessNV - GLenum mode - const void *indirect - GLsizei drawCount - GLsizei stride - GLint vertexBufferCount - - - void glMultiDrawArraysIndirectCount - GLenum mode - const void *indirect - GLintptr drawcount - GLsizei maxdrawcount - GLsizei stride - - - void glMultiDrawArraysIndirectCountARB - GLenum mode - const void *indirect - GLintptr drawcount - GLsizei maxdrawcount - GLsizei stride - - - - void glMultiDrawArraysIndirectEXT - GLenum mode - const void *indirect - GLsizei drawcount - GLsizei stride - - - - void glMultiDrawElementArrayAPPLE - GLenum mode - const GLint *first - const GLsizei *count - GLsizei primcount - - - void glMultiDrawElements - GLenum mode - const GLsizei *count - GLenum type - const void *const*indices - GLsizei drawcount - - - void glMultiDrawElementsBaseVertex - GLenum mode - const GLsizei *count - GLenum type - const void *const*indices - GLsizei drawcount - const GLint *basevertex - - - void glMultiDrawElementsBaseVertexEXT - GLenum mode - const GLsizei *count - GLenum type - const void *const*indices - GLsizei drawcount - const GLint *basevertex - - - - void glMultiDrawElementsEXT - GLenum mode - const GLsizei *count - GLenum type - const void *const*indices - GLsizei primcount - - - - void glMultiDrawElementsIndirect - GLenum mode - GLenum type - const void *indirect - GLsizei drawcount - GLsizei stride - - - void glMultiDrawElementsIndirectAMD - GLenum mode - GLenum type - const void *indirect - GLsizei primcount - GLsizei stride - - - - void glMultiDrawElementsIndirectBindlessCountNV - GLenum mode - GLenum type - const void *indirect - GLsizei drawCount - GLsizei maxDrawCount - GLsizei stride - GLint vertexBufferCount - - - void glMultiDrawElementsIndirectBindlessNV - GLenum mode - GLenum type - const void *indirect - GLsizei drawCount - GLsizei stride - GLint vertexBufferCount - - - void glMultiDrawElementsIndirectCount - GLenum mode - GLenum type - const void *indirect - GLintptr drawcount - GLsizei maxdrawcount - GLsizei stride - - - void glMultiDrawElementsIndirectCountARB - GLenum mode - GLenum type - const void *indirect - GLintptr drawcount - GLsizei maxdrawcount - GLsizei stride - - - - void glMultiDrawElementsIndirectEXT - GLenum mode - GLenum type - const void *indirect - GLsizei drawcount - GLsizei stride - - - - void glMultiDrawMeshTasksIndirectNV - GLintptr indirect - GLsizei drawcount - GLsizei stride - - - void glMultiDrawMeshTasksIndirectCountNV - GLintptr indirect - GLintptr drawcount - GLsizei maxdrawcount - GLsizei stride - - - void glMultiDrawRangeElementArrayAPPLE - GLenum mode - GLuint start - GLuint end - const GLint *first - const GLsizei *count - GLsizei primcount - - - void glMultiModeDrawArraysIBM - const GLenum *mode - const GLint *first - const GLsizei *count - GLsizei primcount - GLint modestride - - - void glMultiModeDrawElementsIBM - const GLenum *mode - const GLsizei *count - GLenum type - const void *const*indices - GLsizei primcount - GLint modestride - - - void glMultiTexBufferEXT - GLenum texunit - GLenum target - GLenum internalformat - GLuint buffer - - - void glMultiTexCoord1bOES - GLenum texture - GLbyte s - - - void glMultiTexCoord1bvOES - GLenum texture - const GLbyte *coords - - - void glMultiTexCoord1d - GLenum target - GLdouble s - - - - void glMultiTexCoord1dARB - GLenum target - GLdouble s - - - - - void glMultiTexCoord1dv - GLenum target - const GLdouble *v - - - - void glMultiTexCoord1dvARB - GLenum target - const GLdouble *v - - - - - void glMultiTexCoord1f - GLenum target - GLfloat s - - - - void glMultiTexCoord1fARB - GLenum target - GLfloat s - - - - - void glMultiTexCoord1fv - GLenum target - const GLfloat *v - - - - void glMultiTexCoord1fvARB - GLenum target - const GLfloat *v - - - - - void glMultiTexCoord1hNV - GLenum target - GLhalfNV s - - - - void glMultiTexCoord1hvNV - GLenum target - const GLhalfNV *v - - - - void glMultiTexCoord1i - GLenum target - GLint s - - - - void glMultiTexCoord1iARB - GLenum target - GLint s - - - - - void glMultiTexCoord1iv - GLenum target - const GLint *v - - - - void glMultiTexCoord1ivARB - GLenum target - const GLint *v - - - - - void glMultiTexCoord1s - GLenum target - GLshort s - - - - void glMultiTexCoord1sARB - GLenum target - GLshort s - - - - - void glMultiTexCoord1sv - GLenum target - const GLshort *v - - - - void glMultiTexCoord1svARB - GLenum target - const GLshort *v - - - - - void glMultiTexCoord1xOES - GLenum texture - GLfixed s - - - void glMultiTexCoord1xvOES - GLenum texture - const GLfixed *coords - - - void glMultiTexCoord2bOES - GLenum texture - GLbyte s - GLbyte t - - - void glMultiTexCoord2bvOES - GLenum texture - const GLbyte *coords - - - void glMultiTexCoord2d - GLenum target - GLdouble s - GLdouble t - - - - void glMultiTexCoord2dARB - GLenum target - GLdouble s - GLdouble t - - - - - void glMultiTexCoord2dv - GLenum target - const GLdouble *v - - - - void glMultiTexCoord2dvARB - GLenum target - const GLdouble *v - - - - - void glMultiTexCoord2f - GLenum target - GLfloat s - GLfloat t - - - - void glMultiTexCoord2fARB - GLenum target - GLfloat s - GLfloat t - - - - - void glMultiTexCoord2fv - GLenum target - const GLfloat *v - - - - void glMultiTexCoord2fvARB - GLenum target - const GLfloat *v - - - - - void glMultiTexCoord2hNV - GLenum target - GLhalfNV s - GLhalfNV t - - - - void glMultiTexCoord2hvNV - GLenum target - const GLhalfNV *v - - - - void glMultiTexCoord2i - GLenum target - GLint s - GLint t - - - - void glMultiTexCoord2iARB - GLenum target - GLint s - GLint t - - - - - void glMultiTexCoord2iv - GLenum target - const GLint *v - - - - void glMultiTexCoord2ivARB - GLenum target - const GLint *v - - - - - void glMultiTexCoord2s - GLenum target - GLshort s - GLshort t - - - - void glMultiTexCoord2sARB - GLenum target - GLshort s - GLshort t - - - - - void glMultiTexCoord2sv - GLenum target - const GLshort *v - - - - void glMultiTexCoord2svARB - GLenum target - const GLshort *v - - - - - void glMultiTexCoord2xOES - GLenum texture - GLfixed s - GLfixed t - - - void glMultiTexCoord2xvOES - GLenum texture - const GLfixed *coords - - - void glMultiTexCoord3bOES - GLenum texture - GLbyte s - GLbyte t - GLbyte r - - - void glMultiTexCoord3bvOES - GLenum texture - const GLbyte *coords - - - void glMultiTexCoord3d - GLenum target - GLdouble s - GLdouble t - GLdouble r - - - - void glMultiTexCoord3dARB - GLenum target - GLdouble s - GLdouble t - GLdouble r - - - - - void glMultiTexCoord3dv - GLenum target - const GLdouble *v - - - - void glMultiTexCoord3dvARB - GLenum target - const GLdouble *v - - - - - void glMultiTexCoord3f - GLenum target - GLfloat s - GLfloat t - GLfloat r - - - - void glMultiTexCoord3fARB - GLenum target - GLfloat s - GLfloat t - GLfloat r - - - - - void glMultiTexCoord3fv - GLenum target - const GLfloat *v - - - - void glMultiTexCoord3fvARB - GLenum target - const GLfloat *v - - - - - void glMultiTexCoord3hNV - GLenum target - GLhalfNV s - GLhalfNV t - GLhalfNV r - - - - void glMultiTexCoord3hvNV - GLenum target - const GLhalfNV *v - - - - void glMultiTexCoord3i - GLenum target - GLint s - GLint t - GLint r - - - - void glMultiTexCoord3iARB - GLenum target - GLint s - GLint t - GLint r - - - - - void glMultiTexCoord3iv - GLenum target - const GLint *v - - - - void glMultiTexCoord3ivARB - GLenum target - const GLint *v - - - - - void glMultiTexCoord3s - GLenum target - GLshort s - GLshort t - GLshort r - - - - void glMultiTexCoord3sARB - GLenum target - GLshort s - GLshort t - GLshort r - - - - - void glMultiTexCoord3sv - GLenum target - const GLshort *v - - - - void glMultiTexCoord3svARB - GLenum target - const GLshort *v - - - - - void glMultiTexCoord3xOES - GLenum texture - GLfixed s - GLfixed t - GLfixed r - - - void glMultiTexCoord3xvOES - GLenum texture - const GLfixed *coords - - - void glMultiTexCoord4bOES - GLenum texture - GLbyte s - GLbyte t - GLbyte r - GLbyte q - - - void glMultiTexCoord4bvOES - GLenum texture - const GLbyte *coords - - - void glMultiTexCoord4d - GLenum target - GLdouble s - GLdouble t - GLdouble r - GLdouble q - - - - void glMultiTexCoord4dARB - GLenum target - GLdouble s - GLdouble t - GLdouble r - GLdouble q - - - - - void glMultiTexCoord4dv - GLenum target - const GLdouble *v - - - - void glMultiTexCoord4dvARB - GLenum target - const GLdouble *v - - - - - void glMultiTexCoord4f - GLenum target - GLfloat s - GLfloat t - GLfloat r - GLfloat q - - - - void glMultiTexCoord4fARB - GLenum target - GLfloat s - GLfloat t - GLfloat r - GLfloat q - - - - - void glMultiTexCoord4fv - GLenum target - const GLfloat *v - - - - void glMultiTexCoord4fvARB - GLenum target - const GLfloat *v - - - - - void glMultiTexCoord4hNV - GLenum target - GLhalfNV s - GLhalfNV t - GLhalfNV r - GLhalfNV q - - - - void glMultiTexCoord4hvNV - GLenum target - const GLhalfNV *v - - - - void glMultiTexCoord4i - GLenum target - GLint s - GLint t - GLint r - GLint q - - - - void glMultiTexCoord4iARB - GLenum target - GLint s - GLint t - GLint r - GLint q - - - - - void glMultiTexCoord4iv - GLenum target - const GLint *v - - - - void glMultiTexCoord4ivARB - GLenum target - const GLint *v - - - - - void glMultiTexCoord4s - GLenum target - GLshort s - GLshort t - GLshort r - GLshort q - - - - void glMultiTexCoord4sARB - GLenum target - GLshort s - GLshort t - GLshort r - GLshort q - - - - - void glMultiTexCoord4sv - GLenum target - const GLshort *v - - - - void glMultiTexCoord4svARB - GLenum target - const GLshort *v - - - - - void glMultiTexCoord4x - GLenum texture - GLfixed s - GLfixed t - GLfixed r - GLfixed q - - - void glMultiTexCoord4xOES - GLenum texture - GLfixed s - GLfixed t - GLfixed r - GLfixed q - - - void glMultiTexCoord4xvOES - GLenum texture - const GLfixed *coords - - - void glMultiTexCoordP1ui - GLenum texture - GLenum type - GLuint coords - - - void glMultiTexCoordP1uiv - GLenum texture - GLenum type - const GLuint *coords - - - void glMultiTexCoordP2ui - GLenum texture - GLenum type - GLuint coords - - - void glMultiTexCoordP2uiv - GLenum texture - GLenum type - const GLuint *coords - - - void glMultiTexCoordP3ui - GLenum texture - GLenum type - GLuint coords - - - void glMultiTexCoordP3uiv - GLenum texture - GLenum type - const GLuint *coords - - - void glMultiTexCoordP4ui - GLenum texture - GLenum type - GLuint coords - - - void glMultiTexCoordP4uiv - GLenum texture - GLenum type - const GLuint *coords - - - void glMultiTexCoordPointerEXT - GLenum texunit - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glMultiTexEnvfEXT - GLenum texunit - GLenum target - GLenum pname - GLfloat param - - - - void glMultiTexEnvfvEXT - GLenum texunit - GLenum target - GLenum pname - const GLfloat *params - - - void glMultiTexEnviEXT - GLenum texunit - GLenum target - GLenum pname - GLint param - - - - void glMultiTexEnvivEXT - GLenum texunit - GLenum target - GLenum pname - const GLint *params - - - void glMultiTexGendEXT - GLenum texunit - GLenum coord - GLenum pname - GLdouble param - - - - void glMultiTexGendvEXT - GLenum texunit - GLenum coord - GLenum pname - const GLdouble *params - - - void glMultiTexGenfEXT - GLenum texunit - GLenum coord - GLenum pname - GLfloat param - - - - void glMultiTexGenfvEXT - GLenum texunit - GLenum coord - GLenum pname - const GLfloat *params - - - void glMultiTexGeniEXT - GLenum texunit - GLenum coord - GLenum pname - GLint param - - - - void glMultiTexGenivEXT - GLenum texunit - GLenum coord - GLenum pname - const GLint *params - - - void glMultiTexImage1DEXT - GLenum texunit - GLenum target - GLint level - GLint internalformat - GLsizei width - GLint border - GLenum format - GLenum type - const void *pixels - - - void glMultiTexImage2DEXT - GLenum texunit - GLenum target - GLint level - GLint internalformat - GLsizei width - GLsizei height - GLint border - GLenum format - GLenum type - const void *pixels - - - void glMultiTexImage3DEXT - GLenum texunit - GLenum target - GLint level - GLint internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLenum format - GLenum type - const void *pixels - - - void glMultiTexParameterIivEXT - GLenum texunit - GLenum target - GLenum pname - const GLint *params - - - void glMultiTexParameterIuivEXT - GLenum texunit - GLenum target - GLenum pname - const GLuint *params - - - void glMultiTexParameterfEXT - GLenum texunit - GLenum target - GLenum pname - GLfloat param - - - - void glMultiTexParameterfvEXT - GLenum texunit - GLenum target - GLenum pname - const GLfloat *params - - - void glMultiTexParameteriEXT - GLenum texunit - GLenum target - GLenum pname - GLint param - - - - void glMultiTexParameterivEXT - GLenum texunit - GLenum target - GLenum pname - const GLint *params - - - void glMultiTexRenderbufferEXT - GLenum texunit - GLenum target - GLuint renderbuffer - - - void glMultiTexSubImage1DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLenum type - const void *pixels - - - void glMultiTexSubImage2DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *pixels - - - void glMultiTexSubImage3DEXT - GLenum texunit - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *pixels - - - void glMulticastBarrierNV - - - void glMulticastBlitFramebufferNV - GLuint srcGpu - GLuint dstGpu - GLint srcX0 - GLint srcY0 - GLint srcX1 - GLint srcY1 - GLint dstX0 - GLint dstY0 - GLint dstX1 - GLint dstY1 - GLbitfield mask - GLenum filter - - - void glMulticastBufferSubDataNV - GLbitfield gpuMask - GLuint buffer - GLintptr offset - GLsizeiptr size - const void *data - - - void glMulticastCopyBufferSubDataNV - GLuint readGpu - GLbitfield writeGpuMask - GLuint readBuffer - GLuint writeBuffer - GLintptr readOffset - GLintptr writeOffset - GLsizeiptr size - - - void glMulticastCopyImageSubDataNV - GLuint srcGpu - GLbitfield dstGpuMask - GLuint srcName - GLenum srcTarget - GLint srcLevel - GLint srcX - GLint srcY - GLint srcZ - GLuint dstName - GLenum dstTarget - GLint dstLevel - GLint dstX - GLint dstY - GLint dstZ - GLsizei srcWidth - GLsizei srcHeight - GLsizei srcDepth - - - void glMulticastFramebufferSampleLocationsfvNV - GLuint gpu - GLuint framebuffer - GLuint start - GLsizei count - const GLfloat *v - - - void glMulticastGetQueryObjecti64vNV - GLuint gpu - GLuint id - GLenum pname - GLint64 *params - - - void glMulticastGetQueryObjectivNV - GLuint gpu - GLuint id - GLenum pname - GLint *params - - - void glMulticastGetQueryObjectui64vNV - GLuint gpu - GLuint id - GLenum pname - GLuint64 *params - - - void glMulticastGetQueryObjectuivNV - GLuint gpu - GLuint id - GLenum pname - GLuint *params - - - void glMulticastScissorArrayvNVX - GLuint gpu - GLuint first - GLsizei count - const GLint *v - - - void glMulticastViewportArrayvNVX - GLuint gpu - GLuint first - GLsizei count - const GLfloat *v - - - void glMulticastViewportPositionWScaleNVX - GLuint gpu - GLuint index - GLfloat xcoeff - GLfloat ycoeff - - - void glMulticastWaitSyncNV - GLuint signalGpu - GLbitfield waitGpuMask - - - void glNamedBufferAttachMemoryNV - GLuint buffer - GLuint memory - GLuint64 offset - - - void glNamedBufferData - GLuint buffer - GLsizeiptr size - const void *data - GLenum usage - - - void glNamedBufferDataEXT - GLuint buffer - GLsizeiptr size - const void *data - GLenum usage - - - void glNamedBufferPageCommitmentARB - GLuint buffer - GLintptr offset - GLsizeiptr size - GLboolean commit - - - void glNamedBufferPageCommitmentEXT - GLuint buffer - GLintptr offset - GLsizeiptr size - GLboolean commit - - - void glNamedBufferPageCommitmentMemNV - GLuint buffer - GLintptr offset - GLsizeiptr size - GLuint memory - GLuint64 memOffset - GLboolean commit - - - void glNamedBufferStorage - GLuint buffer - GLsizeiptr size - const void *data - GLbitfield flags - - - void glNamedBufferStorageExternalEXT - GLuint buffer - GLintptr offset - GLsizeiptr size - GLeglClientBufferEXT clientBuffer - GLbitfield flags - - - void glNamedBufferStorageEXT - GLuint buffer - GLsizeiptr size - const void *data - GLbitfield flags - - - - void glNamedBufferStorageMemEXT - GLuint buffer - GLsizeiptr size - GLuint memory - GLuint64 offset - - - void glNamedBufferSubData - GLuint buffer - GLintptr offset - GLsizeiptr size - const void *data - - - void glNamedBufferSubDataEXT - GLuint buffer - GLintptr offset - GLsizeiptr size - const void *data - - - - void glNamedCopyBufferSubDataEXT - GLuint readBuffer - GLuint writeBuffer - GLintptr readOffset - GLintptr writeOffset - GLsizeiptr size - - - void glNamedFramebufferDrawBuffer - GLuint framebuffer - GLenum buf - - - void glNamedFramebufferDrawBuffers - GLuint framebuffer - GLsizei n - const GLenum *bufs - - - void glNamedFramebufferParameteri - GLuint framebuffer - GLenum pname - GLint param - - - void glNamedFramebufferParameteriEXT - GLuint framebuffer - GLenum pname - GLint param - - - void glNamedFramebufferReadBuffer - GLuint framebuffer - GLenum src - - - void glNamedFramebufferRenderbuffer - GLuint framebuffer - GLenum attachment - GLenum renderbuffertarget - GLuint renderbuffer - - - void glNamedFramebufferRenderbufferEXT - GLuint framebuffer - GLenum attachment - GLenum renderbuffertarget - GLuint renderbuffer - - - void glNamedFramebufferSampleLocationsfvARB - GLuint framebuffer - GLuint start - GLsizei count - const GLfloat *v - - - void glNamedFramebufferSampleLocationsfvNV - GLuint framebuffer - GLuint start - GLsizei count - const GLfloat *v - - - void glNamedFramebufferTexture - GLuint framebuffer - GLenum attachment - GLuint texture - GLint level - - - void glNamedFramebufferSamplePositionsfvAMD - GLuint framebuffer - GLuint numsamples - GLuint pixelindex - const GLfloat *values - - - void glNamedFramebufferTexture1DEXT - GLuint framebuffer - GLenum attachment - GLenum textarget - GLuint texture - GLint level - - - void glNamedFramebufferTexture2DEXT - GLuint framebuffer - GLenum attachment - GLenum textarget - GLuint texture - GLint level - - - void glNamedFramebufferTexture3DEXT - GLuint framebuffer - GLenum attachment - GLenum textarget - GLuint texture - GLint level - GLint zoffset - - - void glNamedFramebufferTextureEXT - GLuint framebuffer - GLenum attachment - GLuint texture - GLint level - - - void glNamedFramebufferTextureFaceEXT - GLuint framebuffer - GLenum attachment - GLuint texture - GLint level - GLenum face - - - void glNamedFramebufferTextureLayer - GLuint framebuffer - GLenum attachment - GLuint texture - GLint level - GLint layer - - - void glNamedFramebufferTextureLayerEXT - GLuint framebuffer - GLenum attachment - GLuint texture - GLint level - GLint layer - - - void glNamedProgramLocalParameter4dEXT - GLuint program - GLenum target - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glNamedProgramLocalParameter4dvEXT - GLuint program - GLenum target - GLuint index - const GLdouble *params - - - void glNamedProgramLocalParameter4fEXT - GLuint program - GLenum target - GLuint index - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glNamedProgramLocalParameter4fvEXT - GLuint program - GLenum target - GLuint index - const GLfloat *params - - - void glNamedProgramLocalParameterI4iEXT - GLuint program - GLenum target - GLuint index - GLint x - GLint y - GLint z - GLint w - - - - void glNamedProgramLocalParameterI4ivEXT - GLuint program - GLenum target - GLuint index - const GLint *params - - - void glNamedProgramLocalParameterI4uiEXT - GLuint program - GLenum target - GLuint index - GLuint x - GLuint y - GLuint z - GLuint w - - - - void glNamedProgramLocalParameterI4uivEXT - GLuint program - GLenum target - GLuint index - const GLuint *params - - - void glNamedProgramLocalParameters4fvEXT - GLuint program - GLenum target - GLuint index - GLsizei count - const GLfloat *params - - - void glNamedProgramLocalParametersI4ivEXT - GLuint program - GLenum target - GLuint index - GLsizei count - const GLint *params - - - void glNamedProgramLocalParametersI4uivEXT - GLuint program - GLenum target - GLuint index - GLsizei count - const GLuint *params - - - void glNamedProgramStringEXT - GLuint program - GLenum target - GLenum format - GLsizei len - const void *string - - - void glNamedRenderbufferStorage - GLuint renderbuffer - GLenum internalformat - GLsizei width - GLsizei height - - - void glNamedRenderbufferStorageEXT - GLuint renderbuffer - GLenum internalformat - GLsizei width - GLsizei height - - - void glNamedRenderbufferStorageMultisample - GLuint renderbuffer - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - void glNamedRenderbufferStorageMultisampleAdvancedAMD - GLuint renderbuffer - GLsizei samples - GLsizei storageSamples - GLenum internalformat - GLsizei width - GLsizei height - - - void glNamedRenderbufferStorageMultisampleCoverageEXT - GLuint renderbuffer - GLsizei coverageSamples - GLsizei colorSamples - GLenum internalformat - GLsizei width - GLsizei height - - - void glNamedRenderbufferStorageMultisampleEXT - GLuint renderbuffer - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - void glNamedStringARB - GLenum type - GLint namelen - const GLchar *name - GLint stringlen - const GLchar *string - - - void glNewList - GLuint list - GLenum mode - - - - GLuint glNewObjectBufferATI - GLsizei size - const void *pointer - GLenum usage - - - void glNormal3b - GLbyte nx - GLbyte ny - GLbyte nz - - - - void glNormal3bv - const GLbyte *v - - - - void glNormal3d - GLdouble nx - GLdouble ny - GLdouble nz - - - - void glNormal3dv - const GLdouble *v - - - - void glNormal3f - GLfloat nx - GLfloat ny - GLfloat nz - - - - void glNormal3fVertex3fSUN - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glNormal3fVertex3fvSUN - const GLfloat *n - const GLfloat *v - - - void glNormal3fv - const GLfloat *v - - - - void glNormal3hNV - GLhalfNV nx - GLhalfNV ny - GLhalfNV nz - - - - void glNormal3hvNV - const GLhalfNV *v - - - - void glNormal3i - GLint nx - GLint ny - GLint nz - - - - void glNormal3iv - const GLint *v - - - - void glNormal3s - GLshort nx - GLshort ny - GLshort nz - - - - void glNormal3sv - const GLshort *v - - - - void glNormal3x - GLfixed nx - GLfixed ny - GLfixed nz - - - void glNormal3xOES - GLfixed nx - GLfixed ny - GLfixed nz - - - void glNormal3xvOES - const GLfixed *coords - - - void glNormalFormatNV - GLenum type - GLsizei stride - - - void glNormalP3ui - GLenum type - GLuint coords - - - void glNormalP3uiv - GLenum type - const GLuint *coords - - - void glNormalPointer - GLenum type - GLsizei stride - const void *pointer - - - void glNormalPointerEXT - GLenum type - GLsizei stride - GLsizei count - const void *pointer - - - void glNormalPointerListIBM - GLenum type - GLint stride - const void **pointer - GLint ptrstride - - - void glNormalPointervINTEL - GLenum type - const void **pointer - - - void glNormalStream3bATI - GLenum stream - GLbyte nx - GLbyte ny - GLbyte nz - - - void glNormalStream3bvATI - GLenum stream - const GLbyte *coords - - - void glNormalStream3dATI - GLenum stream - GLdouble nx - GLdouble ny - GLdouble nz - - - void glNormalStream3dvATI - GLenum stream - const GLdouble *coords - - - void glNormalStream3fATI - GLenum stream - GLfloat nx - GLfloat ny - GLfloat nz - - - void glNormalStream3fvATI - GLenum stream - const GLfloat *coords - - - void glNormalStream3iATI - GLenum stream - GLint nx - GLint ny - GLint nz - - - void glNormalStream3ivATI - GLenum stream - const GLint *coords - - - void glNormalStream3sATI - GLenum stream - GLshort nx - GLshort ny - GLshort nz - - - void glNormalStream3svATI - GLenum stream - const GLshort *coords - - - void glObjectLabel - GLenum identifier - GLuint name - GLsizei length - const GLchar *label - - - void glObjectLabelKHR - GLenum identifier - GLuint name - GLsizei length - const GLchar *label - - - - void glObjectPtrLabel - const void *ptr - GLsizei length - const GLchar *label - - - void glObjectPtrLabelKHR - const void *ptr - GLsizei length - const GLchar *label - - - - GLenum glObjectPurgeableAPPLE - GLenum objectType - GLuint name - GLenum option - - - GLenum glObjectUnpurgeableAPPLE - GLenum objectType - GLuint name - GLenum option - - - void glOrtho - GLdouble left - GLdouble right - GLdouble bottom - GLdouble top - GLdouble zNear - GLdouble zFar - - - - void glOrthof - GLfloat l - GLfloat r - GLfloat b - GLfloat t - GLfloat n - GLfloat f - - - void glOrthofOES - GLfloat l - GLfloat r - GLfloat b - GLfloat t - GLfloat n - GLfloat f - - - - void glOrthox - GLfixed l - GLfixed r - GLfixed b - GLfixed t - GLfixed n - GLfixed f - - - void glOrthoxOES - GLfixed l - GLfixed r - GLfixed b - GLfixed t - GLfixed n - GLfixed f - - - void glPNTrianglesfATI - GLenum pname - GLfloat param - - - void glPNTrianglesiATI - GLenum pname - GLint param - - - void glPassTexCoordATI - GLuint dst - GLuint coord - GLenum swizzle - - - void glPassThrough - GLfloat token - - - - void glPassThroughxOES - GLfixed token - - - void glPatchParameterfv - GLenum pname - const GLfloat *values - - - void glPatchParameteri - GLenum pname - GLint value - - - void glPatchParameteriEXT - GLenum pname - GLint value - - - - void glPatchParameteriOES - GLenum pname - GLint value - - - - void glPathColorGenNV - GLenum color - GLenum genMode - GLenum colorFormat - const GLfloat *coeffs - - - void glPathCommandsNV - GLuint path - GLsizei numCommands - const GLubyte *commands - GLsizei numCoords - GLenum coordType - const void *coords - - - void glPathCoordsNV - GLuint path - GLsizei numCoords - GLenum coordType - const void *coords - - - void glPathCoverDepthFuncNV - GLenum func - - - void glPathDashArrayNV - GLuint path - GLsizei dashCount - const GLfloat *dashArray - - - void glPathFogGenNV - GLenum genMode - - - GLenum glPathGlyphIndexArrayNV - GLuint firstPathName - GLenum fontTarget - const void *fontName - GLbitfield fontStyle - GLuint firstGlyphIndex - GLsizei numGlyphs - GLuint pathParameterTemplate - GLfloat emScale - - - GLenum glPathGlyphIndexRangeNV - GLenum fontTarget - const void *fontName - GLbitfield fontStyle - GLuint pathParameterTemplate - GLfloat emScale - GLuint *baseAndCount - - - void glPathGlyphRangeNV - GLuint firstPathName - GLenum fontTarget - const void *fontName - GLbitfield fontStyle - GLuint firstGlyph - GLsizei numGlyphs - GLenum handleMissingGlyphs - GLuint pathParameterTemplate - GLfloat emScale - - - void glPathGlyphsNV - GLuint firstPathName - GLenum fontTarget - const void *fontName - GLbitfield fontStyle - GLsizei numGlyphs - GLenum type - const void *charcodes - GLenum handleMissingGlyphs - GLuint pathParameterTemplate - GLfloat emScale - - - GLenum glPathMemoryGlyphIndexArrayNV - GLuint firstPathName - GLenum fontTarget - GLsizeiptr fontSize - const void *fontData - GLsizei faceIndex - GLuint firstGlyphIndex - GLsizei numGlyphs - GLuint pathParameterTemplate - GLfloat emScale - - - void glPathParameterfNV - GLuint path - GLenum pname - GLfloat value - - - void glPathParameterfvNV - GLuint path - GLenum pname - const GLfloat *value - - - void glPathParameteriNV - GLuint path - GLenum pname - GLint value - - - void glPathParameterivNV - GLuint path - GLenum pname - const GLint *value - - - void glPathStencilDepthOffsetNV - GLfloat factor - GLfloat units - - - void glPathStencilFuncNV - GLenum func - GLint ref - GLuint mask - - - void glPathStringNV - GLuint path - GLenum format - GLsizei length - const void *pathString - - - void glPathSubCommandsNV - GLuint path - GLsizei commandStart - GLsizei commandsToDelete - GLsizei numCommands - const GLubyte *commands - GLsizei numCoords - GLenum coordType - const void *coords - - - void glPathSubCoordsNV - GLuint path - GLsizei coordStart - GLsizei numCoords - GLenum coordType - const void *coords - - - void glPathTexGenNV - GLenum texCoordSet - GLenum genMode - GLint components - const GLfloat *coeffs - - - void glPauseTransformFeedback - - - void glPauseTransformFeedbackNV - - - - void glPixelDataRangeNV - GLenum target - GLsizei length - const void *pointer - - - void glPixelMapfv - GLenum map - GLsizei mapsize - const GLfloat *values - - - - - void glPixelMapuiv - GLenum map - GLsizei mapsize - const GLuint *values - - - - - void glPixelMapusv - GLenum map - GLsizei mapsize - const GLushort *values - - - - - void glPixelMapx - GLenum map - GLint size - const GLfixed *values - - - void glPixelStoref - GLenum pname - GLfloat param - - - - void glPixelStorei - GLenum pname - GLint param - - - - void glPixelStorex - GLenum pname - GLfixed param - - - void glPixelTexGenParameterfSGIS - GLenum pname - GLfloat param - - - void glPixelTexGenParameterfvSGIS - GLenum pname - const GLfloat *params - - - void glPixelTexGenParameteriSGIS - GLenum pname - GLint param - - - void glPixelTexGenParameterivSGIS - GLenum pname - const GLint *params - - - void glPixelTexGenSGIX - GLenum mode - - - - void glPixelTransferf - GLenum pname - GLfloat param - - - - void glPixelTransferi - GLenum pname - GLint param - - - - void glPixelTransferxOES - GLenum pname - GLfixed param - - - void glPixelTransformParameterfEXT - GLenum target - GLenum pname - GLfloat param - - - - void glPixelTransformParameterfvEXT - GLenum target - GLenum pname - const GLfloat *params - - - void glPixelTransformParameteriEXT - GLenum target - GLenum pname - GLint param - - - - void glPixelTransformParameterivEXT - GLenum target - GLenum pname - const GLint *params - - - void glPixelZoom - GLfloat xfactor - GLfloat yfactor - - - - void glPixelZoomxOES - GLfixed xfactor - GLfixed yfactor - - - GLboolean glPointAlongPathNV - GLuint path - GLsizei startSegment - GLsizei numSegments - GLfloat distance - GLfloat *x - GLfloat *y - GLfloat *tangentX - GLfloat *tangentY - - - void glPointParameterf - GLenum pname - GLfloat param - - - - void glPointParameterfARB - GLenum pname - GLfloat param - - - - - void glPointParameterfEXT - GLenum pname - GLfloat param - - - - void glPointParameterfSGIS - GLenum pname - GLfloat param - - - - void glPointParameterfv - GLenum pname - const GLfloat *params - - - - void glPointParameterfvARB - GLenum pname - const GLfloat *params - - - - - void glPointParameterfvEXT - GLenum pname - const GLfloat *params - - - - void glPointParameterfvSGIS - GLenum pname - const GLfloat *params - - - - void glPointParameteri - GLenum pname - GLint param - - - - void glPointParameteriNV - GLenum pname - GLint param - - - - - void glPointParameteriv - GLenum pname - const GLint *params - - - - void glPointParameterivNV - GLenum pname - const GLint *params - - - - - void glPointParameterx - GLenum pname - GLfixed param - - - void glPointParameterxOES - GLenum pname - GLfixed param - - - void glPointParameterxv - GLenum pname - const GLfixed *params - - - void glPointParameterxvOES - GLenum pname - const GLfixed *params - - - void glPointSize - GLfloat size - - - - void glPointSizePointerOES - GLenum type - GLsizei stride - const void *pointer - - - void glPointSizex - GLfixed size - - - void glPointSizexOES - GLfixed size - - - GLint glPollAsyncSGIX - GLuint *markerp - - - GLint glPollInstrumentsSGIX - GLint *marker_p - - - - void glPolygonMode - GLenum face - GLenum mode - - - - void glPolygonModeNV - GLenum face - GLenum mode - - - - void glPolygonOffset - GLfloat factor - GLfloat units - - - - void glPolygonOffsetClamp - GLfloat factor - GLfloat units - GLfloat clamp - - - - void glPolygonOffsetClampEXT - GLfloat factor - GLfloat units - GLfloat clamp - - - - void glPolygonOffsetEXT - GLfloat factor - GLfloat bias - - - - void glPolygonOffsetx - GLfixed factor - GLfixed units - - - void glPolygonOffsetxOES - GLfixed factor - GLfixed units - - - void glPolygonStipple - const GLubyte *mask - - - - - void glPopAttrib - - - - void glPopClientAttrib - - - void glPopDebugGroup - - - void glPopDebugGroupKHR - - - - void glPopGroupMarkerEXT - - - void glPopMatrix - - - - void glPopName - - - - void glPresentFrameDualFillNV - GLuint video_slot - GLuint64EXT minPresentTime - GLuint beginPresentTimeId - GLuint presentDurationId - GLenum type - GLenum target0 - GLuint fill0 - GLenum target1 - GLuint fill1 - GLenum target2 - GLuint fill2 - GLenum target3 - GLuint fill3 - - - void glPresentFrameKeyedNV - GLuint video_slot - GLuint64EXT minPresentTime - GLuint beginPresentTimeId - GLuint presentDurationId - GLenum type - GLenum target0 - GLuint fill0 - GLuint key0 - GLenum target1 - GLuint fill1 - GLuint key1 - - - void glPrimitiveBoundingBox - GLfloat minX - GLfloat minY - GLfloat minZ - GLfloat minW - GLfloat maxX - GLfloat maxY - GLfloat maxZ - GLfloat maxW - - - void glPrimitiveBoundingBoxARB - GLfloat minX - GLfloat minY - GLfloat minZ - GLfloat minW - GLfloat maxX - GLfloat maxY - GLfloat maxZ - GLfloat maxW - - - - void glPrimitiveBoundingBoxEXT - GLfloat minX - GLfloat minY - GLfloat minZ - GLfloat minW - GLfloat maxX - GLfloat maxY - GLfloat maxZ - GLfloat maxW - - - - void glPrimitiveBoundingBoxOES - GLfloat minX - GLfloat minY - GLfloat minZ - GLfloat minW - GLfloat maxX - GLfloat maxY - GLfloat maxZ - GLfloat maxW - - - - void glPrimitiveRestartIndex - GLuint index - - - void glPrimitiveRestartIndexNV - GLuint index - - - - void glPrimitiveRestartNV - - - - void glPrioritizeTextures - GLsizei n - const GLuint *textures - const GLfloat *priorities - - - - void glPrioritizeTexturesEXT - GLsizei n - const GLuint *textures - const GLclampf *priorities - - - - - void glPrioritizeTexturesxOES - GLsizei n - const GLuint *textures - const GLfixed *priorities - - - void glProgramBinary - GLuint program - GLenum binaryFormat - const void *binary - GLsizei length - - - void glProgramBinaryOES - GLuint program - GLenum binaryFormat - const void *binary - GLint length - - - - void glProgramBufferParametersIivNV - GLenum target - GLuint bindingIndex - GLuint wordIndex - GLsizei count - const GLint *params - - - void glProgramBufferParametersIuivNV - GLenum target - GLuint bindingIndex - GLuint wordIndex - GLsizei count - const GLuint *params - - - void glProgramBufferParametersfvNV - GLenum target - GLuint bindingIndex - GLuint wordIndex - GLsizei count - const GLfloat *params - - - void glProgramEnvParameter4dARB - GLenum target - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glProgramEnvParameter4dvARB - GLenum target - GLuint index - const GLdouble *params - - - void glProgramEnvParameter4fARB - GLenum target - GLuint index - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glProgramEnvParameter4fvARB - GLenum target - GLuint index - const GLfloat *params - - - void glProgramEnvParameterI4iNV - GLenum target - GLuint index - GLint x - GLint y - GLint z - GLint w - - - - void glProgramEnvParameterI4ivNV - GLenum target - GLuint index - const GLint *params - - - void glProgramEnvParameterI4uiNV - GLenum target - GLuint index - GLuint x - GLuint y - GLuint z - GLuint w - - - - void glProgramEnvParameterI4uivNV - GLenum target - GLuint index - const GLuint *params - - - void glProgramEnvParameters4fvEXT - GLenum target - GLuint index - GLsizei count - const GLfloat *params - - - - void glProgramEnvParametersI4ivNV - GLenum target - GLuint index - GLsizei count - const GLint *params - - - void glProgramEnvParametersI4uivNV - GLenum target - GLuint index - GLsizei count - const GLuint *params - - - void glProgramLocalParameter4dARB - GLenum target - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glProgramLocalParameter4dvARB - GLenum target - GLuint index - const GLdouble *params - - - void glProgramLocalParameter4fARB - GLenum target - GLuint index - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glProgramLocalParameter4fvARB - GLenum target - GLuint index - const GLfloat *params - - - void glProgramLocalParameterI4iNV - GLenum target - GLuint index - GLint x - GLint y - GLint z - GLint w - - - - void glProgramLocalParameterI4ivNV - GLenum target - GLuint index - const GLint *params - - - void glProgramLocalParameterI4uiNV - GLenum target - GLuint index - GLuint x - GLuint y - GLuint z - GLuint w - - - - void glProgramLocalParameterI4uivNV - GLenum target - GLuint index - const GLuint *params - - - void glProgramLocalParameters4fvEXT - GLenum target - GLuint index - GLsizei count - const GLfloat *params - - - - void glProgramLocalParametersI4ivNV - GLenum target - GLuint index - GLsizei count - const GLint *params - - - void glProgramLocalParametersI4uivNV - GLenum target - GLuint index - GLsizei count - const GLuint *params - - - void glProgramNamedParameter4dNV - GLuint id - GLsizei len - const GLubyte *name - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glProgramNamedParameter4dvNV - GLuint id - GLsizei len - const GLubyte *name - const GLdouble *v - - - - void glProgramNamedParameter4fNV - GLuint id - GLsizei len - const GLubyte *name - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glProgramNamedParameter4fvNV - GLuint id - GLsizei len - const GLubyte *name - const GLfloat *v - - - - void glProgramParameter4dNV - GLenum target - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glProgramParameter4dvNV - GLenum target - GLuint index - const GLdouble *v - - - - void glProgramParameter4fNV - GLenum target - GLuint index - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glProgramParameter4fvNV - GLenum target - GLuint index - const GLfloat *v - - - - void glProgramParameteri - GLuint program - GLenum pname - GLint value - - - void glProgramParameteriARB - GLuint program - GLenum pname - GLint value - - - - void glProgramParameteriEXT - GLuint program - GLenum pname - GLint value - - - - void glProgramParameters4dvNV - GLenum target - GLuint index - GLsizei count - const GLdouble *v - - - - void glProgramParameters4fvNV - GLenum target - GLuint index - GLsizei count - const GLfloat *v - - - - void glProgramPathFragmentInputGenNV - GLuint program - GLint location - GLenum genMode - GLint components - const GLfloat *coeffs - - - void glProgramStringARB - GLenum target - GLenum format - GLsizei len - const void *string - - - void glProgramSubroutineParametersuivNV - GLenum target - GLsizei count - const GLuint *params - - - void glProgramUniform1d - GLuint program - GLint location - GLdouble v0 - - - void glProgramUniform1dEXT - GLuint program - GLint location - GLdouble x - - - void glProgramUniform1dv - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform1dvEXT - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform1f - GLuint program - GLint location - GLfloat v0 - - - void glProgramUniform1fEXT - GLuint program - GLint location - GLfloat v0 - - - - void glProgramUniform1fv - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - void glProgramUniform1fvEXT - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - - void glProgramUniform1i - GLuint program - GLint location - GLint v0 - - - void glProgramUniform1i64ARB - GLuint program - GLint location - GLint64 x - - - void glProgramUniform1i64NV - GLuint program - GLint location - GLint64EXT x - - - void glProgramUniform1i64vARB - GLuint program - GLint location - GLsizei count - const GLint64 *value - - - void glProgramUniform1i64vNV - GLuint program - GLint location - GLsizei count - const GLint64EXT *value - - - void glProgramUniform1iEXT - GLuint program - GLint location - GLint v0 - - - - void glProgramUniform1iv - GLuint program - GLint location - GLsizei count - const GLint *value - - - void glProgramUniform1ivEXT - GLuint program - GLint location - GLsizei count - const GLint *value - - - - void glProgramUniform1ui - GLuint program - GLint location - GLuint v0 - - - void glProgramUniform1ui64ARB - GLuint program - GLint location - GLuint64 x - - - void glProgramUniform1ui64NV - GLuint program - GLint location - GLuint64EXT x - - - void glProgramUniform1ui64vARB - GLuint program - GLint location - GLsizei count - const GLuint64 *value - - - void glProgramUniform1ui64vNV - GLuint program - GLint location - GLsizei count - const GLuint64EXT *value - - - void glProgramUniform1uiEXT - GLuint program - GLint location - GLuint v0 - - - - void glProgramUniform1uiv - GLuint program - GLint location - GLsizei count - const GLuint *value - - - void glProgramUniform1uivEXT - GLuint program - GLint location - GLsizei count - const GLuint *value - - - - void glProgramUniform2d - GLuint program - GLint location - GLdouble v0 - GLdouble v1 - - - void glProgramUniform2dEXT - GLuint program - GLint location - GLdouble x - GLdouble y - - - void glProgramUniform2dv - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform2dvEXT - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform2f - GLuint program - GLint location - GLfloat v0 - GLfloat v1 - - - void glProgramUniform2fEXT - GLuint program - GLint location - GLfloat v0 - GLfloat v1 - - - - void glProgramUniform2fv - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - void glProgramUniform2fvEXT - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - - void glProgramUniform2i - GLuint program - GLint location - GLint v0 - GLint v1 - - - void glProgramUniform2i64ARB - GLuint program - GLint location - GLint64 x - GLint64 y - - - void glProgramUniform2i64NV - GLuint program - GLint location - GLint64EXT x - GLint64EXT y - - - void glProgramUniform2i64vARB - GLuint program - GLint location - GLsizei count - const GLint64 *value - - - void glProgramUniform2i64vNV - GLuint program - GLint location - GLsizei count - const GLint64EXT *value - - - void glProgramUniform2iEXT - GLuint program - GLint location - GLint v0 - GLint v1 - - - - void glProgramUniform2iv - GLuint program - GLint location - GLsizei count - const GLint *value - - - void glProgramUniform2ivEXT - GLuint program - GLint location - GLsizei count - const GLint *value - - - - void glProgramUniform2ui - GLuint program - GLint location - GLuint v0 - GLuint v1 - - - void glProgramUniform2ui64ARB - GLuint program - GLint location - GLuint64 x - GLuint64 y - - - void glProgramUniform2ui64NV - GLuint program - GLint location - GLuint64EXT x - GLuint64EXT y - - - void glProgramUniform2ui64vARB - GLuint program - GLint location - GLsizei count - const GLuint64 *value - - - void glProgramUniform2ui64vNV - GLuint program - GLint location - GLsizei count - const GLuint64EXT *value - - - void glProgramUniform2uiEXT - GLuint program - GLint location - GLuint v0 - GLuint v1 - - - - void glProgramUniform2uiv - GLuint program - GLint location - GLsizei count - const GLuint *value - - - void glProgramUniform2uivEXT - GLuint program - GLint location - GLsizei count - const GLuint *value - - - - void glProgramUniform3d - GLuint program - GLint location - GLdouble v0 - GLdouble v1 - GLdouble v2 - - - void glProgramUniform3dEXT - GLuint program - GLint location - GLdouble x - GLdouble y - GLdouble z - - - void glProgramUniform3dv - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform3dvEXT - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform3f - GLuint program - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - - - void glProgramUniform3fEXT - GLuint program - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - - - - void glProgramUniform3fv - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - void glProgramUniform3fvEXT - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - - void glProgramUniform3i - GLuint program - GLint location - GLint v0 - GLint v1 - GLint v2 - - - void glProgramUniform3i64ARB - GLuint program - GLint location - GLint64 x - GLint64 y - GLint64 z - - - void glProgramUniform3i64NV - GLuint program - GLint location - GLint64EXT x - GLint64EXT y - GLint64EXT z - - - void glProgramUniform3i64vARB - GLuint program - GLint location - GLsizei count - const GLint64 *value - - - void glProgramUniform3i64vNV - GLuint program - GLint location - GLsizei count - const GLint64EXT *value - - - void glProgramUniform3iEXT - GLuint program - GLint location - GLint v0 - GLint v1 - GLint v2 - - - - void glProgramUniform3iv - GLuint program - GLint location - GLsizei count - const GLint *value - - - void glProgramUniform3ivEXT - GLuint program - GLint location - GLsizei count - const GLint *value - - - - void glProgramUniform3ui - GLuint program - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - - - void glProgramUniform3ui64ARB - GLuint program - GLint location - GLuint64 x - GLuint64 y - GLuint64 z - - - void glProgramUniform3ui64NV - GLuint program - GLint location - GLuint64EXT x - GLuint64EXT y - GLuint64EXT z - - - void glProgramUniform3ui64vARB - GLuint program - GLint location - GLsizei count - const GLuint64 *value - - - void glProgramUniform3ui64vNV - GLuint program - GLint location - GLsizei count - const GLuint64EXT *value - - - void glProgramUniform3uiEXT - GLuint program - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - - - - void glProgramUniform3uiv - GLuint program - GLint location - GLsizei count - const GLuint *value - - - void glProgramUniform3uivEXT - GLuint program - GLint location - GLsizei count - const GLuint *value - - - - void glProgramUniform4d - GLuint program - GLint location - GLdouble v0 - GLdouble v1 - GLdouble v2 - GLdouble v3 - - - void glProgramUniform4dEXT - GLuint program - GLint location - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - void glProgramUniform4dv - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform4dvEXT - GLuint program - GLint location - GLsizei count - const GLdouble *value - - - void glProgramUniform4f - GLuint program - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - GLfloat v3 - - - void glProgramUniform4fEXT - GLuint program - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - GLfloat v3 - - - - void glProgramUniform4fv - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - void glProgramUniform4fvEXT - GLuint program - GLint location - GLsizei count - const GLfloat *value - - - - void glProgramUniform4i - GLuint program - GLint location - GLint v0 - GLint v1 - GLint v2 - GLint v3 - - - void glProgramUniform4i64ARB - GLuint program - GLint location - GLint64 x - GLint64 y - GLint64 z - GLint64 w - - - void glProgramUniform4i64NV - GLuint program - GLint location - GLint64EXT x - GLint64EXT y - GLint64EXT z - GLint64EXT w - - - void glProgramUniform4i64vARB - GLuint program - GLint location - GLsizei count - const GLint64 *value - - - void glProgramUniform4i64vNV - GLuint program - GLint location - GLsizei count - const GLint64EXT *value - - - void glProgramUniform4iEXT - GLuint program - GLint location - GLint v0 - GLint v1 - GLint v2 - GLint v3 - - - - void glProgramUniform4iv - GLuint program - GLint location - GLsizei count - const GLint *value - - - void glProgramUniform4ivEXT - GLuint program - GLint location - GLsizei count - const GLint *value - - - - void glProgramUniform4ui - GLuint program - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - GLuint v3 - - - void glProgramUniform4ui64ARB - GLuint program - GLint location - GLuint64 x - GLuint64 y - GLuint64 z - GLuint64 w - - - void glProgramUniform4ui64NV - GLuint program - GLint location - GLuint64EXT x - GLuint64EXT y - GLuint64EXT z - GLuint64EXT w - - - void glProgramUniform4ui64vARB - GLuint program - GLint location - GLsizei count - const GLuint64 *value - - - void glProgramUniform4ui64vNV - GLuint program - GLint location - GLsizei count - const GLuint64EXT *value - - - void glProgramUniform4uiEXT - GLuint program - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - GLuint v3 - - - - void glProgramUniform4uiv - GLuint program - GLint location - GLsizei count - const GLuint *value - - - void glProgramUniform4uivEXT - GLuint program - GLint location - GLsizei count - const GLuint *value - - - - void glProgramUniformHandleui64ARB - GLuint program - GLint location - GLuint64 value - - - void glProgramUniformHandleui64IMG - GLuint program - GLint location - GLuint64 value - - - - void glProgramUniformHandleui64NV - GLuint program - GLint location - GLuint64 value - - - void glProgramUniformHandleui64vARB - GLuint program - GLint location - GLsizei count - const GLuint64 *values - - - void glProgramUniformHandleui64vIMG - GLuint program - GLint location - GLsizei count - const GLuint64 *values - - - - void glProgramUniformHandleui64vNV - GLuint program - GLint location - GLsizei count - const GLuint64 *values - - - void glProgramUniformMatrix2dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix2dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix2fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix2fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix2x3dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix2x3dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix2x3fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix2x3fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix2x4dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix2x4dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix2x4fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix2x4fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix3dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix3dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix3fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix3fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix3x2dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix3x2dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix3x2fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix3x2fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix3x4dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix3x4dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix3x4fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix3x4fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix4dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix4dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix4fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix4fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix4x2dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix4x2dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix4x2fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix4x2fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformMatrix4x3dv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix4x3dvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glProgramUniformMatrix4x3fv - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glProgramUniformMatrix4x3fvEXT - GLuint program - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glProgramUniformui64NV - GLuint program - GLint location - GLuint64EXT value - - - void glProgramUniformui64vNV - GLuint program - GLint location - GLsizei count - const GLuint64EXT *value - - - void glProgramVertexLimitNV - GLenum target - GLint limit - - - void glProvokingVertex - GLenum mode - - - void glProvokingVertexEXT - GLenum mode - - - - void glPushAttrib - GLbitfield mask - - - - void glPushClientAttrib - GLbitfield mask - - - void glPushClientAttribDefaultEXT - GLbitfield mask - - - void glPushDebugGroup - GLenum source - GLuint id - GLsizei length - const GLchar *message - - - void glPushDebugGroupKHR - GLenum source - GLuint id - GLsizei length - const GLchar *message - - - - void glPushGroupMarkerEXT - GLsizei length - const GLchar *marker - - - void glPushMatrix - - - - void glPushName - GLuint name - - - - void glQueryCounter - GLuint id - GLenum target - - - void glQueryCounterEXT - GLuint id - GLenum target - - - - GLbitfield glQueryMatrixxOES - GLfixed *mantissa - GLint *exponent - - - void glQueryObjectParameteruiAMD - GLenum target - GLuint id - GLenum pname - GLuint param - - - GLint glQueryResourceNV - GLenum queryType - GLint tagId - GLuint count - GLint *buffer - - - void glQueryResourceTagNV - GLint tagId - const GLchar *tagString - - - void glRasterPos2d - GLdouble x - GLdouble y - - - - void glRasterPos2dv - const GLdouble *v - - - - void glRasterPos2f - GLfloat x - GLfloat y - - - - void glRasterPos2fv - const GLfloat *v - - - - void glRasterPos2i - GLint x - GLint y - - - - void glRasterPos2iv - const GLint *v - - - - void glRasterPos2s - GLshort x - GLshort y - - - - void glRasterPos2sv - const GLshort *v - - - - void glRasterPos2xOES - GLfixed x - GLfixed y - - - void glRasterPos2xvOES - const GLfixed *coords - - - void glRasterPos3d - GLdouble x - GLdouble y - GLdouble z - - - - void glRasterPos3dv - const GLdouble *v - - - - void glRasterPos3f - GLfloat x - GLfloat y - GLfloat z - - - - void glRasterPos3fv - const GLfloat *v - - - - void glRasterPos3i - GLint x - GLint y - GLint z - - - - void glRasterPos3iv - const GLint *v - - - - void glRasterPos3s - GLshort x - GLshort y - GLshort z - - - - void glRasterPos3sv - const GLshort *v - - - - void glRasterPos3xOES - GLfixed x - GLfixed y - GLfixed z - - - void glRasterPos3xvOES - const GLfixed *coords - - - void glRasterPos4d - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glRasterPos4dv - const GLdouble *v - - - - void glRasterPos4f - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glRasterPos4fv - const GLfloat *v - - - - void glRasterPos4i - GLint x - GLint y - GLint z - GLint w - - - - void glRasterPos4iv - const GLint *v - - - - void glRasterPos4s - GLshort x - GLshort y - GLshort z - GLshort w - - - - void glRasterPos4sv - const GLshort *v - - - - void glRasterPos4xOES - GLfixed x - GLfixed y - GLfixed z - GLfixed w - - - void glRasterPos4xvOES - const GLfixed *coords - - - void glRasterSamplesEXT - GLuint samples - GLboolean fixedsamplelocations - - - void glReadBuffer - GLenum src - - - - void glReadBufferIndexedEXT - GLenum src - GLint index - - - void glReadBufferNV - GLenum mode - - - void glReadInstrumentsSGIX - GLint marker - - - - void glReadPixels - GLint x - GLint y - GLsizei width - GLsizei height - GLenum format - GLenum type - void *pixels - - - - - void glReadnPixels - GLint x - GLint y - GLsizei width - GLsizei height - GLenum format - GLenum type - GLsizei bufSize - void *data - - - void glReadnPixelsARB - GLint x - GLint y - GLsizei width - GLsizei height - GLenum format - GLenum type - GLsizei bufSize - void *data - - - - void glReadnPixelsEXT - GLint x - GLint y - GLsizei width - GLsizei height - GLenum format - GLenum type - GLsizei bufSize - void *data - - - - void glReadnPixelsKHR - GLint x - GLint y - GLsizei width - GLsizei height - GLenum format - GLenum type - GLsizei bufSize - void *data - - - - GLboolean glReleaseKeyedMutexWin32EXT - GLuint memory - GLuint64 key - - - void glRectd - GLdouble x1 - GLdouble y1 - GLdouble x2 - GLdouble y2 - - - - void glRectdv - const GLdouble *v1 - const GLdouble *v2 - - - - void glRectf - GLfloat x1 - GLfloat y1 - GLfloat x2 - GLfloat y2 - - - - void glRectfv - const GLfloat *v1 - const GLfloat *v2 - - - - void glRecti - GLint x1 - GLint y1 - GLint x2 - GLint y2 - - - - void glRectiv - const GLint *v1 - const GLint *v2 - - - - void glRects - GLshort x1 - GLshort y1 - GLshort x2 - GLshort y2 - - - - void glRectsv - const GLshort *v1 - const GLshort *v2 - - - - void glRectxOES - GLfixed x1 - GLfixed y1 - GLfixed x2 - GLfixed y2 - - - void glRectxvOES - const GLfixed *v1 - const GLfixed *v2 - - - void glReferencePlaneSGIX - const GLdouble *equation - - - - void glReleaseShaderCompiler - - - void glRenderGpuMaskNV - GLbitfield mask - - - GLint glRenderMode - GLenum mode - - - - void glRenderbufferStorage - GLenum target - GLenum internalformat - GLsizei width - GLsizei height - - - - void glRenderbufferStorageEXT - GLenum target - GLenum internalformat - GLsizei width - GLsizei height - - - - - void glRenderbufferStorageMultisample - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - - void glRenderbufferStorageMultisampleANGLE - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - void glRenderbufferStorageMultisampleAPPLE - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - void glRenderbufferStorageMultisampleAdvancedAMD - GLenum target - GLsizei samples - GLsizei storageSamples - GLenum internalformat - GLsizei width - GLsizei height - - - void glRenderbufferStorageMultisampleCoverageNV - GLenum target - GLsizei coverageSamples - GLsizei colorSamples - GLenum internalformat - GLsizei width - GLsizei height - - - void glRenderbufferStorageMultisampleEXT - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - - - void glRenderbufferStorageMultisampleIMG - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - void glRenderbufferStorageMultisampleNV - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - - - - void glRenderbufferStorageOES - GLenum target - GLenum internalformat - GLsizei width - GLsizei height - - - void glReplacementCodePointerSUN - GLenum type - GLsizei stride - const void **pointer - - - void glReplacementCodeubSUN - GLubyte code - - - void glReplacementCodeubvSUN - const GLubyte *code - - - void glReplacementCodeuiColor3fVertex3fSUN - GLuint rc - GLfloat r - GLfloat g - GLfloat b - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiColor3fVertex3fvSUN - const GLuint *rc - const GLfloat *c - const GLfloat *v - - - void glReplacementCodeuiColor4fNormal3fVertex3fSUN - GLuint rc - GLfloat r - GLfloat g - GLfloat b - GLfloat a - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiColor4fNormal3fVertex3fvSUN - const GLuint *rc - const GLfloat *c - const GLfloat *n - const GLfloat *v - - - void glReplacementCodeuiColor4ubVertex3fSUN - GLuint rc - GLubyte r - GLubyte g - GLubyte b - GLubyte a - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiColor4ubVertex3fvSUN - const GLuint *rc - const GLubyte *c - const GLfloat *v - - - void glReplacementCodeuiNormal3fVertex3fSUN - GLuint rc - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiNormal3fVertex3fvSUN - const GLuint *rc - const GLfloat *n - const GLfloat *v - - - void glReplacementCodeuiSUN - GLuint code - - - void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN - GLuint rc - GLfloat s - GLfloat t - GLfloat r - GLfloat g - GLfloat b - GLfloat a - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN - const GLuint *rc - const GLfloat *tc - const GLfloat *c - const GLfloat *n - const GLfloat *v - - - void glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN - GLuint rc - GLfloat s - GLfloat t - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN - const GLuint *rc - const GLfloat *tc - const GLfloat *n - const GLfloat *v - - - void glReplacementCodeuiTexCoord2fVertex3fSUN - GLuint rc - GLfloat s - GLfloat t - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiTexCoord2fVertex3fvSUN - const GLuint *rc - const GLfloat *tc - const GLfloat *v - - - void glReplacementCodeuiVertex3fSUN - GLuint rc - GLfloat x - GLfloat y - GLfloat z - - - void glReplacementCodeuiVertex3fvSUN - const GLuint *rc - const GLfloat *v - - - void glReplacementCodeuivSUN - const GLuint *code - - - void glReplacementCodeusSUN - GLushort code - - - void glReplacementCodeusvSUN - const GLushort *code - - - void glRequestResidentProgramsNV - GLsizei n - const GLuint *programs - - - - void glResetHistogram - GLenum target - - - - void glResetHistogramEXT - GLenum target - - - - - void glResetMemoryObjectParameterNV - GLuint memory - GLenum pname - - - void glResetMinmax - GLenum target - - - - void glResetMinmaxEXT - GLenum target - - - - - void glResizeBuffersMESA - - - void glResolveDepthValuesNV - - - void glResolveMultisampleFramebufferAPPLE - - - void glResumeTransformFeedback - - - void glResumeTransformFeedbackNV - - - - void glRotated - GLdouble angle - GLdouble x - GLdouble y - GLdouble z - - - - void glRotatef - GLfloat angle - GLfloat x - GLfloat y - GLfloat z - - - - void glRotatex - GLfixed angle - GLfixed x - GLfixed y - GLfixed z - - - void glRotatexOES - GLfixed angle - GLfixed x - GLfixed y - GLfixed z - - - void glSampleCoverage - GLfloat value - GLboolean invert - - - - void glSampleCoverageARB - GLfloat value - GLboolean invert - - - - void glSampleCoveragex - GLclampx value - GLboolean invert - - - void glSampleCoveragexOES - GLclampx value - GLboolean invert - - - void glSampleMapATI - GLuint dst - GLuint interp - GLenum swizzle - - - void glSampleMaskEXT - GLclampf value - GLboolean invert - - - void glSampleMaskIndexedNV - GLuint index - GLbitfield mask - - - void glSampleMaskSGIS - GLclampf value - GLboolean invert - - - - - void glSampleMaski - GLuint maskNumber - GLbitfield mask - - - void glSamplePatternEXT - GLenum pattern - - - void glSamplePatternSGIS - GLenum pattern - - - - - void glSamplerParameterIiv - GLuint sampler - GLenum pname - const GLint *param - - - void glSamplerParameterIivEXT - GLuint sampler - GLenum pname - const GLint *param - - - - void glSamplerParameterIivOES - GLuint sampler - GLenum pname - const GLint *param - - - - void glSamplerParameterIuiv - GLuint sampler - GLenum pname - const GLuint *param - - - void glSamplerParameterIuivEXT - GLuint sampler - GLenum pname - const GLuint *param - - - - void glSamplerParameterIuivOES - GLuint sampler - GLenum pname - const GLuint *param - - - - void glSamplerParameterf - GLuint sampler - GLenum pname - GLfloat param - - - void glSamplerParameterfv - GLuint sampler - GLenum pname - const GLfloat *param - - - void glSamplerParameteri - GLuint sampler - GLenum pname - GLint param - - - void glSamplerParameteriv - GLuint sampler - GLenum pname - const GLint *param - - - void glScaled - GLdouble x - GLdouble y - GLdouble z - - - - void glScalef - GLfloat x - GLfloat y - GLfloat z - - - - void glScalex - GLfixed x - GLfixed y - GLfixed z - - - void glScalexOES - GLfixed x - GLfixed y - GLfixed z - - - void glScissor - GLint x - GLint y - GLsizei width - GLsizei height - - - - void glScissorArrayv - GLuint first - GLsizei count - const GLint *v - - - void glScissorArrayvNV - GLuint first - GLsizei count - const GLint *v - - - - void glScissorArrayvOES - GLuint first - GLsizei count - const GLint *v - - - - void glScissorExclusiveArrayvNV - GLuint first - GLsizei count - const GLint *v - - - void glScissorExclusiveNV - GLint x - GLint y - GLsizei width - GLsizei height - - - void glScissorIndexed - GLuint index - GLint left - GLint bottom - GLsizei width - GLsizei height - - - void glScissorIndexedNV - GLuint index - GLint left - GLint bottom - GLsizei width - GLsizei height - - - - void glScissorIndexedOES - GLuint index - GLint left - GLint bottom - GLsizei width - GLsizei height - - - - void glScissorIndexedv - GLuint index - const GLint *v - - - void glScissorIndexedvNV - GLuint index - const GLint *v - - - - void glScissorIndexedvOES - GLuint index - const GLint *v - - - - void glSecondaryColor3b - GLbyte red - GLbyte green - GLbyte blue - - - - void glSecondaryColor3bEXT - GLbyte red - GLbyte green - GLbyte blue - - - - - void glSecondaryColor3bv - const GLbyte *v - - - - void glSecondaryColor3bvEXT - const GLbyte *v - - - - - void glSecondaryColor3d - GLdouble red - GLdouble green - GLdouble blue - - - - void glSecondaryColor3dEXT - GLdouble red - GLdouble green - GLdouble blue - - - - - void glSecondaryColor3dv - const GLdouble *v - - - - void glSecondaryColor3dvEXT - const GLdouble *v - - - - - void glSecondaryColor3f - GLfloat red - GLfloat green - GLfloat blue - - - - void glSecondaryColor3fEXT - GLfloat red - GLfloat green - GLfloat blue - - - - - void glSecondaryColor3fv - const GLfloat *v - - - - void glSecondaryColor3fvEXT - const GLfloat *v - - - - - void glSecondaryColor3hNV - GLhalfNV red - GLhalfNV green - GLhalfNV blue - - - - void glSecondaryColor3hvNV - const GLhalfNV *v - - - - void glSecondaryColor3i - GLint red - GLint green - GLint blue - - - - void glSecondaryColor3iEXT - GLint red - GLint green - GLint blue - - - - - void glSecondaryColor3iv - const GLint *v - - - - void glSecondaryColor3ivEXT - const GLint *v - - - - - void glSecondaryColor3s - GLshort red - GLshort green - GLshort blue - - - - void glSecondaryColor3sEXT - GLshort red - GLshort green - GLshort blue - - - - - void glSecondaryColor3sv - const GLshort *v - - - - void glSecondaryColor3svEXT - const GLshort *v - - - - - void glSecondaryColor3ub - GLubyte red - GLubyte green - GLubyte blue - - - - void glSecondaryColor3ubEXT - GLubyte red - GLubyte green - GLubyte blue - - - - - void glSecondaryColor3ubv - const GLubyte *v - - - - void glSecondaryColor3ubvEXT - const GLubyte *v - - - - - void glSecondaryColor3ui - GLuint red - GLuint green - GLuint blue - - - - void glSecondaryColor3uiEXT - GLuint red - GLuint green - GLuint blue - - - - - void glSecondaryColor3uiv - const GLuint *v - - - - void glSecondaryColor3uivEXT - const GLuint *v - - - - - void glSecondaryColor3us - GLushort red - GLushort green - GLushort blue - - - - void glSecondaryColor3usEXT - GLushort red - GLushort green - GLushort blue - - - - - void glSecondaryColor3usv - const GLushort *v - - - - void glSecondaryColor3usvEXT - const GLushort *v - - - - - void glSecondaryColorFormatNV - GLint size - GLenum type - GLsizei stride - - - void glSecondaryColorP3ui - GLenum type - GLuint color - - - void glSecondaryColorP3uiv - GLenum type - const GLuint *color - - - void glSecondaryColorPointer - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glSecondaryColorPointerEXT - GLint size - GLenum type - GLsizei stride - const void *pointer - - - - void glSecondaryColorPointerListIBM - GLint size - GLenum type - GLint stride - const void **pointer - GLint ptrstride - - - void glSelectBuffer - GLsizei size - GLuint *buffer - - - - void glSelectPerfMonitorCountersAMD - GLuint monitor - GLboolean enable - GLuint group - GLint numCounters - GLuint *counterList - - - void glSemaphoreParameterivNV - GLuint semaphore - GLenum pname - const GLint *params - - - void glSemaphoreParameterui64vEXT - GLuint semaphore - GLenum pname - const GLuint64 *params - - - void glSeparableFilter2D - GLenum target - GLenum internalformat - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *row - const void *column - - - - - void glSeparableFilter2DEXT - GLenum target - GLenum internalformat - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *row - const void *column - - - - - void glSetFenceAPPLE - GLuint fence - - - void glSetFenceNV - GLuint fence - GLenum condition - - - void glSetFragmentShaderConstantATI - GLuint dst - const GLfloat *value - - - void glSetInvariantEXT - GLuint id - GLenum type - const void *addr - - - void glSetLocalConstantEXT - GLuint id - GLenum type - const void *addr - - - void glSetMultisamplefvAMD - GLenum pname - GLuint index - const GLfloat *val - - - void glShadeModel - GLenum mode - - - - void glShaderBinary - GLsizei count - const GLuint *shaders - GLenum binaryFormat - const void *binary - GLsizei length - - - void glShaderOp1EXT - GLenum op - GLuint res - GLuint arg1 - - - void glShaderOp2EXT - GLenum op - GLuint res - GLuint arg1 - GLuint arg2 - - - void glShaderOp3EXT - GLenum op - GLuint res - GLuint arg1 - GLuint arg2 - GLuint arg3 - - - void glShaderSource - GLuint shader - GLsizei count - const GLchar *const*string - const GLint *length - - - void glShaderSourceARB - GLhandleARB shaderObj - GLsizei count - const GLcharARB **string - const GLint *length - - - - void glShaderStorageBlockBinding - GLuint program - GLuint storageBlockIndex - GLuint storageBlockBinding - - - void glShadingRateImageBarrierNV - GLboolean synchronize - - - void glShadingRateQCOM - GLenum rate - - - void glShadingRateImagePaletteNV - GLuint viewport - GLuint first - GLsizei count - const GLenum *rates - - - void glShadingRateSampleOrderNV - GLenum order - - - void glShadingRateSampleOrderCustomNV - GLenum rate - GLuint samples - const GLint *locations - - - void glSharpenTexFuncSGIS - GLenum target - GLsizei n - const GLfloat *points - - - - void glSignalSemaphoreEXT - GLuint semaphore - GLuint numBufferBarriers - const GLuint *buffers - GLuint numTextureBarriers - const GLuint *textures - const GLenum *dstLayouts - - - void glSignalSemaphoreui64NVX - GLuint signalGpu - GLsizei fenceObjectCount - const GLuint *semaphoreArray - const GLuint64 *fenceValueArray - - - void glSpecializeShader - GLuint shader - const GLchar *pEntryPoint - GLuint numSpecializationConstants - const GLuint *pConstantIndex - const GLuint *pConstantValue - - - void glSpecializeShaderARB - GLuint shader - const GLchar *pEntryPoint - GLuint numSpecializationConstants - const GLuint *pConstantIndex - const GLuint *pConstantValue - - - - void glSpriteParameterfSGIX - GLenum pname - GLfloat param - - - - void glSpriteParameterfvSGIX - GLenum pname - const GLfloat *params - - - - void glSpriteParameteriSGIX - GLenum pname - GLint param - - - - void glSpriteParameterivSGIX - GLenum pname - const GLint *params - - - - void glStartInstrumentsSGIX - - - - void glStartTilingQCOM - GLuint x - GLuint y - GLuint width - GLuint height - GLbitfield preserveMask - - - void glStateCaptureNV - GLuint state - GLenum mode - - - void glStencilClearTagEXT - GLsizei stencilTagBits - GLuint stencilClearTag - - - - void glStencilFillPathInstancedNV - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLenum fillMode - GLuint mask - GLenum transformType - const GLfloat *transformValues - - - void glStencilFillPathNV - GLuint path - GLenum fillMode - GLuint mask - - - void glStencilFunc - GLenum func - GLint ref - GLuint mask - - - - void glStencilFuncSeparate - GLenum face - GLenum func - GLint ref - GLuint mask - - - void glStencilFuncSeparateATI - GLenum frontfunc - GLenum backfunc - GLint ref - GLuint mask - - - void glStencilMask - GLuint mask - - - - void glStencilMaskSeparate - GLenum face - GLuint mask - - - void glStencilOp - GLenum fail - GLenum zfail - GLenum zpass - - - - void glStencilOpSeparate - GLenum face - GLenum sfail - GLenum dpfail - GLenum dppass - - - void glStencilOpSeparateATI - GLenum face - GLenum sfail - GLenum dpfail - GLenum dppass - - - - void glStencilOpValueAMD - GLenum face - GLuint value - - - void glStencilStrokePathInstancedNV - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLint reference - GLuint mask - GLenum transformType - const GLfloat *transformValues - - - void glStencilStrokePathNV - GLuint path - GLint reference - GLuint mask - - - void glStencilThenCoverFillPathInstancedNV - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLenum fillMode - GLuint mask - GLenum coverMode - GLenum transformType - const GLfloat *transformValues - - - void glStencilThenCoverFillPathNV - GLuint path - GLenum fillMode - GLuint mask - GLenum coverMode - - - void glStencilThenCoverStrokePathInstancedNV - GLsizei numPaths - GLenum pathNameType - const void *paths - GLuint pathBase - GLint reference - GLuint mask - GLenum coverMode - GLenum transformType - const GLfloat *transformValues - - - void glStencilThenCoverStrokePathNV - GLuint path - GLint reference - GLuint mask - GLenum coverMode - - - void glStopInstrumentsSGIX - GLint marker - - - - void glStringMarkerGREMEDY - GLsizei len - const void *string - - - void glSubpixelPrecisionBiasNV - GLuint xbits - GLuint ybits - - - void glSwizzleEXT - GLuint res - GLuint in - GLenum outX - GLenum outY - GLenum outZ - GLenum outW - - - void glSyncTextureINTEL - GLuint texture - - - void glTagSampleBufferSGIX - - - - void glTangent3bEXT - GLbyte tx - GLbyte ty - GLbyte tz - - - - void glTangent3bvEXT - const GLbyte *v - - - void glTangent3dEXT - GLdouble tx - GLdouble ty - GLdouble tz - - - - void glTangent3dvEXT - const GLdouble *v - - - void glTangent3fEXT - GLfloat tx - GLfloat ty - GLfloat tz - - - - void glTangent3fvEXT - const GLfloat *v - - - void glTangent3iEXT - GLint tx - GLint ty - GLint tz - - - - void glTangent3ivEXT - const GLint *v - - - void glTangent3sEXT - GLshort tx - GLshort ty - GLshort tz - - - - void glTangent3svEXT - const GLshort *v - - - void glTangentPointerEXT - GLenum type - GLsizei stride - const void *pointer - - - void glTbufferMask3DFX - GLuint mask - - - void glTessellationFactorAMD - GLfloat factor - - - void glTessellationModeAMD - GLenum mode - - - GLboolean glTestFenceAPPLE - GLuint fence - - - GLboolean glTestFenceNV - GLuint fence - - - - GLboolean glTestObjectAPPLE - GLenum object - GLuint name - - - void glTexAttachMemoryNV - GLenum target - GLuint memory - GLuint64 offset - - - void glTexBuffer - GLenum target - GLenum internalformat - GLuint buffer - - - void glTexBufferARB - GLenum target - GLenum internalformat - GLuint buffer - - - - - void glTexBufferEXT - GLenum target - GLenum internalformat - GLuint buffer - - - - void glTexBufferOES - GLenum target - GLenum internalformat - GLuint buffer - - - - void glTexBufferRange - GLenum target - GLenum internalformat - GLuint buffer - GLintptr offset - GLsizeiptr size - - - void glTexBufferRangeEXT - GLenum target - GLenum internalformat - GLuint buffer - GLintptr offset - GLsizeiptr size - - - - void glTexBufferRangeOES - GLenum target - GLenum internalformat - GLuint buffer - GLintptr offset - GLsizeiptr size - - - - void glTexBumpParameterfvATI - GLenum pname - const GLfloat *param - - - void glTexBumpParameterivATI - GLenum pname - const GLint *param - - - void glTexCoord1bOES - GLbyte s - - - void glTexCoord1bvOES - const GLbyte *coords - - - void glTexCoord1d - GLdouble s - - - - void glTexCoord1dv - const GLdouble *v - - - - void glTexCoord1f - GLfloat s - - - - void glTexCoord1fv - const GLfloat *v - - - - void glTexCoord1hNV - GLhalfNV s - - - - void glTexCoord1hvNV - const GLhalfNV *v - - - - void glTexCoord1i - GLint s - - - - void glTexCoord1iv - const GLint *v - - - - void glTexCoord1s - GLshort s - - - - void glTexCoord1sv - const GLshort *v - - - - void glTexCoord1xOES - GLfixed s - - - void glTexCoord1xvOES - const GLfixed *coords - - - void glTexCoord2bOES - GLbyte s - GLbyte t - - - void glTexCoord2bvOES - const GLbyte *coords - - - void glTexCoord2d - GLdouble s - GLdouble t - - - - void glTexCoord2dv - const GLdouble *v - - - - void glTexCoord2f - GLfloat s - GLfloat t - - - - void glTexCoord2fColor3fVertex3fSUN - GLfloat s - GLfloat t - GLfloat r - GLfloat g - GLfloat b - GLfloat x - GLfloat y - GLfloat z - - - void glTexCoord2fColor3fVertex3fvSUN - const GLfloat *tc - const GLfloat *c - const GLfloat *v - - - void glTexCoord2fColor4fNormal3fVertex3fSUN - GLfloat s - GLfloat t - GLfloat r - GLfloat g - GLfloat b - GLfloat a - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glTexCoord2fColor4fNormal3fVertex3fvSUN - const GLfloat *tc - const GLfloat *c - const GLfloat *n - const GLfloat *v - - - void glTexCoord2fColor4ubVertex3fSUN - GLfloat s - GLfloat t - GLubyte r - GLubyte g - GLubyte b - GLubyte a - GLfloat x - GLfloat y - GLfloat z - - - void glTexCoord2fColor4ubVertex3fvSUN - const GLfloat *tc - const GLubyte *c - const GLfloat *v - - - void glTexCoord2fNormal3fVertex3fSUN - GLfloat s - GLfloat t - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - - - void glTexCoord2fNormal3fVertex3fvSUN - const GLfloat *tc - const GLfloat *n - const GLfloat *v - - - void glTexCoord2fVertex3fSUN - GLfloat s - GLfloat t - GLfloat x - GLfloat y - GLfloat z - - - void glTexCoord2fVertex3fvSUN - const GLfloat *tc - const GLfloat *v - - - void glTexCoord2fv - const GLfloat *v - - - - void glTexCoord2hNV - GLhalfNV s - GLhalfNV t - - - - void glTexCoord2hvNV - const GLhalfNV *v - - - - void glTexCoord2i - GLint s - GLint t - - - - void glTexCoord2iv - const GLint *v - - - - void glTexCoord2s - GLshort s - GLshort t - - - - void glTexCoord2sv - const GLshort *v - - - - void glTexCoord2xOES - GLfixed s - GLfixed t - - - void glTexCoord2xvOES - const GLfixed *coords - - - void glTexCoord3bOES - GLbyte s - GLbyte t - GLbyte r - - - void glTexCoord3bvOES - const GLbyte *coords - - - void glTexCoord3d - GLdouble s - GLdouble t - GLdouble r - - - - void glTexCoord3dv - const GLdouble *v - - - - void glTexCoord3f - GLfloat s - GLfloat t - GLfloat r - - - - void glTexCoord3fv - const GLfloat *v - - - - void glTexCoord3hNV - GLhalfNV s - GLhalfNV t - GLhalfNV r - - - - void glTexCoord3hvNV - const GLhalfNV *v - - - - void glTexCoord3i - GLint s - GLint t - GLint r - - - - void glTexCoord3iv - const GLint *v - - - - void glTexCoord3s - GLshort s - GLshort t - GLshort r - - - - void glTexCoord3sv - const GLshort *v - - - - void glTexCoord3xOES - GLfixed s - GLfixed t - GLfixed r - - - void glTexCoord3xvOES - const GLfixed *coords - - - void glTexCoord4bOES - GLbyte s - GLbyte t - GLbyte r - GLbyte q - - - void glTexCoord4bvOES - const GLbyte *coords - - - void glTexCoord4d - GLdouble s - GLdouble t - GLdouble r - GLdouble q - - - - void glTexCoord4dv - const GLdouble *v - - - - void glTexCoord4f - GLfloat s - GLfloat t - GLfloat r - GLfloat q - - - - void glTexCoord4fColor4fNormal3fVertex4fSUN - GLfloat s - GLfloat t - GLfloat p - GLfloat q - GLfloat r - GLfloat g - GLfloat b - GLfloat a - GLfloat nx - GLfloat ny - GLfloat nz - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - void glTexCoord4fColor4fNormal3fVertex4fvSUN - const GLfloat *tc - const GLfloat *c - const GLfloat *n - const GLfloat *v - - - void glTexCoord4fVertex4fSUN - GLfloat s - GLfloat t - GLfloat p - GLfloat q - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - void glTexCoord4fVertex4fvSUN - const GLfloat *tc - const GLfloat *v - - - void glTexCoord4fv - const GLfloat *v - - - - void glTexCoord4hNV - GLhalfNV s - GLhalfNV t - GLhalfNV r - GLhalfNV q - - - - void glTexCoord4hvNV - const GLhalfNV *v - - - - void glTexCoord4i - GLint s - GLint t - GLint r - GLint q - - - - void glTexCoord4iv - const GLint *v - - - - void glTexCoord4s - GLshort s - GLshort t - GLshort r - GLshort q - - - - void glTexCoord4sv - const GLshort *v - - - - void glTexCoord4xOES - GLfixed s - GLfixed t - GLfixed r - GLfixed q - - - void glTexCoord4xvOES - const GLfixed *coords - - - void glTexCoordFormatNV - GLint size - GLenum type - GLsizei stride - - - void glTexCoordP1ui - GLenum type - GLuint coords - - - void glTexCoordP1uiv - GLenum type - const GLuint *coords - - - void glTexCoordP2ui - GLenum type - GLuint coords - - - void glTexCoordP2uiv - GLenum type - const GLuint *coords - - - void glTexCoordP3ui - GLenum type - GLuint coords - - - void glTexCoordP3uiv - GLenum type - const GLuint *coords - - - void glTexCoordP4ui - GLenum type - GLuint coords - - - void glTexCoordP4uiv - GLenum type - const GLuint *coords - - - void glTexCoordPointer - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glTexCoordPointerEXT - GLint size - GLenum type - GLsizei stride - GLsizei count - const void *pointer - - - void glTexCoordPointerListIBM - GLint size - GLenum type - GLint stride - const void **pointer - GLint ptrstride - - - void glTexCoordPointervINTEL - GLint size - GLenum type - const void **pointer - - - void glTexEnvf - GLenum target - GLenum pname - GLfloat param - - - - void glTexEnvfv - GLenum target - GLenum pname - const GLfloat *params - - - - void glTexEnvi - GLenum target - GLenum pname - GLint param - - - - void glTexEnviv - GLenum target - GLenum pname - const GLint *params - - - - void glTexEnvx - GLenum target - GLenum pname - GLfixed param - - - void glTexEnvxOES - GLenum target - GLenum pname - GLfixed param - - - void glTexEnvxv - GLenum target - GLenum pname - const GLfixed *params - - - void glTexEnvxvOES - GLenum target - GLenum pname - const GLfixed *params - - - void glTexEstimateMotionQCOM - GLuint ref - GLuint target - GLuint output - - - void glTexEstimateMotionRegionsQCOM - GLuint ref - GLuint target - GLuint output - GLuint mask - - - void glExtrapolateTex2DQCOM - GLuint src1 - GLuint src2 - GLuint output - GLfloat scaleFactor - - - void glTexFilterFuncSGIS - GLenum target - GLenum filter - GLsizei n - const GLfloat *weights - - - - void glTexGend - GLenum coord - GLenum pname - GLdouble param - - - - void glTexGendv - GLenum coord - GLenum pname - const GLdouble *params - - - - void glTexGenf - GLenum coord - GLenum pname - GLfloat param - - - - void glTexGenfOES - GLenum coord - GLenum pname - GLfloat param - - - void glTexGenfv - GLenum coord - GLenum pname - const GLfloat *params - - - - void glTexGenfvOES - GLenum coord - GLenum pname - const GLfloat *params - - - void glTexGeni - GLenum coord - GLenum pname - GLint param - - - - void glTexGeniOES - GLenum coord - GLenum pname - GLint param - - - void glTexGeniv - GLenum coord - GLenum pname - const GLint *params - - - - void glTexGenivOES - GLenum coord - GLenum pname - const GLint *params - - - void glTexGenxOES - GLenum coord - GLenum pname - GLfixed param - - - void glTexGenxvOES - GLenum coord - GLenum pname - const GLfixed *params - - - void glTexImage1D - GLenum target - GLint level - GLint internalformat - GLsizei width - GLint border - GLenum format - GLenum type - const void *pixels - - - - - void glTexImage2D - GLenum target - GLint level - GLint internalformat - GLsizei width - GLsizei height - GLint border - GLenum format - GLenum type - const void *pixels - - - - - void glTexImage2DMultisample - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLboolean fixedsamplelocations - - - void glTexImage2DMultisampleCoverageNV - GLenum target - GLsizei coverageSamples - GLsizei colorSamples - GLint internalFormat - GLsizei width - GLsizei height - GLboolean fixedSampleLocations - - - void glTexImage3D - GLenum target - GLint level - GLint internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLenum format - GLenum type - const void *pixels - - - - - void glTexImage3DEXT - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLenum format - GLenum type - const void *pixels - - - - - void glTexImage3DMultisample - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedsamplelocations - - - void glTexImage3DMultisampleCoverageNV - GLenum target - GLsizei coverageSamples - GLsizei colorSamples - GLint internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedSampleLocations - - - void glTexImage3DOES - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLenum format - GLenum type - const void *pixels - - - void glTexImage4DSGIS - GLenum target - GLint level - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLsizei size4d - GLint border - GLenum format - GLenum type - const void *pixels - - - - void glTexPageCommitmentARB - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLboolean commit - - - void glTexPageCommitmentEXT - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLboolean commit - - - - void glTexPageCommitmentMemNV - GLenum target - GLint layer - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLuint memory - GLuint64 offset - GLboolean commit - - - void glTexParameterIiv - GLenum target - GLenum pname - const GLint *params - - - - void glTexParameterIivEXT - GLenum target - GLenum pname - const GLint *params - - - - void glTexParameterIivOES - GLenum target - GLenum pname - const GLint *params - - - - void glTexParameterIuiv - GLenum target - GLenum pname - const GLuint *params - - - - void glTexParameterIuivEXT - GLenum target - GLenum pname - const GLuint *params - - - - void glTexParameterIuivOES - GLenum target - GLenum pname - const GLuint *params - - - - void glTexParameterf - GLenum target - GLenum pname - GLfloat param - - - - void glTexParameterfv - GLenum target - GLenum pname - const GLfloat *params - - - - void glTexParameteri - GLenum target - GLenum pname - GLint param - - - - void glTexParameteriv - GLenum target - GLenum pname - const GLint *params - - - - void glTexParameterx - GLenum target - GLenum pname - GLfixed param - - - void glTexParameterxOES - GLenum target - GLenum pname - GLfixed param - - - void glTexParameterxv - GLenum target - GLenum pname - const GLfixed *params - - - void glTexParameterxvOES - GLenum target - GLenum pname - const GLfixed *params - - - void glTexRenderbufferNV - GLenum target - GLuint renderbuffer - - - void glTexStorage1D - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - - - void glTexStorage1DEXT - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - - - - void glTexStorage2D - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - - - void glTexStorage2DEXT - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - - - - void glTexStorage2DMultisample - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLboolean fixedsamplelocations - - - void glTexStorage3D - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - - - void glTexStorage3DEXT - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - - - - void glTexStorage3DMultisample - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedsamplelocations - - - void glTexStorage3DMultisampleOES - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedsamplelocations - - - - void TexStorageAttribs2DEXT - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - const int *attrib_list - - - void TexStorageAttribs3DEXT - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - const int *attrib_list - - - void glTexStorageMem1DEXT - GLenum target - GLsizei levels - GLenum internalFormat - GLsizei width - GLuint memory - GLuint64 offset - - - void glTexStorageMem2DEXT - GLenum target - GLsizei levels - GLenum internalFormat - GLsizei width - GLsizei height - GLuint memory - GLuint64 offset - - - void glTexStorageMem2DMultisampleEXT - GLenum target - GLsizei samples - GLenum internalFormat - GLsizei width - GLsizei height - GLboolean fixedSampleLocations - GLuint memory - GLuint64 offset - - - void glTexStorageMem3DEXT - GLenum target - GLsizei levels - GLenum internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLuint memory - GLuint64 offset - - - void glTexStorageMem3DMultisampleEXT - GLenum target - GLsizei samples - GLenum internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedSampleLocations - GLuint memory - GLuint64 offset - - - void glTexStorageSparseAMD - GLenum target - GLenum internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLsizei layers - GLbitfield flags - - - void glTexSubImage1D - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLenum type - const void *pixels - - - - - void glTexSubImage1DEXT - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLenum type - const void *pixels - - - - - void glTexSubImage2D - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *pixels - - - - - void glTexSubImage2DEXT - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *pixels - - - - - void glTexSubImage3D - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *pixels - - - - - void glTexSubImage3DEXT - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *pixels - - - - - void glTexSubImage3DOES - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *pixels - - - void glTexSubImage4DSGIS - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLint woffset - GLsizei width - GLsizei height - GLsizei depth - GLsizei size4d - GLenum format - GLenum type - const void *pixels - - - - void glTextureAttachMemoryNV - GLuint texture - GLuint memory - GLuint64 offset - - - void glTextureBarrier - - - void glTextureBarrierNV - - - - void glTextureBuffer - GLuint texture - GLenum internalformat - GLuint buffer - - - void glTextureBufferEXT - GLuint texture - GLenum target - GLenum internalformat - GLuint buffer - - - void glTextureBufferRange - GLuint texture - GLenum internalformat - GLuint buffer - GLintptr offset - GLsizeiptr size - - - void glTextureBufferRangeEXT - GLuint texture - GLenum target - GLenum internalformat - GLuint buffer - GLintptr offset - GLsizeiptr size - - - void glTextureColorMaskSGIS - GLboolean red - GLboolean green - GLboolean blue - GLboolean alpha - - - - void glTextureFoveationParametersQCOM - GLuint texture - GLuint layer - GLuint focalPoint - GLfloat focalX - GLfloat focalY - GLfloat gainX - GLfloat gainY - GLfloat foveaArea - - - void glTextureImage1DEXT - GLuint texture - GLenum target - GLint level - GLint internalformat - GLsizei width - GLint border - GLenum format - GLenum type - const void *pixels - - - void glTextureImage2DEXT - GLuint texture - GLenum target - GLint level - GLint internalformat - GLsizei width - GLsizei height - GLint border - GLenum format - GLenum type - const void *pixels - - - void glTextureImage2DMultisampleCoverageNV - GLuint texture - GLenum target - GLsizei coverageSamples - GLsizei colorSamples - GLint internalFormat - GLsizei width - GLsizei height - GLboolean fixedSampleLocations - - - void glTextureImage2DMultisampleNV - GLuint texture - GLenum target - GLsizei samples - GLint internalFormat - GLsizei width - GLsizei height - GLboolean fixedSampleLocations - - - void glTextureImage3DEXT - GLuint texture - GLenum target - GLint level - GLint internalformat - GLsizei width - GLsizei height - GLsizei depth - GLint border - GLenum format - GLenum type - const void *pixels - - - void glTextureImage3DMultisampleCoverageNV - GLuint texture - GLenum target - GLsizei coverageSamples - GLsizei colorSamples - GLint internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedSampleLocations - - - void glTextureImage3DMultisampleNV - GLuint texture - GLenum target - GLsizei samples - GLint internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedSampleLocations - - - void glTextureLightEXT - GLenum pname - - - void glTextureMaterialEXT - GLenum face - GLenum mode - - - void glTextureNormalEXT - GLenum mode - - - void glTexturePageCommitmentEXT - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLboolean commit - - - void glTexturePageCommitmentMemNV - GLuint texture - GLint layer - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLuint memory - GLuint64 offset - GLboolean commit - - - void glTextureParameterIiv - GLuint texture - GLenum pname - const GLint *params - - - void glTextureParameterIivEXT - GLuint texture - GLenum target - GLenum pname - const GLint *params - - - void glTextureParameterIuiv - GLuint texture - GLenum pname - const GLuint *params - - - void glTextureParameterIuivEXT - GLuint texture - GLenum target - GLenum pname - const GLuint *params - - - void glTextureParameterf - GLuint texture - GLenum pname - GLfloat param - - - void glTextureParameterfEXT - GLuint texture - GLenum target - GLenum pname - GLfloat param - - - - void glTextureParameterfv - GLuint texture - GLenum pname - const GLfloat *param - - - void glTextureParameterfvEXT - GLuint texture - GLenum target - GLenum pname - const GLfloat *params - - - void glTextureParameteri - GLuint texture - GLenum pname - GLint param - - - void glTextureParameteriEXT - GLuint texture - GLenum target - GLenum pname - GLint param - - - - void glTextureParameteriv - GLuint texture - GLenum pname - const GLint *param - - - void glTextureParameterivEXT - GLuint texture - GLenum target - GLenum pname - const GLint *params - - - void glTextureRangeAPPLE - GLenum target - GLsizei length - const void *pointer - - - void glTextureRenderbufferEXT - GLuint texture - GLenum target - GLuint renderbuffer - - - void glTextureStorage1D - GLuint texture - GLsizei levels - GLenum internalformat - GLsizei width - - - void glTextureStorage1DEXT - GLuint texture - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - - - void glTextureStorage2D - GLuint texture - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - - - void glTextureStorage2DEXT - GLuint texture - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - - - void glTextureStorage2DMultisample - GLuint texture - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLboolean fixedsamplelocations - - - void glTextureStorage2DMultisampleEXT - GLuint texture - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLboolean fixedsamplelocations - - - void glTextureStorage3D - GLuint texture - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - - - void glTextureStorage3DEXT - GLuint texture - GLenum target - GLsizei levels - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - - - void glTextureStorage3DMultisample - GLuint texture - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedsamplelocations - - - void glTextureStorage3DMultisampleEXT - GLuint texture - GLenum target - GLsizei samples - GLenum internalformat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedsamplelocations - - - void glTextureStorageMem1DEXT - GLuint texture - GLsizei levels - GLenum internalFormat - GLsizei width - GLuint memory - GLuint64 offset - - - void glTextureStorageMem2DEXT - GLuint texture - GLsizei levels - GLenum internalFormat - GLsizei width - GLsizei height - GLuint memory - GLuint64 offset - - - void glTextureStorageMem2DMultisampleEXT - GLuint texture - GLsizei samples - GLenum internalFormat - GLsizei width - GLsizei height - GLboolean fixedSampleLocations - GLuint memory - GLuint64 offset - - - void glTextureStorageMem3DEXT - GLuint texture - GLsizei levels - GLenum internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLuint memory - GLuint64 offset - - - void glTextureStorageMem3DMultisampleEXT - GLuint texture - GLsizei samples - GLenum internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLboolean fixedSampleLocations - GLuint memory - GLuint64 offset - - - void glTextureStorageSparseAMD - GLuint texture - GLenum target - GLenum internalFormat - GLsizei width - GLsizei height - GLsizei depth - GLsizei layers - GLbitfield flags - - - void glTextureSubImage1D - GLuint texture - GLint level - GLint xoffset - GLsizei width - GLenum format - GLenum type - const void *pixels - - - void glTextureSubImage1DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLsizei width - GLenum format - GLenum type - const void *pixels - - - void glTextureSubImage2D - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *pixels - - - void glTextureSubImage2DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLsizei width - GLsizei height - GLenum format - GLenum type - const void *pixels - - - void glTextureSubImage3D - GLuint texture - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *pixels - - - void glTextureSubImage3DEXT - GLuint texture - GLenum target - GLint level - GLint xoffset - GLint yoffset - GLint zoffset - GLsizei width - GLsizei height - GLsizei depth - GLenum format - GLenum type - const void *pixels - - - void glTextureView - GLuint texture - GLenum target - GLuint origtexture - GLenum internalformat - GLuint minlevel - GLuint numlevels - GLuint minlayer - GLuint numlayers - - - void glTextureViewEXT - GLuint texture - GLenum target - GLuint origtexture - GLenum internalformat - GLuint minlevel - GLuint numlevels - GLuint minlayer - GLuint numlayers - - - - void glTextureViewOES - GLuint texture - GLenum target - GLuint origtexture - GLenum internalformat - GLuint minlevel - GLuint numlevels - GLuint minlayer - GLuint numlayers - - - - void glTrackMatrixNV - GLenum target - GLuint address - GLenum matrix - GLenum transform - - - - void glTransformFeedbackAttribsNV - GLsizei count - const GLint *attribs - GLenum bufferMode - - - void glTransformFeedbackBufferBase - GLuint xfb - GLuint index - GLuint buffer - - - void glTransformFeedbackBufferRange - GLuint xfb - GLuint index - GLuint buffer - GLintptr offset - GLsizeiptr size - - - void glTransformFeedbackStreamAttribsNV - GLsizei count - const GLint *attribs - GLsizei nbuffers - const GLint *bufstreams - GLenum bufferMode - - - void glTransformFeedbackVaryings - GLuint program - GLsizei count - const GLchar *const*varyings - GLenum bufferMode - - - - void glTransformFeedbackVaryingsEXT - GLuint program - GLsizei count - const GLchar *const*varyings - GLenum bufferMode - - - - void glTransformFeedbackVaryingsNV - GLuint program - GLsizei count - const GLint *locations - GLenum bufferMode - - - void glTransformPathNV - GLuint resultPath - GLuint srcPath - GLenum transformType - const GLfloat *transformValues - - - void glTranslated - GLdouble x - GLdouble y - GLdouble z - - - - void glTranslatef - GLfloat x - GLfloat y - GLfloat z - - - - void glTranslatex - GLfixed x - GLfixed y - GLfixed z - - - void glTranslatexOES - GLfixed x - GLfixed y - GLfixed z - - - void glUniform1d - GLint location - GLdouble x - - - void glUniform1dv - GLint location - GLsizei count - const GLdouble *value - - - void glUniform1f - GLint location - GLfloat v0 - - - void glUniform1fARB - GLint location - GLfloat v0 - - - - void glUniform1fv - GLint location - GLsizei count - const GLfloat *value - - - void glUniform1fvARB - GLint location - GLsizei count - const GLfloat *value - - - - void glUniform1i - GLint location - GLint v0 - - - void glUniform1i64ARB - GLint location - GLint64 x - - - void glUniform1i64NV - GLint location - GLint64EXT x - - - void glUniform1i64vARB - GLint location - GLsizei count - const GLint64 *value - - - void glUniform1i64vNV - GLint location - GLsizei count - const GLint64EXT *value - - - void glUniform1iARB - GLint location - GLint v0 - - - - void glUniform1iv - GLint location - GLsizei count - const GLint *value - - - void glUniform1ivARB - GLint location - GLsizei count - const GLint *value - - - - void glUniform1ui - GLint location - GLuint v0 - - - void glUniform1ui64ARB - GLint location - GLuint64 x - - - void glUniform1ui64NV - GLint location - GLuint64EXT x - - - void glUniform1ui64vARB - GLint location - GLsizei count - const GLuint64 *value - - - void glUniform1ui64vNV - GLint location - GLsizei count - const GLuint64EXT *value - - - void glUniform1uiEXT - GLint location - GLuint v0 - - - - void glUniform1uiv - GLint location - GLsizei count - const GLuint *value - - - void glUniform1uivEXT - GLint location - GLsizei count - const GLuint *value - - - - void glUniform2d - GLint location - GLdouble x - GLdouble y - - - void glUniform2dv - GLint location - GLsizei count - const GLdouble *value - - - void glUniform2f - GLint location - GLfloat v0 - GLfloat v1 - - - void glUniform2fARB - GLint location - GLfloat v0 - GLfloat v1 - - - - void glUniform2fv - GLint location - GLsizei count - const GLfloat *value - - - void glUniform2fvARB - GLint location - GLsizei count - const GLfloat *value - - - - void glUniform2i - GLint location - GLint v0 - GLint v1 - - - void glUniform2i64ARB - GLint location - GLint64 x - GLint64 y - - - void glUniform2i64NV - GLint location - GLint64EXT x - GLint64EXT y - - - void glUniform2i64vARB - GLint location - GLsizei count - const GLint64 *value - - - void glUniform2i64vNV - GLint location - GLsizei count - const GLint64EXT *value - - - void glUniform2iARB - GLint location - GLint v0 - GLint v1 - - - - void glUniform2iv - GLint location - GLsizei count - const GLint *value - - - void glUniform2ivARB - GLint location - GLsizei count - const GLint *value - - - - void glUniform2ui - GLint location - GLuint v0 - GLuint v1 - - - void glUniform2ui64ARB - GLint location - GLuint64 x - GLuint64 y - - - void glUniform2ui64NV - GLint location - GLuint64EXT x - GLuint64EXT y - - - void glUniform2ui64vARB - GLint location - GLsizei count - const GLuint64 *value - - - void glUniform2ui64vNV - GLint location - GLsizei count - const GLuint64EXT *value - - - void glUniform2uiEXT - GLint location - GLuint v0 - GLuint v1 - - - - void glUniform2uiv - GLint location - GLsizei count - const GLuint *value - - - void glUniform2uivEXT - GLint location - GLsizei count - const GLuint *value - - - - void glUniform3d - GLint location - GLdouble x - GLdouble y - GLdouble z - - - void glUniform3dv - GLint location - GLsizei count - const GLdouble *value - - - void glUniform3f - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - - - void glUniform3fARB - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - - - - void glUniform3fv - GLint location - GLsizei count - const GLfloat *value - - - void glUniform3fvARB - GLint location - GLsizei count - const GLfloat *value - - - - void glUniform3i - GLint location - GLint v0 - GLint v1 - GLint v2 - - - void glUniform3i64ARB - GLint location - GLint64 x - GLint64 y - GLint64 z - - - void glUniform3i64NV - GLint location - GLint64EXT x - GLint64EXT y - GLint64EXT z - - - void glUniform3i64vARB - GLint location - GLsizei count - const GLint64 *value - - - void glUniform3i64vNV - GLint location - GLsizei count - const GLint64EXT *value - - - void glUniform3iARB - GLint location - GLint v0 - GLint v1 - GLint v2 - - - - void glUniform3iv - GLint location - GLsizei count - const GLint *value - - - void glUniform3ivARB - GLint location - GLsizei count - const GLint *value - - - - void glUniform3ui - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - - - void glUniform3ui64ARB - GLint location - GLuint64 x - GLuint64 y - GLuint64 z - - - void glUniform3ui64NV - GLint location - GLuint64EXT x - GLuint64EXT y - GLuint64EXT z - - - void glUniform3ui64vARB - GLint location - GLsizei count - const GLuint64 *value - - - void glUniform3ui64vNV - GLint location - GLsizei count - const GLuint64EXT *value - - - void glUniform3uiEXT - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - - - - void glUniform3uiv - GLint location - GLsizei count - const GLuint *value - - - void glUniform3uivEXT - GLint location - GLsizei count - const GLuint *value - - - - void glUniform4d - GLint location - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - void glUniform4dv - GLint location - GLsizei count - const GLdouble *value - - - void glUniform4f - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - GLfloat v3 - - - void glUniform4fARB - GLint location - GLfloat v0 - GLfloat v1 - GLfloat v2 - GLfloat v3 - - - - void glUniform4fv - GLint location - GLsizei count - const GLfloat *value - - - void glUniform4fvARB - GLint location - GLsizei count - const GLfloat *value - - - - void glUniform4i - GLint location - GLint v0 - GLint v1 - GLint v2 - GLint v3 - - - void glUniform4i64ARB - GLint location - GLint64 x - GLint64 y - GLint64 z - GLint64 w - - - void glUniform4i64NV - GLint location - GLint64EXT x - GLint64EXT y - GLint64EXT z - GLint64EXT w - - - void glUniform4i64vARB - GLint location - GLsizei count - const GLint64 *value - - - void glUniform4i64vNV - GLint location - GLsizei count - const GLint64EXT *value - - - void glUniform4iARB - GLint location - GLint v0 - GLint v1 - GLint v2 - GLint v3 - - - - void glUniform4iv - GLint location - GLsizei count - const GLint *value - - - void glUniform4ivARB - GLint location - GLsizei count - const GLint *value - - - - void glUniform4ui - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - GLuint v3 - - - void glUniform4ui64ARB - GLint location - GLuint64 x - GLuint64 y - GLuint64 z - GLuint64 w - - - void glUniform4ui64NV - GLint location - GLuint64EXT x - GLuint64EXT y - GLuint64EXT z - GLuint64EXT w - - - void glUniform4ui64vARB - GLint location - GLsizei count - const GLuint64 *value - - - void glUniform4ui64vNV - GLint location - GLsizei count - const GLuint64EXT *value - - - void glUniform4uiEXT - GLint location - GLuint v0 - GLuint v1 - GLuint v2 - GLuint v3 - - - - void glUniform4uiv - GLint location - GLsizei count - const GLuint *value - - - void glUniform4uivEXT - GLint location - GLsizei count - const GLuint *value - - - - void glUniformBlockBinding - GLuint program - GLuint uniformBlockIndex - GLuint uniformBlockBinding - - - - void glUniformBufferEXT - GLuint program - GLint location - GLuint buffer - - - void glUniformHandleui64ARB - GLint location - GLuint64 value - - - void glUniformHandleui64IMG - GLint location - GLuint64 value - - - - void glUniformHandleui64NV - GLint location - GLuint64 value - - - void glUniformHandleui64vARB - GLint location - GLsizei count - const GLuint64 *value - - - void glUniformHandleui64vIMG - GLint location - GLsizei count - const GLuint64 *value - - - - void glUniformHandleui64vNV - GLint location - GLsizei count - const GLuint64 *value - - - void glUniformMatrix2dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix2fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glUniformMatrix2fvARB - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix2x3dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix2x3fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix2x3fvNV - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix2x4dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix2x4fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix2x4fvNV - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix3dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix3fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glUniformMatrix3fvARB - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix3x2dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix3x2fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix3x2fvNV - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix3x4dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix3x4fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix3x4fvNV - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix4dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix4fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - void glUniformMatrix4fvARB - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix4x2dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix4x2fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix4x2fvNV - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix4x3dv - GLint location - GLsizei count - GLboolean transpose - const GLdouble *value - - - void glUniformMatrix4x3fv - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformMatrix4x3fvNV - GLint location - GLsizei count - GLboolean transpose - const GLfloat *value - - - - void glUniformSubroutinesuiv - GLenum shadertype - GLsizei count - const GLuint *indices - - - void glUniformui64NV - GLint location - GLuint64EXT value - - - void glUniformui64vNV - GLint location - GLsizei count - const GLuint64EXT *value - - - void glUnlockArraysEXT - - - GLboolean glUnmapBuffer - GLenum target - - - GLboolean glUnmapBufferARB - GLenum target - - - - GLboolean glUnmapBufferOES - GLenum target - - - - GLboolean glUnmapNamedBuffer - GLuint buffer - - - GLboolean glUnmapNamedBufferEXT - GLuint buffer - - - void glUnmapObjectBufferATI - GLuint buffer - - - void glUnmapTexture2DINTEL - GLuint texture - GLint level - - - void glUpdateObjectBufferATI - GLuint buffer - GLuint offset - GLsizei size - const void *pointer - GLenum preserve - - - void glUploadGpuMaskNVX - GLbitfield mask - - - void glUseProgram - GLuint program - - - void glUseProgramObjectARB - GLhandleARB programObj - - - - void glUseProgramStages - GLuint pipeline - GLbitfield stages - GLuint program - - - void glUseProgramStagesEXT - GLuint pipeline - GLbitfield stages - GLuint program - - - void glUseShaderProgramEXT - GLenum type - GLuint program - - - void glVDPAUFiniNV - - - void glVDPAUGetSurfaceivNV - GLvdpauSurfaceNV surface - GLenum pname - GLsizei count - GLsizei *length - GLint *values - - - void glVDPAUInitNV - const void *vdpDevice - const void *getProcAddress - - - GLboolean glVDPAUIsSurfaceNV - GLvdpauSurfaceNV surface - - - void glVDPAUMapSurfacesNV - GLsizei numSurfaces - const GLvdpauSurfaceNV *surfaces - - - GLvdpauSurfaceNV glVDPAURegisterOutputSurfaceNV - const void *vdpSurface - GLenum target - GLsizei numTextureNames - const GLuint *textureNames - - - GLvdpauSurfaceNV glVDPAURegisterVideoSurfaceNV - const void *vdpSurface - GLenum target - GLsizei numTextureNames - const GLuint *textureNames - - - GLvdpauSurfaceNV glVDPAURegisterVideoSurfaceWithPictureStructureNV - const void *vdpSurface - GLenum target - GLsizei numTextureNames - const GLuint *textureNames - GLboolean isFrameStructure - - - void glVDPAUSurfaceAccessNV - GLvdpauSurfaceNV surface - GLenum access - - - void glVDPAUUnmapSurfacesNV - GLsizei numSurface - const GLvdpauSurfaceNV *surfaces - - - void glVDPAUUnregisterSurfaceNV - GLvdpauSurfaceNV surface - - - void glValidateProgram - GLuint program - - - void glValidateProgramARB - GLhandleARB programObj - - - - void glValidateProgramPipeline - GLuint pipeline - - - void glValidateProgramPipelineEXT - GLuint pipeline - - - void glVariantArrayObjectATI - GLuint id - GLenum type - GLsizei stride - GLuint buffer - GLuint offset - - - void glVariantPointerEXT - GLuint id - GLenum type - GLuint stride - const void *addr - - - void glVariantbvEXT - GLuint id - const GLbyte *addr - - - void glVariantdvEXT - GLuint id - const GLdouble *addr - - - void glVariantfvEXT - GLuint id - const GLfloat *addr - - - void glVariantivEXT - GLuint id - const GLint *addr - - - void glVariantsvEXT - GLuint id - const GLshort *addr - - - void glVariantubvEXT - GLuint id - const GLubyte *addr - - - void glVariantuivEXT - GLuint id - const GLuint *addr - - - void glVariantusvEXT - GLuint id - const GLushort *addr - - - void glVertex2bOES - GLbyte x - GLbyte y - - - void glVertex2bvOES - const GLbyte *coords - - - void glVertex2d - GLdouble x - GLdouble y - - - - void glVertex2dv - const GLdouble *v - - - - void glVertex2f - GLfloat x - GLfloat y - - - - void glVertex2fv - const GLfloat *v - - - - void glVertex2hNV - GLhalfNV x - GLhalfNV y - - - - void glVertex2hvNV - const GLhalfNV *v - - - - void glVertex2i - GLint x - GLint y - - - - void glVertex2iv - const GLint *v - - - - void glVertex2s - GLshort x - GLshort y - - - - void glVertex2sv - const GLshort *v - - - - void glVertex2xOES - GLfixed x - - - void glVertex2xvOES - const GLfixed *coords - - - void glVertex3bOES - GLbyte x - GLbyte y - GLbyte z - - - void glVertex3bvOES - const GLbyte *coords - - - void glVertex3d - GLdouble x - GLdouble y - GLdouble z - - - - void glVertex3dv - const GLdouble *v - - - - void glVertex3f - GLfloat x - GLfloat y - GLfloat z - - - - void glVertex3fv - const GLfloat *v - - - - void glVertex3hNV - GLhalfNV x - GLhalfNV y - GLhalfNV z - - - - void glVertex3hvNV - const GLhalfNV *v - - - - void glVertex3i - GLint x - GLint y - GLint z - - - - void glVertex3iv - const GLint *v - - - - void glVertex3s - GLshort x - GLshort y - GLshort z - - - - void glVertex3sv - const GLshort *v - - - - void glVertex3xOES - GLfixed x - GLfixed y - - - void glVertex3xvOES - const GLfixed *coords - - - void glVertex4bOES - GLbyte x - GLbyte y - GLbyte z - GLbyte w - - - void glVertex4bvOES - const GLbyte *coords - - - void glVertex4d - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glVertex4dv - const GLdouble *v - - - - void glVertex4f - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glVertex4fv - const GLfloat *v - - - - void glVertex4hNV - GLhalfNV x - GLhalfNV y - GLhalfNV z - GLhalfNV w - - - - void glVertex4hvNV - const GLhalfNV *v - - - - void glVertex4i - GLint x - GLint y - GLint z - GLint w - - - - void glVertex4iv - const GLint *v - - - - void glVertex4s - GLshort x - GLshort y - GLshort z - GLshort w - - - - void glVertex4sv - const GLshort *v - - - - void glVertex4xOES - GLfixed x - GLfixed y - GLfixed z - - - void glVertex4xvOES - const GLfixed *coords - - - void glVertexArrayAttribBinding - GLuint vaobj - GLuint attribindex - GLuint bindingindex - - - void glVertexArrayAttribFormat - GLuint vaobj - GLuint attribindex - GLint size - GLenum type - GLboolean normalized - GLuint relativeoffset - - - void glVertexArrayAttribIFormat - GLuint vaobj - GLuint attribindex - GLint size - GLenum type - GLuint relativeoffset - - - void glVertexArrayAttribLFormat - GLuint vaobj - GLuint attribindex - GLint size - GLenum type - GLuint relativeoffset - - - void glVertexArrayBindVertexBufferEXT - GLuint vaobj - GLuint bindingindex - GLuint buffer - GLintptr offset - GLsizei stride - - - void glVertexArrayBindingDivisor - GLuint vaobj - GLuint bindingindex - GLuint divisor - - - void glVertexArrayColorOffsetEXT - GLuint vaobj - GLuint buffer - GLint size - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayEdgeFlagOffsetEXT - GLuint vaobj - GLuint buffer - GLsizei stride - GLintptr offset - - - void glVertexArrayElementBuffer - GLuint vaobj - GLuint buffer - - - void glVertexArrayFogCoordOffsetEXT - GLuint vaobj - GLuint buffer - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayIndexOffsetEXT - GLuint vaobj - GLuint buffer - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayMultiTexCoordOffsetEXT - GLuint vaobj - GLuint buffer - GLenum texunit - GLint size - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayNormalOffsetEXT - GLuint vaobj - GLuint buffer - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayParameteriAPPLE - GLenum pname - GLint param - - - void glVertexArrayRangeAPPLE - GLsizei length - void *pointer - - - void glVertexArrayRangeNV - GLsizei length - const void *pointer - - - void glVertexArraySecondaryColorOffsetEXT - GLuint vaobj - GLuint buffer - GLint size - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayTexCoordOffsetEXT - GLuint vaobj - GLuint buffer - GLint size - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayVertexAttribBindingEXT - GLuint vaobj - GLuint attribindex - GLuint bindingindex - - - void glVertexArrayVertexAttribDivisorEXT - GLuint vaobj - GLuint index - GLuint divisor - - - void glVertexArrayVertexAttribFormatEXT - GLuint vaobj - GLuint attribindex - GLint size - GLenum type - GLboolean normalized - GLuint relativeoffset - - - void glVertexArrayVertexAttribIFormatEXT - GLuint vaobj - GLuint attribindex - GLint size - GLenum type - GLuint relativeoffset - - - void glVertexArrayVertexAttribIOffsetEXT - GLuint vaobj - GLuint buffer - GLuint index - GLint size - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayVertexAttribLFormatEXT - GLuint vaobj - GLuint attribindex - GLint size - GLenum type - GLuint relativeoffset - - - void glVertexArrayVertexAttribLOffsetEXT - GLuint vaobj - GLuint buffer - GLuint index - GLint size - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexArrayVertexAttribOffsetEXT - GLuint vaobj - GLuint buffer - GLuint index - GLint size - GLenum type - GLboolean normalized - GLsizei stride - GLintptr offset - - - void glVertexArrayVertexBindingDivisorEXT - GLuint vaobj - GLuint bindingindex - GLuint divisor - - - void glVertexArrayVertexBuffer - GLuint vaobj - GLuint bindingindex - GLuint buffer - GLintptr offset - GLsizei stride - - - void glVertexArrayVertexBuffers - GLuint vaobj - GLuint first - GLsizei count - const GLuint *buffers - const GLintptr *offsets - const GLsizei *strides - - - void glVertexArrayVertexOffsetEXT - GLuint vaobj - GLuint buffer - GLint size - GLenum type - GLsizei stride - GLintptr offset - - - void glVertexAttrib1d - GLuint index - GLdouble x - - - - void glVertexAttrib1dARB - GLuint index - GLdouble x - - - - - void glVertexAttrib1dNV - GLuint index - GLdouble x - - - - - void glVertexAttrib1dv - GLuint index - const GLdouble *v - - - - void glVertexAttrib1dvARB - GLuint index - const GLdouble *v - - - - - void glVertexAttrib1dvNV - GLuint index - const GLdouble *v - - - - - void glVertexAttrib1f - GLuint index - GLfloat x - - - - void glVertexAttrib1fARB - GLuint index - GLfloat x - - - - - void glVertexAttrib1fNV - GLuint index - GLfloat x - - - - - void glVertexAttrib1fv - GLuint index - const GLfloat *v - - - - void glVertexAttrib1fvARB - GLuint index - const GLfloat *v - - - - - void glVertexAttrib1fvNV - GLuint index - const GLfloat *v - - - - - void glVertexAttrib1hNV - GLuint index - GLhalfNV x - - - - void glVertexAttrib1hvNV - GLuint index - const GLhalfNV *v - - - - void glVertexAttrib1s - GLuint index - GLshort x - - - - void glVertexAttrib1sARB - GLuint index - GLshort x - - - - - void glVertexAttrib1sNV - GLuint index - GLshort x - - - - - void glVertexAttrib1sv - GLuint index - const GLshort *v - - - - void glVertexAttrib1svARB - GLuint index - const GLshort *v - - - - - void glVertexAttrib1svNV - GLuint index - const GLshort *v - - - - - void glVertexAttrib2d - GLuint index - GLdouble x - GLdouble y - - - - void glVertexAttrib2dARB - GLuint index - GLdouble x - GLdouble y - - - - - void glVertexAttrib2dNV - GLuint index - GLdouble x - GLdouble y - - - - - void glVertexAttrib2dv - GLuint index - const GLdouble *v - - - - void glVertexAttrib2dvARB - GLuint index - const GLdouble *v - - - - - void glVertexAttrib2dvNV - GLuint index - const GLdouble *v - - - - - void glVertexAttrib2f - GLuint index - GLfloat x - GLfloat y - - - - void glVertexAttrib2fARB - GLuint index - GLfloat x - GLfloat y - - - - - void glVertexAttrib2fNV - GLuint index - GLfloat x - GLfloat y - - - - - void glVertexAttrib2fv - GLuint index - const GLfloat *v - - - - void glVertexAttrib2fvARB - GLuint index - const GLfloat *v - - - - - void glVertexAttrib2fvNV - GLuint index - const GLfloat *v - - - - - void glVertexAttrib2hNV - GLuint index - GLhalfNV x - GLhalfNV y - - - - void glVertexAttrib2hvNV - GLuint index - const GLhalfNV *v - - - - void glVertexAttrib2s - GLuint index - GLshort x - GLshort y - - - - void glVertexAttrib2sARB - GLuint index - GLshort x - GLshort y - - - - - void glVertexAttrib2sNV - GLuint index - GLshort x - GLshort y - - - - - void glVertexAttrib2sv - GLuint index - const GLshort *v - - - - void glVertexAttrib2svARB - GLuint index - const GLshort *v - - - - - void glVertexAttrib2svNV - GLuint index - const GLshort *v - - - - - void glVertexAttrib3d - GLuint index - GLdouble x - GLdouble y - GLdouble z - - - - void glVertexAttrib3dARB - GLuint index - GLdouble x - GLdouble y - GLdouble z - - - - - void glVertexAttrib3dNV - GLuint index - GLdouble x - GLdouble y - GLdouble z - - - - - void glVertexAttrib3dv - GLuint index - const GLdouble *v - - - - void glVertexAttrib3dvARB - GLuint index - const GLdouble *v - - - - - void glVertexAttrib3dvNV - GLuint index - const GLdouble *v - - - - - void glVertexAttrib3f - GLuint index - GLfloat x - GLfloat y - GLfloat z - - - - void glVertexAttrib3fARB - GLuint index - GLfloat x - GLfloat y - GLfloat z - - - - - void glVertexAttrib3fNV - GLuint index - GLfloat x - GLfloat y - GLfloat z - - - - - void glVertexAttrib3fv - GLuint index - const GLfloat *v - - - - void glVertexAttrib3fvARB - GLuint index - const GLfloat *v - - - - - void glVertexAttrib3fvNV - GLuint index - const GLfloat *v - - - - - void glVertexAttrib3hNV - GLuint index - GLhalfNV x - GLhalfNV y - GLhalfNV z - - - - void glVertexAttrib3hvNV - GLuint index - const GLhalfNV *v - - - - void glVertexAttrib3s - GLuint index - GLshort x - GLshort y - GLshort z - - - - void glVertexAttrib3sARB - GLuint index - GLshort x - GLshort y - GLshort z - - - - - void glVertexAttrib3sNV - GLuint index - GLshort x - GLshort y - GLshort z - - - - - void glVertexAttrib3sv - GLuint index - const GLshort *v - - - - void glVertexAttrib3svARB - GLuint index - const GLshort *v - - - - - void glVertexAttrib3svNV - GLuint index - const GLshort *v - - - - - void glVertexAttrib4Nbv - GLuint index - const GLbyte *v - - - void glVertexAttrib4NbvARB - GLuint index - const GLbyte *v - - - - void glVertexAttrib4Niv - GLuint index - const GLint *v - - - void glVertexAttrib4NivARB - GLuint index - const GLint *v - - - - void glVertexAttrib4Nsv - GLuint index - const GLshort *v - - - void glVertexAttrib4NsvARB - GLuint index - const GLshort *v - - - - void glVertexAttrib4Nub - GLuint index - GLubyte x - GLubyte y - GLubyte z - GLubyte w - - - void glVertexAttrib4NubARB - GLuint index - GLubyte x - GLubyte y - GLubyte z - GLubyte w - - - - void glVertexAttrib4Nubv - GLuint index - const GLubyte *v - - - - void glVertexAttrib4NubvARB - GLuint index - const GLubyte *v - - - - - void glVertexAttrib4Nuiv - GLuint index - const GLuint *v - - - void glVertexAttrib4NuivARB - GLuint index - const GLuint *v - - - - void glVertexAttrib4Nusv - GLuint index - const GLushort *v - - - void glVertexAttrib4NusvARB - GLuint index - const GLushort *v - - - - void glVertexAttrib4bv - GLuint index - const GLbyte *v - - - void glVertexAttrib4bvARB - GLuint index - const GLbyte *v - - - - void glVertexAttrib4d - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glVertexAttrib4dARB - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - - void glVertexAttrib4dNV - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - - void glVertexAttrib4dv - GLuint index - const GLdouble *v - - - - void glVertexAttrib4dvARB - GLuint index - const GLdouble *v - - - - - void glVertexAttrib4dvNV - GLuint index - const GLdouble *v - - - - - void glVertexAttrib4f - GLuint index - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glVertexAttrib4fARB - GLuint index - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - - void glVertexAttrib4fNV - GLuint index - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - - void glVertexAttrib4fv - GLuint index - const GLfloat *v - - - - void glVertexAttrib4fvARB - GLuint index - const GLfloat *v - - - - - void glVertexAttrib4fvNV - GLuint index - const GLfloat *v - - - - - void glVertexAttrib4hNV - GLuint index - GLhalfNV x - GLhalfNV y - GLhalfNV z - GLhalfNV w - - - - void glVertexAttrib4hvNV - GLuint index - const GLhalfNV *v - - - - void glVertexAttrib4iv - GLuint index - const GLint *v - - - void glVertexAttrib4ivARB - GLuint index - const GLint *v - - - - void glVertexAttrib4s - GLuint index - GLshort x - GLshort y - GLshort z - GLshort w - - - - void glVertexAttrib4sARB - GLuint index - GLshort x - GLshort y - GLshort z - GLshort w - - - - - void glVertexAttrib4sNV - GLuint index - GLshort x - GLshort y - GLshort z - GLshort w - - - - - void glVertexAttrib4sv - GLuint index - const GLshort *v - - - - void glVertexAttrib4svARB - GLuint index - const GLshort *v - - - - - void glVertexAttrib4svNV - GLuint index - const GLshort *v - - - - - void glVertexAttrib4ubNV - GLuint index - GLubyte x - GLubyte y - GLubyte z - GLubyte w - - - - - void glVertexAttrib4ubv - GLuint index - const GLubyte *v - - - void glVertexAttrib4ubvARB - GLuint index - const GLubyte *v - - - - void glVertexAttrib4ubvNV - GLuint index - const GLubyte *v - - - - - void glVertexAttrib4uiv - GLuint index - const GLuint *v - - - void glVertexAttrib4uivARB - GLuint index - const GLuint *v - - - - void glVertexAttrib4usv - GLuint index - const GLushort *v - - - void glVertexAttrib4usvARB - GLuint index - const GLushort *v - - - - void glVertexAttribArrayObjectATI - GLuint index - GLint size - GLenum type - GLboolean normalized - GLsizei stride - GLuint buffer - GLuint offset - - - void glVertexAttribBinding - GLuint attribindex - GLuint bindingindex - - - void glVertexAttribDivisor - GLuint index - GLuint divisor - - - void glVertexAttribDivisorANGLE - GLuint index - GLuint divisor - - - - void glVertexAttribDivisorARB - GLuint index - GLuint divisor - - - - void glVertexAttribDivisorEXT - GLuint index - GLuint divisor - - - - void glVertexAttribDivisorNV - GLuint index - GLuint divisor - - - - void glVertexAttribFormat - GLuint attribindex - GLint size - GLenum type - GLboolean normalized - GLuint relativeoffset - - - void glVertexAttribFormatNV - GLuint index - GLint size - GLenum type - GLboolean normalized - GLsizei stride - - - void glVertexAttribI1i - GLuint index - GLint x - - - - void glVertexAttribI1iEXT - GLuint index - GLint x - - - - - void glVertexAttribI1iv - GLuint index - const GLint *v - - - void glVertexAttribI1ivEXT - GLuint index - const GLint *v - - - - void glVertexAttribI1ui - GLuint index - GLuint x - - - - void glVertexAttribI1uiEXT - GLuint index - GLuint x - - - - - void glVertexAttribI1uiv - GLuint index - const GLuint *v - - - void glVertexAttribI1uivEXT - GLuint index - const GLuint *v - - - - void glVertexAttribI2i - GLuint index - GLint x - GLint y - - - - void glVertexAttribI2iEXT - GLuint index - GLint x - GLint y - - - - - void glVertexAttribI2iv - GLuint index - const GLint *v - - - void glVertexAttribI2ivEXT - GLuint index - const GLint *v - - - - void glVertexAttribI2ui - GLuint index - GLuint x - GLuint y - - - - void glVertexAttribI2uiEXT - GLuint index - GLuint x - GLuint y - - - - - void glVertexAttribI2uiv - GLuint index - const GLuint *v - - - void glVertexAttribI2uivEXT - GLuint index - const GLuint *v - - - - void glVertexAttribI3i - GLuint index - GLint x - GLint y - GLint z - - - - void glVertexAttribI3iEXT - GLuint index - GLint x - GLint y - GLint z - - - - - void glVertexAttribI3iv - GLuint index - const GLint *v - - - void glVertexAttribI3ivEXT - GLuint index - const GLint *v - - - - void glVertexAttribI3ui - GLuint index - GLuint x - GLuint y - GLuint z - - - - void glVertexAttribI3uiEXT - GLuint index - GLuint x - GLuint y - GLuint z - - - - - void glVertexAttribI3uiv - GLuint index - const GLuint *v - - - void glVertexAttribI3uivEXT - GLuint index - const GLuint *v - - - - void glVertexAttribI4bv - GLuint index - const GLbyte *v - - - void glVertexAttribI4bvEXT - GLuint index - const GLbyte *v - - - - void glVertexAttribI4i - GLuint index - GLint x - GLint y - GLint z - GLint w - - - - void glVertexAttribI4iEXT - GLuint index - GLint x - GLint y - GLint z - GLint w - - - - - void glVertexAttribI4iv - GLuint index - const GLint *v - - - void glVertexAttribI4ivEXT - GLuint index - const GLint *v - - - - void glVertexAttribI4sv - GLuint index - const GLshort *v - - - void glVertexAttribI4svEXT - GLuint index - const GLshort *v - - - - void glVertexAttribI4ubv - GLuint index - const GLubyte *v - - - void glVertexAttribI4ubvEXT - GLuint index - const GLubyte *v - - - - void glVertexAttribI4ui - GLuint index - GLuint x - GLuint y - GLuint z - GLuint w - - - - void glVertexAttribI4uiEXT - GLuint index - GLuint x - GLuint y - GLuint z - GLuint w - - - - - void glVertexAttribI4uiv - GLuint index - const GLuint *v - - - void glVertexAttribI4uivEXT - GLuint index - const GLuint *v - - - - void glVertexAttribI4usv - GLuint index - const GLushort *v - - - void glVertexAttribI4usvEXT - GLuint index - const GLushort *v - - - - void glVertexAttribIFormat - GLuint attribindex - GLint size - GLenum type - GLuint relativeoffset - - - void glVertexAttribIFormatNV - GLuint index - GLint size - GLenum type - GLsizei stride - - - void glVertexAttribIPointer - GLuint index - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glVertexAttribIPointerEXT - GLuint index - GLint size - GLenum type - GLsizei stride - const void *pointer - - - - void glVertexAttribL1d - GLuint index - GLdouble x - - - void glVertexAttribL1dEXT - GLuint index - GLdouble x - - - - void glVertexAttribL1dv - GLuint index - const GLdouble *v - - - void glVertexAttribL1dvEXT - GLuint index - const GLdouble *v - - - - void glVertexAttribL1i64NV - GLuint index - GLint64EXT x - - - void glVertexAttribL1i64vNV - GLuint index - const GLint64EXT *v - - - void glVertexAttribL1ui64ARB - GLuint index - GLuint64EXT x - - - void glVertexAttribL1ui64NV - GLuint index - GLuint64EXT x - - - void glVertexAttribL1ui64vARB - GLuint index - const GLuint64EXT *v - - - void glVertexAttribL1ui64vNV - GLuint index - const GLuint64EXT *v - - - void glVertexAttribL2d - GLuint index - GLdouble x - GLdouble y - - - void glVertexAttribL2dEXT - GLuint index - GLdouble x - GLdouble y - - - - void glVertexAttribL2dv - GLuint index - const GLdouble *v - - - void glVertexAttribL2dvEXT - GLuint index - const GLdouble *v - - - - void glVertexAttribL2i64NV - GLuint index - GLint64EXT x - GLint64EXT y - - - void glVertexAttribL2i64vNV - GLuint index - const GLint64EXT *v - - - void glVertexAttribL2ui64NV - GLuint index - GLuint64EXT x - GLuint64EXT y - - - void glVertexAttribL2ui64vNV - GLuint index - const GLuint64EXT *v - - - void glVertexAttribL3d - GLuint index - GLdouble x - GLdouble y - GLdouble z - - - void glVertexAttribL3dEXT - GLuint index - GLdouble x - GLdouble y - GLdouble z - - - - void glVertexAttribL3dv - GLuint index - const GLdouble *v - - - void glVertexAttribL3dvEXT - GLuint index - const GLdouble *v - - - - void glVertexAttribL3i64NV - GLuint index - GLint64EXT x - GLint64EXT y - GLint64EXT z - - - void glVertexAttribL3i64vNV - GLuint index - const GLint64EXT *v - - - void glVertexAttribL3ui64NV - GLuint index - GLuint64EXT x - GLuint64EXT y - GLuint64EXT z - - - void glVertexAttribL3ui64vNV - GLuint index - const GLuint64EXT *v - - - void glVertexAttribL4d - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - void glVertexAttribL4dEXT - GLuint index - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glVertexAttribL4dv - GLuint index - const GLdouble *v - - - void glVertexAttribL4dvEXT - GLuint index - const GLdouble *v - - - - void glVertexAttribL4i64NV - GLuint index - GLint64EXT x - GLint64EXT y - GLint64EXT z - GLint64EXT w - - - void glVertexAttribL4i64vNV - GLuint index - const GLint64EXT *v - - - void glVertexAttribL4ui64NV - GLuint index - GLuint64EXT x - GLuint64EXT y - GLuint64EXT z - GLuint64EXT w - - - void glVertexAttribL4ui64vNV - GLuint index - const GLuint64EXT *v - - - void glVertexAttribLFormat - GLuint attribindex - GLint size - GLenum type - GLuint relativeoffset - - - void glVertexAttribLFormatNV - GLuint index - GLint size - GLenum type - GLsizei stride - - - void glVertexAttribLPointer - GLuint index - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glVertexAttribLPointerEXT - GLuint index - GLint size - GLenum type - GLsizei stride - const void *pointer - - - - void glVertexAttribP1ui - GLuint index - GLenum type - GLboolean normalized - GLuint value - - - void glVertexAttribP1uiv - GLuint index - GLenum type - GLboolean normalized - const GLuint *value - - - void glVertexAttribP2ui - GLuint index - GLenum type - GLboolean normalized - GLuint value - - - void glVertexAttribP2uiv - GLuint index - GLenum type - GLboolean normalized - const GLuint *value - - - void glVertexAttribP3ui - GLuint index - GLenum type - GLboolean normalized - GLuint value - - - void glVertexAttribP3uiv - GLuint index - GLenum type - GLboolean normalized - const GLuint *value - - - void glVertexAttribP4ui - GLuint index - GLenum type - GLboolean normalized - GLuint value - - - void glVertexAttribP4uiv - GLuint index - GLenum type - GLboolean normalized - const GLuint *value - - - void glVertexAttribParameteriAMD - GLuint index - GLenum pname - GLint param - - - void glVertexAttribPointer - GLuint index - GLint size - GLenum type - GLboolean normalized - GLsizei stride - const void *pointer - - - void glVertexAttribPointerARB - GLuint index - GLint size - GLenum type - GLboolean normalized - GLsizei stride - const void *pointer - - - - void glVertexAttribPointerNV - GLuint index - GLint fsize - GLenum type - GLsizei stride - const void *pointer - - - void glVertexAttribs1dvNV - GLuint index - GLsizei count - const GLdouble *v - - - - void glVertexAttribs1fvNV - GLuint index - GLsizei count - const GLfloat *v - - - - void glVertexAttribs1hvNV - GLuint index - GLsizei n - const GLhalfNV *v - - - - void glVertexAttribs1svNV - GLuint index - GLsizei count - const GLshort *v - - - - void glVertexAttribs2dvNV - GLuint index - GLsizei count - const GLdouble *v - - - - void glVertexAttribs2fvNV - GLuint index - GLsizei count - const GLfloat *v - - - - void glVertexAttribs2hvNV - GLuint index - GLsizei n - const GLhalfNV *v - - - - void glVertexAttribs2svNV - GLuint index - GLsizei count - const GLshort *v - - - - void glVertexAttribs3dvNV - GLuint index - GLsizei count - const GLdouble *v - - - - void glVertexAttribs3fvNV - GLuint index - GLsizei count - const GLfloat *v - - - - void glVertexAttribs3hvNV - GLuint index - GLsizei n - const GLhalfNV *v - - - - void glVertexAttribs3svNV - GLuint index - GLsizei count - const GLshort *v - - - - void glVertexAttribs4dvNV - GLuint index - GLsizei count - const GLdouble *v - - - - void glVertexAttribs4fvNV - GLuint index - GLsizei count - const GLfloat *v - - - - void glVertexAttribs4hvNV - GLuint index - GLsizei n - const GLhalfNV *v - - - - void glVertexAttribs4svNV - GLuint index - GLsizei count - const GLshort *v - - - - void glVertexAttribs4ubvNV - GLuint index - GLsizei count - const GLubyte *v - - - - void glVertexBindingDivisor - GLuint bindingindex - GLuint divisor - - - void glVertexBlendARB - GLint count - - - - void glVertexBlendEnvfATI - GLenum pname - GLfloat param - - - void glVertexBlendEnviATI - GLenum pname - GLint param - - - void glVertexFormatNV - GLint size - GLenum type - GLsizei stride - - - void glVertexP2ui - GLenum type - GLuint value - - - void glVertexP2uiv - GLenum type - const GLuint *value - - - void glVertexP3ui - GLenum type - GLuint value - - - void glVertexP3uiv - GLenum type - const GLuint *value - - - void glVertexP4ui - GLenum type - GLuint value - - - void glVertexP4uiv - GLenum type - const GLuint *value - - - void glVertexPointer - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glVertexPointerEXT - GLint size - GLenum type - GLsizei stride - GLsizei count - const void *pointer - - - void glVertexPointerListIBM - GLint size - GLenum type - GLint stride - const void **pointer - GLint ptrstride - - - void glVertexPointervINTEL - GLint size - GLenum type - const void **pointer - - - void glVertexStream1dATI - GLenum stream - GLdouble x - - - void glVertexStream1dvATI - GLenum stream - const GLdouble *coords - - - void glVertexStream1fATI - GLenum stream - GLfloat x - - - void glVertexStream1fvATI - GLenum stream - const GLfloat *coords - - - void glVertexStream1iATI - GLenum stream - GLint x - - - void glVertexStream1ivATI - GLenum stream - const GLint *coords - - - void glVertexStream1sATI - GLenum stream - GLshort x - - - void glVertexStream1svATI - GLenum stream - const GLshort *coords - - - void glVertexStream2dATI - GLenum stream - GLdouble x - GLdouble y - - - void glVertexStream2dvATI - GLenum stream - const GLdouble *coords - - - void glVertexStream2fATI - GLenum stream - GLfloat x - GLfloat y - - - void glVertexStream2fvATI - GLenum stream - const GLfloat *coords - - - void glVertexStream2iATI - GLenum stream - GLint x - GLint y - - - void glVertexStream2ivATI - GLenum stream - const GLint *coords - - - void glVertexStream2sATI - GLenum stream - GLshort x - GLshort y - - - void glVertexStream2svATI - GLenum stream - const GLshort *coords - - - void glVertexStream3dATI - GLenum stream - GLdouble x - GLdouble y - GLdouble z - - - void glVertexStream3dvATI - GLenum stream - const GLdouble *coords - - - void glVertexStream3fATI - GLenum stream - GLfloat x - GLfloat y - GLfloat z - - - void glVertexStream3fvATI - GLenum stream - const GLfloat *coords - - - void glVertexStream3iATI - GLenum stream - GLint x - GLint y - GLint z - - - void glVertexStream3ivATI - GLenum stream - const GLint *coords - - - void glVertexStream3sATI - GLenum stream - GLshort x - GLshort y - GLshort z - - - void glVertexStream3svATI - GLenum stream - const GLshort *coords - - - void glVertexStream4dATI - GLenum stream - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - void glVertexStream4dvATI - GLenum stream - const GLdouble *coords - - - void glVertexStream4fATI - GLenum stream - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - void glVertexStream4fvATI - GLenum stream - const GLfloat *coords - - - void glVertexStream4iATI - GLenum stream - GLint x - GLint y - GLint z - GLint w - - - void glVertexStream4ivATI - GLenum stream - const GLint *coords - - - void glVertexStream4sATI - GLenum stream - GLshort x - GLshort y - GLshort z - GLshort w - - - void glVertexStream4svATI - GLenum stream - const GLshort *coords - - - void glVertexWeightPointerEXT - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glVertexWeightfEXT - GLfloat weight - - - - void glVertexWeightfvEXT - const GLfloat *weight - - - - void glVertexWeighthNV - GLhalfNV weight - - - - void glVertexWeighthvNV - const GLhalfNV *weight - - - - GLenum glVideoCaptureNV - GLuint video_capture_slot - GLuint *sequence_num - GLuint64EXT *capture_time - - - void glVideoCaptureStreamParameterdvNV - GLuint video_capture_slot - GLuint stream - GLenum pname - const GLdouble *params - - - void glVideoCaptureStreamParameterfvNV - GLuint video_capture_slot - GLuint stream - GLenum pname - const GLfloat *params - - - void glVideoCaptureStreamParameterivNV - GLuint video_capture_slot - GLuint stream - GLenum pname - const GLint *params - - - void glViewport - GLint x - GLint y - GLsizei width - GLsizei height - - - - void glViewportArrayv - GLuint first - GLsizei count - const GLfloat *v - - - void glViewportArrayvNV - GLuint first - GLsizei count - const GLfloat *v - - - - void glViewportArrayvOES - GLuint first - GLsizei count - const GLfloat *v - - - - void glViewportIndexedf - GLuint index - GLfloat x - GLfloat y - GLfloat w - GLfloat h - - - void glViewportIndexedfOES - GLuint index - GLfloat x - GLfloat y - GLfloat w - GLfloat h - - - - void glViewportIndexedfNV - GLuint index - GLfloat x - GLfloat y - GLfloat w - GLfloat h - - - - void glViewportIndexedfv - GLuint index - const GLfloat *v - - - void glViewportIndexedfvOES - GLuint index - const GLfloat *v - - - - void glViewportIndexedfvNV - GLuint index - const GLfloat *v - - - - void glViewportPositionWScaleNV - GLuint index - GLfloat xcoeff - GLfloat ycoeff - - - void glViewportSwizzleNV - GLuint index - GLenum swizzlex - GLenum swizzley - GLenum swizzlez - GLenum swizzlew - - - void glWaitSemaphoreEXT - GLuint semaphore - GLuint numBufferBarriers - const GLuint *buffers - GLuint numTextureBarriers - const GLuint *textures - const GLenum *srcLayouts - - - void glWaitSemaphoreui64NVX - GLuint waitGpu - GLsizei fenceObjectCount - const GLuint *semaphoreArray - const GLuint64 *fenceValueArray - - - void glWaitSync - GLsync sync - GLbitfield flags - GLuint64 timeout - - - void glWaitSyncAPPLE - GLsync sync - GLbitfield flags - GLuint64 timeout - - - - void glWeightPathsNV - GLuint resultPath - GLsizei numPaths - const GLuint *paths - const GLfloat *weights - - - void glWeightPointerARB - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glWeightPointerOES - GLint size - GLenum type - GLsizei stride - const void *pointer - - - void glWeightbvARB - GLint size - const GLbyte *weights - - - - void glWeightdvARB - GLint size - const GLdouble *weights - - - - void glWeightfvARB - GLint size - const GLfloat *weights - - - - void glWeightivARB - GLint size - const GLint *weights - - - - void glWeightsvARB - GLint size - const GLshort *weights - - - - void glWeightubvARB - GLint size - const GLubyte *weights - - - - void glWeightuivARB - GLint size - const GLuint *weights - - - - void glWeightusvARB - GLint size - const GLushort *weights - - - - void glWindowPos2d - GLdouble x - GLdouble y - - - - void glWindowPos2dARB - GLdouble x - GLdouble y - - - - - void glWindowPos2dMESA - GLdouble x - GLdouble y - - - - - void glWindowPos2dv - const GLdouble *v - - - - void glWindowPos2dvARB - const GLdouble *v - - - - - void glWindowPos2dvMESA - const GLdouble *v - - - - void glWindowPos2f - GLfloat x - GLfloat y - - - - void glWindowPos2fARB - GLfloat x - GLfloat y - - - - - void glWindowPos2fMESA - GLfloat x - GLfloat y - - - - - void glWindowPos2fv - const GLfloat *v - - - - void glWindowPos2fvARB - const GLfloat *v - - - - - void glWindowPos2fvMESA - const GLfloat *v - - - - void glWindowPos2i - GLint x - GLint y - - - - void glWindowPos2iARB - GLint x - GLint y - - - - - void glWindowPos2iMESA - GLint x - GLint y - - - - - void glWindowPos2iv - const GLint *v - - - - void glWindowPos2ivARB - const GLint *v - - - - - void glWindowPos2ivMESA - const GLint *v - - - - void glWindowPos2s - GLshort x - GLshort y - - - - void glWindowPos2sARB - GLshort x - GLshort y - - - - - void glWindowPos2sMESA - GLshort x - GLshort y - - - - - void glWindowPos2sv - const GLshort *v - - - - void glWindowPos2svARB - const GLshort *v - - - - - void glWindowPos2svMESA - const GLshort *v - - - - void glWindowPos3d - GLdouble x - GLdouble y - GLdouble z - - - - void glWindowPos3dARB - GLdouble x - GLdouble y - GLdouble z - - - - - void glWindowPos3dMESA - GLdouble x - GLdouble y - GLdouble z - - - - - void glWindowPos3dv - const GLdouble *v - - - - void glWindowPos3dvARB - const GLdouble *v - - - - - void glWindowPos3dvMESA - const GLdouble *v - - - - void glWindowPos3f - GLfloat x - GLfloat y - GLfloat z - - - - void glWindowPos3fARB - GLfloat x - GLfloat y - GLfloat z - - - - - void glWindowPos3fMESA - GLfloat x - GLfloat y - GLfloat z - - - - - void glWindowPos3fv - const GLfloat *v - - - - void glWindowPos3fvARB - const GLfloat *v - - - - - void glWindowPos3fvMESA - const GLfloat *v - - - - void glWindowPos3i - GLint x - GLint y - GLint z - - - - void glWindowPos3iARB - GLint x - GLint y - GLint z - - - - - void glWindowPos3iMESA - GLint x - GLint y - GLint z - - - - - void glWindowPos3iv - const GLint *v - - - - void glWindowPos3ivARB - const GLint *v - - - - - void glWindowPos3ivMESA - const GLint *v - - - - void glWindowPos3s - GLshort x - GLshort y - GLshort z - - - - void glWindowPos3sARB - GLshort x - GLshort y - GLshort z - - - - - void glWindowPos3sMESA - GLshort x - GLshort y - GLshort z - - - - - void glWindowPos3sv - const GLshort *v - - - - void glWindowPos3svARB - const GLshort *v - - - - - void glWindowPos3svMESA - const GLshort *v - - - - void glWindowPos4dMESA - GLdouble x - GLdouble y - GLdouble z - GLdouble w - - - - void glWindowPos4dvMESA - const GLdouble *v - - - void glWindowPos4fMESA - GLfloat x - GLfloat y - GLfloat z - GLfloat w - - - - void glWindowPos4fvMESA - const GLfloat *v - - - void glWindowPos4iMESA - GLint x - GLint y - GLint z - GLint w - - - - void glWindowPos4ivMESA - const GLint *v - - - void glWindowPos4sMESA - GLshort x - GLshort y - GLshort z - GLshort w - - - - void glWindowPos4svMESA - const GLshort *v - - - void glWindowRectanglesEXT - GLenum mode - GLsizei count - const GLint *box - - - void glWriteMaskEXT - GLuint res - GLuint in - GLenum outX - GLenum outY - GLenum outZ - GLenum outW - - - void glDrawVkImageNV - GLuint64 vkImage - GLuint sampler - GLfloat x0 - GLfloat y0 - GLfloat x1 - GLfloat y1 - GLfloat z - GLfloat s0 - GLfloat t0 - GLfloat s1 - GLfloat t1 - - - GLVULKANPROCNV glGetVkProcAddrNV - const GLchar *name - - - void glWaitVkSemaphoreNV - GLuint64 vkSemaphore - - - void glSignalVkSemaphoreNV - GLuint64 vkSemaphore - - - void glSignalVkFenceNV - GLuint64 vkFence - - - void glFramebufferParameteriMESA - GLenum target - GLenum pname - GLint param - - - void glGetFramebufferParameterivMESA - GLenum target - GLenum pname - GLint *params - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/khronos-registry-parse/src/vk/convert.rs b/khronos-registry-parse/src/vk/convert.rs index 15526c7..c1716bc 100644 --- a/khronos-registry-parse/src/vk/convert.rs +++ b/khronos-registry-parse/src/vk/convert.rs @@ -1,7 +1,6 @@ extern crate vkxml; use c; -use parse::*; use std; use types::*; use vk::parse::*;