
Public Member Functions | |
| BufferObject () | |
| BufferObject (const BufferObject &bo, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
| virtual bool | isSameKindAs (const Object *obj) const |
| virtual const char * | libraryName () const |
| virtual const char * | className () const |
| void | setTarget (GLenum target) |
| GLenum | getTarget () const |
| void | setUsage (GLenum usage) |
| GLenum | getUsage () const |
| BufferObjectProfile & | getProfile () |
| const BufferObjectProfile & | getProfile () const |
| void | dirty () |
| virtual void | resizeGLObjectBuffers (unsigned int maxSize) |
| void | releaseGLObjects (State *state=0) const |
| unsigned int | addBufferData (BufferData *bd) |
| void | removeBufferData (unsigned int index) |
| void | removeBufferData (BufferData *bd) |
| void | setBufferData (unsigned int index, BufferData *bd) |
| BufferData * | getBufferData (unsigned int index) |
| const BufferData * | getBufferData (unsigned int index) const |
| unsigned int | getNumBufferData () const |
| void | setGLBufferObject (unsigned int contextID, GLBufferObject *glbo) |
| GLBufferObject * | getGLBufferObject (unsigned int contextID) const |
| GLBufferObject * | getOrCreateGLBufferObject (unsigned int contextID) const |
| unsigned int | computeRequiredBufferSize () const |
Static Public Member Functions | |
| static void | deleteBufferObject (unsigned int contextID, GLuint globj) |
Protected Types | |
| typedef std::vector< BufferData * > | BufferDataList |
| typedef osg::buffered_object < osg::ref_ptr< GLBufferObject > > | GLBufferObjects |
Protected Member Functions | |
| ~BufferObject () | |
Protected Attributes | |
| BufferObjectProfile | _profile |
| BufferDataList | _bufferDataList |
| GLBufferObjects | _glBufferObjects |
typedef std::vector< BufferData* > osg::BufferObject::BufferDataList [protected] |
typedef osg::buffered_object< osg::ref_ptr<GLBufferObject> > osg::BufferObject::GLBufferObjects [protected] |
| osg::BufferObject::BufferObject | ( | ) |
| osg::BufferObject::BufferObject | ( | const BufferObject & | bo, | |
| const CopyOp & | copyop = CopyOp::SHALLOW_COPY | |||
| ) |
Copy constructor using CopyOp to manage deep vs shallow copy.
| osg::BufferObject::~BufferObject | ( | ) | [protected] |
| virtual bool osg::BufferObject::isSameKindAs | ( | const Object * | obj | ) | const [inline, virtual] |
| virtual const char* osg::BufferObject::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.
| virtual const char* osg::BufferObject::className | ( | ) | const [inline, virtual] |
return the name of the object's class type. Must be defined by derived classes.
Implements osg::Object.
| void osg::BufferObject::setTarget | ( | GLenum | target | ) | [inline] |
| GLenum osg::BufferObject::getTarget | ( | ) | const [inline] |
| void osg::BufferObject::setUsage | ( | GLenum | usage | ) | [inline] |
Set what type of usage the buffer object will have. Options are: GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY.
| GLenum osg::BufferObject::getUsage | ( | ) | const [inline] |
Get the type of usage the buffer object has been set up for.
| BufferObjectProfile& osg::BufferObject::getProfile | ( | ) | [inline] |
| const BufferObjectProfile& osg::BufferObject::getProfile | ( | ) | const [inline] |
| void osg::BufferObject::dirty | ( | ) |
| virtual void osg::BufferObject::resizeGLObjectBuffers | ( | unsigned int | maxSize | ) | [virtual] |
Resize any per context GLObject buffers to specified size.
Reimplemented from osg::Object.
Reimplemented in osg::PixelDataBufferObject.
| void osg::BufferObject::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.
| unsigned int osg::BufferObject::addBufferData | ( | BufferData * | bd | ) |
| void osg::BufferObject::removeBufferData | ( | unsigned int | index | ) |
| void osg::BufferObject::removeBufferData | ( | BufferData * | bd | ) |
| void osg::BufferObject::setBufferData | ( | unsigned int | index, | |
| BufferData * | bd | |||
| ) |
| BufferData* osg::BufferObject::getBufferData | ( | unsigned int | index | ) | [inline] |
| const BufferData* osg::BufferObject::getBufferData | ( | unsigned int | index | ) | const [inline] |
| unsigned int osg::BufferObject::getNumBufferData | ( | ) | const [inline] |
| void osg::BufferObject::setGLBufferObject | ( | unsigned int | contextID, | |
| GLBufferObject * | glbo | |||
| ) | [inline] |
| GLBufferObject* osg::BufferObject::getGLBufferObject | ( | unsigned int | contextID | ) | const [inline] |
| GLBufferObject* osg::BufferObject::getOrCreateGLBufferObject | ( | unsigned int | contextID | ) | const [inline] |
References osg::GLBufferObject::createGLBufferObject().
| unsigned int osg::BufferObject::computeRequiredBufferSize | ( | ) | const |
| static void osg::BufferObject::deleteBufferObject | ( | unsigned int | contextID, | |
| GLuint | globj | |||
| ) | [static] |
deprecated, provided for backwards compatibility.
BufferObjectProfile osg::BufferObject::_profile [protected] |
BufferDataList osg::BufferObject::_bufferDataList [protected] |
GLBufferObjects osg::BufferObject::_glBufferObjects [mutable, protected] |
1.5.6