OSG  3.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Types | Protected Attributes | List of all members
osg::GLBufferObjectManager Class Reference

#include <BufferObject.h>

Inheritance diagram for osg::GLBufferObjectManager:
Inheritance graph
[legend]
Collaboration diagram for osg::GLBufferObjectManager:
Collaboration graph
[legend]

Public Member Functions

 GLBufferObjectManager (unsigned int contextID)
 
unsigned int getContextID () const
 
void setNumberActiveGLBufferObjects (unsigned int size)
 
unsigned int & getNumberActiveGLBufferObjects ()
 
unsigned int getNumberActiveGLBufferObjects () const
 
void setNumberOrphanedGLBufferObjects (unsigned int size)
 
unsigned int & getNumberOrphanedGLBufferObjects ()
 
unsigned int getNumberOrphanedGLBufferObjects () const
 
void setCurrGLBufferObjectPoolSize (unsigned int size)
 
unsigned int & getCurrGLBufferObjectPoolSize ()
 
unsigned int getCurrGLBufferObjectPoolSize () const
 
void setMaxGLBufferObjectPoolSize (unsigned int size)
 
unsigned int getMaxGLBufferObjectPoolSize () const
 
bool hasSpace (unsigned int size) const
 
bool makeSpace (unsigned int size)
 
osg::ref_ptr< GLBufferObjectgenerateGLBufferObject (const osg::BufferObject *bufferObject)
 
void handlePendingOrphandedGLBufferObjects ()
 
void deleteAllGLBufferObjects ()
 
void discardAllGLBufferObjects ()
 
void flushAllDeletedGLBufferObjects ()
 
void discardAllDeletedGLBufferObjects ()
 
void flushDeletedGLBufferObjects (double currentTime, double &availableTime)
 
void releaseGLBufferObject (GLBufferObject *to)
 
GLBufferObjectSetgetGLBufferObjectSet (const BufferObjectProfile &profile)
 
void newFrame (osg::FrameStamp *fs)
 
void resetStats ()
 
void reportStats (std::ostream &out)
 
void recomputeStats (std::ostream &out)
 
unsigned int & getFrameNumber ()
 
unsigned int & getNumberFrames ()
 
unsigned int & getNumberDeleted ()
 
double & getDeleteTime ()
 
unsigned int & getNumberGenerated ()
 
double & getGenerateTime ()
 
unsigned int & getNumberApplied ()
 
double & getApplyTime ()
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
virtual void setThreadSafeRefUnref (bool threadSafe)
 
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
 

Static Public Member Functions

static osg::ref_ptr
< GLBufferObjectManager > & 
getGLBufferObjectManager (unsigned int contextID)
 
- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
 
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
 
static bool getThreadSafeReferenceCounting ()
 
static void setDeleteHandler (DeleteHandler *handler)
 
static DeleteHandlergetDeleteHandler ()
 

Protected Types

typedef std::map
< BufferObjectProfile,
osg::ref_ptr
< GLBufferObjectSet > > 
GLBufferObjectSetMap
 

Protected Attributes

unsigned int _contextID
 
unsigned int _numActiveGLBufferObjects
 
unsigned int _numOrphanedGLBufferObjects
 
unsigned int _currGLBufferObjectPoolSize
 
unsigned int _maxGLBufferObjectPoolSize
 
GLBufferObjectSetMap _glBufferObjectSetMap
 
unsigned int _frameNumber
 
unsigned int _numFrames
 
unsigned int _numDeleted
 
double _deleteTime
 
unsigned int _numGenerated
 
double _generateTime
 
unsigned int _numApplied
 
double _applyTime
 
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
 
OpenThreads::Atomic _refCount
 

Additional Inherited Members

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

Detailed Description

Definition at line 330 of file BufferObject.h.

Member Typedef Documentation

Definition at line 390 of file BufferObject.h.

Constructor & Destructor Documentation

osg::GLBufferObjectManager::GLBufferObjectManager ( unsigned int  contextID)

Member Function Documentation

void osg::GLBufferObjectManager::deleteAllGLBufferObjects ( )
void osg::GLBufferObjectManager::discardAllDeletedGLBufferObjects ( )
void osg::GLBufferObjectManager::discardAllGLBufferObjects ( )
void osg::GLBufferObjectManager::flushAllDeletedGLBufferObjects ( )
void osg::GLBufferObjectManager::flushDeletedGLBufferObjects ( double  currentTime,
double &  availableTime 
)
osg::ref_ptr<GLBufferObject> osg::GLBufferObjectManager::generateGLBufferObject ( const osg::BufferObject bufferObject)
double& osg::GLBufferObjectManager::getApplyTime ( )
inline

Definition at line 384 of file BufferObject.h.

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

Definition at line 335 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getCurrGLBufferObjectPoolSize ( )
inline

Definition at line 347 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::getCurrGLBufferObjectPoolSize ( ) const
inline

Definition at line 348 of file BufferObject.h.

double& osg::GLBufferObjectManager::getDeleteTime ( )
inline

Definition at line 378 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getFrameNumber ( )
inline

Definition at line 374 of file BufferObject.h.

double& osg::GLBufferObjectManager::getGenerateTime ( )
inline

Definition at line 381 of file BufferObject.h.

static osg::ref_ptr<GLBufferObjectManager>& osg::GLBufferObjectManager::getGLBufferObjectManager ( unsigned int  contextID)
static
GLBufferObjectSet* osg::GLBufferObjectManager::getGLBufferObjectSet ( const BufferObjectProfile profile)
unsigned int osg::GLBufferObjectManager::getMaxGLBufferObjectPoolSize ( ) const
inline

Definition at line 351 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getNumberActiveGLBufferObjects ( )
inline

Definition at line 339 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::getNumberActiveGLBufferObjects ( ) const
inline

Definition at line 340 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getNumberApplied ( )
inline

Definition at line 383 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getNumberDeleted ( )
inline

Definition at line 377 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getNumberFrames ( )
inline

Definition at line 375 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getNumberGenerated ( )
inline

Definition at line 380 of file BufferObject.h.

unsigned int& osg::GLBufferObjectManager::getNumberOrphanedGLBufferObjects ( )
inline

Definition at line 343 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::getNumberOrphanedGLBufferObjects ( ) const
inline

Definition at line 344 of file BufferObject.h.

void osg::GLBufferObjectManager::handlePendingOrphandedGLBufferObjects ( )
bool osg::GLBufferObjectManager::hasSpace ( unsigned int  size) const
inline

Definition at line 353 of file BufferObject.h.

bool osg::GLBufferObjectManager::makeSpace ( unsigned int  size)
void osg::GLBufferObjectManager::newFrame ( osg::FrameStamp fs)
void osg::GLBufferObjectManager::recomputeStats ( std::ostream &  out)
void osg::GLBufferObjectManager::releaseGLBufferObject ( GLBufferObject to)
void osg::GLBufferObjectManager::reportStats ( std::ostream &  out)
void osg::GLBufferObjectManager::resetStats ( )
void osg::GLBufferObjectManager::setCurrGLBufferObjectPoolSize ( unsigned int  size)
inline

Definition at line 346 of file BufferObject.h.

void osg::GLBufferObjectManager::setMaxGLBufferObjectPoolSize ( unsigned int  size)
void osg::GLBufferObjectManager::setNumberActiveGLBufferObjects ( unsigned int  size)
inline

Definition at line 338 of file BufferObject.h.

void osg::GLBufferObjectManager::setNumberOrphanedGLBufferObjects ( unsigned int  size)
inline

Definition at line 342 of file BufferObject.h.

Member Data Documentation

double osg::GLBufferObjectManager::_applyTime
protected

Definition at line 408 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_contextID
protected

Definition at line 391 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_currGLBufferObjectPoolSize
protected

Definition at line 394 of file BufferObject.h.

double osg::GLBufferObjectManager::_deleteTime
protected

Definition at line 402 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_frameNumber
protected

Definition at line 398 of file BufferObject.h.

double osg::GLBufferObjectManager::_generateTime
protected

Definition at line 405 of file BufferObject.h.

GLBufferObjectSetMap osg::GLBufferObjectManager::_glBufferObjectSetMap
protected

Definition at line 396 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_maxGLBufferObjectPoolSize
protected

Definition at line 395 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_numActiveGLBufferObjects
protected

Definition at line 392 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_numApplied
protected

Definition at line 407 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_numDeleted
protected

Definition at line 401 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_numFrames
protected

Definition at line 400 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_numGenerated
protected

Definition at line 404 of file BufferObject.h.

unsigned int osg::GLBufferObjectManager::_numOrphanedGLBufferObjects
protected

Definition at line 393 of file BufferObject.h.


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