| globjects 1.0.0.000000000000 Strict OpenGL objects wrapper.

Classes | Enumerations | Functions
globjects Namespace Reference

Contains all the classes that wrap OpenGL functionality. More...

## Classes
class | AbstractFunctionCall
| The interface for a callable function with variadic argument types. More...
class | AbstractLogHandler
| Abstract interface to handle LogMessages. More...
class | AbstractState
class | AbstractStringSource
| Superclass for all types of static and dynamic strings, e.g. for the use as Shader code. More...
class | AbstractUniform
| Abstract base class for templated Uniforms. More...
class | AttachedRenderbuffer
| Wrapper of render buffer attachments of a frame buffer object. More...
class | AttachedTexture
| Encapsulates texture attachments of a frame buffer object. More...
class | Buffer
| Wrapper for OpenGL buffer objects. More...
class | Capability
class | Changeable
| Superclass of all objects that want others to signal that they have changed. More...
class | ChangeListener
| Allows listening to any Changeable. More...
class | CompositeStringSource
class | ConsoleLogger
| Writes LogMessages to stdout. More...
class | DebugMessage
class | Error
| Wrapper for OpenGL errors. More...
class | File
| String source associated to a file. More...
class | Framebuffer
| Enables creation of arbitrary render targets that are not directly drawn on the screen. More...
class | FramebufferAttachment
| Wraps attachments to a FrameBufferObject. More...
class | FunctionCall
class | HeapOnly
| The HeapOnly class Restricts creation to heap. More...
class | LocationIdentity
class | LogMessage
| Encapsulates a simple log message and its severity level. More...
class | LogMessageBuilder
| Builds a LogMessage from different kinds of primitive types. More...
class | NamedString
class | Object
| Superclass of all wrapped OpenGL objects. More...
class | ObjectVisitor
| Implements a Visitor Pattern to iterate over all tracked globjects objects. More...
class | Program
| Wraps an OpenGL program. More...
class | ProgramBinary
| The ProgramBinary class is used for directly setting binary sources for a Program. More...
class | ProgramPipeline
class | Query
| Encapsulates a GL Query object. More...
class | ref_ptr
| The ref_ptr class provides the interface for a reference pointer. More...
class | Referenced
| Superclass for all classes that use reference counting in globjects. More...
class | Renderbuffer
| Encapsulates OpenGL render buffer objects. More...
class | Sampler
| Wraps OpenGL sampler objects. More...
class | Shader
| Encapsulates OpenGL shaders. More...
class | Singleton
class | State
class | StateSetting
class | StateSettingType
class | StaticStringSource
| StaticStringSource is a StringSource using an std::string as source. More...
class | StringSourceDecorator
class | StringTemplate
class | Sync
class | Texture
| Wraps OpenGL texture objects. A Texture provides both interfaces to bind them for the OpenGL pipeline: binding and bindless texture. Bindless textures are only available if the graphics driver supports them. More...
class | TextureHandle
class | TransformFeedback
| Interface to use transform feedback. More...
class | Uniform
| Wraps access to typed global GLSL variables. More...
class | UniformBlock
class | VertexArray
class | VertexAttributeBinding

## Enumerations
enum | LogMessageLevel : unsigned int { LogMessageLevel::Fatal, LogMessageLevel::Critical, LogMessageLevel::Warning, LogMessageLevel::Debug, LogMessageLevel::Info }

## Functions
GLOBJECTS_API LogMessageBuilder | info (LogMessageLevel level=LogMessageLevel::Info)
GLOBJECTS_API LogMessageBuilder | debug ()
GLOBJECTS_API LogMessageBuilder | warning ()
GLOBJECTS_API LogMessageBuilder | critical ()
GLOBJECTS_API LogMessageBuilder | fatal ()
GLOBJECTS_API void | setLoggingHandler (AbstractLogHandler *handler)
GLOBJECTS_API AbstractLogHandler * | loggingHandler ()
GLOBJECTS_API void | setVerbosityLevel (LogMessageLevel verbosity)
GLOBJECTS_API LogMessageLevel | verbosityLevel ()
template<typename... Arguments>
void | info (const char *format, Arguments... arguments)
template<typename... Arguments>
void | debug (const char *format, Arguments... arguments)
template<typename... Arguments>
void | warning (const char *format, Arguments... arguments)
template<typename... Arguments>
void | critical (const char *format, Arguments... arguments)
template<typename... Arguments>
void | fatal (const char *format, Arguments... arguments)
GLOBJECTS_API int | readInt (const char *str, int &number)
GLOBJECTS_API void | parseFormat (std::ostream &stream, const char *&format)
GLOBJECTS_API void | streamprintf (std::ostream &stream, const char *format)
template<typename T , typename... Args>
void | streamprintf (std::ostream &stream, const char *format, const T &value, Args... args)
template<typename... Args>
std::string | formatString (const char *format, Args... args)
template<typename T , typename... Args>
ref_ptr< T > | make_ref (Args &&... args)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glbinding::Version &version)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::GLboolean &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::GLenum &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::GLextension &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::AttribMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::ClearBufferMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::ClientAttribMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::ContextFlagMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::ContextProfileMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::FfdMaskSGIX &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::FragmentShaderColorModMaskATI &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::FragmentShaderDestMaskATI &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::FragmentShaderDestModMaskATI &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::MapBufferUsageMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::MemoryBarrierMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::PathRenderingMaskNV &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::PerformanceQueryCapsMaskINTEL &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::SyncObjectMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::TextureStorageMaskAMD &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::UseProgramStageMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::VertexHintsMaskPGI &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::PathFontStyle &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::UnusedMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const gl::BufferAccessMask &value)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::vec2 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::vec3 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::vec4 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::ivec2 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::ivec3 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::ivec4 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::uvec2 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::uvec3 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::uvec4 &vector)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::mat2 &matrix)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::mat3 &matrix)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const glm::mat4 &matrix)
GLOBJECTS_API void | init ()
GLOBJECTS_API void | init (glbinding::ContextHandle sharedContextId)
GLOBJECTS_API void | detachAllObjects ()
| calls detach on every registered object More...
template<typename T , typename... Args>
void | init (T strategy, Args... args)
template<typename T , typename... Args>
void | init (glbinding::ContextHandle sharedContextId, T strategy, Args... args)
GLOBJECTS_API void | registerCurrentContext ()
GLOBJECTS_API void | registerCurrentContext (glbinding::ContextHandle sharedContextId)
GLOBJECTS_API void | setContext (glbinding::ContextHandle contextId)
GLOBJECTS_API void | setCurrentContext ()
GLOBJECTS_API std::string | getString (gl::GLenum pname)
GLOBJECTS_API std::string | getString (gl::GLenum pname, gl::GLuint index)
GLOBJECTS_API gl::GLint | getInteger (gl::GLenum pname)
GLOBJECTS_API gl::GLenum | getEnum (gl::GLenum pname)
GLOBJECTS_API gl::GLfloat | getFloat (gl::GLenum pname)
GLOBJECTS_API gl::GLdouble | getDouble (gl::GLenum pname)
GLOBJECTS_API gl::GLboolean | getBoolean (gl::GLenum pname)
GLOBJECTS_API gl::GLint | getInteger (gl::GLenum pname, gl::GLuint index)
GLOBJECTS_API gl::GLenum | getEnum (gl::GLenum pname, gl::GLuint index)
GLOBJECTS_API gl::GLfloat | getFloat (gl::GLenum pname, gl::GLuint index)
GLOBJECTS_API gl::GLdouble | getDouble (gl::GLenum pname, gl::GLuint index)
GLOBJECTS_API gl::GLboolean | getBoolean (gl::GLenum pname, gl::GLuint index)
GLOBJECTS_API std::string | vendor ()
GLOBJECTS_API std::string | renderer ()
GLOBJECTS_API std::string | versionString ()
GLOBJECTS_API glbinding::Version | version ()
GLOBJECTS_API bool | isCoreProfile ()
template<int Count>
std::array< gl::GLint, Count > | getIntegers (gl::GLenum pname)
template<int Count>
std::array< gl::GLenum, Count > | getEnums (gl::GLenum pname)
template<int Count>
std::array< gl::GLfloat, Count > | getFloats (gl::GLenum pname)
template<int Count>
std::array< gl::GLdouble, Count > | getDoubles (gl::GLenum pname)
template<int Count>
std::array< gl::GLboolean, Count > | getBooleans (gl::GLenum pname)
GLOBJECTS_API const std::set< gl::GLextension > & | availableExtensions ()
GLOBJECTS_API const std::set< std::string > & | unknownAvailableExtensions ()
GLOBJECTS_API bool | hasExtension (gl::GLextension extension)
GLOBJECTS_API bool | hasExtension (const std::string &extensionName)
GLOBJECTS_API bool | isInCoreProfile (gl::GLextension extension, const glbinding::Version &version)
GLOBJECTS_API bool | isInCoreProfile (gl::GLextension extension)
GLOBJECTS_API void | enable (gl::GLenum capability)
GLOBJECTS_API void | disable (gl::GLenum capability)
GLOBJECTS_API bool | isEnabled (gl::GLenum capability)
GLOBJECTS_API void | setEnabled (gl::GLenum capability, bool enabled)
GLOBJECTS_API void | enable (gl::GLenum capability, int index)
GLOBJECTS_API void | disable (gl::GLenum capability, int index)
GLOBJECTS_API bool | isEnabled (gl::GLenum capability, int index)
GLOBJECTS_API void | setEnabled (gl::GLenum capability, int index, bool enabled)
GLOBJECTS_API void | initializeStrategy (AbstractUniform::BindlessImplementation impl)
GLOBJECTS_API void | initializeStrategy (Buffer::BindlessImplementation impl)
GLOBJECTS_API void | initializeStrategy (Framebuffer::BindlessImplementation impl)
GLOBJECTS_API void | initializeStrategy (DebugMessage::Implementation impl)
GLOBJECTS_API void | initializeStrategy (Program::BinaryImplementation impl)
GLOBJECTS_API void | initializeStrategy (Shader::IncludeImplementation impl)
GLOBJECTS_API void | initializeStrategy (Object::NameImplementation impl)
GLOBJECTS_API void | initializeStrategy (VertexArray::AttributeImplementation impl)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Object *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Buffer *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Framebuffer *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Program *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Query *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Renderbuffer *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Sampler *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Shader *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Texture *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const TransformFeedback *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const VertexArray *object)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const Sync *sync)
GLOBJECTS_API LogMessageBuilder | operator<< (LogMessageBuilder builder, const AbstractUniform *uniform)
template<typename T >
LogMessageBuilder | operator<< (LogMessageBuilder builder, const Uniform< T > *uniform)
template<typename T >
LogMessageBuilder | operator<< (LogMessageBuilder builder, Uniform< T > *uniform)

## Detailed Description

Contains all the classes that wrap OpenGL functionality.

TODO: Detailed documentation for globjects here.

## Enumeration Type Documentation

## ◆ LogMessageLevel

enum globjects::LogMessageLevel : unsigned int
| strong

Enumerator
Fatal |
Critical |
Warning |
Debug |
Info |

## Function Documentation

## ◆ info() [1/2]

GLOBJECTS_API LogMessageBuilder globjects::info | ( | LogMessageLevel | level = `LogMessageLevel::Info` | ) |

Creates a stream like object (LogMessageBuilder) to create a LogMessage from the objects passed to it and sends the LogMessage to the global LogMessageHandler when the builder goes out of scope. Similar to `qDebug()` from Qt.

info() << "Message: " << 3.14;

## ◆ debug() [1/2]

GLOBJECTS_API LogMessageBuilder globjects::debug | ( |  | ) |

## ◆ warning() [1/2]

GLOBJECTS_API LogMessageBuilder globjects::warning | ( |  | ) |

## ◆ critical() [1/2]

GLOBJECTS_API LogMessageBuilder globjects::critical | ( |  | ) |

## ◆ fatal() [1/2]

GLOBJECTS_API LogMessageBuilder globjects::fatal | ( |  | ) |

## ◆ setLoggingHandler()

GLOBJECTS_API void globjects::setLoggingHandler | ( | AbstractLogHandler * | handler | ) |

## ◆ loggingHandler()

GLOBJECTS_API AbstractLogHandler* globjects::loggingHandler | ( |  | ) |

## ◆ setVerbosityLevel()

GLOBJECTS_API void globjects::setVerbosityLevel | ( | LogMessageLevel | verbosity | ) |

## ◆ verbosityLevel()

GLOBJECTS_API LogMessageLevel globjects::verbosityLevel | ( |  | ) |

## ◆ info() [2/2]

template<typename... Arguments>

void globjects::info | ( | const char * | format,
|  | Arguments... | arguments
| ) |  |

Uses formatString to write on the usual logging streams.

Sample usage:

info("This is a test: %; pi = %+0E10.5;", 42, 3.141592653589793); // output: "This is a test: 42 pi = +3.14159E+00"
info("%; - %X; - %rf?_10.2;", "a string", 255, 2.71828182846); // output: "a string - 255 - ______2.72"

See also
  formatString

## ◆ debug() [2/2]

template<typename... Arguments>

void globjects::debug | ( | const char * | format,
|  | Arguments... | arguments
| ) |  |

See also
  info

## ◆ warning() [2/2]

template<typename... Arguments>

void globjects::warning | ( | const char * | format,
|  | Arguments... | arguments
| ) |  |

See also
  info

## ◆ critical() [2/2]

template<typename... Arguments>

void globjects::critical | ( | const char * | format,
|  | Arguments... | arguments
| ) |  |

See also
  info

## ◆ fatal() [2/2]

template<typename... Arguments>

void globjects::fatal | ( | const char * | format,
|  | Arguments... | arguments
| ) |  |

See also
  info

## ◆ readInt()

GLOBJECTS_API int globjects::readInt | ( | const char * | str,
|  | int & | number
| ) |  |

## ◆ parseFormat()

GLOBJECTS_API void globjects::parseFormat | ( | std::ostream & | stream,
|  | const char *& | format
| ) |  |

## ◆ streamprintf() [1/2]

GLOBJECTS_API void globjects::streamprintf | ( | std::ostream & | stream,
|  | const char * | format
| ) |  |

## ◆ streamprintf() [2/2]

template<typename T , typename... Args>

void globjects::streamprintf | ( | std::ostream & | stream,
|  | const char * | format,
|  | const T & | value,
|  | Args... | args
| ) |  |

Format a number of arguments and prints them to a stream.

See also
  formatString

## ◆ formatString()

template<typename... Args>

std::string globjects::formatString | ( | const char * | format,
|  | Args... | args
| ) |  |

This function takes a format string and any number of arguments of different types. It works similar to printf, but is safer as it can infer the types. This also means that the type does not need to be encoded in the format string, instead they only indicate stream manipulators.

# Format syntax

`%[alignment flag][independent flags][floatfield flag][fill character][width][precision][base];` `%[ l | r | i ][ a | # | + | u | p ]*[ e | f ][?<fill character>][<width>][.<precision>][ d | o | x ];`

## alignment flags

flag | manip
--- | ---
`l` | left
`r` | right
`i` | internal

## independent flags

flag | manip
--- | ---
`a` | boolalpha
`#` | showbase
`+` | showpos
`u` | uppercase
`p` | showpoint
`0` | setfill(0) [redundant]

## floatfield flags

flag | manip
--- | ---
`e` | scientific
`f` | fixed

## base

flag | manip
--- | ---
`d` | decimal
`o` | octal
`x` | hexadecimal

In addition, if the base or floatfield flag is uppercase, it will automatically enable the uppercase flag without 'u'. Note: To end a format specifier, you have to add a semicolon. `%%` will escape a % character.

See also
  http://www.cplusplus.com/reference/ios/ios_base/fmtflags/

## ◆ make_ref()

template<typename T , typename... Args>

ref_ptr<T> globjects::make_ref | ( | Args &&... | args | ) |

## ◆ operator<<() [1/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glbinding::Version & | version
| ) |  |

## ◆ operator<<() [2/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::GLboolean & | value
| ) |  |

## ◆ operator<<() [3/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::GLenum & | value
| ) |  |

## ◆ operator<<() [4/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::GLextension & | value
| ) |  |

## ◆ operator<<() [5/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::AttribMask & | value
| ) |  |

## ◆ operator<<() [6/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::ClearBufferMask & | value
| ) |  |

## ◆ operator<<() [7/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::ClientAttribMask & | value
| ) |  |

## ◆ operator<<() [8/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::ContextFlagMask & | value
| ) |  |

## ◆ operator<<() [9/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::ContextProfileMask & | value
| ) |  |

## ◆ operator<<() [10/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::FfdMaskSGIX & | value
| ) |  |

## ◆ operator<<() [11/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::FragmentShaderColorModMaskATI & | value
| ) |  |

## ◆ operator<<() [12/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::FragmentShaderDestMaskATI & | value
| ) |  |

## ◆ operator<<() [13/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::FragmentShaderDestModMaskATI & | value
| ) |  |

## ◆ operator<<() [14/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::MapBufferUsageMask & | value
| ) |  |

## ◆ operator<<() [15/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::MemoryBarrierMask & | value
| ) |  |

## ◆ operator<<() [16/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::PathRenderingMaskNV & | value
| ) |  |

## ◆ operator<<() [17/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::PerformanceQueryCapsMaskINTEL & | value
| ) |  |

## ◆ operator<<() [18/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::SyncObjectMask & | value
| ) |  |

## ◆ operator<<() [19/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::TextureStorageMaskAMD & | value
| ) |  |

## ◆ operator<<() [20/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::UseProgramStageMask & | value
| ) |  |

## ◆ operator<<() [21/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::VertexHintsMaskPGI & | value
| ) |  |

## ◆ operator<<() [22/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::PathFontStyle & | value
| ) |  |

## ◆ operator<<() [23/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::UnusedMask & | value
| ) |  |

## ◆ operator<<() [24/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const gl::BufferAccessMask & | value
| ) |  |

## ◆ operator<<() [25/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::vec2 & | vector
| ) |  |

## ◆ operator<<() [26/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::vec3 & | vector
| ) |  |

## ◆ operator<<() [27/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::vec4 & | vector
| ) |  |

## ◆ operator<<() [28/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::ivec2 & | vector
| ) |  |

## ◆ operator<<() [29/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::ivec3 & | vector
| ) |  |

## ◆ operator<<() [30/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::ivec4 & | vector
| ) |  |

## ◆ operator<<() [31/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::uvec2 & | vector
| ) |  |

## ◆ operator<<() [32/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::uvec3 & | vector
| ) |  |

## ◆ operator<<() [33/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::uvec4 & | vector
| ) |  |

## ◆ operator<<() [34/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::mat2 & | matrix
| ) |  |

## ◆ operator<<() [35/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::mat3 & | matrix
| ) |  |

## ◆ operator<<() [36/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const glm::mat4 & | matrix
| ) |  |

## ◆ init() [1/4]

GLOBJECTS_API void globjects::init | ( |  | ) |

## ◆ init() [2/4]

GLOBJECTS_API void globjects::init | ( | glbinding::ContextHandle | sharedContextId | ) |

## ◆ detachAllObjects()

GLOBJECTS_API void globjects::detachAllObjects | ( |  | ) |

calls detach on every registered object

This only releases the GPU counterparts of all objects, while leaving the ref_ptred objects in memory, invalidated.

## ◆ init() [3/4]

template<typename T , typename... Args>

void globjects::init | ( | T | strategy,
|  | Args... | args
| ) |  |

## ◆ init() [4/4]

template<typename T , typename... Args>

void globjects::init | ( | glbinding::ContextHandle | sharedContextId,
|  | T | strategy,
|  | Args... | args
| ) |  |

## ◆ registerCurrentContext() [1/2]

GLOBJECTS_API void globjects::registerCurrentContext | ( |  | ) |

## ◆ registerCurrentContext() [2/2]

GLOBJECTS_API void globjects::registerCurrentContext | ( | glbinding::ContextHandle | sharedContextId | ) |

## ◆ setContext()

GLOBJECTS_API void globjects::setContext | ( | glbinding::ContextHandle | contextId | ) |

## ◆ setCurrentContext()

GLOBJECTS_API void globjects::setCurrentContext | ( |  | ) |

## ◆ getString() [1/2]

GLOBJECTS_API std::string globjects::getString | ( | gl::GLenum | pname | ) |

## ◆ getString() [2/2]

GLOBJECTS_API std::string globjects::getString | ( | gl::GLenum | pname,
|  | gl::GLuint | index
| ) |  |

## ◆ getInteger() [1/2]

GLOBJECTS_API gl::GLint globjects::getInteger | ( | gl::GLenum | pname | ) |

## ◆ getEnum() [1/2]

GLOBJECTS_API gl::GLenum globjects::getEnum | ( | gl::GLenum | pname | ) |

## ◆ getFloat() [1/2]

GLOBJECTS_API gl::GLfloat globjects::getFloat | ( | gl::GLenum | pname | ) |

## ◆ getDouble() [1/2]

GLOBJECTS_API gl::GLdouble globjects::getDouble | ( | gl::GLenum | pname | ) |

## ◆ getBoolean() [1/2]

GLOBJECTS_API gl::GLboolean globjects::getBoolean | ( | gl::GLenum | pname | ) |

## ◆ getInteger() [2/2]

GLOBJECTS_API gl::GLint globjects::getInteger | ( | gl::GLenum | pname,
|  | gl::GLuint | index
| ) |  |

## ◆ getEnum() [2/2]

GLOBJECTS_API gl::GLenum globjects::getEnum | ( | gl::GLenum | pname,
|  | gl::GLuint | index
| ) |  |

## ◆ getFloat() [2/2]

GLOBJECTS_API gl::GLfloat globjects::getFloat | ( | gl::GLenum | pname,
|  | gl::GLuint | index
| ) |  |

## ◆ getDouble() [2/2]

GLOBJECTS_API gl::GLdouble globjects::getDouble | ( | gl::GLenum | pname,
|  | gl::GLuint | index
| ) |  |

## ◆ getBoolean() [2/2]

GLOBJECTS_API gl::GLboolean globjects::getBoolean | ( | gl::GLenum | pname,
|  | gl::GLuint | index
| ) |  |

## ◆ vendor()

GLOBJECTS_API std::string globjects::vendor | ( |  | ) |

## ◆ renderer()

GLOBJECTS_API std::string globjects::renderer | ( |  | ) |

## ◆ versionString()

GLOBJECTS_API std::string globjects::versionString | ( |  | ) |

## ◆ version()

GLOBJECTS_API glbinding::Version globjects::version | ( |  | ) |

## ◆ isCoreProfile()

GLOBJECTS_API bool globjects::isCoreProfile | ( |  | ) |

## ◆ getIntegers()

template<int Count>

std::array<gl::GLint, Count> globjects::getIntegers | ( | gl::GLenum | pname | ) |

## ◆ getEnums()

template<int Count>

std::array<gl::GLenum, Count> globjects::getEnums | ( | gl::GLenum | pname | ) |

## ◆ getFloats()

template<int Count>

std::array<gl::GLfloat, Count> globjects::getFloats | ( | gl::GLenum | pname | ) |

## ◆ getDoubles()

template<int Count>

std::array<gl::GLdouble, Count> globjects::getDoubles | ( | gl::GLenum | pname | ) |

## ◆ getBooleans()

template<int Count>

std::array<gl::GLboolean, Count> globjects::getBooleans | ( | gl::GLenum | pname | ) |

## ◆ availableExtensions()

GLOBJECTS_API const std::set<gl::GLextension>& globjects::availableExtensions | ( |  | ) |

## ◆ unknownAvailableExtensions()

GLOBJECTS_API const std::set<std::string>& globjects::unknownAvailableExtensions | ( |  | ) |

## ◆ hasExtension() [1/2]

GLOBJECTS_API bool globjects::hasExtension | ( | gl::GLextension | extension | ) |

## ◆ hasExtension() [2/2]

GLOBJECTS_API bool globjects::hasExtension | ( | const std::string & | extensionName | ) |

## ◆ isInCoreProfile() [1/2]

GLOBJECTS_API bool globjects::isInCoreProfile | ( | gl::GLextension | extension,
|  | const glbinding::Version & | version
| ) |  |

## ◆ isInCoreProfile() [2/2]

GLOBJECTS_API bool globjects::isInCoreProfile | ( | gl::GLextension | extension | ) |

## ◆ enable() [1/2]

GLOBJECTS_API void globjects::enable | ( | gl::GLenum | capability | ) |

## ◆ disable() [1/2]

GLOBJECTS_API void globjects::disable | ( | gl::GLenum | capability | ) |

## ◆ isEnabled() [1/2]

GLOBJECTS_API bool globjects::isEnabled | ( | gl::GLenum | capability | ) |

## ◆ setEnabled() [1/2]

GLOBJECTS_API void globjects::setEnabled | ( | gl::GLenum | capability,
|  | bool | enabled
| ) |  |

## ◆ enable() [2/2]

GLOBJECTS_API void globjects::enable | ( | gl::GLenum | capability,
|  | int | index
| ) |  |

## ◆ disable() [2/2]

GLOBJECTS_API void globjects::disable | ( | gl::GLenum | capability,
|  | int | index
| ) |  |

## ◆ isEnabled() [2/2]

GLOBJECTS_API bool globjects::isEnabled | ( | gl::GLenum | capability,
|  | int | index
| ) |  |

## ◆ setEnabled() [2/2]

GLOBJECTS_API void globjects::setEnabled | ( | gl::GLenum | capability,
|  | int | index,
|  | bool | enabled
| ) |  |

## ◆ initializeStrategy() [1/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | AbstractUniform::BindlessImplementation | impl | ) |

## ◆ initializeStrategy() [2/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | Buffer::BindlessImplementation | impl | ) |

## ◆ initializeStrategy() [3/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | Framebuffer::BindlessImplementation | impl | ) |

## ◆ initializeStrategy() [4/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | DebugMessage::Implementation | impl | ) |

## ◆ initializeStrategy() [5/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | Program::BinaryImplementation | impl | ) |

## ◆ initializeStrategy() [6/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | Shader::IncludeImplementation | impl | ) |

## ◆ initializeStrategy() [7/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | Object::NameImplementation | impl | ) |

## ◆ initializeStrategy() [8/8]

GLOBJECTS_API void globjects::initializeStrategy | ( | VertexArray::AttributeImplementation | impl | ) |

## ◆ operator<<() [37/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Object * | object
| ) |  |

## ◆ operator<<() [38/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Buffer * | object
| ) |  |

## ◆ operator<<() [39/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Framebuffer * | object
| ) |  |

## ◆ operator<<() [40/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Program * | object
| ) |  |

## ◆ operator<<() [41/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Query * | object
| ) |  |

## ◆ operator<<() [42/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Renderbuffer * | object
| ) |  |

## ◆ operator<<() [43/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Sampler * | object
| ) |  |

## ◆ operator<<() [44/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Shader * | object
| ) |  |

## ◆ operator<<() [45/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Texture * | object
| ) |  |

## ◆ operator<<() [46/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const TransformFeedback * | object
| ) |  |

## ◆ operator<<() [47/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const VertexArray * | object
| ) |  |

## ◆ operator<<() [48/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Sync * | sync
| ) |  |

## ◆ operator<<() [49/51]

GLOBJECTS_API LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const AbstractUniform * | uniform
| ) |  |

## ◆ operator<<() [50/51]

template<typename T >

LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | const Uniform< T > * | uniform
| ) |  |

## ◆ operator<<() [51/51]

template<typename T >

LogMessageBuilder globjects::operator<< | ( | LogMessageBuilder | builder,
|  | Uniform< T > * | uniform
| ) |  |