OpenSceneGraph  3.2.0
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
osg::GLBufferObject::Extensions Class Reference

Extensions class which encapsulates the querying of extensions and associated function pointers, and provide convenience wrappers to check for the extensions or use the associated functions. More...

Inheritance diagram for osg::GLBufferObject::Extensions:
Inheritance graph
[legend]

Public Member Functions

 Extensions (unsigned int contextID)
 
 Extensions (const Extensions &rhs)
 
void lowestCommonDenominator (const Extensions &rhs)
 
void setupGLExtensions (unsigned int contextID)
 
bool isBufferObjectSupported () const
 
bool isPBOSupported () const
 
bool isUniformBufferObjectSupported () const
 
bool isTBOSupported () const
 
void glGenBuffers (GLsizei n, GLuint *buffers) const
 
void glBindBuffer (GLenum target, GLuint buffer) const
 
void glBufferData (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage) const
 
void glBufferSubData (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data) const
 
void glDeleteBuffers (GLsizei n, const GLuint *buffers) const
 
GLboolean glIsBuffer (GLuint buffer) const
 
void glGetBufferSubData (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data) const
 
GLvoid * glMapBuffer (GLenum target, GLenum access) const
 
GLboolean glUnmapBuffer (GLenum target) const
 
void glGetBufferParameteriv (GLenum target, GLenum pname, GLint *params) const
 
void glGetBufferPointerv (GLenum target, GLenum pname, GLvoid **params) const
 
void glBindBufferRange (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
 
void glBindBufferBase (GLenum target, GLuint index, GLuint buffer)
 
void glTexBuffer (GLenum target, GLenum internalFormat, GLuint buffer) const
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
virtual void setThreadSafeRefUnref (bool threadSafe)
 Set whether to use a mutex to ensure ref() and unref() are thread safe. More...
 
bool getThreadSafeRefUnref () const
 Get whether a mutex is used to ensure ref() and unref() are thread safe. More...
 
OpenThreads::Mutex * getRefMutex () const
 Get the mutex used to ensure thread safety of ref()/unref(). More...
 
int ref () const
 Increment the reference count by one, indicating that this object has another pointer which is referencing it. More...
 
int unref () const
 Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More...
 
int unref_nodelete () const
 Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More...
 
int referenceCount () const
 Return the number of pointers currently referencing this object. More...
 
ObserverSetgetObserverSet () const
 Get the ObserverSet if one is attached, otherwise return NULL. More...
 
ObserverSetgetOrCreateObserverSet () const
 Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. More...
 
void addObserver (Observer *observer) const
 Add a Observer that is observing this object, notify the Observer when this object gets deleted. More...
 
void removeObserver (Observer *observer) const
 Remove Observer that is observing this object. More...
 

Protected Types

typedef GLuint * buffers
 
typedef GLuint buffer
 
typedef GLsizeiptrARB size
 
typedef GLsizeiptrARB const
GLvoid * 
data
 
typedef GLsizeiptrARB const
GLvoid GLenum 
usage
 
typedef GLintptrARB offset
 
typedef GLintptrARB GLsizeiptrARB size
 
typedef GLintptrARB
GLsizeiptrARB const GLvoid * 
data
 
typedef const GLuint * buffers
 
typedef GLintptrARB offset
 
typedef GLintptrARB GLsizeiptrARB size
 
typedef GLintptrARB
GLsizeiptrARB GLvoid * 
data
 
typedef GLvoid *GL_APIENTRYMapBufferProc (GLenum target, GLenum access)
 
typedef GLenum pname
 
typedef GLenum GLint * params
 
typedef GLenum pname
 
typedef GLenum GLvoid ** params
 
typedef GLuint index
 
typedef GLuint GLuint buffer
 
typedef GLuint GLuint GLintptr offset
 
typedef GLuint GLuint GLintptr
GLsizeiptr 
size
 
typedef GLuint index
 
typedef GLuint GLuint buffer
 
typedef GLenum internalFormat
 
typedef GLenum GLuint buffer
 

Protected Member Functions

typedef void (GL_APIENTRY *GenBuffersProc)(GLsizei n
 
typedef void (GL_APIENTRY *BindBufferProc)(GLenum target
 
typedef void (GL_APIENTRY *BufferDataProc)(GLenum target
 
typedef void (GL_APIENTRY *BufferSubDataProc)(GLenum target
 
typedef void (GL_APIENTRY *DeleteBuffersProc)(GLsizei n
 
typedef GLboolean (GL_APIENTRY *IsBufferProc)(GLuint buffer)
 
typedef void (GL_APIENTRY *GetBufferSubDataProc)(GLenum target
 
typedef GLboolean (GL_APIENTRY *UnmapBufferProc)(GLenum target)
 
typedef void (GL_APIENTRY *GetBufferParameterivProc)(GLenum target
 
typedef void (GL_APIENTRY *GetBufferPointervProc)(GLenum target
 
typedef void (GL_APIENTRY *BindBufferRangeProc)(GLenum target
 
typedef void (GL_APIENTRY *BindBufferBaseProc)(GLenum target
 
typedef void (GL_APIENTRY *TexBufferProc)(GLenum target
 
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
 
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
 
void deleteUsingDeleteHandler () const
 

Protected Attributes

GenBuffersProc _glGenBuffers
 
BindBufferProc _glBindBuffer
 
BufferDataProc _glBufferData
 
BufferSubDataProc _glBufferSubData
 
DeleteBuffersProc _glDeleteBuffers
 
IsBufferProc _glIsBuffer
 
GetBufferSubDataProc _glGetBufferSubData
 
MapBufferProc _glMapBuffer
 
UnmapBufferProc _glUnmapBuffer
 
GetBufferParameterivProc _glGetBufferParameteriv
 
GetBufferPointervProc _glGetBufferPointerv
 
BindBufferRangeProc _glBindBufferRange
 
BindBufferBaseProc _glBindBufferBase
 
TexBufferProc _glTexBuffer
 
bool _isPBOSupported
 
bool _isUniformBufferObjectSupported
 
bool _isTBOSupported
 
- 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 ()
 Get the optional global Referenced mutex, this can be shared between all osg::Referenced. More...
 
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
 Set whether reference counting should use a mutex for thread safe reference counting. More...
 
static bool getThreadSafeReferenceCounting ()
 Get whether reference counting is active. More...
 
static void setDeleteHandler (DeleteHandler *handler)
 Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. More...
 
static DeleteHandlergetDeleteHandler ()
 Get a DeleteHandler. More...
 

Detailed Description

Extensions class which encapsulates the querying of extensions and associated function pointers, and provide convenience wrappers to check for the extensions or use the associated functions.

Member Typedef Documentation

typedef GLuint osg::GLBufferObject::Extensions::buffer
protected
typedef GLuint GLuint osg::GLBufferObject::Extensions::buffer
protected
typedef GLuint GLuint osg::GLBufferObject::Extensions::buffer
protected
typedef GLenum GLuint osg::GLBufferObject::Extensions::buffer
protected
typedef GLuint* osg::GLBufferObject::Extensions::buffers
protected
typedef const GLuint* osg::GLBufferObject::Extensions::buffers
protected
typedef GLsizeiptrARB const GLvoid* osg::GLBufferObject::Extensions::data
protected
typedef GLuint osg::GLBufferObject::Extensions::index
protected
typedef GLuint osg::GLBufferObject::Extensions::index
protected
typedef GLvoid* GL_APIENTRY* osg::GLBufferObject::Extensions::MapBufferProc(GLenum target, GLenum access)
protected
typedef GLuint GLuint GLintptr osg::GLBufferObject::Extensions::offset
protected
typedef GLenum GLint* osg::GLBufferObject::Extensions::params
protected
typedef GLenum GLvoid* * osg::GLBufferObject::Extensions::params
protected
typedef GLenum osg::GLBufferObject::Extensions::pname
protected
typedef GLenum osg::GLBufferObject::Extensions::pname
protected
typedef GLsizeiptrARB const GLvoid GLenum osg::GLBufferObject::Extensions::usage
protected

Constructor & Destructor Documentation

osg::GLBufferObject::Extensions::Extensions ( unsigned int  contextID)
osg::GLBufferObject::Extensions::Extensions ( const Extensions rhs)

Member Function Documentation

void osg::GLBufferObject::Extensions::glBindBuffer ( GLenum  target,
GLuint  buffer 
) const
void osg::GLBufferObject::Extensions::glBindBufferBase ( GLenum  target,
GLuint  index,
GLuint  buffer 
)
void osg::GLBufferObject::Extensions::glBindBufferRange ( GLenum  target,
GLuint  index,
GLuint  buffer,
GLintptr  offset,
GLsizeiptr  size 
)
typedef osg::GLBufferObject::Extensions::GLboolean ( GL_APIENTRY IsBufferProc)
protected
typedef osg::GLBufferObject::Extensions::GLboolean ( GL_APIENTRY UnmapBufferProc)
protected
void osg::GLBufferObject::Extensions::glBufferData ( GLenum  target,
GLsizeiptrARB  size,
const GLvoid *  data,
GLenum  usage 
) const
void osg::GLBufferObject::Extensions::glBufferSubData ( GLenum  target,
GLintptrARB  offset,
GLsizeiptrARB  size,
const GLvoid *  data 
) const
void osg::GLBufferObject::Extensions::glDeleteBuffers ( GLsizei  n,
const GLuint *  buffers 
) const
void osg::GLBufferObject::Extensions::glGenBuffers ( GLsizei  n,
GLuint *  buffers 
) const
void osg::GLBufferObject::Extensions::glGetBufferParameteriv ( GLenum  target,
GLenum  pname,
GLint *  params 
) const
void osg::GLBufferObject::Extensions::glGetBufferPointerv ( GLenum  target,
GLenum  pname,
GLvoid **  params 
) const
void osg::GLBufferObject::Extensions::glGetBufferSubData ( GLenum  target,
GLintptrARB  offset,
GLsizeiptrARB  size,
GLvoid *  data 
) const
GLboolean osg::GLBufferObject::Extensions::glIsBuffer ( GLuint  buffer) const
GLvoid* osg::GLBufferObject::Extensions::glMapBuffer ( GLenum  target,
GLenum  access 
) const
void osg::GLBufferObject::Extensions::glTexBuffer ( GLenum  target,
GLenum  internalFormat,
GLuint  buffer 
) const
GLboolean osg::GLBufferObject::Extensions::glUnmapBuffer ( GLenum  target) const
bool osg::GLBufferObject::Extensions::isBufferObjectSupported ( ) const
inline
bool osg::GLBufferObject::Extensions::isPBOSupported ( ) const
inline
bool osg::GLBufferObject::Extensions::isTBOSupported ( ) const
inline
bool osg::GLBufferObject::Extensions::isUniformBufferObjectSupported ( ) const
inline
void osg::GLBufferObject::Extensions::lowestCommonDenominator ( const Extensions rhs)
void osg::GLBufferObject::Extensions::setupGLExtensions ( unsigned int  contextID)
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY GenBuffersProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY BindBufferProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY BufferDataProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY BufferSubDataProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY DeleteBuffersProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY GetBufferSubDataProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY GetBufferParameterivProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY GetBufferPointervProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY BindBufferRangeProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY BindBufferBaseProc)
protected
typedef osg::GLBufferObject::Extensions::void ( GL_APIENTRY TexBufferProc)
protected

Member Data Documentation

BindBufferProc osg::GLBufferObject::Extensions::_glBindBuffer
protected
BindBufferBaseProc osg::GLBufferObject::Extensions::_glBindBufferBase
protected
BindBufferRangeProc osg::GLBufferObject::Extensions::_glBindBufferRange
protected
BufferDataProc osg::GLBufferObject::Extensions::_glBufferData
protected
BufferSubDataProc osg::GLBufferObject::Extensions::_glBufferSubData
protected
DeleteBuffersProc osg::GLBufferObject::Extensions::_glDeleteBuffers
protected
GenBuffersProc osg::GLBufferObject::Extensions::_glGenBuffers
protected
GetBufferParameterivProc osg::GLBufferObject::Extensions::_glGetBufferParameteriv
protected
GetBufferPointervProc osg::GLBufferObject::Extensions::_glGetBufferPointerv
protected
GetBufferSubDataProc osg::GLBufferObject::Extensions::_glGetBufferSubData
protected
IsBufferProc osg::GLBufferObject::Extensions::_glIsBuffer
protected
MapBufferProc osg::GLBufferObject::Extensions::_glMapBuffer
protected
TexBufferProc osg::GLBufferObject::Extensions::_glTexBuffer
protected
UnmapBufferProc osg::GLBufferObject::Extensions::_glUnmapBuffer
protected
bool osg::GLBufferObject::Extensions::_isPBOSupported
protected
bool osg::GLBufferObject::Extensions::_isTBOSupported
protected
bool osg::GLBufferObject::Extensions::_isUniformBufferObjectSupported
protected

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

osg logo
Generated at Thu Aug 15 2013 02:43:35 for the OpenSceneGraph by doxygen 1.8.4.