Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

osgGL2::Extensions Class Reference

Inheritance diagram for osgGL2::Extensions:

osg::Referenced List of all members.

Public Member Functions

 Extensions ()
 Extensions (const Extensions &rhs)
void lowestCommonDenominator (const Extensions &rhs)
void setupGLExtensions ()
bool isGlslSupported () const
void setShaderObjectsSupported (bool flag)
bool isShaderObjectsSupported () const
void setVertexShaderSupported (bool flag)
bool isVertexShaderSupported () const
void setFragmentShaderSupported (bool flag)
bool isFragmentShaderSupported () const
void setLanguage100Supported (bool flag)
bool isLanguage100Supported () const
float getLanguageVersion () const
GLhandleARB glCreateShaderObject (GLenum shaderType) const
GLhandleARB glCreateProgramObject () const
void glDeleteObject (GLhandleARB obj) const
void glAttachObject (GLhandleARB containerObj, GLhandleARB obj) const
void glDetachObject (GLhandleARB containerObj, GLhandleARB attachedObj) const
void glShaderSource (GLhandleARB shaderObj, GLsizei count, const GLcharARB **strings, const GLint *length) const
void glCompileShader (GLhandleARB shaderObj) const
void glBindAttribLocation (GLhandleARB programObj, GLuint index, const GLcharARB *name) const
void glLinkProgram (GLhandleARB programObj) const
void glUseProgramObject (GLhandleARB programObj) const
void glGetInfoLog (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog) const
void glGetAttachedObjects (GLhandleARB containerObj, GLsizei maxCount, GLsizei *count, GLhandleARB *obj) const
void glGetShaderSource (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source) const
void glUniform1f (GLint location, GLfloat v0) const
void glUniform2f (GLint location, GLfloat v0, GLfloat v1) const
void glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2) const
void glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3) const
void glUniform1i (GLint location, GLint v0) const
void glUniform2i (GLint location, GLint v0, GLint v1) const
void glUniform3i (GLint location, GLint v0, GLint v1, GLint v2) const
void glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3) const
void glUniform1fv (GLint location, GLsizei count, const GLfloat *value) const
void glUniform2fv (GLint location, GLsizei count, const GLfloat *value) const
void glUniform3fv (GLint location, GLsizei count, const GLfloat *value) const
void glUniform4fv (GLint location, GLsizei count, const GLfloat *value) const
void glUniform1iv (GLint location, GLsizei count, const GLint *value) const
void glUniform2iv (GLint location, GLsizei count, const GLint *value) const
void glUniform3iv (GLint location, GLsizei count, const GLint *value) const
void glUniform4iv (GLint location, GLsizei count, const GLint *value) const
void glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) const
void glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) const
void glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value) const
GLint glGetUniformLocation (GLhandleARB programObject, const GLcharARB *name) const
GLint glGetAttribLocation (GLhandleARB programObj, const GLcharARB *name) const
void glGetActiveUniform (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLint *type, GLcharARB *name) const
void glGetActiveAttribs (GLhandleARB programObj, GLint *count, const GLint **size, const GLenum **type, const GLcharARB *const **attributes) const
void glGetUniformfv (GLhandleARB programObj, GLint location, GLfloat *params) const
void glGetUniformiv (GLhandleARB programObj, GLint location, GLint *params) const
void glGetObjectParameterfv (GLhandleARB obj, GLenum pname, GLfloat *params) const
void glGetObjectParameteriv (GLhandleARB obj, GLenum pname, GLint *params) const
GLhandleARB glGetHandle (GLenum pname) const

Static Public Member Functions

static ExtensionsGet (unsigned int contextID, bool createIfNotInitalized)
static void Set (unsigned int contextID, Extensions *extensions)

Protected Member Functions

 ~Extensions ()

Protected Attributes

bool _isShaderObjectsSupported
bool _isVertexShaderSupported
bool _isFragmentShaderSupported
bool _isLanguage100Supported
float _languageVersion
void * _glCreateShaderObject
void * _glCreateProgramObject
void * _glDeleteObject
void * _glAttachObject
void * _glDetachObject
void * _glShaderSource
void * _glCompileShader
void * _glBindAttribLocation
void * _glLinkProgram
void * _glUseProgramObject
void * _glGetInfoLog
void * _glGetAttachedObjects
void * _glGetShaderSource
void * _glUniform1f
void * _glUniform2f
void * _glUniform3f
void * _glUniform4f
void * _glUniform1i
void * _glUniform2i
void * _glUniform3i
void * _glUniform4i
void * _glUniform1fv
void * _glUniform2fv
void * _glUniform3fv
void * _glUniform4fv
void * _glUniform1iv
void * _glUniform2iv
void * _glUniform3iv
void * _glUniform4iv
void * _glUniformMatrix2fv
void * _glUniformMatrix3fv
void * _glUniformMatrix4fv
void * _glGetUniformLocation
void * _glGetAttribLocation
void * _glGetActiveUniform
void * _glGetActiveAttribs
void * _glGetUniformfv
void * _glGetUniformiv
void * _glGetObjectParameterfv
void * _glGetObjectParameteriv
void * _glGetHandle

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.


Constructor & Destructor Documentation

osgGL2::Extensions::Extensions  ) 
 

osgGL2::Extensions::Extensions const Extensions rhs  ) 
 

osgGL2::Extensions::~Extensions  )  [inline, protected]
 


Member Function Documentation

static Extensions* osgGL2::Extensions::Get unsigned int  contextID,
bool  createIfNotInitalized
[static]
 

Function to call to get the extension of a specified context. If the Exentsion object for that context has not yet been created then and the 'createIfNotInitalized' flag been set to false then returns NULL. If 'createIfNotInitalized' is true then the Extensions object is automatically created. However, in this case the extension object only be created with the graphics context associated with ContextID..

float osgGL2::Extensions::getLanguageVersion  )  const [inline]
 

void osgGL2::Extensions::glAttachObject GLhandleARB  containerObj,
GLhandleARB  obj
const
 

void osgGL2::Extensions::glBindAttribLocation GLhandleARB  programObj,
GLuint  index,
const GLcharARB name
const
 

void osgGL2::Extensions::glCompileShader GLhandleARB  shaderObj  )  const
 

GLhandleARB osgGL2::Extensions::glCreateProgramObject  )  const
 

GLhandleARB osgGL2::Extensions::glCreateShaderObject GLenum  shaderType  )  const
 

void osgGL2::Extensions::glDeleteObject GLhandleARB  obj  )  const
 

void osgGL2::Extensions::glDetachObject GLhandleARB  containerObj,
GLhandleARB  attachedObj
const
 

void osgGL2::Extensions::glGetActiveAttribs GLhandleARB  programObj,
GLint *  count,
const GLint **  size,
const GLenum **  type,
const GLcharARB *const **  attributes
const
 

void osgGL2::Extensions::glGetActiveUniform GLhandleARB  programObj,
GLuint  index,
GLsizei  maxLength,
GLsizei *  length,
GLint *  size,
GLint *  type,
GLcharARB name
const
 

void osgGL2::Extensions::glGetAttachedObjects GLhandleARB  containerObj,
GLsizei  maxCount,
GLsizei *  count,
GLhandleARB obj
const
 

GLint osgGL2::Extensions::glGetAttribLocation GLhandleARB  programObj,
const GLcharARB name
const
 

GLhandleARB osgGL2::Extensions::glGetHandle GLenum  pname  )  const
 

void osgGL2::Extensions::glGetInfoLog GLhandleARB  obj,
GLsizei  maxLength,
GLsizei *  length,
GLcharARB infoLog
const
 

void osgGL2::Extensions::glGetObjectParameterfv GLhandleARB  obj,
GLenum  pname,
GLfloat *  params
const
 

void osgGL2::Extensions::glGetObjectParameteriv GLhandleARB  obj,
GLenum  pname,
GLint *  params
const
 

void osgGL2::Extensions::glGetShaderSource GLhandleARB  obj,
GLsizei  maxLength,
GLsizei *  length,
GLcharARB source
const
 

void osgGL2::Extensions::glGetUniformfv GLhandleARB  programObj,
GLint  location,
GLfloat *  params
const
 

void osgGL2::Extensions::glGetUniformiv GLhandleARB  programObj,
GLint  location,
GLint *  params
const
 

GLint osgGL2::Extensions::glGetUniformLocation GLhandleARB  programObject,
const GLcharARB name
const
 

void osgGL2::Extensions::glLinkProgram GLhandleARB  programObj  )  const
 

void osgGL2::Extensions::glShaderSource GLhandleARB  shaderObj,
GLsizei  count,
const GLcharARB **  strings,
const GLint *  length
const
 

void osgGL2::Extensions::glUniform1f GLint  location,
GLfloat  v0
const
 

void osgGL2::Extensions::glUniform1fv GLint  location,
GLsizei  count,
const GLfloat *  value
const
 

void osgGL2::Extensions::glUniform1i GLint  location,
GLint  v0
const
 

void osgGL2::Extensions::glUniform1iv GLint  location,
GLsizei  count,
const GLint *  value
const
 

void osgGL2::Extensions::glUniform2f GLint  location,
GLfloat  v0,
GLfloat  v1
const
 

void osgGL2::Extensions::glUniform2fv GLint  location,
GLsizei  count,
const GLfloat *  value
const
 

void osgGL2::Extensions::glUniform2i GLint  location,
GLint  v0,
GLint  v1
const
 

void osgGL2::Extensions::glUniform2iv GLint  location,
GLsizei  count,
const GLint *  value
const
 

void osgGL2::Extensions::glUniform3f GLint  location,
GLfloat  v0,
GLfloat  v1,
GLfloat  v2
const
 

void osgGL2::Extensions::glUniform3fv GLint  location,
GLsizei  count,
const GLfloat *  value
const
 

void osgGL2::Extensions::glUniform3i GLint  location,
GLint  v0,
GLint  v1,
GLint  v2
const
 

void osgGL2::Extensions::glUniform3iv GLint  location,
GLsizei  count,
const GLint *  value
const
 

void osgGL2::Extensions::glUniform4f GLint  location,
GLfloat  v0,
GLfloat  v1,
GLfloat  v2,
GLfloat  v3
const
 

void osgGL2::Extensions::glUniform4fv GLint  location,
GLsizei  count,
const GLfloat *  value
const
 

void osgGL2::Extensions::glUniform4i GLint  location,
GLint  v0,
GLint  v1,
GLint  v2,
GLint  v3
const
 

void osgGL2::Extensions::glUniform4iv GLint  location,
GLsizei  count,
const GLint *  value
const
 

void osgGL2::Extensions::glUniformMatrix2fv GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat *  value
const
 

void osgGL2::Extensions::glUniformMatrix3fv GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat *  value
const
 

void osgGL2::Extensions::glUniformMatrix4fv GLint  location,
GLsizei  count,
GLboolean  transpose,
const GLfloat *  value
const
 

void osgGL2::Extensions::glUseProgramObject GLhandleARB  programObj  )  const
 

bool osgGL2::Extensions::isFragmentShaderSupported  )  const [inline]
 

bool osgGL2::Extensions::isGlslSupported  )  const [inline]
 

are all the extensions required for GLSL supported?

bool osgGL2::Extensions::isLanguage100Supported  )  const [inline]
 

bool osgGL2::Extensions::isShaderObjectsSupported  )  const [inline]
 

bool osgGL2::Extensions::isVertexShaderSupported  )  const [inline]
 

void osgGL2::Extensions::lowestCommonDenominator const Extensions rhs  ) 
 

static void osgGL2::Extensions::Set unsigned int  contextID,
Extensions extensions
[static]
 

allows users to override the extensions across graphics contexts. typically used when you have different extensions supported across graphics pipes but need to ensure that they all use the same low common denominator extensions.

void osgGL2::Extensions::setFragmentShaderSupported bool  flag  )  [inline]
 

void osgGL2::Extensions::setLanguage100Supported bool  flag  )  [inline]
 

void osgGL2::Extensions::setShaderObjectsSupported bool  flag  )  [inline]
 

void osgGL2::Extensions::setupGLExtensions  ) 
 

void osgGL2::Extensions::setVertexShaderSupported bool  flag  )  [inline]
 


Member Data Documentation

void* osgGL2::Extensions::_glAttachObject [protected]
 

void* osgGL2::Extensions::_glBindAttribLocation [protected]
 

void* osgGL2::Extensions::_glCompileShader [protected]
 

void* osgGL2::Extensions::_glCreateProgramObject [protected]
 

void* osgGL2::Extensions::_glCreateShaderObject [protected]
 

void* osgGL2::Extensions::_glDeleteObject [protected]
 

void* osgGL2::Extensions::_glDetachObject [protected]
 

void* osgGL2::Extensions::_glGetActiveAttribs [protected]
 

void* osgGL2::Extensions::_glGetActiveUniform [protected]
 

void* osgGL2::Extensions::_glGetAttachedObjects [protected]
 

void* osgGL2::Extensions::_glGetAttribLocation [protected]
 

void* osgGL2::Extensions::_glGetHandle [protected]
 

void* osgGL2::Extensions::_glGetInfoLog [protected]
 

void* osgGL2::Extensions::_glGetObjectParameterfv [protected]
 

void* osgGL2::Extensions::_glGetObjectParameteriv [protected]
 

void* osgGL2::Extensions::_glGetShaderSource [protected]
 

void* osgGL2::Extensions::_glGetUniformfv [protected]
 

void* osgGL2::Extensions::_glGetUniformiv [protected]
 

void* osgGL2::Extensions::_glGetUniformLocation [protected]
 

void* osgGL2::Extensions::_glLinkProgram [protected]
 

void* osgGL2::Extensions::_glShaderSource [protected]
 

void* osgGL2::Extensions::_glUniform1f [protected]
 

void* osgGL2::Extensions::_glUniform1fv [protected]
 

void* osgGL2::Extensions::_glUniform1i [protected]
 

void* osgGL2::Extensions::_glUniform1iv [protected]
 

void* osgGL2::Extensions::_glUniform2f [protected]
 

void* osgGL2::Extensions::_glUniform2fv [protected]
 

void* osgGL2::Extensions::_glUniform2i [protected]
 

void* osgGL2::Extensions::_glUniform2iv [protected]
 

void* osgGL2::Extensions::_glUniform3f [protected]
 

void* osgGL2::Extensions::_glUniform3fv [protected]
 

void* osgGL2::Extensions::_glUniform3i [protected]
 

void* osgGL2::Extensions::_glUniform3iv [protected]
 

void* osgGL2::Extensions::_glUniform4f [protected]
 

void* osgGL2::Extensions::_glUniform4fv [protected]
 

void* osgGL2::Extensions::_glUniform4i [protected]
 

void* osgGL2::Extensions::_glUniform4iv [protected]
 

void* osgGL2::Extensions::_glUniformMatrix2fv [protected]
 

void* osgGL2::Extensions::_glUniformMatrix3fv [protected]
 

void* osgGL2::Extensions::_glUniformMatrix4fv [protected]
 

void* osgGL2::Extensions::_glUseProgramObject [protected]
 

bool osgGL2::Extensions::_isFragmentShaderSupported [protected]
 

bool osgGL2::Extensions::_isLanguage100Supported [protected]
 

bool osgGL2::Extensions::_isShaderObjectsSupported [protected]
 

bool osgGL2::Extensions::_isVertexShaderSupported [protected]
 

float osgGL2::Extensions::_languageVersion [protected]
 


The documentation for this class was generated from the following file:
Generated on Fri May 13 15:15:51 2005 for openscenegraph by  doxygen 1.4.2