OpenSceneGraph  3.0.1
Classes | Public Member Functions | Protected Member Functions | Protected Attributes
osg::BufferData Class Reference
Inheritance diagram for osg::BufferData:
Inheritance graph
[legend]

List of all members.

Classes

struct  ModifiedCallback

Public Member Functions

 BufferData ()
 BufferData (const BufferData &bd, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 Copy constructor using CopyOp to manage deep vs shallow copy.
virtual bool isSameKindAs (const Object *obj) const
virtual const char * libraryName () const
 return the name of the object's library.
virtual const char * className () const
 return the name of the object's class type.
virtual const GLvoid * getDataPointer () const =0
virtual unsigned int getTotalDataSize () const =0
void setBufferObject (BufferObject *bufferObject)
BufferObjectgetBufferObject ()
const BufferObjectgetBufferObject () const
void setBufferIndex (unsigned int index)
unsigned int getBufferIndex () const
GLBufferObjectgetGLBufferObject (unsigned int contextID) const
GLBufferObjectgetOrCreateGLBufferObject (unsigned int contextID) const
void setModifiedCallback (ModifiedCallback *md)
ModifiedCallbackgetModifiedCallback ()
const ModifiedCallbackgetModifiedCallback () const
void dirty ()
 Dirty the primitive, which increments the modified count, to force buffer objects to update.
void setModifiedCount (unsigned int value)
 Set the modified count value.
unsigned int getModifiedCount () const
 Get modified count value.
virtual void resizeGLObjectBuffers (unsigned int maxSize)
 Resize any per context GLObject buffers to specified size.
void releaseGLObjects (State *state=0) const
 If State is non-zero, this function releases OpenGL objects for the specified graphics context.

Protected Member Functions

virtual ~BufferData ()

Protected Attributes

unsigned int _modifiedCount
unsigned int _bufferIndex
osg::ref_ptr< BufferObject_bufferObject
osg::ref_ptr< ModifiedCallback_modifiedCallback

Constructor & Destructor Documentation

osg::BufferData::BufferData ( ) [inline]
osg::BufferData::BufferData ( const BufferData bd,
const CopyOp copyop = CopyOp::SHALLOW_COPY 
) [inline]

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osg::BufferData::~BufferData ( ) [protected, virtual]

Member Function Documentation

virtual const char* osg::BufferData::className ( ) const [inline, virtual]

return the name of the object's class type.

Must be defined by derived classes.

Implements osg::Object.

Reimplemented in osg::DrawElementsUInt, osg::DrawElementsUShort, osg::DrawElementsUByte, osg::DrawArrayLengths, osg::DrawArrays, osg::PrimitiveSet, osg::Image, osg::Array, osg::ImageSequence, and osg::ImageStream.

void osg::BufferData::dirty ( ) [inline]

Dirty the primitive, which increments the modified count, to force buffer objects to update.

If a ModifiedCallback is attached to this BufferData then the callback is called prior to the bufferObject's dirty is called.

References osg::BufferData::ModifiedCallback::modified().

unsigned int osg::BufferData::getBufferIndex ( ) const [inline]
BufferObject* osg::BufferData::getBufferObject ( ) [inline]
const BufferObject* osg::BufferData::getBufferObject ( ) const [inline]
virtual const GLvoid* osg::BufferData::getDataPointer ( ) const [pure virtual]
GLBufferObject* osg::BufferData::getGLBufferObject ( unsigned int  contextID) const [inline]
ModifiedCallback* osg::BufferData::getModifiedCallback ( ) [inline]
const ModifiedCallback* osg::BufferData::getModifiedCallback ( ) const [inline]
unsigned int osg::BufferData::getModifiedCount ( ) const [inline]

Get modified count value.

GLBufferObject* osg::BufferData::getOrCreateGLBufferObject ( unsigned int  contextID) const [inline]
virtual unsigned int osg::BufferData::getTotalDataSize ( ) const [pure virtual]
virtual bool osg::BufferData::isSameKindAs ( const Object obj) const [inline, virtual]
virtual const char* osg::BufferData::libraryName ( ) const [inline, virtual]

return the name of the object's library.

Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.

Implements osg::Object.

Reimplemented in osg::DrawElementsUInt, osg::DrawElementsUShort, osg::DrawElementsUByte, osg::DrawArrayLengths, osg::DrawArrays, osg::PrimitiveSet, osg::Image, osg::Array, osg::ImageSequence, and osg::ImageStream.

void osg::BufferData::releaseGLObjects ( State state = 0) const [virtual]

If State is non-zero, this function releases OpenGL objects for the specified graphics context.

Otherwise, releases OpenGL objects for all graphics contexts.

Reimplemented from osg::Object.

virtual void osg::BufferData::resizeGLObjectBuffers ( unsigned int  maxSize) [virtual]

Resize any per context GLObject buffers to specified size.

Reimplemented from osg::Object.

void osg::BufferData::setBufferIndex ( unsigned int  index) [inline]
void osg::BufferData::setBufferObject ( BufferObject bufferObject)
void osg::BufferData::setModifiedCallback ( ModifiedCallback md) [inline]
void osg::BufferData::setModifiedCount ( unsigned int  value) [inline]

Set the modified count value.


Member Data Documentation

unsigned int osg::BufferData::_bufferIndex [protected]

Reimplemented in osg::Image.

Referenced by osg::DrawElements::getElementBufferObject().

unsigned int osg::BufferData::_modifiedCount [protected]

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

osg logo
Generated at Mon Oct 3 2011 12:39:41 for the OpenSceneGraph by doxygen 1.7.5.