MeVisLabToolboxReference
OpenGL Class Reference

MeVis OpenGL Information Interface (Singleton) More...

#include <mlOpenGL.h>

List of all members.

Static Public Member Functions

static bool init ()
 initialize the OpenGL information and GLEW, returns true if everything is ok
static const std::string & getVendorString ()
 get the open gl vendor string
static const std::string & getRendererString ()
 get the open gl driver string
static const std::string & getVersionString ()
 get the open gl version string
static bool supportsRenderTo3DTexture ()
 Returns if rendering to 3D textures is supported by FrameBufferObjects.
static bool supportsPBO ()
 Returns if PixelBufferObjects are supported.
static bool supportsFastTexture3D ()
 Returns true if this OpenGL extension is supported as hardware (knows about some special notebook software emulations, where it returns false)
static GLint getMaxTextureSize ()
 returns max 2d texture size (using GL_MAX_TEXTURE_SIZE)
static GLint getMaxTextureSize3D ()
 returns max 3d texture size (using GL_MAX_3D_TEXTURE_SIZE)
static GLint getMaxTextureImageUnits ()
 returns max available texture units (using GL_MAX_TEXTURE_IMAGE_UNITS)
static GLint getMaxVertexAttributes ()
 returns max available vertex attributes (using GL_MAX_VERTEX_ATTRIBS)
static GLint getMaxVaryingFloats ()
 returns max available varying floats ( using GL_MAX_VARYING_FLOATS )
static GLint getMaxPixelMapTableSize ()
 returns max size of pixel map table
static GLint getMaxTextureColorTableSize ()
 returns max size of texture color table (defaults to 256 at the moment)
static GLint getMaxPalettedTextureTableSize ()
 returns max size of paletted texture (defaults to 256 at the moment)
static bool isSupported (const char *extension)
 check if the given extension is supported
static void clearTextureUnitsAndShaders ()
 this method binds the 0 target to all texture units and ARB/GLSL shaders and it should be called in code that causes ATI OGL driver crashes when resources are freed in a shared context and have been previously bound in the original context (even if the state was popped afterwards) NOTE: needs a valid OpenGL context

Detailed Description

MeVis OpenGL Information Interface (Singleton)

At MeVis we use the GLEW library, which is initialized in the init() call of this class. In addition to the API provided by GLEW, this class has some additional methods that give information on the underlying OpenGL system. All methods of this class can be called WITHOUT having a valid OpenGL context, given that the init() method was called once at program startup. Projects that use the OpenGL API or extensions should typically specify

CONFIG += MLOpenGL

in their profile and include

include <mlOpenGL.h>

This will also include the appropriate GLEW OpenGL header files.

See also:
GLEW documentation at http://glew.sourceforge.net/

Definition at line 55 of file mlOpenGL.h.


Member Function Documentation

static void OpenGL::clearTextureUnitsAndShaders ( ) [static]

this method binds the 0 target to all texture units and ARB/GLSL shaders and it should be called in code that causes ATI OGL driver crashes when resources are freed in a shared context and have been previously bound in the original context (even if the state was popped afterwards) NOTE: needs a valid OpenGL context

static GLint OpenGL::getMaxPalettedTextureTableSize ( ) [static]

returns max size of paletted texture (defaults to 256 at the moment)

static GLint OpenGL::getMaxPixelMapTableSize ( ) [static]

returns max size of pixel map table

static GLint OpenGL::getMaxTextureColorTableSize ( ) [static]

returns max size of texture color table (defaults to 256 at the moment)

static GLint OpenGL::getMaxTextureImageUnits ( ) [static]

returns max available texture units (using GL_MAX_TEXTURE_IMAGE_UNITS)

static GLint OpenGL::getMaxTextureSize ( ) [static]

returns max 2d texture size (using GL_MAX_TEXTURE_SIZE)

static GLint OpenGL::getMaxTextureSize3D ( ) [static]

returns max 3d texture size (using GL_MAX_3D_TEXTURE_SIZE)

static GLint OpenGL::getMaxVaryingFloats ( ) [static]

returns max available varying floats ( using GL_MAX_VARYING_FLOATS )

static GLint OpenGL::getMaxVertexAttributes ( ) [static]

returns max available vertex attributes (using GL_MAX_VERTEX_ATTRIBS)

static const std::string& OpenGL::getRendererString ( ) [static]

get the open gl driver string

static const std::string& OpenGL::getVendorString ( ) [static]

get the open gl vendor string

static const std::string& OpenGL::getVersionString ( ) [static]

get the open gl version string

static bool OpenGL::init ( ) [static]

initialize the OpenGL information and GLEW, returns true if everything is ok

static bool OpenGL::isSupported ( const char *  extension) [static]

check if the given extension is supported

static bool OpenGL::supportsFastTexture3D ( ) [static]

Returns true if this OpenGL extension is supported as hardware (knows about some special notebook software emulations, where it returns false)

static bool OpenGL::supportsPBO ( ) [static]

Returns if PixelBufferObjects are supported.

static bool OpenGL::supportsRenderTo3DTexture ( ) [static]

Returns if rendering to 3D textures is supported by FrameBufferObjects.


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