Configuration class
Configuration.
Base classes
- class Magnum::GL::Context::Configuration new in Git master
- Configuration.
Public types
- enum class Flag: UnsignedLong { ForwardCompatible = GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB, Debug = GLX_CONTEXT_DEBUG_BIT_ARB, NoError = 1ull << 32 new in Git master, QuietLog = UnsignedLong(GL::Context::Configuration::Flag::QuietLog) new in Git master, VerboseLog = UnsignedLong(GL::Context::Configuration::Flag::VerboseLog) new in Git master, GpuValidation = UnsignedLong(GL::Context::Configuration::Flag::GpuValidation) new in Git master, GpuValidationNoError = UnsignedLong(GL::Context::Configuration::Flag::GpuValidationNoError) new in Git master }
- Context flag.
-
using Flags = Containers::
EnumSet<Flag> - Context flags.
Public functions
- auto flags() const -> Flags
- Context flags.
- auto setFlags(Flags flags) -> Configuration&
- Set context flags.
- auto addFlags(Flags flags) -> Configuration&
- Add context flags.
- auto clearFlags(Flags flags) -> Configuration&
- Clear context flags.
- auto setSharedContext(GLXContext ctx) -> Configuration& new in 2020.06
- Create a shared context.
- auto sharedContext() const -> GLXContext new in 2020.06
- Shared context.
Enum documentation
enum class Magnum:: Platform:: WindowlessGlxContext:: Configuration:: Flag: UnsignedLong
Context flag.
Includes also everything from GL::
| Enumerators | |
|---|---|
| ForwardCompatible |
Forward compatible context |
| Debug |
Debug context. Enabled automatically if supported by the driver and the Flag:: |
| NoError new in Git master |
Context without error reporting. Might result in better performance, but situations that would have generated errors instead cause undefined behavior. Enabled automatically if supported by the driver and the Flag:: |
| QuietLog new in Git master |
Print only warnings and errors instead of the usual startup log listing used extensions and workarounds. Ignored if Flag:: Corresponds to the |
| VerboseLog new in Git master |
Print additional information on startup in addition to the usual startup log that lists used extensions and workarounds. Has a precedence over Flag:: Corresponds to the |
| GpuValidation new in Git master |
Enable GPU validation, if available. Has a precedence over Flag:: Corresponds to the |
| GpuValidationNoError new in Git master |
Enable a context without error reporting, if available. Ignored if Flag:: Corresponds to the |
Typedef documentation
typedef Containers:: EnumSet<Flag> Magnum:: Platform:: WindowlessGlxContext:: Configuration:: Flags
Context flags.
Function documentation
Configuration& Magnum:: Platform:: WindowlessGlxContext:: Configuration:: setFlags(Flags flags)
Set context flags.
| Returns | Reference to self (for method chaining) |
|---|
Default is Flag::
Configuration& Magnum:: Platform:: WindowlessGlxContext:: Configuration:: addFlags(Flags flags)
Add context flags.
| Returns | Reference to self (for method chaining) |
|---|
Unlike setFlags(), ORs the flags with existing instead of replacing them. Useful for preserving the defaults.
Configuration& Magnum:: Platform:: WindowlessGlxContext:: Configuration:: clearFlags(Flags flags)
Clear context flags.
| Returns | Reference to self (for method chaining) |
|---|
Unlike setFlags(), ANDs the inverse of flags with existing instead of replacing them. Useful for removing default flags.
Configuration& Magnum:: Platform:: WindowlessGlxContext:: Configuration:: setSharedContext(GLXContext ctx) new in 2020.06
Create a shared context.
| Returns | Reference to self (for method chaining) |
|---|
When set, the created context will share a subset of OpenGL objects with context, instead of being independent. Many caveats and limitations apply to shared OpenGL contexts, please consult the OpenGL specification for details. Default is nullptr, i.e. no sharing.