openscenegraph
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
osg::GraphicsObjectManager Class Referenceabstract

#include <GLObjects>

Inheritance diagram for osg::GraphicsObjectManager:
osg::Referenced osg::ContextData osg::GLBufferObjectManager osg::GLObjectManager osg::TextureObjectManager osg::GLFrameBufferObjectManager osg::GLRenderBufferManager

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
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
virtual void setThreadSafeRefUnref (bool)
 
bool getThreadSafeRefUnref () const
 
OpenThreads::MutexgetRefMutex () const
 
int ref () const
 
int unref () const
 
int unref_nodelete () const
 
int referenceCount () const
 
ObserverSetgetObserverSet () const
 
ObserverSetgetOrCreateObserverSet () const
 
void addObserver (Observer *observer) const
 
void removeObserver (Observer *observer) const
 

Protected Member Functions

virtual ~GraphicsObjectManager ()
 
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
 
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
 
void deleteUsingDeleteHandler () const
 

Protected Attributes

std::string _name
 
unsigned int _contextID
 
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
 
OpenThreads::Atomic _refCount
 

Additional Inherited Members

- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
 
static void setDeleteHandler (DeleteHandler *handler)
 
static DeleteHandlergetDeleteHandler ()
 

Constructor & Destructor Documentation

◆ GraphicsObjectManager()

osg::GraphicsObjectManager::GraphicsObjectManager ( const std::string &  name,
unsigned int  contextID 
)

◆ ~GraphicsObjectManager()

virtual osg::GraphicsObjectManager::~GraphicsObjectManager ( )
protectedvirtual

Member Function Documentation

◆ deleteAllGLObjects()

virtual void osg::GraphicsObjectManager::deleteAllGLObjects ( )
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.

◆ discardAllGLObjects()

virtual void osg::GraphicsObjectManager::discardAllGLObjects ( )
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.

◆ flushAllDeletedGLObjects()

virtual void osg::GraphicsObjectManager::flushAllDeletedGLObjects ( )
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.

◆ flushDeletedGLObjects()

virtual void osg::GraphicsObjectManager::flushDeletedGLObjects ( double  currentTime,
double &  availableTime 
)
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.

◆ getContextID()

unsigned int osg::GraphicsObjectManager::getContextID ( ) const
inline

◆ newFrame()

virtual void osg::GraphicsObjectManager::newFrame ( osg::FrameStamp )
inlinevirtual

Signal that a new frame has started.

Reimplemented in osg::ContextData, osg::GLBufferObjectManager, and osg::TextureObjectManager.

◆ recomputeStats()

virtual void osg::GraphicsObjectManager::recomputeStats ( std::ostream &  ) const
inlinevirtual

◆ reportStats()

virtual void osg::GraphicsObjectManager::reportStats ( std::ostream &  )
inlinevirtual

◆ resetStats()

virtual void osg::GraphicsObjectManager::resetStats ( )
inlinevirtual

Member Data Documentation

◆ _contextID

unsigned int osg::GraphicsObjectManager::_contextID
protected

◆ _name

std::string osg::GraphicsObjectManager::_name
protected

The documentation for this class was generated from the following file: