openscenegraph
|
#include <GLObjects>
Public Member Functions | |
GraphicsObjectManager (const std::string &name, unsigned int contextID) | |
unsigned int | getContextID () const |
virtual void | newFrame (osg::FrameStamp *) |
virtual void | resetStats () |
virtual void | reportStats (std::ostream &) |
virtual void | recomputeStats (std::ostream &) const |
virtual void | flushDeletedGLObjects (double currentTime, double &availableTime)=0 |
virtual void | flushAllDeletedGLObjects ()=0 |
virtual void | deleteAllGLObjects ()=0 |
virtual void | discardAllGLObjects ()=0 |
![]() | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
virtual void | setThreadSafeRefUnref (bool) |
bool | getThreadSafeRefUnref () const |
OpenThreads::Mutex * | getRefMutex () const |
int | ref () const |
int | unref () const |
int | unref_nodelete () const |
int | referenceCount () const |
ObserverSet * | getObserverSet () const |
ObserverSet * | getOrCreateObserverSet () const |
void | addObserver (Observer *observer) const |
void | removeObserver (Observer *observer) const |
Protected Member Functions | |
virtual | ~GraphicsObjectManager () |
![]() | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Protected Attributes | |
std::string | _name |
unsigned int | _contextID |
![]() | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
Additional Inherited Members | |
![]() | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
static void | setDeleteHandler (DeleteHandler *handler) |
static DeleteHandler * | getDeleteHandler () |
osg::GraphicsObjectManager::GraphicsObjectManager | ( | const std::string & | name, |
unsigned int | contextID | ||
) |
|
protectedvirtual |
|
pure virtual |
Do a GL delete all OpenGL objects. Note, must be called from a thread which has current the graphics context associated with contextID.
Implemented in osg::GLBufferObjectManager, osg::ContextData, osg::GLObjectManager, and osg::TextureObjectManager.
|
pure 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.
Implemented in osg::GLBufferObjectManager, osg::ContextData, osg::GLObjectManager, and osg::TextureObjectManager.
|
pure virtual |
Flush all deleted OpenGL objects. Note, must be called from a thread which has current the graphics context associated with contextID.
Implemented in osg::GLBufferObjectManager, osg::ContextData, osg::GLObjectManager, and osg::TextureObjectManager.
|
pure 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.
Implemented in osg::GLBufferObjectManager, osg::ContextData, osg::GLObjectManager, and osg::TextureObjectManager.
|
inline |
|
inlinevirtual |
Signal that a new frame has started.
Reimplemented in osg::ContextData, osg::GLBufferObjectManager, and osg::TextureObjectManager.
|
inlinevirtual |
Reimplemented in osg::GLBufferObjectManager, osg::ContextData, and osg::TextureObjectManager.
|
inlinevirtual |
Reimplemented in osg::GLBufferObjectManager, osg::ContextData, and osg::TextureObjectManager.
|
inlinevirtual |
Reimplemented in osg::GLBufferObjectManager, osg::ContextData, and osg::TextureObjectManager.
|
protected |
|
protected |