OpenSceneGraph
3.5.1
|
Base class for providing Windowing API agnostic access to creating and managing graphics context. More...
Classes | |
struct | ResizedCallback |
struct | ScreenIdentifier |
struct | ScreenSettings |
Simple resolution structure used by WindowingSystemInterface to get and set screen resolution. More... | |
struct | SwapCallback |
struct | Traits |
GraphicsContext Traits object provides the specification of what type of graphics context is required. More... | |
struct | WindowingSystemInterface |
Callback to be implemented to provide access to Windowing API's ability to create Windows/pbuffers. More... | |
Public Types | |
typedef std::vector< ScreenSettings > | ScreenSettingsList |
typedef std::vector< GraphicsContext * > | GraphicsContexts |
typedef std::list< ref_ptr< Operation > > | GraphicsOperationQueue |
typedef std::list< osg::Camera * > | Cameras |
Public Types inherited from osg::Object | |
enum | DataVariance { DYNAMIC, STATIC, UNSPECIFIED } |
Public Member Functions | |
void | add (Operation *operation) |
Add operation to end of OperationQueue. More... | |
void | remove (Operation *operation) |
Remove operation from OperationQueue. More... | |
void | remove (const std::string &name) |
Remove named operation from OperationQueue. More... | |
void | removeAllOperations () |
Remove all operations from OperationQueue. More... | |
virtual void | runOperations () |
Run the operations. More... | |
GraphicsOperationQueue & | getOperationsQueue () |
Get the operations queue, note you must use the OperationsMutex when accessing the queue. More... | |
OpenThreads::Mutex * | getOperationsMutex () |
Get the operations queue mutex. More... | |
osg::RefBlock * | getOperationsBlock () |
Get the operations queue block used to mark an empty queue, if you end items into the empty queue you must release this block. More... | |
Operation * | getCurrentOperation () |
Get the current operations that is being run. More... | |
const Traits * | getTraits () const |
Get the traits of the GraphicsContext. More... | |
virtual bool | valid () const =0 |
Return whether a valid and usable GraphicsContext has been created. More... | |
void | setState (State *state) |
Set the State object which tracks the current OpenGL state for this graphics context. More... | |
State * | getState () |
Get the State object which tracks the current OpenGL state for this graphics context. More... | |
const State * | getState () const |
Get the const State object which tracks the current OpenGL state for this graphics context. More... | |
void | setClearColor (const Vec4 &color) |
Sets the clear color. More... | |
const Vec4 & | getClearColor () const |
Returns the clear color. More... | |
void | setClearMask (GLbitfield mask) |
Set the clear mask used in glClear(..). More... | |
GLbitfield | getClearMask () const |
Get the clear mask. More... | |
virtual void | clear () |
Do an OpenGL clear of the full graphics context/window. More... | |
double | getTimeSinceLastClear () const |
bool | realize () |
Realize the GraphicsContext. More... | |
void | close (bool callCloseImplementation=true) |
close the graphics context. More... | |
void | swapBuffers () |
swap the front and back buffers. More... | |
bool | isRealized () const |
Return true if the graphics context has been realized and is ready to use. More... | |
bool | makeCurrent () |
Make this graphics context current. More... | |
bool | makeContextCurrent (GraphicsContext *readContext) |
Make this graphics context current with specified read context. More... | |
bool | releaseContext () |
Release the graphics context. More... | |
bool | isCurrent () const |
Return true if the current thread has this OpenGL graphics context. More... | |
void | bindPBufferToTexture (GLenum buffer) |
Bind the graphics context to associated texture. More... | |
void | createGraphicsThread () |
Create a graphics thread to the graphics context, so that the thread handles all OpenGL operations. More... | |
void | setGraphicsThread (GraphicsThread *gt) |
Assign a graphics thread to the graphics context, so that the thread handles all OpenGL operations. More... | |
GraphicsThread * | getGraphicsThread () |
Get the graphics thread assigned the graphics context. More... | |
const GraphicsThread * | getGraphicsThread () const |
Get the const graphics thread assigned the graphics context. More... | |
virtual bool | realizeImplementation ()=0 |
Realize the GraphicsContext implementation, Pure virtual - must be implemented by concrete implementations of GraphicsContext. More... | |
virtual bool | isRealizedImplementation () const =0 |
Return true if the graphics context has been realized, and is ready to use, implementation. More... | |
virtual void | closeImplementation ()=0 |
Close the graphics context implementation. More... | |
virtual bool | makeCurrentImplementation ()=0 |
Make this graphics context current implementation. More... | |
virtual bool | makeContextCurrentImplementation (GraphicsContext *readContext)=0 |
Make this graphics context current with specified read context implementation. More... | |
virtual bool | releaseContextImplementation ()=0 |
Release the graphics context implementation. More... | |
virtual void | bindPBufferToTextureImplementation (GLenum buffer)=0 |
Pure virtual, Bind the graphics context to associated texture implementation. More... | |
void | setSwapCallback (SwapCallback *rc) |
Set the swap callback which overrides the GraphicsContext::swapBuffersImplementation(), allowing developers to provide custom behavior for swap. More... | |
SwapCallback * | getSwapCallback () |
Get the swap callback which overrides the GraphicsContext::swapBuffersImplementation(). More... | |
const SwapCallback * | getSwapCallback () const |
Get the const swap callback which overrides the GraphicsContext::swapBuffersImplementation(). More... | |
void | swapBuffersCallbackOrImplemenation () |
Convenience method for handling whether to call swapbuffers callback or the standard context swapBuffersImplementation. More... | |
virtual void | swapBuffersImplementation ()=0 |
Swap the front and back buffers implementation. More... | |
void | resized (int x, int y, int width, int height) |
resized method should be called when the underlying window has been resized and the GraphicsWindow and associated Cameras must be updated to keep in sync with the new size. More... | |
void | setResizedCallback (ResizedCallback *rc) |
Set the resized callback which overrides the GraphicsConext::realizedImplementation(), allow developers to provide custom behavior in response to a window being resized. More... | |
ResizedCallback * | getResizedCallback () |
Get the resized callback which overrides the GraphicsConext::realizedImplementation(). More... | |
const ResizedCallback * | getResizedCallback () const |
Get the const resized callback which overrides the GraphicsConext::realizedImplementation(). More... | |
virtual void | resizedImplementation (int x, int y, int width, int height) |
resized implementation, by default resizes the viewports and aspect ratios the cameras associated with the graphics Window. More... | |
Cameras & | getCameras () |
Get the list of cameras associated with this graphics context. More... | |
const Cameras & | getCameras () const |
Get the const list of cameras associated with this graphics context. More... | |
void | setDefaultFboId (GLuint i) |
set the default FBO-id, this id will be used when the rendering-backend is finished with RTT FBOs More... | |
GLuint | getDefaultFboId () const |
virtual bool | isSameKindAs (const Object *object) const |
virtual const char * | libraryName () const |
return the name of the object's library. More... | |
virtual const char * | className () const |
return the name of the object's class type. More... | |
Public Member Functions inherited from osg::Object | |
Object () | |
Construct an object. More... | |
Object (bool threadSafeRefUnref) | |
Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor, optional CopyOp object can be used to control shallow vs deep copying of dynamic data. More... | |
std::string | getCompoundClassName () const |
return the compound class name that combines the library name and class name. More... | |
virtual Node * | asNode () |
Convert 'this' into a Node pointer if Object is a Node, otherwise return 0. More... | |
virtual const Node * | asNode () const |
convert 'const this' into a const Node pointer if Object is a Node, otherwise return 0. More... | |
virtual NodeVisitor * | asNodeVisitor () |
Convert 'this' into a NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More... | |
virtual const NodeVisitor * | asNodeVisitor () const |
convert 'const this' into a const NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More... | |
virtual StateAttribute * | asStateAttribute () |
Convert 'this' into a StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More... | |
virtual const StateAttribute * | asStateAttribute () const |
convert 'const this' into a const StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More... | |
virtual Uniform * | asUniform () |
Convert 'this' into a Uniform pointer if Object is a Uniform, otherwise return 0. More... | |
virtual const Uniform * | asUniform () const |
convert 'const this' into a const Uniform pointer if Object is a Uniform, otherwise return 0. More... | |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
Set whether to use a mutex to ensure ref() and unref() are thread safe. More... | |
virtual void | setName (const std::string &name) |
Set the name of object using C++ style string. More... | |
void | setName (const char *name) |
Set the name of object using a C style string. More... | |
const std::string & | getName () const |
Get the name of object. More... | |
void | setDataVariance (DataVariance dv) |
Set the data variance of this object. More... | |
DataVariance | getDataVariance () const |
Get the data variance of this object. More... | |
virtual void | computeDataVariance () |
Compute the DataVariance based on an assessment of callback etc. More... | |
void | setUserDataContainer (osg::UserDataContainer *udc) |
set the UserDataContainer object. More... | |
template<class T > | |
void | setUserDataContainer (const ref_ptr< T > &udc) |
osg::UserDataContainer * | getUserDataContainer () |
get the UserDataContainer attached to this object. More... | |
const osg::UserDataContainer * | getUserDataContainer () const |
get the const UserDataContainer attached to this object. More... | |
osg::UserDataContainer * | getOrCreateUserDataContainer () |
Convenience method that returns the UserDataContainer, and if one doesn't already exist creates and assigns a DefaultUserDataContainer to the Object and then return this new UserDataContainer. More... | |
virtual void | setUserData (Referenced *obj) |
Set user data, data must be subclassed from Referenced to allow automatic memory handling. More... | |
template<class T > | |
void | setUserData (const ref_ptr< T > &ud) |
virtual Referenced * | getUserData () |
Get user data. More... | |
virtual const Referenced * | getUserData () const |
Get const user data. More... | |
template<typename T > | |
bool | getUserValue (const std::string &name, T &value) const |
Convenience method that casts the named UserObject to osg::TemplateValueObject<T> and gets the value. More... | |
template<typename T > | |
void | setUserValue (const std::string &name, const T &value) |
Convenience method that creates the osg::TemplateValueObject<T> to store the specified value and adds it as a named UserObject. More... | |
virtual void | resizeGLObjectBuffers (unsigned int) |
Resize any per context GLObject buffers to specified size. More... | |
virtual void | releaseGLObjects (osg::State *=0) const |
If State is non-zero, this function releases any associated OpenGL objects for the specified graphics context. More... | |
template<typename T > | |
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool | getUserValue (const std::string &name, T &value) const |
provide implementation of osg::Object::getUserValue(..) template More... | |
Public Member Functions inherited from osg::Referenced | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
bool | getThreadSafeRefUnref () const |
Get whether a mutex is used to ensure ref() and unref() are thread safe. More... | |
OpenThreads::Mutex * | getRefMutex () const |
Get the mutex used to ensure thread safety of ref()/unref(). More... | |
int | ref () const |
Increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
int | unref () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
int | unref_nodelete () const |
Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More... | |
int | referenceCount () const |
Return the number of pointers currently referencing this object. More... | |
ObserverSet * | getObserverSet () const |
Get the ObserverSet if one is attached, otherwise return NULL. More... | |
ObserverSet * | getOrCreateObserverSet () const |
Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. More... | |
void | addObserver (Observer *observer) const |
Add a Observer that is observing this object, notify the Observer when this object gets deleted. More... | |
void | removeObserver (Observer *observer) const |
Remove Observer that is observing this object. More... | |
Static Public Member Functions | |
static void | setWindowingSystemInterface (WindowingSystemInterface *wsInterface) |
Set the query the windowing system for screens and create graphics context - this functor should be supplied by the windows toolkit. More... | |
static WindowingSystemInterface * | getWindowingSystemInterface () |
Get the WindowingSystemInterface. More... | |
static GraphicsContext * | createGraphicsContext (Traits *traits) |
Create a graphics context for a specified set of traits. More... | |
static unsigned int | createNewContextID () |
Create a contextID for a new graphics context, this contextID is used to set up the osg::State associate with context. More... | |
static unsigned int | getMaxContextID () |
Get the current max ContextID. More... | |
static void | incrementContextIDUsageCount (unsigned int contextID) |
Increment the usage count associate with a contextID. More... | |
static void | decrementContextIDUsageCount (unsigned int contextID) |
Decrement the usage count associate with a contextID. More... | |
static GraphicsContexts | getAllRegisteredGraphicsContexts () |
Get all the registered graphics contexts. More... | |
static GraphicsContexts | getRegisteredGraphicsContexts (unsigned int contextID) |
Get all the registered graphics contexts associated with a specific contextID. More... | |
static void | setCompileContext (unsigned int contextID, GraphicsContext *gc) |
Get the GraphicsContext for doing background compilation for GraphicsContexts associated with specified contextID. More... | |
static GraphicsContext * | getOrCreateCompileContext (unsigned int contextID) |
Get existing or create a new GraphicsContext to do background compilation for GraphicsContexts associated with specified contextID. More... | |
static GraphicsContext * | getCompileContext (unsigned int contextID) |
Get the GraphicsContext for doing background compilation for GraphicsContexts associated with specified contextID. More... | |
Static Public Member Functions inherited from osg::Referenced | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
Get the optional global Referenced mutex, this can be shared between all osg::Referenced. More... | |
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
Set whether reference counting should use a mutex for thread safe reference counting. More... | |
static bool | getThreadSafeReferenceCounting () |
Get whether reference counting is active. More... | |
static void | setDeleteHandler (DeleteHandler *handler) |
Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. More... | |
static DeleteHandler * | getDeleteHandler () |
Get a DeleteHandler. More... | |
Protected Member Functions | |
GraphicsContext () | |
GraphicsContext (const GraphicsContext &, const osg::CopyOp &) | |
virtual | ~GraphicsContext () |
virtual Object * | cloneType () const |
Clone the type of an object, with Object* return type. More... | |
virtual Object * | clone (const CopyOp &) const |
Clone an object, with Object* return type. More... | |
void | addCamera (osg::Camera *camera) |
void | removeCamera (osg::Camera *camera) |
Protected Member Functions inherited from osg::Object | |
virtual | ~Object () |
Object destructor. More... | |
Protected Member Functions inherited from osg::Referenced | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Static Protected Member Functions | |
static void | registerGraphicsContext (GraphicsContext *gc) |
Register a GraphicsContext. More... | |
static void | unregisterGraphicsContext (GraphicsContext *gc) |
Unregister a GraphicsContext. More... | |
Protected Attributes | |
Cameras | _cameras |
ref_ptr< Traits > | _traits |
ref_ptr< State > | _state |
Vec4 | _clearColor |
GLbitfield | _clearMask |
OpenThreads::Thread * | _threadOfLastMakeCurrent |
OpenThreads::Mutex | _operationsMutex |
osg::ref_ptr< osg::RefBlock > | _operationsBlock |
GraphicsOperationQueue | _operations |
osg::ref_ptr< Operation > | _currentOperation |
ref_ptr< GraphicsThread > | _graphicsThread |
ref_ptr< ResizedCallback > | _resizedCallback |
ref_ptr< SwapCallback > | _swapCallback |
Timer_t | _lastClearTick |
GLuint | _defaultFboId |
Protected Attributes inherited from osg::Object | |
std::string | _name |
DataVariance | _dataVariance |
osg::UserDataContainer * | _userDataContainer |
Protected Attributes inherited from osg::Referenced | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
Friends | |
class | osg::Camera |
Base class for providing Windowing API agnostic access to creating and managing graphics context.
typedef std::list< osg::Camera* > osg::GraphicsContext::Cameras |
typedef std::vector<GraphicsContext*> osg::GraphicsContext::GraphicsContexts |
typedef std::list< ref_ptr<Operation> > osg::GraphicsContext::GraphicsOperationQueue |
typedef std::vector<ScreenSettings> osg::GraphicsContext::ScreenSettingsList |
|
protected |
|
protected |
|
protectedvirtual |
Add operation to end of OperationQueue.
|
protected |
|
inline |
Bind the graphics context to associated texture.
|
pure virtual |
Pure virtual, Bind the graphics context to associated texture implementation.
Pure virtual - must be implemented by concrete implementations of GraphicsContext.
Implemented in osgViewer::GraphicsWindow, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
|
inlinevirtual |
return the name of the object's class type.
Must be defined by derived classes.
Implements osg::Object.
Reimplemented in osgViewer::GraphicsWindowEmbedded, osgViewer::GraphicsWindowX11, osgViewer::GraphicsWindow, osgViewer::GraphicsWindowWin32, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
|
virtual |
Do an OpenGL clear of the full graphics context/window.
Note, must only be called from a thread with this context current.
Clone an object, with Object* return type.
Must be defined by derived classes.
Implements osg::Object.
|
inlineprotectedvirtual |
Clone the type of an object, with Object* return type.
Must be defined by derived classes.
Implements osg::Object.
void osg::GraphicsContext::close | ( | bool | callCloseImplementation = true | ) |
close the graphics context.
close(bool) stops any associated graphics threads, releases the contextID for the GraphicsContext then optional calls closeImplementation() to do the actual deletion of the graphics. This call is made optional as there are times when the graphics context has already been deleted externally and only the OSG side of the its data need to be closed down.
|
pure virtual |
Close the graphics context implementation.
Pure virtual - must be implemented by concrete implementations of GraphicsContext.
Implemented in osgViewer::GraphicsWindowEmbedded, osgQt::GraphicsWindowQt, osgViewer::GraphicsWindow, osgViewer::GraphicsWindowX11, osgViewer::GraphicsWindowWin32, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
|
static |
Create a graphics context for a specified set of traits.
void osg::GraphicsContext::createGraphicsThread | ( | ) |
Create a graphics thread to the graphics context, so that the thread handles all OpenGL operations.
|
static |
Create a contextID for a new graphics context, this contextID is used to set up the osg::State associate with context.
Automatically increments the usage count of the contextID to 1.
|
static |
Decrement the usage count associate with a contextID.
Once the contextID goes to 0 the contextID is then free to be reused.
|
static |
Get all the registered graphics contexts.
|
inline |
Get the list of cameras associated with this graphics context.
|
inline |
Get the const list of cameras associated with this graphics context.
|
inline |
Returns the clear color.
|
inline |
Get the clear mask.
|
static |
Get the GraphicsContext for doing background compilation for GraphicsContexts associated with specified contextID.
|
inline |
Get the current operations that is being run.
|
inline |
|
inline |
Get the graphics thread assigned the graphics context.
|
inline |
Get the const graphics thread assigned the graphics context.
|
static |
Get the current max ContextID.
|
inline |
Get the operations queue block used to mark an empty queue, if you end items into the empty queue you must release this block.
|
inline |
Get the operations queue mutex.
|
inline |
Get the operations queue, note you must use the OperationsMutex when accessing the queue.
|
static |
Get existing or create a new GraphicsContext to do background compilation for GraphicsContexts associated with specified contextID.
|
static |
Get all the registered graphics contexts associated with a specific contextID.
|
inline |
Get the resized callback which overrides the GraphicsConext::realizedImplementation().
|
inline |
Get the const resized callback which overrides the GraphicsConext::realizedImplementation().
|
inline |
Get the State object which tracks the current OpenGL state for this graphics context.
|
inline |
Get the const State object which tracks the current OpenGL state for this graphics context.
|
inline |
Get the swap callback which overrides the GraphicsContext::swapBuffersImplementation().
|
inline |
Get the const swap callback which overrides the GraphicsContext::swapBuffersImplementation().
|
inline |
|
inline |
Get the traits of the GraphicsContext.
|
static |
Get the WindowingSystemInterface.
|
static |
Increment the usage count associate with a contextID.
The usage count specifies how many graphics contexts a specific contextID is shared between.
|
inline |
Return true if the current thread has this OpenGL graphics context.
|
inline |
Return true if the graphics context has been realized and is ready to use.
|
pure virtual |
Return true if the graphics context has been realized, and is ready to use, implementation.
Pure virtual - must be implemented by concrete implementations of GraphicsContext.
Implemented in osgViewer::GraphicsWindowEmbedded, osgQt::GraphicsWindowQt, osgViewer::GraphicsWindow, osgViewer::GraphicsWindowX11, osgViewer::GraphicsWindowWin32, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
|
inlinevirtual |
Reimplemented from osg::Object.
|
inlinevirtual |
return the name of the object's library.
Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.
Implements osg::Object.
Reimplemented in osgViewer::GraphicsWindowEmbedded, osgViewer::GraphicsWindowX11, osgViewer::GraphicsWindow, osgViewer::GraphicsWindowWin32, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
bool osg::GraphicsContext::makeContextCurrent | ( | GraphicsContext * | readContext | ) |
Make this graphics context current with specified read context.
Implemented by calling makeContextCurrentImplementation(). Returns true on success.
|
pure virtual |
Make this graphics context current with specified read context implementation.
Pure virtual - must be implemented by concrete implementations of GraphicsContext.
Implemented in osgViewer::PixelBufferX11.
bool osg::GraphicsContext::makeCurrent | ( | ) |
Make this graphics context current.
Implemented by calling makeCurrentImplementation(). Returns true on success.
|
pure virtual |
Make this graphics context current implementation.
Pure virtual - must be implemented by concrete implementations of GraphicsContext.
Implemented in osgViewer::GraphicsWindowEmbedded, osgQt::GraphicsWindowQt, osgViewer::GraphicsWindow, osgViewer::GraphicsWindowX11, osgViewer::GraphicsWindowWin32, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
bool osg::GraphicsContext::realize | ( | ) |
Realize the GraphicsContext.
|
pure virtual |
Realize the GraphicsContext implementation, Pure virtual - must be implemented by concrete implementations of GraphicsContext.
Implemented in osgViewer::GraphicsWindowEmbedded, osgQt::GraphicsWindowQt, osgViewer::GraphicsWindow, osgViewer::GraphicsWindowX11, osgViewer::GraphicsWindowWin32, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
|
staticprotected |
Register a GraphicsContext.
bool osg::GraphicsContext::releaseContext | ( | ) |
Release the graphics context.
Returns true on success.
|
pure virtual |
Release the graphics context implementation.
Implemented in osgViewer::GraphicsWindowEmbedded, osgViewer::GraphicsWindow, osgQt::GraphicsWindowQt, osgViewer::GraphicsWindowX11, osgViewer::PixelBufferWin32, osgViewer::PixelBufferX11, and osgViewer::GraphicsWindowWin32.
Remove operation from OperationQueue.
void osg::GraphicsContext::remove | ( | const std::string & | name | ) |
Remove named operation from OperationQueue.
void osg::GraphicsContext::removeAllOperations | ( | ) |
Remove all operations from OperationQueue.
|
protected |
|
inline |
resized method should be called when the underlying window has been resized and the GraphicsWindow and associated Cameras must be updated to keep in sync with the new size.
|
virtual |
resized implementation, by default resizes the viewports and aspect ratios the cameras associated with the graphics Window.
|
virtual |
Run the operations.
Reimplemented in osgQt::GraphicsWindowQt.
|
inline |
Set the clear mask used in glClear(..).
Defaults to 0 - so no clear is done by default by the GraphicsContext, instead the Cameras attached to the GraphicsContext will do the clear. GraphicsContext::setClearMask() is useful for when the Camera Viewports don't cover the whole context, so the context will fill in the gaps.
|
static |
Get the GraphicsContext for doing background compilation for GraphicsContexts associated with specified contextID.
|
inline |
set the default FBO-id, this id will be used when the rendering-backend is finished with RTT FBOs
void osg::GraphicsContext::setGraphicsThread | ( | GraphicsThread * | gt | ) |
Assign a graphics thread to the graphics context, so that the thread handles all OpenGL operations.
|
inline |
Set the resized callback which overrides the GraphicsConext::realizedImplementation(), allow developers to provide custom behavior in response to a window being resized.
Set the State object which tracks the current OpenGL state for this graphics context.
|
inline |
Set the swap callback which overrides the GraphicsContext::swapBuffersImplementation(), allowing developers to provide custom behavior for swap.
The callback must call GraphicsContext::swapBuffersImplementation()
|
static |
Set the query the windowing system for screens and create graphics context - this functor should be supplied by the windows toolkit.
void osg::GraphicsContext::swapBuffers | ( | ) |
swap the front and back buffers.
|
inline |
Convenience method for handling whether to call swapbuffers callback or the standard context swapBuffersImplementation.
swapBuffersCallbackOrImplemenation() is called by swapBuffers() and osg::SwapBuffersOperation, end users should normally call swapBuffers() rather than swapBuffersCallbackOrImplemenation().
|
pure virtual |
Swap the front and back buffers implementation.
Pure virtual - must be implemented by concrete implementations of GraphicsContext.
Implemented in osgViewer::GraphicsWindowEmbedded, osgViewer::GraphicsWindow, osgQt::GraphicsWindowQt, osgViewer::GraphicsWindowX11, osgViewer::PixelBufferX11, osgViewer::PixelBufferWin32, and osgViewer::GraphicsWindowWin32.
|
staticprotected |
Unregister a GraphicsContext.
|
pure virtual |
Return whether a valid and usable GraphicsContext has been created.
Implemented in osgViewer::GraphicsWindowEmbedded, osgQt::GraphicsWindowQt, osgViewer::GraphicsWindow, osgViewer::GraphicsWindowX11, osgViewer::GraphicsWindowWin32, osgViewer::PixelBufferWin32, and osgViewer::PixelBufferX11.
|
friend |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Generated at Wed Nov 11 2015 22:14:34 for the OpenSceneGraph by doxygen 1.8.10. |