Coin Logo Coin3D is Free Software,
published under the BSD 3-clause license.
https://bitbucket.org/Coin3D/
http://www.kongsberg.com/kogt/
SoGLDriverDatabase Class Reference

The SoGLDriverDatabase class is used for looking up broken/slow features in OpenGL drivers. More...

#include <Inventor/misc/SoGLDriverDatabase.h>

Static Public Member Functions

static SbBool isSupported (const cc_glglue *context, const SbName &feature)
 
static SbBool isBroken (const cc_glglue *context, const SbName &feature)
 
static SbBool isSlow (const cc_glglue *context, const SbName &feature)
 
static SbBool isFast (const cc_glglue *context, const SbName &feature)
 
static SbName getComment (const cc_glglue *context, const SbName &feature)
 
static void loadFromBuffer (const char *buffer)
 
static void loadFromFile (const SbName &filename)
 
static void addBuffer (const char *buffer)
 
static void addFile (const SbName &filename)
 
static void addFeature (const SbName &feature, const SbName &comment)
 
static void init (void)
 

Detailed Description

The SoGLDriverDatabase class is used for looking up broken/slow features in OpenGL drivers.

Coin will maintain a database of drivers where we have found problems with certain features, even if the OpenGL driver claims to support it. This is an effort to avoid application or operating system crashes when Coin attempts to use a specific feature. Using this database we can either disable this feature, or find another way to handle it for broken drivers.

Member Function Documentation

◆ isSupported()

SbBool SoGLDriverDatabase::isSupported ( const cc_glglue *  context,
const SbName feature 
)
static

Convenience function which checks whether feature is suppported for context. If feature is an OpenGL extension, it checks if it's actually supported by the driver, and then calls SoGLDriverDatabase::isBroken() to check if the feature is broken for context.

◆ isBroken()

SbBool SoGLDriverDatabase::isBroken ( const cc_glglue *  context,
const SbName feature 
)
static

Checks the driver database to see if feature is tagged as broken.

◆ isSlow()

SbBool SoGLDriverDatabase::isSlow ( const cc_glglue *  context,
const SbName feature 
)
static

Checks the driver database to see if feature is tagged as being slow.

◆ isFast()

SbBool SoGLDriverDatabase::isFast ( const cc_glglue *  context,
const SbName feature 
)
static

Checks the driver database to see if feature is tagged as fast.

◆ getComment()

SbName SoGLDriverDatabase::getComment ( const cc_glglue *  context,
const SbName feature 
)
static

Get the comment for feature in context, returns "undefined" if the feature has no entry. Provides extensibility to the database.

◆ loadFromBuffer()

void SoGLDriverDatabase::loadFromBuffer ( const char *  buffer)
static

Load the driver database from buffer

◆ loadFromFile()

void SoGLDriverDatabase::loadFromFile ( const SbName filename)
static

Load the driver database from the file specified in filename

◆ addBuffer()

void SoGLDriverDatabase::addBuffer ( const char *  buffer)
static

Add the XML data in buffer to the driver database

◆ addFile()

void SoGLDriverDatabase::addFile ( const SbName filename)
static

Add the XML data in filename to the driver database

◆ addFeature()

void SoGLDriverDatabase::addFeature ( const SbName feature,
const SbName comment 
)
static

Add a feature to the driver database


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