OGLplus (0.52.0) a C++ wrapper for OpenGL

oglplus Namespace Reference

All definitions of OGLplus are nested in the oglplus namespace. More...

Namespaces

 context
 Namespace containing definitions of GL context-related operation wrappers.
 
 ranges
 The range algorithms are defined in this namespace.
 
 smart_enums
 Smart enumerations are defined in this namespace
 

Classes

struct  Unspecified
 Unspecified internal type. More...
 
class  Bitfield
 This template serves as a wrapper for OpenGL bitfields. More...
 
class  ObjGenDelOps< tag::Buffer >
 Class wrapping buffer construction/destruction functions. More...
 
class  ObjBindingOps< tag::Buffer >
 Buffer binding operations. More...
 
class  ObjCommonOps< tag::Buffer >
 Common buffer operations. More...
 
class  ObjectOps< tag::ExplicitSel, tag::Buffer >
 Class wrapping buffer functions with explicit target selector. More...
 
class  UniformBufferBindingPoint
 Type for the uniform buffer binding point index. More...
 
class  TransformFeedbackBufferBindingPoint
 Type for the transform feedback buffer binding point index. More...
 
class  AtomicCounterBufferBindingPoint
 Type for the atomic counter buffer binding point index. More...
 
class  ShaderStorageBufferBindingPoint
 Type for the shader storage buffer binding point index. More...
 
class  BufferData
 Class used for passing the size of and pointer to data to be put in a Buffer. More...
 
class  BufferRawMap
 Untyped mapping of the buffer to the client address space. More...
 
class  BufferTypedMap
 Typed mapping of the buffer to the client address space. More...
 
class  BufferSize
 This class represents the size of a GPU buffer in bytes. More...
 
class  Context
 Wrapper for the current OpenGL context operations. More...
 
struct  TypeTag
 A tag template used mainly for data-type-based function overload dispatching. More...
 
class  FragDataSlot
 Type for the fragment data output slot (implementation-dependent limited) number. More...
 
class  ObjGenDelOps< tag::Framebuffer >
 Class wrapping framebuffer construction/destruction functions. More...
 
class  ObjBindingOps< tag::Framebuffer >
 Framebuffer binding operations. More...
 
class  ObjCommonOps< tag::Framebuffer >
 Common framebuffer operations. More...
 
class  ObjectOps< tag::ExplicitSel, tag::Framebuffer >
 Class wrapping framebuffer functions with explicit target selector. More...
 
struct  FramebufferComplete
 Helper class used with syntax-sugar operators. More...
 
class  FramebufferColorAttachmentNumber
 Type for the framebuffer color attachment (implementation-dependent) number. More...
 
class  Angle
 Class implementing planar angle-related functionality. More...
 
class  Vector
 Basic template for vector types. More...
 
class  Quaternion
 Template class for quaternions. More...
 
class  Matrix
 Base template for Matrix. More...
 
class  ObjectName
 A common template for "named" objects like textures, buffers, etc. More...
 
class  Sequence
 Common base class for Object name sequences. More...
 
class  ObjCommonOps
 Implements operations applicable to any object and any operation kind. More...
 
class  ObjZeroOps
 Implements operations applicable to any object including object 0 (zero) More...
 
class  Reference
 Allows to make managed copies of instances of Object. More...
 
class  Array
 Allows to allocate and manage several instances of Object at the same time. More...
 
class  ProgVarLoc
 Wrapper encapsulating program variable location/index. More...
 
class  ProgVar
 Program variable (vertex attrib / uniform ) wrapper. More...
 
class  GLSLSource
 Class storing source code in GLSL. More...
 
class  GLSLString
 Class for passing a single string as a Source to a Shader. More...
 
class  GLSLStrings
 Class for passing a set of strings as a Source to a Shader. More...
 
class  LimitedCount
 Base class for limited implementation-dependent numeric values. More...
 
class  NamedString
 Wrapper for GL NamedStrings. More...
 
class  ShaderInclude
 Specialization of NamedString for ShaderInclude type. More...
 
class  OneOf
 Stores a value having one of the listed types in a common representation. More...
 
class  OutputData
 Class used for passing the address and size of a writable buffer to functions. More...
 
class  ObjGenDelOps< tag::Program >
 Class wrapping program construction/destruction functions. More...
 
class  ObjBindingOps< tag::Program >
 Program binding operations. More...
 
class  ObjCommonOps< tag::Program >
 Common program operations. More...
 
class  ObjectOps< tag::DirectState, tag::Program >
 Class wrapping program functions (with direct state access) More...
 
class  ShaderProgram
 A standalone program with a single shader of a specified type from GLSL source. More...
 
class  QuickProgram
 A class that allows to build programs in the constructor. More...
 
class  ObjGenDelOps< tag::ProgramPipeline >
 Class wrapping program pipeline construction/destruction functions. More...
 
class  ObjBindingOps< tag::ProgramPipeline >
 Program pipeline binding operations. More...
 
class  ObjCommonOps< tag::ProgramPipeline >
 Common program pipeline operations. More...
 
class  ObjectOps< tag::DirectState, tag::ProgramPipeline >
 Class wrapping program pipeline functions (with direct state access) More...
 
class  ProgramResource
 Information about a single active program resource. More...
 
class  ObjGenDelOps< tag::Query >
 Class wrapping query construction/destruction functions. More...
 
class  QueryExecution
 A helper class automatically executing a query. More...
 
class  ObjectOps< tag::DirectState, tag::Query >
 Class wrapping query functions with (direct state access) More...
 
class  QueryActivator
 RAII Query activator/deactivator. More...
 
class  ConditionalRender
 RAII conditional render activator/deactivator. More...
 
class  ObjGenDelOps< tag::Renderbuffer >
 Class wrapping renderbuffer construction/destruction functions. More...
 
class  ObjBindingOps< tag::Renderbuffer >
 Renderbuffer binding operations. More...
 
class  ObjCommonOps< tag::Renderbuffer >
 Common renderbuffer operations. More...
 
class  ObjectOps< tag::ExplicitSel, tag::Renderbuffer >
 Class wrapping renderbuffer functions with explicit target selector. More...
 
class  ObjGenDelOps< tag::Sampler >
 Class wrapping sampler construction/destruction functions. More...
 
class  ObjBindingOps< tag::Sampler >
 Sampler binding operations. More...
 
class  ObjCommonOps< tag::Sampler >
 Common sampler operations. More...
 
class  ObjectOps< tag::DirectState, tag::Sampler >
 Class wrapping sampler functions (with direct state access) More...
 
class  ObjGenDelOps< tag::Shader >
 Class wrapping shader construction/destruction functions. More...
 
class  ObjCommonOps< tag::Shader >
 Common shader operations. More...
 
class  ObjectOps< tag::DirectState, tag::Shader >
 Class wrapping shader functions (with direct state access) More...
 
class  Shader
 An object encasulating the shader object functionality. More...
 
class  SpecShader
 Base template for specialized shader types. More...
 
class  Sync
 Encapsulates sync object and fence functionality. More...
 
class  ObjGenDelOps< tag::Texture >
 Class wrapping texture construction/destruction functions. More...
 
class  ObjBindingOps< tag::Texture >
 Texture binding operations. More...
 
class  ObjCommonOps< tag::Texture >
 Common texture operations. More...
 
class  ObjZeroOps< tag::ExplicitSel, tag::Texture >
 Operations applicable to any texture including texture 0 (zero) More...
 
struct  TextureMipmap
 Selector type used with the syntax sugar operators. More...
 
class  TextureHandle
 A handle for a bindless texture. More...
 
class  ImageHandle
 A handle for a bindless texture image. More...
 
class  TextureSwizzleTuple
 A tuple of swizzle values for all texture components. More...
 
class  TextureUnitSelector
 Type for the texture unit selector (implementation-dependent limited) number. More...
 
class  ImageUnitSelector
 Type for the image unit selector (implementation-dependent limited) number. More...
 
class  ObjGenDelOps< tag::TransformFeedback >
 Class wrapping transform feedback construction/destruction functions. More...
 
class  ObjBindingOps< tag::TransformFeedback >
 TransformFeedback binding operations. More...
 
class  ObjCommonOps< tag::TransformFeedback >
 Common transform feedback operations. More...
 
class  ObjectOps< OpsTag, tag::TransformFeedback >
 Class wrapping transform feedback functions. More...
 
class  ProgVarGetSetOps< OpsTag, tag::Uniform, T >
 Encapsulates uniform value setting functionality. More...
 
class  ProgVar< tag::ImplicitSel, tag::Subroutine, tag::NoTypecheck, void >
 Specialization of ProgVar for subroutines. More...
 
class  ProgVar< tag::ImplicitSel, tag::SubroutineUniform, tag::NoTypecheck, void >
 Specialization of ProgVar for subroutine uniformss. More...
 
class  UniformSubroutines
 Encapsulates the uniform subroutine setting operations. More...
 
class  ObjGenDelOps< tag::VertexArray >
 Class wrapping vertex array construction/destruction functions. More...
 
class  ObjBindingOps< tag::VertexArray >
 Vertex array binding operations. More...
 
class  ObjCommonOps< tag::VertexArray >
 Common vertex array operations. More...
 
class  ProgVarGetSetOps< OpsTag, tag::VertexAttrib, T >
 Encapsulates vertex attribute value set functionality. More...
 
class  VertexAttribSlot
 Type for the vertex attribute slot (implementation-dependent limited) number. More...
 
class  BezierCurves
 A sequence of Bezier curves, possibly connected at end points. More...
 
class  CubicBezierLoop
 A closed smooth cubic Bezier spline passing through all input points. More...
 
class  ModelMatrix
 Class implementing model transformation matrix named constructors. More...
 
class  CameraMatrix
 Class implementing camera matrix named constructors. More...
 
class  Plane
 Class implementing plane-related functionality. More...
 
class  QuaternionSLERP
 Functor template for quaternion spherical-linear interpolation. More...
 
class  BaseSLERP
 Base template for spherical-linear interpolation functors. More...
 
class  Sphere
 Class implementing sphere-related functionality. More...
 
class  VectorBase
 Common base class for vectors. More...
 
class  Vector< T, 1 >
 
class  Vector< T, 2 >
 
class  Vector< T, 3 >
 
class  Vector< T, 4 >
 
class  StrCRefTpl
 String const reference wrapper template. More...
 
class  AutoRebind< Object< ObjectOps< OpsTag, ObjTag > > >
 Class that remembers the currently bound Object and rebinds it when destroyed. More...
 
class  Group< ObjectName< ObjTag > >
 A dynamic group (convertible to a Sequence) of object names. More...
 
class  OptionalImpl< tag::Object, Object >
 Modifier that allows to create uninitialized Object(s) More...
 
class  SeqIterator
 Object sequence iterator template. More...
 
class  ObjectOps
 Implements operations applicable to named (non-zero) objects. More...
 
class  ObjectZero< ObjZeroOps< OpsTag, ObjTag > >
 Wrapper for GL objects with name 0 (zero) More...
 
class  ObjHandle
 Template. More...
 
class  Object< ObjectOps< OpsTag, ObjTag > >
 Template for GL/AL/etc. objects wrappers. More...
 
class  BoundObjOps< tag::Buffer >
 Specialization of the BoundObjOps for Buffer >. More...
 
class  BoundObjOps< tag::Framebuffer >
 Specialization of the BoundObjOps for Framebuffer >. More...
 
class  BoundObjOps< tag::Renderbuffer >
 Specialization of the BoundObjOps for Renderbuffer >. More...
 
class  BoundObjOps< tag::Texture >
 Specialization of the BoundObjOps for Texture >. More...
 
class  ObjectOps< tag::DirectState, tag::Buffer >
 Class wrapping buffer-related functionality with direct state access. More...
 
class  DSABufferTypedMap
 Untyped mapping of the buffer to the client address space. More...
 
class  ObjectOps< tag::DirectState, tag::Framebuffer >
 Class wrapping framebuffer-related functionality with direct state access. More...
 
class  ObjectOps< tag::DirectState, tag::Renderbuffer >
 Class wrapping renderbuffer-related functionality with direct state access. More...
 
class  ObjZeroOps< tag::DirectState, tag::Texture >
 Class wrapping default texture functionality with direct state access. More...
 
class  ObjectOps< tag::DirectState, tag::Texture >
 Class wrapping texture object functionality with direct state access. More...
 
class  ObjectOps< tag::DirectState, tag::TransformFeedback >
 Class wrapping transform feedback-related functionality with direct state access. More...
 
class  ObjectOps< tag::DirectState, tag::VertexArray >
 Class wrapping vertex array-related functionality with direct state access. More...
 
class  Error
 Exception class for general OpenGL errors. More...
 
class  IncompleteFramebuffer
 Incomplete framebuffer exception class. More...
 
class  MissingFunction
 Exception class for situations when a pointer to a GL function is invalid. More...
 
class  LimitError
 Exception indicating exceeded implementation-defined limits. More...
 
class  ObjectError
 Exception class for GL object-related errors. More...
 
class  ProgVarError
 Exception class for GL program-variable-related errors. More...
 
class  ProgramBuildError
 Base class for program compilation or linking errors. More...
 
class  CompileError
 Exception class for OpenGL shading language compilation error. More...
 
class  LinkError
 Exception class for OpenGL shading language program link error. More...
 
class  ValidationError
 Exception class for OpenGL shading language program validation error. More...
 
class  PerfMonitorAMDCounter
 Wrapper for performance monitor counter functionality. More...
 
class  PerfMonitorAMDGroup
 Wrapper for performance monitor group functionality. More...
 
class  PerfMonitorAMDResult
 Wrapper for performance counter result. More...
 
class  ObjGenDelOps< tag::PerfMonitorAMD >
 Class wrapping perfofmance monitor construction/destruction functions. More...
 
class  ObjectOps< tag::DirectState, tag::PerfMonitorAMD >
 Class wrapping performance monitor functions (with direct state access) More...
 
class  AMD_performance_monitor
 Wrapper for the AMD_performance_monitor extension. More...
 
class  ARB_compatibility
 Wrapper for the ARB_compatibility extension. More...
 
class  ARB_copy_image
 Wrapper for the ARB_copy_image extension. More...
 
class  ARB_debug_output
 Wrapper for the ARB_debug_output extension. More...
 
class  ARB_debug_output_Unique
 Filter for ARB_debug_output removing duplicate messages. More...
 
class  ARB_debug_output_Tree
 Filter for ARB_debug_output printing a simple tree to a standard output. More...
 
class  ARB_debug_output_ToXML
 Filter for ARB_debug_output formatting the debug output into XML. More...
 
class  ARB_robustness
 Wrapper for the ARB_robustness extension. More...
 
class  ATI_meminfo
 Wrapper for the ATI_meminfo extension. More...
 
class  EXT_direct_state_access
 Wrapper for the EXT_direct_state_access extension. More...
 
class  KHR_debug
 Wrapper for the KHR_debug extension. More...
 
class  KHR_debug_Unique
 Filter for KHR_debug removing duplicate messages. More...
 
class  KHR_debug_Tree
 Filter for KHR_debug printing a simple tree to a standard output. More...
 
class  KHR_debug_ToXML
 Filter for KHR_debug formatting the debug output into XML. More...
 
class  NV_copy_image
 Wrapper for the NV_copy_image extension. More...
 
class  NV_path_rendering
 Wrapper for the NV_path_rendering extension. More...
 
class  DSAMatrixEXT
 Wrapper for direct-state-access compatibility matrix operations. More...
 
class  DSAModelviewMatrixEXT
 Wrapper for direct-state-access compatibility modelview matrix operations. More...
 
class  DSAProjectionMatrixEXT
 Wrapper for direct-state-access compatibility projection matrix operations. More...
 
class  ObjGenDelOps< tag::PathNV >
 Class wrapping NV path construction/destruction functions. More...
 
class  ObjectOps< tag::DirectState, tag::PathNV >
 Class wrapping NV-path functions (with direct state access) More...
 
class  PathArrayNV
 Array of PathNV objects and related operations. More...
 
class  PathNVSpec
 Template class for convenient specifying of path commands and coordinates. More...
 
class  BriefPathNVSpec
 Facade over PathNVSpec for even more convenient path specification. More...
 
class  Application
 A monostate class wrapping application and startup options-related things. More...
 
class  Debug
 Wrapper for the GL debug output functionality. More...
 
class  ListOf
 Helper class template that can be used for static container initialization. More...
 
class  Range
 Wrapper class for all ranges that can be used for Element traversal. More...
 
struct  ExampleParams
 Run-time parameters for example instances. More...
 
class  ExampleTimePeriod
 A class measuring a time period in the examples. More...
 
class  ExampleClock
 Class measuring the simulation time of an Example. More...
 
class  ExampleThread
 Base class for OGLplus example offscreen rendering threads. More...
 
class  Example
 Base class for OGLplus examples. More...
 

Typedefs

typedef BlendFunction BlendFn
 Alternative name for the BlendFunction enumeration.
 
typedef BlendEquation BlendEq
 Alternative name for the BlendEquation enumeration.
 
typedef BlendEquationAdvanced BlendEqAdv
 Alternative name for the BlendEquationAdvanced enumeration.
 
typedef ObjectOps
< tag::ExplicitSel,
tag::Buffer
BufferOps
 The buffer operations with explicit selector.
 
typedef ObjectZero< ObjZeroOps
< tag::ExplicitSel,
tag::Buffer > > 
NoBuffer
 Class that can be used to unbind the currently bound buffers.
 
typedef Object< BufferOpsBuffer
 An oglplus_object encapsulating the OpenGL buffer functionality.
 
typedef ColorLogicOperation ColorLogicOp
 Alternate name for the ColorLogicOperation enumeration.
 
typedef CompareFunction CompareFn
 Alternate name for the CompareFunction enumeration.
 
typedef ContextReleaseBehavior ReleaseBehavior
 Alternate name for the ContextReleaseBehavior enumeration.
 
typedef ProgVar
< tag::ImplicitSel,
tag::FragData,
tag::NoTypecheck, void > 
FragData
 Encapsulates frag data operations. More...
 
typedef ObjectOps
< tag::ExplicitSel,
tag::Framebuffer
FramebufferOps
 Framebuffer operations with explicit selector.
 
typedef ObjectZero< ObjZeroOps
< tag::ExplicitSel,
tag::Framebuffer > > 
DefaultFramebuffer
 An oglplus_object encapsulating the default framebuffer functionality.
 
typedef Object< FramebufferOpsFramebuffer
 An oglplus_object encapsulating the framebuffer object functionality.
 
typedef PatchParameter PatchParam
 Alternate name for the PatchParameter enumeration.
 
typedef PixelDataFormat Format
 Alias for PixelDataFormat.
 
typedef PixelDataInternalFormat InternalFormat
 Alias for PixelDataInternalFormat.
 
typedef ObjectOps
< tag::DirectState,
tag::Program
ProgramOps
 Program operations with direct state access.
 
typedef ObjectZero< ObjZeroOps
< tag::DirectState,
tag::Program > > 
NoProgram
 Class that can be used to unbind the currently active program.
 
typedef Object< ProgramOpsProgram
 An oglplus_object encapsulating the program object functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::ProgramPipeline
ProgramPipelineOps
 Program pipeline operations with direct state access.
 
typedef ObjectZero< ObjZeroOps
< tag::DirectState,
tag::ProgramPipeline > > 
NoProgramPipeline
 Class that can be used to unbind the currently bound program pipeline.
 
typedef Object
< ProgramPipelineOps
ProgramPipeline
 An oglplus_object encapsulating the OpenGL program pipeline functionality.
 
typedef ObjectOps
< tag::DirectState, tag::Query
QueryOps
 Query operations with direct state access.
 
typedef Object< QueryOpsQuery
 An oglplus_object encapsulating the asynchronous query functionality.
 
typedef ObjectOps
< tag::ExplicitSel,
tag::Renderbuffer
RenderbufferOps
 Renderbuffer operations with explicit selector.
 
typedef ObjectZero< ObjZeroOps
< tag::ExplicitSel,
tag::Renderbuffer > > 
NoRenderbuffer
 Class that can be used to unbind the currently bound renderbuffer.
 
typedef Object< RenderbufferOpsRenderbuffer
 An oglplus_object encapsulating the renderbuffer object functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::Sampler
SamplerOps
 Sampler operations with direct state access.
 
typedef ObjectZero< ObjZeroOps
< tag::DirectState,
tag::Sampler > > 
NoSampler
 Class that can be used to unbind the currently bound sampler.
 
typedef Object< SamplerOpsSampler
 An oglplus_object encapsulating the OpenGL sampler functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::Shader
ShaderOps
 Shader operations (with direct state access)
 
typedef SpecShader
< ShaderType::Vertex
VertexShader
 Vertex shader wrapper. More...
 
typedef SpecShader
< ShaderType::Geometry
GeometryShader
 Geometry shader wrapper. More...
 
typedef SpecShader
< ShaderType::Fragment
FragmentShader
 Fragment shader wrapper. More...
 
typedef SpecShader
< ShaderType::TessControl
TessControlShader
 Tesselation control shader wrapper. More...
 
typedef SpecShader
< ShaderType::TessEvaluation
TessEvaluationShader
 Tesselation evaluation shader wrapper. More...
 
typedef SpecShader
< ShaderType::Compute
ComputeShader
 Compute shader wrapper. More...
 
typedef StencilOperation StencilOp
 Alternate name for the StencilOperation enumeration.
 
typedef ObjZeroOps
< tag::ExplicitSel,
tag::Texture
DefaultTextureOps
 DefaultTexture operations with explicit selector.
 
typedef ObjectOps
< tag::ExplicitSel,
tag::Texture
TextureOps
 Texture operations with explicit selector.
 
typedef ObjectZero
< DefaultTextureOps
DefaultTexture
 An oglplus_object encapsulating the default texture functionality.
 
typedef Object< TextureOpsTexture
 An oglplus_object encapsulating the texture object functionality.
 
typedef ObjectZero< ObjZeroOps
< tag::ImplicitSel,
tag::TransformFeedback > > 
DefaultTransformFeedback
 Wrapper for default feedback operations. More...
 
typedef ObjectOps
< tag::ImplicitSel,
tag::TransformFeedback
TransformFeedbackOps
 TransformFeedback operations with explicit selector.
 
typedef Object
< TransformFeedbackOps
TransformFeedback
 An oglplus_object encapsulating the OpenGL transform feedback functionality.
 
typedef ProgVar
< tag::ImplicitSel,
tag::UniformBlock,
tag::NoTypecheck, void > 
UniformBlock
 Encapsulates uniform block operations. More...
 
typedef ProgVar
< tag::ImplicitSel,
tag::Subroutine,
tag::NoTypecheck, void > 
Subroutine
 Subroutine.
 
typedef ProgVar
< tag::ImplicitSel,
tag::SubroutineUniform,
tag::NoTypecheck, void > 
SubroutineUniform
 SubroutineUniform.
 
typedef ObjectOps
< tag::ImplicitSel,
tag::VertexArray
VertexArrayOps
 VertexArray operations with implicit selector.
 
typedef ObjectZero< ObjZeroOps
< tag::ImplicitSel,
tag::VertexArray > > 
NoVertexArray
 An oglplus_object encapsulating vertex array zero functionality.
 
typedef Object< VertexArrayOpsVertexArray
 An oglplus_object encapsulating vertex array object functionality.
 
typedef Angle< GLfloat > Anglef
 Instantiation of Angle using GL floating-point as underlying type.
 
typedef Matrix< GLfloat, 2, 2 > Mat2f
 2x2 float matrix
 
typedef Matrix< GLfloat, 2, 3 > Mat2x3f
 2x3 float matrix
 
typedef Matrix< GLfloat, 2, 4 > Mat2x4f
 2x4 float matrix
 
typedef Matrix< GLfloat, 3, 2 > Mat3x2f
 3x2 float matrix
 
typedef Matrix< GLfloat, 3, 3 > Mat3f
 3x3 float matrix
 
typedef Matrix< GLfloat, 3, 4 > Mat3x4f
 3x4 float matrix
 
typedef Matrix< GLfloat, 4, 2 > Mat4x2f
 4x2 float matrix
 
typedef Matrix< GLfloat, 4, 3 > Mat4x3f
 4x3 float matrix
 
typedef Matrix< GLfloat, 4, 4 > Mat4f
 4x4 float matrix
 
typedef Matrix< GLdouble, 2, 2 > Mat2d
 2x2 double-precision matrix
 
typedef Matrix< GLdouble, 2, 3 > Mat2x3d
 2x3 double-precision matrix
 
typedef Matrix< GLdouble, 2, 4 > Mat2x4d
 2x4 double-precision matrix
 
typedef Matrix< GLdouble, 3, 2 > Mat3x2d
 3x2 double-precision matrix
 
typedef Matrix< GLdouble, 3, 3 > Mat3d
 3x3 double-precision matrix
 
typedef Matrix< GLdouble, 3, 4 > Mat3x4d
 3x4 double-precision matrix
 
typedef Matrix< GLdouble, 4, 2 > Mat4x2d
 4x2 double-precision matrix
 
typedef Matrix< GLdouble, 4, 3 > Mat4x3d
 4x3 double-precision matrix
 
typedef Matrix< GLdouble, 4, 4 > Mat4d
 4x4 double-precision matrix
 
typedef ModelMatrix< GLfloat > ModelMatrixf
 Model transformation float matrix.
 
typedef ModelMatrix< GLdouble > ModelMatrixd
 Model transformation double precision matrix.
 
typedef CameraMatrix< GLfloat > CamMatrixf
 Camera matrix using float numbers.
 
typedef CameraMatrix< GLdouble > CamMatrixd
 Camera matrix using double precition numbers.
 
typedef Plane< GLfloat > Planef
 Instantiation of Plane using GL floating-point as underlying type.
 
typedef Quaternion< GLfloat > Quatf
 Float quaternion.
 
typedef Quaternion< GLdouble > Quatd
 Double-precision quaternion.
 
typedef Sphere< GLfloat > Spheref
 Instantiation of Sphere using GL floating-point as underlying type.
 
typedef Vector< GLint, 1 > Vec1i
 1D int (degenerate) vector
 
typedef Vector< GLint, 2 > Vec2i
 2D int vector
 
typedef Vector< GLint, 3 > Vec3i
 3D int vector
 
typedef Vector< GLint, 4 > Vec4i
 4D int vector
 
typedef Vector< GLfloat, 1 > Vec1f
 1D float (degenerate) vector
 
typedef Vector< GLfloat, 2 > Vec2f
 2D float vector
 
typedef Vector< GLfloat, 3 > Vec3f
 3D float vector
 
typedef Vector< GLfloat, 4 > Vec4f
 4D float vector
 
typedef Vector< GLdouble, 1 > Vec1d
 1D double-precision (degenerate) vector
 
typedef Vector< GLdouble, 2 > Vec2d
 2D double-precision vector
 
typedef Vector< GLdouble, 3 > Vec3d
 3D double-precision vector
 
typedef Vector< GLdouble, 4 > Vec4d
 4D double-precision vector
 
typedef ::std::basic_string
< GLchar > 
String
 String class.
 
typedef StrCRefTpl< GLchar > StrCRef
 String const reference wrapper.
 
typedef ObjectOps
< tag::DirectState,
tag::Buffer
DSABufferOps
 Buffer operations with direct state access.
 
typedef Object< DSABufferOpsDSABuffer
 An oglplus_object encapsulating the OpenGL buffer functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::Framebuffer
DSAFramebufferOps
 Framebuffer operations with direct state access.
 
typedef Object< DSAFramebufferOpsDSAFramebuffer
 An oglplus_object encapsulating the OpenGL framebuffer functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::Renderbuffer
DSARenderbufferOps
 Renderbuffer operations with direct state access.
 
typedef Object
< DSARenderbufferOps
DSARenderbuffer
 An oglplus_object encapsulating the OpenGL renderbuffer functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::Texture
DSATextureOps
 Texture operations with direct state access.
 
typedef Object< DSATextureOpsDSATexture
 An oglplus_object encapsulating the DSA texture object functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::TransformFeedback
DSATransformFeedbackOps
 TransformFeedback operations with direct state access.
 
typedef Object
< DSATransformFeedbackOps
DSATransformFeedback
 An oglplus_object encapsulating the OpenGL transform feedback functionality.
 
typedef ObjectOps
< tag::DirectState,
tag::VertexArray
DSAVertexArrayOps
 VertexArray operations with direct state access.
 
typedef Object< DSAVertexArrayOpsDSAVertexArray
 An oglplus_object encapsulating the OpenGL vertex array functionality.
 
typedef BufferSelectBit ClearBit
 Draw buffer clear bit enumeration.
 
typedef ObjectOps
< tag::DirectState,
tag::PerfMonitorAMD > 
PerfMonitorAMDOps
 PerfMonitorAMD operations with direct state access.
 
typedef Object< PerfMonitorAMDOpsPerfMonitorAMD
 An oglplus_object encapsulating the performance monitor functionality. More...
 
typedef ObjectOps
< tag::DirectState,
tag::PathNV > 
PathNVOps
 PathNV operations with direct state access.
 
typedef Object< PathNVOpsPathNV
 An oglplus_object encapsulating the nVidia path functionality.
 

Enumerations

enum  AccessSpecifier : GLenum {
  AccessSpecifier::ReadOnly,
  AccessSpecifier::WriteOnly,
  AccessSpecifier::ReadWrite
}
 Enumeration of access type specifiers. More...
 
enum  BlendFunction : GLenum {
  BlendFunction::Zero,
  BlendFunction::One,
  BlendFunction::SrcColor,
  BlendFunction::OneMinusSrcColor,
  BlendFunction::DstColor,
  BlendFunction::OneMinusDstColor,
  BlendFunction::SrcAlpha,
  BlendFunction::OneMinusSrcAlpha,
  BlendFunction::DstAlpha,
  BlendFunction::OneMinusDstAlpha,
  BlendFunction::ConstantColor,
  BlendFunction::OneMinusConstantColor,
  BlendFunction::ConstantAlpha,
  BlendFunction::OneMinusConstantAlpha,
  BlendFunction::SrcAlphaSaturate,
  BlendFunction::Src1Color,
  BlendFunction::OneMinusSrc1Color,
  BlendFunction::Src1Alpha,
  BlendFunction::OneMinusSrc1Alpha
}
 Blend function type enumeration. More...
 
enum  BlendEquation : GLenum {
  BlendEquation::Add,
  BlendEquation::Subtract,
  BlendEquation::ReverseSubtract,
  BlendEquation::Min,
  BlendEquation::Max
}
 Blend equation enumeration. More...
 
enum  BlendEquationAdvanced : GLenum {
  BlendEquationAdvanced::Multiply,
  BlendEquationAdvanced::Screen,
  BlendEquationAdvanced::Overlay,
  BlendEquationAdvanced::Darken,
  BlendEquationAdvanced::Lighten,
  BlendEquationAdvanced::Colordodge,
  BlendEquationAdvanced::Colorburn,
  BlendEquationAdvanced::Hardlight,
  BlendEquationAdvanced::Softlight,
  BlendEquationAdvanced::Difference,
  BlendEquationAdvanced::Exclusion,
  BlendEquationAdvanced::HSLHue,
  BlendEquationAdvanced::HSLSaturation,
  BlendEquationAdvanced::HSLColor,
  BlendEquationAdvanced::HSLLuminosity
}
 Advanced blend equation enumeration. More...
 
enum  BlitFilter : GLenum {
  BlitFilter::Nearest,
  BlitFilter::Linear
}
 Enumeration of blit operation filtering modes. More...
 
enum  BufferMapAccess : GLbitfield {
  BufferMapAccess::Read,
  BufferMapAccess::Write,
  BufferMapAccess::Persistent,
  BufferMapAccess::Coherent,
  BufferMapAccess::InvalidateRange,
  BufferMapAccess::InvalidateBuffer,
  BufferMapAccess::FlushExplicit,
  BufferMapAccess::Unsynchronized
}
 Buffer map access enumeration. More...
 
enum  BufferSelectBit : GLbitfield {
  BufferSelectBit::ColorBuffer,
  BufferSelectBit::DepthBuffer,
  BufferSelectBit::StencilBuffer
}
 Buffer selection bit enumeration. More...
 
enum  BufferStorageBit : GLbitfield {
  BufferStorageBit::MapRead,
  BufferStorageBit::MapWrite,
  BufferStorageBit::MapPersistent,
  BufferStorageBit::MapCoherent,
  BufferStorageBit::DynamicStorage,
  BufferStorageBit::ClientStorage,
  BufferStorageBit::SparseStorage
}
 Buffer storage flags/bits. More...
 
enum  BufferTarget : GLenum {
  BufferTarget::Array,
  BufferTarget::AtomicCounter,
  BufferTarget::CopyRead,
  BufferTarget::CopyWrite,
  BufferTarget::DispatchIndirect,
  BufferTarget::DrawIndirect,
  BufferTarget::ElementArray,
  BufferTarget::PixelPack,
  BufferTarget::PixelUnpack,
  BufferTarget::ShaderStorage,
  BufferTarget::Texture,
  BufferTarget::TransformFeedback,
  BufferTarget::Uniform,
  BufferTarget::Query,
  BufferTarget::Parameter,
  BufferTarget::ExternalVirtualMemory
}
 Buffer bind target. More...
 
enum  BufferIndexedTarget : GLenum {
  BufferIndexedTarget::AtomicCounter,
  BufferIndexedTarget::ShaderStorage,
  BufferIndexedTarget::TransformFeedback,
  BufferIndexedTarget::Uniform
}
 Buffer indexed bind target. More...
 
enum  BufferUsage : GLenum {
  BufferUsage::StreamDraw,
  BufferUsage::StreamRead,
  BufferUsage::StreamCopy,
  BufferUsage::StaticDraw,
  BufferUsage::StaticRead,
  BufferUsage::StaticCopy,
  BufferUsage::DynamicDraw,
  BufferUsage::DynamicRead,
  BufferUsage::DynamicCopy
}
 Buffer usage enumeration. More...
 
enum  Capability : GLenum {
  Capability::PrimitiveRestart,
  Capability::DepthTest,
  Capability::StencilTest,
  Capability::ScissorTest,
  Capability::CullFace,
  Capability::RasterizerDiscard,
  Capability::PolygonOffsetPoint,
  Capability::PolygonOffsetLine,
  Capability::PolygonOffsetFill,
  Capability::Blend,
  Capability::ColorLogicOp,
  Capability::Dither,
  Capability::Multisample,
  Capability::SampleShading,
  Capability::LineSmooth,
  Capability::PolygonSmooth,
  Capability::ProgramPointSize,
  Capability::TextureCubeMapSeamless,
  Capability::SampleAlphaToCoverage,
  Capability::SampleAlphaToOne,
  Capability::SampleCoverage,
  Capability::SampleMask,
  Capability::FramebufferSRGB,
  Capability::DebugOutputSynchronous,
  Capability::StreamRasterization,
  Capability::BlendAdvancedCoherent
}
 Capability enumeration. More...
 
enum  Functionality : GLenum { Functionality::ClipDistance }
 Functionality enumeration. More...
 
enum  ColorBuffer : GLenum {
  ColorBuffer::None,
  ColorBuffer::FrontLeft,
  ColorBuffer::FrontRight,
  ColorBuffer::BackLeft,
  ColorBuffer::BackRight,
  ColorBuffer::Front,
  ColorBuffer::Back,
  ColorBuffer::Left,
  ColorBuffer::Right,
  ColorBuffer::FrontAndBack
}
 Enumeration of color buffers for read/write operations. More...
 
enum  ColorLogicOperation : GLenum {
  ColorLogicOperation::Clear,
  ColorLogicOperation::And,
  ColorLogicOperation::AndReverse,
  ColorLogicOperation::Copy,
  ColorLogicOperation::AndInverted,
  ColorLogicOperation::Noop,
  ColorLogicOperation::Xor,
  ColorLogicOperation::Or,
  ColorLogicOperation::Nor,
  ColorLogicOperation::Equiv,
  ColorLogicOperation::Invert,
  ColorLogicOperation::OrReverse,
  ColorLogicOperation::CopyInverted,
  ColorLogicOperation::OrInverted,
  ColorLogicOperation::Nand,
  ColorLogicOperation::Set
}
 Color logic operation enumeration. More...
 
enum  CompareFunction : GLenum {
  CompareFunction::LEqual,
  CompareFunction::GEqual,
  CompareFunction::Less,
  CompareFunction::Greater,
  CompareFunction::Equal,
  CompareFunction::NotEqual,
  CompareFunction::Always,
  CompareFunction::Never
}
 Comparison function type enumeration. More...
 
enum  ContextFlagBit : GLbitfield {
  ContextFlagBit::ForwardCompatible,
  ContextFlagBit::Debug,
  ContextFlagBit::RobustAccess
}
 GL context flag bit enumeration. More...
 
enum  ContextProfileBit : GLbitfield {
  ContextProfileBit::Core,
  ContextProfileBit::Compatibility
}
 GL context profile bit enumeration. More...
 
enum  ContextReleaseBehavior : GLenum {
  ContextReleaseBehavior::None,
  ContextReleaseBehavior::Flush
}
 GL Context release behavior enumeration. More...
 
enum  DataType : GLenum {
  DataType::Byte,
  DataType::Short,
  DataType::Int,
  DataType::Fixed,
  DataType::Float,
  DataType::HalfFloat,
  DataType::Double,
  DataType::UnsignedByte,
  DataType::UnsignedShort,
  DataType::UnsignedInt
}
 OpenGL data type enumeration. More...
 
enum  SLDataType : GLenum {
  SLDataType::Float,
  SLDataType::FloatVec2,
  SLDataType::FloatVec3,
  SLDataType::FloatVec4,
  SLDataType::Double,
  SLDataType::DoubleVec2,
  SLDataType::DoubleVec3,
  SLDataType::DoubleVec4,
  SLDataType::Int,
  SLDataType::IntVec2,
  SLDataType::IntVec3,
  SLDataType::IntVec4,
  SLDataType::UnsignedInt,
  SLDataType::UnsignedIntVec2,
  SLDataType::UnsignedIntVec3,
  SLDataType::UnsignedIntVec4,
  SLDataType::Bool,
  SLDataType::BoolVec2,
  SLDataType::BoolVec3,
  SLDataType::BoolVec4,
  SLDataType::FloatMat2,
  SLDataType::FloatMat3,
  SLDataType::FloatMat4,
  SLDataType::FloatMat2x3,
  SLDataType::FloatMat2x4,
  SLDataType::FloatMat3x2,
  SLDataType::FloatMat3x4,
  SLDataType::FloatMat4x2,
  SLDataType::FloatMat4x3,
  SLDataType::DoubleMat2,
  SLDataType::DoubleMat3,
  SLDataType::DoubleMat4,
  SLDataType::DoubleMat2x3,
  SLDataType::DoubleMat2x4,
  SLDataType::DoubleMat3x2,
  SLDataType::DoubleMat3x4,
  SLDataType::DoubleMat4x2,
  SLDataType::DoubleMat4x3,
  SLDataType::Sampler1D,
  SLDataType::Sampler2D,
  SLDataType::Sampler3D,
  SLDataType::SamplerCube,
  SLDataType::Sampler1DShadow,
  SLDataType::Sampler2DShadow,
  SLDataType::Sampler1DArray,
  SLDataType::Sampler2DArray,
  SLDataType::SamplerCubeMapArray,
  SLDataType::Sampler1DArrayShadow,
  SLDataType::Sampler2DArrayShadow,
  SLDataType::Sampler2DMultisample,
  SLDataType::Sampler2DMultisampleArray,
  SLDataType::SamplerCubeShadow,
  SLDataType::SamplerCubeMapArrayShadow,
  SLDataType::SamplerBuffer,
  SLDataType::Sampler2DRect,
  SLDataType::Sampler2DRectShadow,
  SLDataType::IntSampler1D,
  SLDataType::IntSampler2D,
  SLDataType::IntSampler3D,
  SLDataType::IntSamplerCube,
  SLDataType::IntSampler1DArray,
  SLDataType::IntSampler2DArray,
  SLDataType::IntSamplerCubeMapArray,
  SLDataType::IntSampler2DMultisample,
  SLDataType::IntSampler2DMultisampleArray,
  SLDataType::IntSamplerBuffer,
  SLDataType::IntSampler2DRect,
  SLDataType::UnsignedIntSampler1D,
  SLDataType::UnsignedIntSampler2D,
  SLDataType::UnsignedIntSampler3D,
  SLDataType::UnsignedIntSamplerCube,
  SLDataType::UnsignedIntSampler1DArray,
  SLDataType::UnsignedIntSampler2DArray,
  SLDataType::UnsignedIntSamplerCubeMapArray,
  SLDataType::UnsignedIntSampler2DMultisample,
  SLDataType::UnsignedIntSampler2DMultisampleArray,
  SLDataType::UnsignedIntSamplerBuffer,
  SLDataType::UnsignedIntSampler2DRect,
  SLDataType::Image1D,
  SLDataType::Image2D,
  SLDataType::Image3D,
  SLDataType::Image2DRect,
  SLDataType::ImageCube,
  SLDataType::ImageBuffer,
  SLDataType::Image1DArray,
  SLDataType::Image2DArray,
  SLDataType::Image2DMultisample,
  SLDataType::Image2DMultisampleArray,
  SLDataType::IntImage1D,
  SLDataType::IntImage2D,
  SLDataType::IntImage3D,
  SLDataType::IntImage2DRect,
  SLDataType::IntImageCube,
  SLDataType::IntImageBuffer,
  SLDataType::IntImage1DArray,
  SLDataType::IntImage2DArray,
  SLDataType::IntImage2DMultisample,
  SLDataType::IntImage2DMultisampleArray,
  SLDataType::UnsignedIntImage1D,
  SLDataType::UnsignedIntImage2D,
  SLDataType::UnsignedIntImage3D,
  SLDataType::UnsignedIntImage2DRect,
  SLDataType::UnsignedIntImageCube,
  SLDataType::UnsignedIntImageBuffer,
  SLDataType::UnsignedIntImage1DArray,
  SLDataType::UnsignedIntImage2DArray,
  SLDataType::UnsignedIntImage2DMultisample,
  SLDataType::UnsignedIntImage2DMultisampleArray,
  SLDataType::UnsignedIntAtomicCounter,
  SLDataType::None
}
 OpenGL Shading Language data type enumeration. More...
 
enum  Face : GLenum {
  Face::Front,
  Face::Back,
  Face::FrontAndBack
}
 Polygon facing enumeration. More...
 
enum  FaceOrientation : GLenum {
  FaceOrientation::CW,
  FaceOrientation::CCW
}
 Face orientation enumeration. More...
 
enum  FramebufferBuffer : GLenum {
  FramebufferBuffer::Color,
  FramebufferBuffer::Depth,
  FramebufferBuffer::Stencil,
  FramebufferBuffer::DepthStencil
}
 Default framebuffer buffers. More...
 
enum  FramebufferAttachment : GLenum {
  FramebufferAttachment::Color,
  FramebufferAttachment::Color1,
  FramebufferAttachment::Color2,
  FramebufferAttachment::Color3,
  FramebufferAttachment::Color4,
  FramebufferAttachment::Color5,
  FramebufferAttachment::Color6,
  FramebufferAttachment::Color7,
  FramebufferAttachment::Color8,
  FramebufferAttachment::Color9,
  FramebufferAttachment::Color10,
  FramebufferAttachment::Color11,
  FramebufferAttachment::Color12,
  FramebufferAttachment::Color13,
  FramebufferAttachment::Color14,
  FramebufferAttachment::Color15,
  FramebufferAttachment::Depth,
  FramebufferAttachment::Stencil,
  FramebufferAttachment::DepthStencil
}
 Framebuffer object attachment points. More...
 
enum  FramebufferColorAttachment : GLenum {
  FramebufferColorAttachment::_0,
  FramebufferColorAttachment::_1,
  FramebufferColorAttachment::_2,
  FramebufferColorAttachment::_3,
  FramebufferColorAttachment::_4,
  FramebufferColorAttachment::_5,
  FramebufferColorAttachment::_6,
  FramebufferColorAttachment::_7,
  FramebufferColorAttachment::_8,
  FramebufferColorAttachment::_9,
  FramebufferColorAttachment::_10,
  FramebufferColorAttachment::_11,
  FramebufferColorAttachment::_12,
  FramebufferColorAttachment::_13,
  FramebufferColorAttachment::_14,
  FramebufferColorAttachment::_15
}
 Framebuffer color attachment points. More...
 
enum  FramebufferStatus : GLenum {
  FramebufferStatus::Complete,
  FramebufferStatus::Undefined,
  FramebufferStatus::IncompleteAttachment,
  FramebufferStatus::IncompleteMissingAttachment,
  FramebufferStatus::Unsupported,
  FramebufferStatus::IncompleteMultisample,
  FramebufferStatus::IncompleteLayerTargets
}
 Framebuffer status enumeration. More...
 
enum  FramebufferTarget : GLenum {
  FramebufferTarget::Draw,
  FramebufferTarget::Read
}
 Framebuffer bind target. More...
 
enum  GraphicsResetStatus : GLenum {
  GraphicsResetStatus::NoError,
  GraphicsResetStatus::GuiltyContextReset,
  GraphicsResetStatus::InnocentContextReset,
  GraphicsResetStatus::UnknownContextReset
}
 Graphics reset status enumeration. More...
 
enum  HintTarget : GLenum {
  HintTarget::LineSmooth,
  HintTarget::PolygonSmooth,
  HintTarget::TextureCompression,
  HintTarget::FragmentShaderDerivative
}
 Enumeration of hint targets. More...
 
enum  HintOption : GLenum {
  HintOption::Fastest,
  HintOption::Nicest,
  HintOption::DontCare
}
 Enumeration of hint options. More...
 
enum  LimitQuery : GLenum {
  LimitQuery::Max3DTextureSize,
  LimitQuery::MaxArrayTextureLayers,
  LimitQuery::MaxAtomicCounterBufferBindings,
  LimitQuery::MaxAtomicCounterBufferSize,
  LimitQuery::MaxClipDistances,
  LimitQuery::MaxCullDistances,
  LimitQuery::MaxCombinedClipAndCullDistances,
  LimitQuery::MaxColorAttachments,
  LimitQuery::MaxColorTextureSamples,
  LimitQuery::MaxCombinedAtomicCounterBuffers,
  LimitQuery::MaxCombinedAtomicCounters,
  LimitQuery::MaxCombinedFragmentUniformComponents,
  LimitQuery::MaxCombinedGeometryUniformComponents,
  LimitQuery::MaxCombinedImageUniforms,
  LimitQuery::MaxCombinedImageUnitsAndFragmentOutputs,
  LimitQuery::MaxCombinedTessControlUniformComponents,
  LimitQuery::MaxCombinedTessEvaluationUniformComponents,
  LimitQuery::MaxCombinedTextureImageUnits,
  LimitQuery::MaxCombinedUniformBlocks,
  LimitQuery::MaxCombinedVertexUniformComponents,
  LimitQuery::MaxCubeMapTextureSize,
  LimitQuery::MaxDepthTextureSamples,
  LimitQuery::MaxDrawBuffers,
  LimitQuery::MaxDualSourceDrawBuffers,
  LimitQuery::MaxElementsIndices,
  LimitQuery::MaxElementsVertices,
  LimitQuery::MaxFragmentAtomicCounterBuffers,
  LimitQuery::MaxFragmentAtomicCounters,
  LimitQuery::MaxFragmentImageUniforms,
  LimitQuery::MaxFragmentInputComponents,
  LimitQuery::MaxFragmentInterpolationOffset,
  LimitQuery::MaxFragmentUniformBlocks,
  LimitQuery::MaxFragmentUniformComponents,
  LimitQuery::MaxFragmentUniformVectors,
  LimitQuery::MaxGeometryAtomicCounterBuffers,
  LimitQuery::MaxGeometryAtomicCounters,
  LimitQuery::MaxGeometryImageUniforms,
  LimitQuery::MaxGeometryInputComponents,
  LimitQuery::MaxGeometryOutputComponents,
  LimitQuery::MaxGeometryOutputVertices,
  LimitQuery::MaxGeometryShaderInvocations,
  LimitQuery::MaxGeometryTextureImageUnits,
  LimitQuery::MaxGeometryTotalOutputComponents,
  LimitQuery::MaxGeometryUniformBlocks,
  LimitQuery::MaxGeometryUniformComponents,
  LimitQuery::MaxImageSamples,
  LimitQuery::MaxImageUnits,
  LimitQuery::MaxIntegerSamples,
  LimitQuery::MaxPatchVertices,
  LimitQuery::MaxProgramTexelOffset,
  LimitQuery::MaxProgramTextureGatherOffset,
  LimitQuery::MaxRectangleTextureSize,
  LimitQuery::MaxRenderbufferSize,
  LimitQuery::MaxSampleMaskWords,
  LimitQuery::MaxSamples,
  LimitQuery::MaxServerWaitTimeout,
  LimitQuery::MaxSubroutines,
  LimitQuery::MaxSubroutineUniformLocations,
  LimitQuery::MaxTessControlAtomicCounterBuffers,
  LimitQuery::MaxTessControlAtomicCounters,
  LimitQuery::MaxTessControlImageUniforms,
  LimitQuery::MaxTessControlInputComponents,
  LimitQuery::MaxTessControlOutputComponents,
  LimitQuery::MaxTessControlTextureImageUnits,
  LimitQuery::MaxTessControlTotalOutputComponents,
  LimitQuery::MaxTessControlUniformBlocks,
  LimitQuery::MaxTessControlUniformComponents,
  LimitQuery::MaxTessEvaluationAtomicCounterBuffers,
  LimitQuery::MaxTessEvaluationAtomicCounters,
  LimitQuery::MaxTessEvaluationImageUniforms,
  LimitQuery::MaxTessEvaluationInputComponents,
  LimitQuery::MaxTessEvaluationOutputComponents,
  LimitQuery::MaxTessEvaluationTextureImageUnits,
  LimitQuery::MaxTessEvaluationUniformBlocks,
  LimitQuery::MaxTessEvaluationUniformComponents,
  LimitQuery::MaxTessGenLevel,
  LimitQuery::MaxTessPatchComponents,
  LimitQuery::MaxTextureBufferSize,
  LimitQuery::MaxTextureImageUnits,
  LimitQuery::MaxTextureLodBias,
  LimitQuery::MaxTextureSize,
  LimitQuery::MaxTransformFeedbackBuffers,
  LimitQuery::MaxTransformFeedbackInterleavedComponents,
  LimitQuery::MaxTransformFeedbackSeparateAttribs,
  LimitQuery::MaxTransformFeedbackSeparateComponents,
  LimitQuery::MaxUniformBlockSize,
  LimitQuery::MaxUniformBufferBindings,
  LimitQuery::MaxVaryingComponents,
  LimitQuery::MaxVaryingVectors,
  LimitQuery::MaxVertexAtomicCounterBuffers,
  LimitQuery::MaxVertexAtomicCounters,
  LimitQuery::MaxVertexAttribs,
  LimitQuery::MaxVertexImageUniforms,
  LimitQuery::MaxVertexOutputComponents,
  LimitQuery::MaxVertexStreams,
  LimitQuery::MaxVertexTextureImageUnits,
  LimitQuery::MaxVertexUniformBlocks,
  LimitQuery::MaxVertexUniformComponents,
  LimitQuery::MaxVertexUniformVectors,
  LimitQuery::MaxViewportDims,
  LimitQuery::MaxViewports,
  LimitQuery::MaxComputeWorkGroupCount,
  LimitQuery::MaxComputeWorkGroupSize,
  LimitQuery::MaxComputeWorkGroupInvocations,
  LimitQuery::MaxComputeSharedMemorySize,
  LimitQuery::MinFragmentInterpolationOffset,
  LimitQuery::MinMapBufferAlignment,
  LimitQuery::MinProgramTexelOffset,
  LimitQuery::MinProgramTextureGatherOffset,
  LimitQuery::MinSampleShadingValue
}
 Enumeration of implementation-dependent limit queries. More...
 
enum  MemoryBarrierBit : GLbitfield {
  MemoryBarrierBit::VertexAttribArray,
  MemoryBarrierBit::ElementArray,
  MemoryBarrierBit::Uniform,
  MemoryBarrierBit::TextureFetch,
  MemoryBarrierBit::ShaderImageAccess,
  MemoryBarrierBit::Command,
  MemoryBarrierBit::PixelBuffer,
  MemoryBarrierBit::TextureUpdate,
  MemoryBarrierBit::BufferUpdate,
  MemoryBarrierBit::Framebuffer,
  MemoryBarrierBit::TransformFeedback,
  MemoryBarrierBit::AtomicCounter,
  MemoryBarrierBit::ShaderStorage,
  MemoryBarrierBit::ClientMappedBuffer,
  MemoryBarrierBit::All
}
 Enumeration of memory barrier bits. More...
 
enum  NamedStringType : GLenum { NamedStringType::ShaderInclude }
 Enumeration of named string type specifiers. More...
 
enum  PatchParameter : GLenum {
  PatchParameter::PatchVertices,
  PatchParameter::PatchDefaultOuterLevel,
  PatchParameter::PatchDefaultInnerLevel
}
 Enumeration of patch parameters. More...
 
enum  PixelDataType : GLenum {
  PixelDataType::UnsignedByte,
  PixelDataType::Byte,
  PixelDataType::UnsignedShort,
  PixelDataType::Short,
  PixelDataType::UnsignedInt,
  PixelDataType::Int,
  PixelDataType::HalfFloat,
  PixelDataType::Float,
  PixelDataType::UnsignedByte_3_3_2,
  PixelDataType::UnsignedByte_2_3_3_Rev,
  PixelDataType::UnsignedShort_5_6_5,
  PixelDataType::UnsignedShort_5_6_5_Rev,
  PixelDataType::UnsignedShort_4_4_4_4,
  PixelDataType::UnsignedShort_4_4_4_4_Rev,
  PixelDataType::UnsignedShort_5_5_5_1,
  PixelDataType::UnsignedShort_1_5_5_5_Rev,
  PixelDataType::UnsignedInt_8_8_8_8,
  PixelDataType::UnsignedInt_8_8_8_8_Rev,
  PixelDataType::UnsignedInt_10_10_10_2,
  PixelDataType::UnsignedInt_2_10_10_10_Rev,
  PixelDataType::UnsignedInt_24_8,
  PixelDataType::UnsignedInt_10f_11f_11f_Rev,
  PixelDataType::UnsignedInt_5_9_9_9_Rev,
  PixelDataType::Float_32UnsignedInt_24_8_Rev
}
 OpenGL pixel data type enumeration. More...
 
enum  PixelDataFormat : GLenum {
  PixelDataFormat::DepthComponent,
  PixelDataFormat::DepthStencil,
  PixelDataFormat::StencilIndex,
  PixelDataFormat::Red,
  PixelDataFormat::Green,
  PixelDataFormat::Blue,
  PixelDataFormat::RG,
  PixelDataFormat::RGB,
  PixelDataFormat::RGBA,
  PixelDataFormat::BGR,
  PixelDataFormat::BGRA,
  PixelDataFormat::RedInteger,
  PixelDataFormat::GreenInteger,
  PixelDataFormat::BlueInteger,
  PixelDataFormat::RGInteger,
  PixelDataFormat::RGBInteger,
  PixelDataFormat::RGBAInteger,
  PixelDataFormat::BGRInteger,
  PixelDataFormat::BGRAInteger
}
 OpenGL pixel data format enumeration. More...
 
enum  PixelDataInternalFormat : GLenum {
  PixelDataInternalFormat::DepthComponent,
  PixelDataInternalFormat::DepthStencil,
  PixelDataInternalFormat::StencilIndex8,
  PixelDataInternalFormat::Red,
  PixelDataInternalFormat::RG,
  PixelDataInternalFormat::RGB,
  PixelDataInternalFormat::RGBA,
  PixelDataInternalFormat::R8,
  PixelDataInternalFormat::R8SNorm,
  PixelDataInternalFormat::R16,
  PixelDataInternalFormat::R16SNorm,
  PixelDataInternalFormat::RG8,
  PixelDataInternalFormat::RG8SNorm,
  PixelDataInternalFormat::RG16,
  PixelDataInternalFormat::RG16SNorm,
  PixelDataInternalFormat::R3G3B2,
  PixelDataInternalFormat::RGB4,
  PixelDataInternalFormat::RGB5,
  PixelDataInternalFormat::RGB8,
  PixelDataInternalFormat::RGB8SNorm,
  PixelDataInternalFormat::RGB10,
  PixelDataInternalFormat::RGB12,
  PixelDataInternalFormat::RGB16,
  PixelDataInternalFormat::RGB16SNorm,
  PixelDataInternalFormat::RGBA2,
  PixelDataInternalFormat::RGBA4,
  PixelDataInternalFormat::RGB5A1,
  PixelDataInternalFormat::RGBA8,
  PixelDataInternalFormat::RGBA8SNorm,
  PixelDataInternalFormat::RGB10A2,
  PixelDataInternalFormat::RGB10A2UI,
  PixelDataInternalFormat::RGBA12,
  PixelDataInternalFormat::RGBA16,
  PixelDataInternalFormat::RGBA16SNorm,
  PixelDataInternalFormat::SRGB8,
  PixelDataInternalFormat::SRGB8Alpha8,
  PixelDataInternalFormat::R16F,
  PixelDataInternalFormat::RG16F,
  PixelDataInternalFormat::RGB16F,
  PixelDataInternalFormat::RGBA16F,
  PixelDataInternalFormat::R32F,
  PixelDataInternalFormat::RG32F,
  PixelDataInternalFormat::RGB32F,
  PixelDataInternalFormat::RGBA32F,
  PixelDataInternalFormat::R11FG11FB10F,
  PixelDataInternalFormat::RGB9E5,
  PixelDataInternalFormat::R8I,
  PixelDataInternalFormat::R8UI,
  PixelDataInternalFormat::R16I,
  PixelDataInternalFormat::R16UI,
  PixelDataInternalFormat::R32I,
  PixelDataInternalFormat::R32UI,
  PixelDataInternalFormat::RG8I,
  PixelDataInternalFormat::RG8UI,
  PixelDataInternalFormat::RG16I,
  PixelDataInternalFormat::RG16UI,
  PixelDataInternalFormat::RG32I,
  PixelDataInternalFormat::RG32UI,
  PixelDataInternalFormat::RGB8I,
  PixelDataInternalFormat::RGB8UI,
  PixelDataInternalFormat::RGB16I,
  PixelDataInternalFormat::RGB16UI,
  PixelDataInternalFormat::RGB32I,
  PixelDataInternalFormat::RGB32UI,
  PixelDataInternalFormat::RGBA8I,
  PixelDataInternalFormat::RGBA8UI,
  PixelDataInternalFormat::RGBA16I,
  PixelDataInternalFormat::RGBA16UI,
  PixelDataInternalFormat::RGBA32I,
  PixelDataInternalFormat::RGBA32UI,
  PixelDataInternalFormat::DepthComponent16,
  PixelDataInternalFormat::DepthComponent24,
  PixelDataInternalFormat::DepthComponent32,
  PixelDataInternalFormat::DepthComponent32F,
  PixelDataInternalFormat::Depth24Stencil8,
  PixelDataInternalFormat::Depth32fStencil8,
  PixelDataInternalFormat::CompressedRed,
  PixelDataInternalFormat::CompressedRG,
  PixelDataInternalFormat::CompressedRGB,
  PixelDataInternalFormat::CompressedRGBA,
  PixelDataInternalFormat::CompressedSRGB,
  PixelDataInternalFormat::CompressedSRGBAlpha,
  PixelDataInternalFormat::CompressedRedRGTC1,
  PixelDataInternalFormat::CompressedSignedRedRGTC1,
  PixelDataInternalFormat::CompressedRGRGTC2,
  PixelDataInternalFormat::CompressedSignedRGRGTC2,
  PixelDataInternalFormat::CompressedRGBABPTCUNorm,
  PixelDataInternalFormat::CompressedSRGBAlphaBPTCUNorm,
  PixelDataInternalFormat::CompressedRGBBPTCSignedFloat,
  PixelDataInternalFormat::CompressedRGBBPTCUnsignedFloat,
  PixelDataInternalFormat::CompressedRGB8ETC2,
  PixelDataInternalFormat::CompressedSRGB8ETC2,
  PixelDataInternalFormat::CompressedRGB8PunchthroughAlpha1ETC2,
  PixelDataInternalFormat::CompressedSRGB8PunchthroughAlpha1ETC2,
  PixelDataInternalFormat::CompressedETC2EAC,
  PixelDataInternalFormat::CompressedSRGB8Alpha8ETC2EAC,
  PixelDataInternalFormat::CompressedR11EAC,
  PixelDataInternalFormat::CompressedSignedR11EAC,
  PixelDataInternalFormat::CompressedRG11EAC,
  PixelDataInternalFormat::CompressedSignedRG11EAC
}
 OpenGL pixel data internal format enumeration. More...
 
enum  ImageUnitFormat : GLenum {
  ImageUnitFormat::RGBA32F,
  ImageUnitFormat::RGBA16F,
  ImageUnitFormat::RG32F,
  ImageUnitFormat::RG16F,
  ImageUnitFormat::R11FG11FB10F,
  ImageUnitFormat::R32F,
  ImageUnitFormat::R16F,
  ImageUnitFormat::RGBA32UI,
  ImageUnitFormat::RGBA16UI,
  ImageUnitFormat::RGB10_A2UI,
  ImageUnitFormat::RGBA8UI,
  ImageUnitFormat::RG32UI,
  ImageUnitFormat::RG16UI,
  ImageUnitFormat::RG8UI,
  ImageUnitFormat::R32UI,
  ImageUnitFormat::R16UI,
  ImageUnitFormat::R8UI,
  ImageUnitFormat::RGBA32I,
  ImageUnitFormat::RGBA16I,
  ImageUnitFormat::RGBA8I,
  ImageUnitFormat::RG32I,
  ImageUnitFormat::RG16I,
  ImageUnitFormat::RG8I,
  ImageUnitFormat::R32I,
  ImageUnitFormat::R16I,
  ImageUnitFormat::R8I,
  ImageUnitFormat::RGBA16,
  ImageUnitFormat::RGB10A2,
  ImageUnitFormat::RGBA8,
  ImageUnitFormat::RG16,
  ImageUnitFormat::RG8,
  ImageUnitFormat::R16,
  ImageUnitFormat::R8,
  ImageUnitFormat::RGBA16SNorm,
  ImageUnitFormat::RGBA8SNorm,
  ImageUnitFormat::RG16SNorm,
  ImageUnitFormat::RG8SNorm,
  ImageUnitFormat::R16SNorm,
  ImageUnitFormat::R8SNorm
}
 OpenGL image unit format enumeration. More...
 
enum  PixelStorageMode : GLenum {
  PixelStorageMode::PackSwapBytes,
  PixelStorageMode::PackLsbFirst,
  PixelStorageMode::PackRowLength,
  PixelStorageMode::PackSkipRows,
  PixelStorageMode::PackSkipPixels,
  PixelStorageMode::PackAlignment,
  PixelStorageMode::PackImageHeight,
  PixelStorageMode::PackSkipImages,
  PixelStorageMode::PackCompressedBlockWidth,
  PixelStorageMode::PackCompressedBlockHeight,
  PixelStorageMode::PackCompressedBlockDepth,
  PixelStorageMode::PackCompressedBlockSize,
  PixelStorageMode::UnpackSwapBytes,
  PixelStorageMode::UnpackLsbFirst,
  PixelStorageMode::UnpackRowLength,
  PixelStorageMode::UnpackSkipRows,
  PixelStorageMode::UnpackSkipPixels,
  PixelStorageMode::UnpackAlignment,
  PixelStorageMode::UnpackImageHeight,
  PixelStorageMode::UnpackSkipImages,
  PixelStorageMode::UnpackCompressedBlockWidth,
  PixelStorageMode::UnpackCompressedBlockHeight,
  PixelStorageMode::UnpackCompressedBlockDepth,
  PixelStorageMode::UnpackCompressedBlockSize
}
 Pixel storage mode parameter enumeration. More...
 
enum  PolygonMode : GLenum {
  PolygonMode::Point,
  PolygonMode::Line,
  PolygonMode::Fill
}
 Polygon rasterization mode enumeration. More...
 
enum  PrecisionType : GLenum {
  PrecisionType::LowFloat,
  PrecisionType::MediumFloat,
  PrecisionType::HighFloat,
  PrecisionType::LowInt,
  PrecisionType::MediumInt,
  PrecisionType::HighInt
}
 Precision type enumeration. More...
 
enum  PrimitiveType : GLenum {
  PrimitiveType::Points,
  PrimitiveType::LineStrip,
  PrimitiveType::LineLoop,
  PrimitiveType::Lines,
  PrimitiveType::TriangleStrip,
  PrimitiveType::TriangleFan,
  PrimitiveType::Triangles,
  PrimitiveType::LinesAdjacency,
  PrimitiveType::LineStripAdjacency,
  PrimitiveType::TrianglesAdjacency,
  PrimitiveType::TriangleStripAdjacency,
  PrimitiveType::Patches
}
 Primitive type enumeration. More...
 
enum  TessGenPrimitiveType : GLenum {
  TessGenPrimitiveType::Quads,
  TessGenPrimitiveType::Triangles,
  TessGenPrimitiveType::Isolines
}
 Tesselation generation stage primitive type. More...
 
enum  TessGenPrimitiveSpacing : GLenum {
  TessGenPrimitiveSpacing::FractionalEven,
  TessGenPrimitiveSpacing::FractionalOdd,
  TessGenPrimitiveSpacing::Equal
}
 Tesselation primitive spacing. More...
 
enum  ProgramInterface : GLenum {
  ProgramInterface::Uniform,
  ProgramInterface::UniformBlock,
  ProgramInterface::AtomicCounterBuffer,
  ProgramInterface::ProgramInput,
  ProgramInterface::ProgramOutput,
  ProgramInterface::VertexSubroutine,
  ProgramInterface::TessControlSubroutine,
  ProgramInterface::TessEvaluationSubroutine,
  ProgramInterface::GeometrySubroutine,
  ProgramInterface::FragmentSubroutine,
  ProgramInterface::ComputeSubroutine,
  ProgramInterface::VertexSubroutineUniform,
  ProgramInterface::TessControlSubroutineUniform,
  ProgramInterface::TessEvaluationSubroutineUniform,
  ProgramInterface::GeometrySubroutineUniform,
  ProgramInterface::FragmentSubroutineUniform,
  ProgramInterface::ComputeSubroutineUniform,
  ProgramInterface::TransformFeedebackVarying,
  ProgramInterface::BufferVariable,
  ProgramInterface::ShaderStorageBlock
}
 Program interface enumeration. More...
 
enum  ProgramResourceProperty : GLenum {
  ProgramResourceProperty::ArraySize,
  ProgramResourceProperty::Offset,
  ProgramResourceProperty::BlockIndex,
  ProgramResourceProperty::ArrayStride,
  ProgramResourceProperty::MatrixStride,
  ProgramResourceProperty::IsRowMajor,
  ProgramResourceProperty::AtomicCounterBufferIndex,
  ProgramResourceProperty::BufferBinding,
  ProgramResourceProperty::BufferDataSize,
  ProgramResourceProperty::NumActiveVariables,
  ProgramResourceProperty::ActiveVariables,
  ProgramResourceProperty::ReferencedByVertexShader,
  ProgramResourceProperty::ReferencedByTessControlShader,
  ProgramResourceProperty::ReferencedByTessEvaluationShader,
  ProgramResourceProperty::ReferencedByGeometryShader,
  ProgramResourceProperty::ReferencedByFragmentShader,
  ProgramResourceProperty::ReferencedByComputeShader,
  ProgramResourceProperty::NumCompatibleSubroutines,
  ProgramResourceProperty::CompatibleSubroutines,
  ProgramResourceProperty::TopLevelArraySize,
  ProgramResourceProperty::TopLevelArrayStride,
  ProgramResourceProperty::Location,
  ProgramResourceProperty::LocationIndex,
  ProgramResourceProperty::LocationComponent,
  ProgramResourceProperty::IsPerPatch,
  ProgramResourceProperty::TransformFeedbackBufferIndex,
  ProgramResourceProperty::TransformFeedbackBufferStride
}
 Program resource property enumeration. More...
 
enum  ProgramPipelineStage : GLbitfield {
  ProgramPipelineStage::VertexShader,
  ProgramPipelineStage::TessControlShader,
  ProgramPipelineStage::TessEvaluationShader,
  ProgramPipelineStage::GeometryShader,
  ProgramPipelineStage::FragmentShader,
  ProgramPipelineStage::ComputeShader,
  ProgramPipelineStage::AllShaders
}
 Program pipeline stage enumeration. More...
 
enum  ProvokeMode : GLenum {
  ProvokeMode::FirstVertexConvention,
  ProvokeMode::LastVertexConvention
}
 Provoking vertex selection mode (for flatshading) enumeration. More...
 
enum  QueryTarget : GLenum {
  QueryTarget::TimeElapsed,
  QueryTarget::Timestamp,
  QueryTarget::SamplesPassed,
  QueryTarget::AnySamplesPassed,
  QueryTarget::PrimitivesGenerated,
  QueryTarget::TransformFeedbackPrimitivesWritten,
  QueryTarget::VerticesSubmitted,
  QueryTarget::PrimitivesSubmitted,
  QueryTarget::VertexShaderInvocations,
  QueryTarget::TessControlShaderPatches,
  QueryTarget::TessEvaluationShaderInvocations,
  QueryTarget::GeometryShaderInvocations,
  QueryTarget::GeometryShaderPrimitivesEmitted,
  QueryTarget::FragmentShaderInvocations,
  QueryTarget::ComputeShaderInvocations,
  QueryTarget::ClippingInputPrimitives,
  QueryTarget::ClippingOutputPrimitives,
  QueryTarget::TransformFeedbackOverflow,
  QueryTarget::TransformFeedbackStreamOverflow
}
 Query bind target. More...
 
enum  ConditionalRenderMode : GLenum {
  ConditionalRenderMode::QueryWait,
  ConditionalRenderMode::QueryNoWait,
  ConditionalRenderMode::QueryByRegionWait,
  ConditionalRenderMode::QueryByRegionNoWait,
  ConditionalRenderMode::QueryWaitInverted,
  ConditionalRenderMode::QueryNoWaitInverted,
  ConditionalRenderMode::QueryByRegionWaitInverted,
  ConditionalRenderMode::QueryByRegionNoWaitInverted
}
 Conditional render modes. More...
 
enum  RenderbufferTarget : GLenum { RenderbufferTarget::Renderbuffer }
 Renderbuffer bind target. More...
 
enum  ResetNotificationStrategy : GLenum {
  ResetNotificationStrategy::NoResetNotification,
  ResetNotificationStrategy::LoseContextOnReset
}
 Graphics reset notification strategy enumeration. More...
 
enum  ShaderType : GLenum {
  ShaderType::Vertex,
  ShaderType::TessControl,
  ShaderType::TessEvaluation,
  ShaderType::Geometry,
  ShaderType::Fragment,
  ShaderType::Compute
}
 The type of a Shader. More...
 
enum  StencilOperation : GLenum {
  StencilOperation::Keep,
  StencilOperation::Zero,
  StencilOperation::Replace,
  StencilOperation::Incr,
  StencilOperation::Decr,
  StencilOperation::Invert,
  StencilOperation::IncrWrap,
  StencilOperation::DecrWrap
}
 Stencil operation type enumeration. More...
 
enum  StringQuery : GLenum { ,
  StringQuery::Renderer,
  StringQuery::Vendor,
  StringQuery::Version,
  StringQuery::ShadingLanguageVersion
}
 OpenGL string query enumeration. More...
 
enum  SyncCondition : GLenum { SyncCondition::GPUCommandsComplete }
 The synchronization condition enumeration. More...
 
enum  SyncType : GLenum { SyncType::Fence }
 The synchronization object type enumeration. More...
 
enum  SyncStatus : GLenum {
  SyncStatus::Signaled,
  SyncStatus::Unsignaled
}
 The synchronization object status enumeration. More...
 
enum  SyncWaitResult : GLenum {
  SyncWaitResult::ConditionSatisfied,
  SyncWaitResult::AlreadySignaled,
  SyncWaitResult::TimeoutExpired,
  SyncWaitResult::WaitFailed
}
 The wait result enumeration. More...
 
enum  TextureCompareMode : GLenum {
  TextureCompareMode::None,
  TextureCompareMode::CompareRefToTexture
}
 Texture compare mode enumeration. More...
 
enum  TextureFilter : GLenum {
  TextureFilter::Nearest,
  TextureFilter::Linear
}
 Texture filter enumeration. More...
 
enum  TextureMagFilter : GLenum {
  TextureMagFilter::Nearest,
  TextureMagFilter::Linear
}
 Texture magnification filter enumeration. More...
 
enum  TextureMinFilter : GLenum {
  TextureMinFilter::Nearest,
  TextureMinFilter::Linear,
  TextureMinFilter::NearestMipmapNearest,
  TextureMinFilter::NearestMipmapLinear,
  TextureMinFilter::LinearMipmapNearest,
  TextureMinFilter::LinearMipmapLinear
}
 Texture minification filter enumeration. More...
 
enum  TextureSwizzleCoord : GLenum {
  TextureSwizzleCoord::R,
  TextureSwizzleCoord::G,
  TextureSwizzleCoord::B,
  TextureSwizzleCoord::A,
  TextureSwizzleCoord::RGBA
}
 Texture swizzle parameter coordinate enumeration. More...
 
enum  TextureSwizzle : GLenum {
  TextureSwizzle::Red,
  TextureSwizzle::Green,
  TextureSwizzle::Blue,
  TextureSwizzle::Alpha,
  TextureSwizzle::Zero,
  TextureSwizzle::One
}
 Texture swizzle enumeration. More...
 
enum  TextureTarget : GLenum { ,
  TextureTarget::_1D,
  TextureTarget::_2D,
  TextureTarget::_3D,
  TextureTarget::_1DArray,
  TextureTarget::_2DArray,
  TextureTarget::Rectangle,
  TextureTarget::Buffer,
  TextureTarget::CubeMap,
  TextureTarget::CubeMapArray,
  TextureTarget::_2DMultisample,
  TextureTarget::_2DMultisampleArray,
  TextureTarget::CubeMapPositiveX,
  TextureTarget::CubeMapNegativeX,
  TextureTarget::CubeMapPositiveY,
  TextureTarget::CubeMapNegativeY,
  TextureTarget::CubeMapPositiveZ,
  TextureTarget::CubeMapNegativeZ
}
 Texture bind and image specification targets. More...
 
enum  TextureWrapCoord : GLenum {
  TextureWrapCoord::S,
  TextureWrapCoord::T,
  TextureWrapCoord::R
}
 Texture wrap parameter coordinate enumeration. More...
 
enum  TextureWrap : GLenum {
  TextureWrap::ClampToEdge,
  TextureWrap::Repeat,
  TextureWrap::ClampToBorder,
  TextureWrap::MirroredRepeat,
  TextureWrap::MirrorClampToEdge
}
 Texture wrap enumeration. More...
 
enum  TransformFeedbackMode : GLenum {
  TransformFeedbackMode::InterleavedAttribs,
  TransformFeedbackMode::SeparateAttribs
}
 The mode used to capture the varying variables in TF. More...
 
enum  TransformFeedbackTarget : GLenum { TransformFeedbackTarget::TransformFeedback }
 Transform feedback bind targets. More...
 
enum  TransformFeedbackPrimitiveType : GLenum {
  TransformFeedbackPrimitiveType::Triangles,
  TransformFeedbackPrimitiveType::Lines,
  TransformFeedbackPrimitiveType::Points
}
 Transform feedback primitive modes. More...
 
enum  ObjectType : GLenum {
  ObjectType::Buffer,
  ObjectType::Framebuffer,
  ObjectType::ProgramPipeline,
  ObjectType::Program,
  ObjectType::Query,
  ObjectType::Renderbuffer,
  ObjectType::Sampler,
  ObjectType::Shader,
  ObjectType::Texture,
  ObjectType::TransformFeedback,
  ObjectType::VertexArray,
  ObjectType::None
}
 Enumeration of object types. More...
 
enum  ErrorCode : GLenum {
  ErrorCode::NoError,
  ErrorCode::OutOfMemory,
  ErrorCode::InvalidEnum,
  ErrorCode::InvalidValue,
  ErrorCode::InvalidOperation,
  ErrorCode::InvalidFramebufferOperation,
  ErrorCode::StackOverflow,
  ErrorCode::StackUnderflow,
  ErrorCode::TableTooLarge,
  ErrorCode::ContextLost
}
 Error code enumeration. More...
 
enum  PerfMonitorAMDType : GLenum {
  PerfMonitorAMDType::UnsignedInt,
  PerfMonitorAMDType::Float,
  PerfMonitorAMDType::UnsignedInt64,
  PerfMonitorAMDType::Percentage
}
 Performance counter type. More...
 
enum  GraphicsResetStatusARB : GLenum {
  GraphicsResetStatusARB::NoError,
  GraphicsResetStatusARB::GuiltyContextReset,
  GraphicsResetStatusARB::InnocentContextReset,
  GraphicsResetStatusARB::UnknownContextReset
}
 Graphics reset status enumeration. More...
 
enum  ResetNotificationStrategyARB : GLenum {
  ResetNotificationStrategyARB::NoResetNotification,
  ResetNotificationStrategyARB::LoseContextOnReset
}
 Graphics reset notification strategy enumeration. More...
 
enum  CompatibilityAttributeGroup : GLbitfield {
  CompatibilityAttributeGroup::AccumBuffer,
  CompatibilityAttributeGroup::ColorBuffer,
  CompatibilityAttributeGroup::Current,
  CompatibilityAttributeGroup::DepthBuffer,
  CompatibilityAttributeGroup::Enable,
  CompatibilityAttributeGroup::Eval,
  CompatibilityAttributeGroup::Fog,
  CompatibilityAttributeGroup::Hint,
  CompatibilityAttributeGroup::Lighting,
  CompatibilityAttributeGroup::Line,
  CompatibilityAttributeGroup::List,
  CompatibilityAttributeGroup::Multisample,
  CompatibilityAttributeGroup::PixelMode,
  CompatibilityAttributeGroup::Point,
  CompatibilityAttributeGroup::Polygon,
  CompatibilityAttributeGroup::PolygonStipple,
  CompatibilityAttributeGroup::Scissor,
  CompatibilityAttributeGroup::StencilBuffer,
  CompatibilityAttributeGroup::Texture,
  CompatibilityAttributeGroup::Transform,
  CompatibilityAttributeGroup::Viewport,
  CompatibilityAttributeGroup::AllAttribs
}
 Compatibility server context attribute bits enumeration. More...
 
enum  CompatibilityClientAttributeGroup : GLbitfield {
  CompatibilityClientAttributeGroup::VertexArray,
  CompatibilityClientAttributeGroup::PixelStore,
  CompatibilityClientAttributeGroup::AllAttribs
}
 Compatibility client context attribute bits enumeration. More...
 
enum  CompatibilityMatrixMode : GLenum {
  CompatibilityMatrixMode::Projection,
  CompatibilityMatrixMode::Modelview,
  CompatibilityMatrixMode::Texture,
  CompatibilityMatrixMode::Color
}
 Compatibility matrix mode enumeration. More...
 
enum  CompatibilityPrimitiveType : GLenum {
  CompatibilityPrimitiveType::Points,
  CompatibilityPrimitiveType::LineStrip,
  CompatibilityPrimitiveType::LineLoop,
  CompatibilityPrimitiveType::Lines,
  CompatibilityPrimitiveType::TriangleStrip,
  CompatibilityPrimitiveType::TriangleFan,
  CompatibilityPrimitiveType::Triangles,
  CompatibilityPrimitiveType::Quads,
  CompatibilityPrimitiveType::QuadStrip,
  CompatibilityPrimitiveType::Polygon
}
 Compatibility primitive type enumeration. More...
 
enum  PathNVCapStyle : GLenum {
  PathNVCapStyle::Flat,
  PathNVCapStyle::Square,
  PathNVCapStyle::Round,
  PathNVCapStyle::Triangular
}
 Path cap mode enumeration. More...
 
enum  PathNVColor : GLenum {
  PathNVColor::Primary,
  PathNVColor::Secondary
}
 Path color mode enumeration. More...
 
enum  PathNVColorFormat : GLenum {
  PathNVColorFormat::Luminance,
  PathNVColorFormat::Alpha,
  PathNVColorFormat::Intensity,
  PathNVColorFormat::LuminanceAlpha,
  PathNVColorFormat::RGB,
  PathNVColorFormat::RGBA
}
 Path color format enumeration. More...
 
enum  PathNVCommand : GLubyte {
  PathNVCommand::Close,
  PathNVCommand::MoveTo,
  PathNVCommand::RelativeMoveTo,
  PathNVCommand::LineTo,
  PathNVCommand::RelativeLineTo,
  PathNVCommand::HorizontalLineTo,
  PathNVCommand::RelativeHorizontalLineTo,
  PathNVCommand::VerticalLineTo,
  PathNVCommand::RelativeVerticalLineTo,
  PathNVCommand::QuadraticCurveTo,
  PathNVCommand::RelativeQuadraticCurveTo,
  PathNVCommand::CubicCurveTo,
  PathNVCommand::RelativeCubicCurveTo,
  PathNVCommand::SmoothQuadraticCurveTo,
  PathNVCommand::RelativeSmoothQuadraticCurveTo,
  PathNVCommand::SmoothCubicCurveTo,
  PathNVCommand::RelativeSmoothCubicCurveTo,
  PathNVCommand::SmallCCWArcTo,
  PathNVCommand::RelativeSmallCCWArcTo,
  PathNVCommand::SmallCWArcTo,
  PathNVCommand::RelativeSmallCWArcTo,
  PathNVCommand::LargeCCWArcTo,
  PathNVCommand::RelativeLargeCCWArcTo,
  PathNVCommand::LargeCWArcTo,
  PathNVCommand::RelativeLargeCWArcTo,
  PathNVCommand::Restart,
  PathNVCommand::DupFirstCubicCurveTo,
  PathNVCommand::DupLastCubicCurveTo,
  PathNVCommand::Rect,
  PathNVCommand::CircularCCWArcTo,
  PathNVCommand::CircularCWArcTo,
  PathNVCommand::CircularTangentArcTo,
  PathNVCommand::ArcTo,
  PathNVCommand::RelativeArcTo
}
 Path specification command enumeration. More...
 
enum  PathNVDashOffsetReset : GLenum {
  PathNVDashOffsetReset::MoveToReset,
  PathNVDashOffsetReset::MoveToContinues
}
 Path dash offset reset mode enumeration. More...
 
enum  PathNVFillCoverMode : GLenum {
  PathNVFillCoverMode::ConvexHull,
  PathNVFillCoverMode::BoundingBox,
  PathNVFillCoverMode::BoundingBoxOfBoundingBoxes,
  PathNVFillCoverMode::FillCover
}
 Path fill covering mode. More...
 
enum  PathNVFillMode : GLenum {
  PathNVFillMode::Invert,
  PathNVFillMode::CountUp,
  PathNVFillMode::CountDown,
  PathNVFillMode::FillMode
}
 Path fill mode. More...
 
enum  PathNVFontStyle : GLbitfield {
  PathNVFontStyle::Bold,
  PathNVFontStyle::Italic
}
 Path font style bits enumeration. More...
 
enum  PathNVFontTarget : GLenum {
  PathNVFontTarget::Standard,
  PathNVFontTarget::System,
  PathNVFontTarget::FileName
}
 Path font target enumeration. More...
 
enum  PathNVFormat : GLenum {
  PathNVFormat::SVG,
  PathNVFormat::PS
}
 Path specification string format enumeration. More...
 
enum  PathNVGenMode : GLenum {
  PathNVGenMode::None,
  PathNVGenMode::EyeLinear,
  PathNVGenMode::ObjectLinear,
  PathNVGenMode::ObjectBoundingBox
}
 Path color and tex-coord generation mode enumeration. More...
 
enum  PathNVJoinStyle : GLenum {
  PathNVJoinStyle::None,
  PathNVJoinStyle::Round,
  PathNVJoinStyle::Bevel,
  PathNVJoinStyle::MiterRevert,
  PathNVJoinStyle::MiterTruncate
}
 Stroke line join style enumeration. More...
 
enum  PathNVListMode : GLenum {
  PathNVListMode::AccumAdjacentPairs,
  PathNVListMode::AdjacentPairs,
  PathNVListMode::FirstToRest
}
 Path list mode enumeration. More...
 
enum  PathNVMetricQuery : GLbitfield {
  PathNVMetricQuery::GlyphWidth,
  PathNVMetricQuery::GlyphHeight,
  PathNVMetricQuery::GlyphHorizontalBearingX,
  PathNVMetricQuery::GlyphHorizontalBearingY,
  PathNVMetricQuery::GlyphHorizontalBearingAdvance,
  PathNVMetricQuery::GlyphVerticalBearingX,
  PathNVMetricQuery::GlyphVerticalBearingY,
  PathNVMetricQuery::GlyphVerticalBearingAdvance,
  PathNVMetricQuery::GlyphHasKerning,
  PathNVMetricQuery::FontXMinBounds,
  PathNVMetricQuery::FontYMinBounds,
  PathNVMetricQuery::FontXMaxBounds,
  PathNVMetricQuery::FontYMaxBounds,
  PathNVMetricQuery::FontUnitsPerEm,
  PathNVMetricQuery::FontAscender,
  PathNVMetricQuery::FontDescender,
  PathNVMetricQuery::FontHeight,
  PathNVMetricQuery::FontMaxAdvanceWidth,
  PathNVMetricQuery::FontMaxAdvanceHeight,
  PathNVMetricQuery::FontUnderlinePosition,
  PathNVMetricQuery::FontUnderlineThickness,
  PathNVMetricQuery::FontHasKerning
}
 Path metric query bits enumeration. More...
 
enum  PathNVMissingGlyph : GLenum {
  PathNVMissingGlyph::Skip,
  PathNVMissingGlyph::Use
}
 Path missing glyph action mode enumeration. More...
 
enum  PathNVStrokeCoverMode : GLenum {
  PathNVStrokeCoverMode::ConvexHull,
  PathNVStrokeCoverMode::BoundingBox,
  PathNVStrokeCoverMode::BoundingBoxOfBoundingBoxes,
  PathNVStrokeCoverMode::StrokeCover
}
 Path stroke covering move. More...
 
enum  PathNVTextEncoding : GLenum {
  PathNVTextEncoding::UTF8,
  PathNVTextEncoding::UTF16
}
 Text encoding type enumeration. More...
 
enum  PathNVTransformType : GLenum {
  PathNVTransformType::None,
  PathNVTransformType::TranslateX,
  PathNVTransformType::TranslateY,
  PathNVTransformType::Translate2D,
  PathNVTransformType::Translate3D,
  PathNVTransformType::Affine2D,
  PathNVTransformType::Affine3D,
  PathNVTransformType::TransposeAffine2D,
  PathNVTransformType::TransposeAffine3D
}
 Path transform type enumeration. More...
 
enum  DebugOutputARBSeverity : GLenum {
  DebugOutputARBSeverity::High,
  DebugOutputARBSeverity::Medium,
  DebugOutputARBSeverity::Low,
  DebugOutputARBSeverity::DontCare
}
 Debug output severity enumeration. More...
 
enum  DebugOutputARBSource : GLenum {
  DebugOutputARBSource::API,
  DebugOutputARBSource::WindowSystem,
  DebugOutputARBSource::ShaderCompiler,
  DebugOutputARBSource::ThirdParty,
  DebugOutputARBSource::Application,
  DebugOutputARBSource::Other,
  DebugOutputARBSource::DontCare
}
 Debug output source enumeration. More...
 
enum  DebugOutputARBType : GLenum {
  DebugOutputARBType::Error,
  DebugOutputARBType::DeprecatedBehavior,
  DebugOutputARBType::UndefinedBehavior,
  DebugOutputARBType::Portability,
  DebugOutputARBType::Performance,
  DebugOutputARBType::Other,
  DebugOutputARBType::DontCare
}
 Debug output type enumeration. More...
 
enum  DebugSeverity : GLenum {
  DebugSeverity::High,
  DebugSeverity::Medium,
  DebugSeverity::Low,
  DebugSeverity::Notification,
  DebugSeverity::DontCare
}
 Debug output severity enumeration. More...
 
enum  DebugSource : GLenum {
  DebugSource::API,
  DebugSource::WindowSystem,
  DebugSource::ShaderCompiler,
  DebugSource::ThirdParty,
  DebugSource::Application,
  DebugSource::Other,
  DebugSource::DontCare
}
 Debug output source enumeration. More...
 
enum  DebugType : GLenum {
  DebugType::Error,
  DebugType::DeprecatedBehavior,
  DebugType::UndefinedBehavior,
  DebugType::Portability,
  DebugType::Performance,
  DebugType::Other,
  DebugType::Marker,
  DebugType::PushGroup,
  DebugType::PopGroup,
  DebugType::DontCare
}
 Debug output type enumeration. More...
 
enum  DebugOutputSeverity : GLenum {
  DebugOutputSeverity::High,
  DebugOutputSeverity::Medium,
  DebugOutputSeverity::Low,
  DebugOutputSeverity::Notification,
  DebugOutputSeverity::DontCare
}
 Debug output severity enumeration. More...
 
enum  DebugOutputSource : GLenum {
  DebugOutputSource::API,
  DebugOutputSource::WindowSystem,
  DebugOutputSource::ShaderCompiler,
  DebugOutputSource::ThirdParty,
  DebugOutputSource::Application,
  DebugOutputSource::Other,
  DebugOutputSource::DontCare
}
 Debug output source enumeration. More...
 
enum  DebugOutputType : GLenum {
  DebugOutputType::Error,
  DebugOutputType::DeprecatedBehavior,
  DebugOutputType::UndefinedBehavior,
  DebugOutputType::Portability,
  DebugOutputType::Performance,
  DebugOutputType::Marker,
  DebugOutputType::PushGroup,
  DebugOutputType::PopGroup,
  DebugOutputType::Other,
  DebugOutputType::DontCare
}
 Debug output type enumeration. More...
 
enum  ShapeDrawOperationMethod : GLuint
 Enumeration of drawing methods.
 

Functions

template<typename T >
DataType GetDataType (void)
 Returns the DataType for the specified type T.
 
StrCRef EnumValueName (Enum enum_value)
 Returns the name of the GL enumerated value for an OGLplus enum value. More...
 
template<typename Enumeration >
Range< Enum > EnumValueRange (void)
 Returns a Range of values in an Enumeration. More...
 
FaceOrientation Inverted (FaceOrientation winding)
 Inverts the face orientation (CW to CCW and CCW to CW) More...
 
GLuint TextureTargetDimensions (TextureTarget target)
 Function returning the number of texture dimensions for a texture target.
 
GLuint64 GetGLHandle (TextureHandle th)
 Returns the GL handle value from TextureHandle.
 
GLuint64 GetGLHandle (ImageHandle ih)
 Returns the GL handle value from ImageHandle.
 
 OGLPLUS_DECLARE_PROG_VAR (Uniform, tag::ImplicitSel, tag::Uniform, tag::NoTypecheck) typedef Uniform< GLint > UniformSampler
 Uniform sampler.
 
 OGLPLUS_DECLARE_PROG_VAR (VertexAttrib, tag::ImplicitSel, tag::VertexAttrib, tag::NoTypecheck) class VertexArrayAttrib
 Encapsulates vertex array attribute functionality. More...
 
template<std::size_t N>
VertexArrayAttrib operator| (ProgramName program, const GLchar(&identifier)[N])
 Syntax sugar for construction of a VertexArrayAttrib object. More...
 
VertexArrayAttrib operator| (ProgramName program, GLuint location)
 Syntax sugar for construction of a VertexArrayAttrib object. More...
 
Angle< AngleValueType > Radians (AngleValueType val_rad)
 Creates a new angle from a value in radians. More...
 
Angle< AngleValueType > Degrees (AngleValueType val_deg)
 Creates a new angle from a value in degrees. More...
 
Angle< AngleValueType > FullCircles (AngleValueType value)
 Creates a new angle from a value in "full circles" (i.e. 360 degrees) More...
 
Angle< AngleValueType > RightAngles (AngleValueType value)
 Creates a new angle from a value in "right angles" (i.e. 90 deg.) More...
 
Angle< AngleValueType > ArcSin (AngleValueType x)
 Creates a new angle using the arc sine function. More...
 
Angle< AngleValueType > ArcCos (AngleValueType x)
 Creates a new angle using the arc cosine function. More...
 
Angle< AngleValueType > ArcTan (AngleValueType x)
 Creates a new angle using the arc tangent function. More...
 
Angle< AngleValueType > ArcTan (AngleValueType y, AngleValueType x)
 Creates a new angle using the arc tangent function with 2 parameters. More...
 
template<typename T >
SineWave (T t)
 Returns a value on a sine wave at the specified point. More...
 
template<typename T >
SineWave01 (T t)
 Returns a value on a sine wave transformed to range <0, 1> More...
 
template<typename T >
CosineWave (T t)
 Returns a value on a cosine wave at the specified point. More...
 
template<typename T >
CosineWave01 (T t)
 Returns a value on a cosine wave transformed to range <0, 1> More...
 
template<typename T >
Vector< T, 3 > Rotate (const Quaternion< T > &q, const Vector< T, 3 > &v)
 
bool ValidString (const char *begin, const char *end)
 Checks if the range between begin and end is valid UTF-8 sequence.
 
template<typename ObjTag >
GLuint GetGLName (ObjectName< ObjTag > named)
 Returns the GLuint OpenGL name assigned to named object.
 
template<typename ObjTag >
ObjTag::NameType GetName (ObjectName< ObjTag > named)
 Returns the base name assigned to named object.
 
template<typename ObjectT >
const Classify< ObjectT >
::ObjTag::NameType * 
GetNames (const Sequence< ObjectT > &sequence)
 Returns a pointer to array of names stored in a sequence.
 
template<typename ObjName >
const GLuint * GetGLNames (const Sequence< ObjName > &sequence)
 Returns a pointer to array of GL object names stored in a sequence.
 
template<typename VarTag >
GLint GetGLLocation (ProgVarLoc< VarTag > variable)
 Returns the GL location/index of the specified variable.
 
 OGLPLUS_DECLARE_PROG_VAR (ProgramUniform, tag::DirectState, tag::Uniform, tag::NoTypecheck) typedef ProgramUniform< GLint > ProgramUniformSampler
 ProgramUniform sampler.
 
template<typename ErrorType >
void HandleError (ErrorType &error)
 Generic error handling function.
 
template<typename T >
aux::ListInitializer< T, 0 > List (T value)
 Helper function template that can be used for static container initialization. More...
 

Variables

AccessSpecifier typedef
AccessSpecifier 
Access
 Alternate name for AccessSpecifier.
 
CompatibilityPrimitiveType
typedef
CompatibilityPrimitiveType 
CompatPrimType
 Shorter name for CompatibilityPrimitiveType.
 

Detailed Description

All definitions of OGLplus are nested in the oglplus namespace.

.file oglplus/string/utf8.hpp .brief Helper utf8-related tools

Author
Matus Chochlik

Copyright 2011-2014 Matus Chochlik. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

.file oglplus/utils/filesystem.hpp .brief Helper filesystem-related utilities

Author
Matus Chochlik

Copyright 2011-2014 Matus Chochlik. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

.file oglplus/utils/nothing.hpp .brief Declaration of the Nothing utility type.

Author
Matus Chochlik

Copyright 2011-2014 Matus Chochlik. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

.file oglplus/utils/xml.hpp .brief Simple XML output utilities

Author
Matus Chochlik

Copyright 2011-2014 Matus Chochlik. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

Function Documentation

FaceOrientation oglplus::Inverted ( FaceOrientation  winding)

Inverts the face orientation (CW to CCW and CCW to CW)

See Also
FaceOrientation
Related OpenGL symbols:
glFrontFace
Examples:
oglplus/027_reflected_shape.cpp.

References CCW, and CW.

template<std::size_t N>
VertexArrayAttrib oglplus::operator| ( ProgramName  program,
const GLchar(&)  identifier[N] 
)

Syntax sugar for construction of a VertexArrayAttrib object.

Constructs an instance of VertexArrayAttrib for a vertex attribute identified by identifier in a program.

See Also
VertexArrayAttrib
VertexArrayAttrib oglplus::operator| ( ProgramName  program,
GLuint  location 
)

Syntax sugar for construction of a VertexArrayAttrib object.

Constructs an instance of VertexArrayAttrib for a vertex attribute at the specified location in a program.

See Also
VertexArrayAttrib
template<typename T >
Vector<T, 3> oglplus::Rotate ( const Quaternion< T > &  q,
const Vector< T, 3 > &  v 
)
Precondition
this->IsNormal()

Copyright © 2010-2014 Matúš Chochlík, University of Žilina, Žilina, Slovakia.
<matus.chochlik -at- fri.uniza.sk>
<chochlik -at -gmail.com>
Documentation generated on Mon Sep 22 2014 by Doxygen (version 1.8.6).