- cpp3ds
- Context
Class holding a valid drawing context. More...
#include <Context.hpp>
Public Member Functions | |
Context () | |
Default constructor. More... | |
~Context () | |
Destructor. More... | |
bool | setActive (bool active) |
Activate or deactivate explicitly the context. More... | |
Context (const ContextSettings &settings, unsigned int width, unsigned int height) | |
Construct a in-memory context. More... | |
Static Private Member Functions | |
static void | ensureGlContext () |
Make sure that a valid OpenGL context exists in the current thread. More... | |
Class holding a valid drawing context.
If you need to make OpenGL calls without having an active window (like in a thread), you can use an instance of this class to get a valid context.
Having a valid context is necessary for every OpenGL call.
Note that a context is only active in its current thread, if you create a new thread it will have no valid context by default.
To use a cpp3ds::Context instance, just construct it and let it live as long as you need a valid context. No explicit activation is needed, all it has to do is to exist. Its destructor will take care of deactivating and freeing all the attached resources.
Usage example:
Definition at line 47 of file Context.hpp.
cpp3ds::Context::Context | ( | ) |
Default constructor.
The constructor creates and activates the context
cpp3ds::Context::~Context | ( | ) |
Destructor.
The destructor deactivates and destroys the context
cpp3ds::Context::Context | ( | const ContextSettings & | settings, |
unsigned int | width, | ||
unsigned int | height | ||
) |
Construct a in-memory context.
This constructor is for internal use, you don't need to bother with it.
settings | Creation parameters |
width | Back buffer width |
height | Back buffer height |
bool cpp3ds::Context::setActive | ( | bool | active | ) |
Activate or deactivate explicitly the context.
active | True to activate, false to deactivate |