OpenSceneGraph
3.5.1
|
Public Types | |
typedef GraphicsContext::GraphicsContexts | GraphicsContexts |
Public Member Functions | |
ContextData (unsigned int contextID) | |
void | incrementUsageCount () |
void | decrementUsageCount () |
void | setNumContexts (unsigned int numContexts) |
unsigned int | getNumContexts () const |
void | setCompileContext (osg::GraphicsContext *gc) |
osg::GraphicsContext * | getCompileContext () |
template<typename T > | |
T * | get () |
Get a specific GL extensions object or GraphicsObjectManager, initialize if not already present. More... | |
template<typename T > | |
const T * | get () const |
Get a specific GL extensions object or GraphicsObjectManager if it already exists in the extension map. More... | |
template<typename T > | |
void | set (T *ptr) |
Set a specific GL extensions object pr GraphicsObjectManager. More... | |
virtual void | newFrame (osg::FrameStamp *) |
Signal that a new frame has started. More... | |
virtual void | resetStats () |
virtual void | reportStats (std::ostream &out) |
virtual void | recomputeStats (std::ostream &out) const |
virtual void | flushDeletedGLObjects (double currentTime, double &availableTime) |
Flush all deleted OpenGL objects within the specified availableTime. More... | |
virtual void | flushAllDeletedGLObjects () |
Flush all deleted OpenGL objects. More... | |
virtual void | deleteAllGLObjects () |
Do a GL delete all OpenGL objects. More... | |
virtual void | discardAllGLObjects () |
Discard all OpenGL objects. More... | |
Public Member Functions inherited from osg::GraphicsObjectManager | |
GraphicsObjectManager (const std::string &name, unsigned int contextID) | |
unsigned int | getContextID () const |
Public Member Functions inherited from osg::Referenced | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
Set whether to use a mutex to ensure ref() and unref() are thread safe. More... | |
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 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 void | registerGraphicsContext (GraphicsContext *gc) |
Register a GraphicsContext. More... | |
static void | unregisterGraphicsContext (GraphicsContext *gc) |
Unregister a GraphicsContext. 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 Types | |
typedef std::map< const std::type_info *, osg::ref_ptr< osg::Referenced > > | ManagerMap |
Protected Member Functions | |
virtual | ~ContextData () |
Protected Member Functions inherited from osg::GraphicsObjectManager | |
virtual | ~GraphicsObjectManager () |
Protected Member Functions inherited from osg::Referenced | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Protected Attributes | |
unsigned int | _numContexts |
osg::ref_ptr< osg::GraphicsContext > | _compileContext |
ManagerMap | _managerMap |
Protected Attributes inherited from osg::GraphicsObjectManager | |
std::string | _name |
unsigned int | _contextID |
Protected Attributes inherited from osg::Referenced | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
|
protected |
osg::ContextData::ContextData | ( | unsigned int | contextID | ) |
|
protectedvirtual |
|
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.
|
inline |
|
virtual |
Do a GL delete all OpenGL objects.
Note, must be called from a thread which has current the graphics context associated with contextID.
Implements osg::GraphicsObjectManager.
|
virtual |
Discard all OpenGL objects.
Note, unlike deleteAllGLjects discard does not do any OpenGL calls so can be called from any thread, but as a consequence it also doesn't remove the associated OpenGL resource so discard should only be called when the associated graphics context is being/has been closed.
Implements osg::GraphicsObjectManager.
|
virtual |
Flush all deleted OpenGL objects.
Note, must be called from a thread which has current the graphics context associated with contextID.
Implements osg::GraphicsObjectManager.
|
virtual |
Flush all deleted OpenGL objects within the specified availableTime.
Note, must be called from a thread which has current the graphics context associated with contextID.
Implements osg::GraphicsObjectManager.
|
inline |
Get a specific GL extensions object or GraphicsObjectManager, initialize if not already present.
Note, must only be called from a the graphics context thread associated with this osg::State.
|
inline |
Get a specific GL extensions object or GraphicsObjectManager if it already exists in the extension map.
Note, safe to call outwith a the graphics context thread associated with this osg::State. Returns NULL if the desired extension object has not been created yet.
|
static |
Get all the registered graphics contexts.
|
inline |
|
static |
Get the GraphicsContext for doing background compilation for GraphicsContexts associated with specified contextID.
|
static |
Get the current max ContextID.
|
inline |
|
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.
|
static |
Increment the usage count associate with a contextID.
The usage count specifies how many graphics contexts a specific contextID is shared between.
|
inline |
|
virtual |
Signal that a new frame has started.
Reimplemented from osg::GraphicsObjectManager.
|
virtual |
Reimplemented from osg::GraphicsObjectManager.
|
static |
Register a GraphicsContext.
|
virtual |
Reimplemented from osg::GraphicsObjectManager.
|
virtual |
Reimplemented from osg::GraphicsObjectManager.
|
inline |
Set a specific GL extensions object pr GraphicsObjectManager.
|
inline |
|
static |
Get the GraphicsContext for doing background compilation for GraphicsContexts associated with specified contextID.
|
inline |
|
static |
Unregister a GraphicsContext.
|
protected |
|
protected |
|
protected |
Generated at Wed Nov 11 2015 22:14:31 for the OpenSceneGraph by doxygen 1.8.10. |