osg::TextureObjectManager Class Reference

`#include <Texture>`

Inheritance diagram for osg::TextureObjectManager:

## Public Member Functions

| TextureObjectManager (unsigned int contextID)
void | setNumberActiveTextureObjects (unsigned int size)
unsigned int & | getNumberActiveTextureObjects ()
unsigned int | getNumberActiveTextureObjects () const
void | setNumberOrphanedTextureObjects (unsigned int size)
unsigned int & | getNumberOrphanedTextureObjects ()
unsigned int | getNumberOrphanedTextureObjects () const
void | setCurrTexturePoolSize (unsigned int size)
unsigned int & | getCurrTexturePoolSize ()
unsigned int | getCurrTexturePoolSize () const
void | setMaxTexturePoolSize (unsigned int size)
unsigned int | getMaxTexturePoolSize () const
bool | hasSpace (unsigned int size) const
bool | makeSpace (unsigned int size)
osg::ref_ptr< Texture::TextureObject > | generateTextureObject (const Texture *texture, GLenum target)
osg::ref_ptr< Texture::TextureObject > | generateTextureObject (const Texture *texture, GLenum target, GLint numMipmapLevels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border)
void | handlePendingOrphandedTextureObjects ()
void | deleteAllGLObjects ()
void | discardAllGLObjects ()
void | flushAllDeletedGLObjects ()
void | discardAllDeletedGLObjects ()
void | flushDeletedGLObjects (double currentTime, double &availableTime)
TextureObjectSet * | getTextureObjectSet (const Texture::TextureProfile &profile)
void | newFrame (osg::FrameStamp *fs)
void | resetStats ()
void | reportStats (std::ostream &out)
void | recomputeStats (std::ostream &out) const
bool | checkConsistency () const
unsigned int & | getFrameNumber ()
unsigned int & | getNumberFrames ()
unsigned int & | getNumberDeleted ()
double & | getDeleteTime ()
unsigned int & | getNumberGenerated ()
double & | getGenerateTime ()
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)
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 Types

typedef std::map< Texture::TextureProfile, osg::ref_ptr< TextureObjectSet > > | TextureSetMap

## Protected Member Functions

| ~TextureObjectManager ()
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 | _numActiveTextureObjects
unsigned int | _numOrphanedTextureObjects
unsigned int | _currTexturePoolSize
unsigned int | _maxTexturePoolSize
TextureSetMap | _textureSetMap
unsigned int | _frameNumber
unsigned int | _numFrames
unsigned int | _numDeleted
double | _deleteTime
unsigned int | _numGenerated
double | _generateTime
Protected Attributes inherited from osg::GraphicsObjectManager
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::Mutex * | getGlobalReferencedMutex ()
static void | setDeleteHandler (DeleteHandler *handler)
static DeleteHandler * | getDeleteHandler ()

## Member Typedef Documentation

## TextureSetMap

typedef std::map< Texture::TextureProfile, osg::ref_ptr<TextureObjectSet> > osg::TextureObjectManager::TextureSetMap

protected

## Constructor & Destructor Documentation

## TextureObjectManager()

osg::TextureObjectManager::TextureObjectManager | ( | unsigned int | contextID | ) |

## ~TextureObjectManager()

osg::TextureObjectManager::~TextureObjectManager | ( |  | ) |

protected

## Member Function Documentation

## checkConsistency()

bool osg::TextureObjectManager::checkConsistency | ( |  | ) | const

## deleteAllGLObjects()

void osg::TextureObjectManager::deleteAllGLObjects | ( |  | ) |

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.

## discardAllDeletedGLObjects()

void osg::TextureObjectManager::discardAllDeletedGLObjects | ( |  | ) |

## discardAllGLObjects()

void osg::TextureObjectManager::discardAllGLObjects | ( |  | ) |

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.

## flushAllDeletedGLObjects()

void osg::TextureObjectManager::flushAllDeletedGLObjects | ( |  | ) |

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.

## flushDeletedGLObjects()

void osg::TextureObjectManager::flushDeletedGLObjects | ( | double | currentTime,
|  | double & | availableTime )

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.

## generateTextureObject() [1/2]

osg::ref_ptr< Texture::TextureObject > osg::TextureObjectManager::generateTextureObject | ( | const Texture * | texture,
|  | GLenum | target )

## generateTextureObject() [2/2]

osg::ref_ptr< Texture::TextureObject > osg::TextureObjectManager::generateTextureObject | ( | const Texture * | texture,
|  | GLenum | target,
|  | GLint | numMipmapLevels,
|  | GLenum | internalFormat,
|  | GLsizei | width,
|  | GLsizei | height,
|  | GLsizei | depth,
|  | GLint | border )

## getCurrTexturePoolSize() [1/2]

unsigned int & osg::TextureObjectManager::getCurrTexturePoolSize | ( |  | ) |

inline

References _currTexturePoolSize.

## getCurrTexturePoolSize() [2/2]

unsigned int osg::TextureObjectManager::getCurrTexturePoolSize | ( |  | ) | const

inline

References _currTexturePoolSize.

## getDeleteTime()

double & osg::TextureObjectManager::getDeleteTime | ( |  | ) |

inline

References _deleteTime.

## getFrameNumber()

unsigned int & osg::TextureObjectManager::getFrameNumber | ( |  | ) |

inline

References _frameNumber.

## getGenerateTime()

double & osg::TextureObjectManager::getGenerateTime | ( |  | ) |

inline

References _generateTime.

## getMaxTexturePoolSize()

unsigned int osg::TextureObjectManager::getMaxTexturePoolSize | ( |  | ) | const

inline

References _maxTexturePoolSize.

## getNumberActiveTextureObjects() [1/2]

unsigned int & osg::TextureObjectManager::getNumberActiveTextureObjects | ( |  | ) |

inline

References _numActiveTextureObjects.

## getNumberActiveTextureObjects() [2/2]

unsigned int osg::TextureObjectManager::getNumberActiveTextureObjects | ( |  | ) | const

inline

References _numActiveTextureObjects.

## getNumberDeleted()

unsigned int & osg::TextureObjectManager::getNumberDeleted | ( |  | ) |

inline

References _numDeleted.

## getNumberFrames()

unsigned int & osg::TextureObjectManager::getNumberFrames | ( |  | ) |

inline

References _numFrames.

## getNumberGenerated()

unsigned int & osg::TextureObjectManager::getNumberGenerated | ( |  | ) |

inline

References _numGenerated.

## getNumberOrphanedTextureObjects() [1/2]

unsigned int & osg::TextureObjectManager::getNumberOrphanedTextureObjects | ( |  | ) |

inline

References _numOrphanedTextureObjects.

## getNumberOrphanedTextureObjects() [2/2]

unsigned int osg::TextureObjectManager::getNumberOrphanedTextureObjects | ( |  | ) | const

inline

References _numOrphanedTextureObjects.

## getTextureObjectSet()

TextureObjectSet * osg::TextureObjectManager::getTextureObjectSet | ( | const Texture::TextureProfile & | profile | ) |

## handlePendingOrphandedTextureObjects()

void osg::TextureObjectManager::handlePendingOrphandedTextureObjects | ( |  | ) |

## hasSpace()

bool osg::TextureObjectManager::hasSpace | ( | unsigned int | size | ) | const

inline

References _currTexturePoolSize, and _maxTexturePoolSize.

## makeSpace()

bool osg::TextureObjectManager::makeSpace | ( | unsigned int | size | ) |

## newFrame()

void osg::TextureObjectManager::newFrame | ( | osg::FrameStamp * |  | ) |

virtual

Signal that a new frame has started.

Reimplemented from osg::GraphicsObjectManager.

## recomputeStats()

void osg::TextureObjectManager::recomputeStats | ( | std::ostream & | out | ) | const

virtual

Reimplemented from osg::GraphicsObjectManager.

## reportStats()

void osg::TextureObjectManager::reportStats | ( | std::ostream & | out | ) |

virtual

Reimplemented from osg::GraphicsObjectManager.

## resetStats()

void osg::TextureObjectManager::resetStats | ( |  | ) |

virtual

Reimplemented from osg::GraphicsObjectManager.

## setCurrTexturePoolSize()

void osg::TextureObjectManager::setCurrTexturePoolSize | ( | unsigned int | size | ) |

inline

References _currTexturePoolSize.

## setMaxTexturePoolSize()

void osg::TextureObjectManager::setMaxTexturePoolSize | ( | unsigned int | size | ) |

## setNumberActiveTextureObjects()

void osg::TextureObjectManager::setNumberActiveTextureObjects | ( | unsigned int | size | ) |

inline

References _numActiveTextureObjects.

## setNumberOrphanedTextureObjects()

void osg::TextureObjectManager::setNumberOrphanedTextureObjects | ( | unsigned int | size | ) |

inline

References _numOrphanedTextureObjects.

## Member Data Documentation

## _currTexturePoolSize

unsigned int osg::TextureObjectManager::_currTexturePoolSize

protected

Referenced by getCurrTexturePoolSize(), getCurrTexturePoolSize(), hasSpace(), and setCurrTexturePoolSize().

## _deleteTime

double osg::TextureObjectManager::_deleteTime

protected

Referenced by getDeleteTime().

## _frameNumber

unsigned int osg::TextureObjectManager::_frameNumber

protected

Referenced by getFrameNumber().

## _generateTime

double osg::TextureObjectManager::_generateTime

protected

Referenced by getGenerateTime().

## _maxTexturePoolSize

unsigned int osg::TextureObjectManager::_maxTexturePoolSize

protected

Referenced by getMaxTexturePoolSize(), and hasSpace().

## _numActiveTextureObjects

unsigned int osg::TextureObjectManager::_numActiveTextureObjects

protected

Referenced by getNumberActiveTextureObjects(), getNumberActiveTextureObjects(), and setNumberActiveTextureObjects().

## _numDeleted

unsigned int osg::TextureObjectManager::_numDeleted

protected

Referenced by getNumberDeleted().

## _numFrames

unsigned int osg::TextureObjectManager::_numFrames

protected

Referenced by getNumberFrames().

## _numGenerated

unsigned int osg::TextureObjectManager::_numGenerated

protected

Referenced by getNumberGenerated().

## _numOrphanedTextureObjects

unsigned int osg::TextureObjectManager::_numOrphanedTextureObjects

protected

Referenced by getNumberOrphanedTextureObjects(), getNumberOrphanedTextureObjects(), and setNumberOrphanedTextureObjects().

## _textureSetMap

TextureSetMap osg::TextureObjectManager::_textureSetMap

protected

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

- Texture