Coin  4.0.3
Coin3D core library
Loading...
Searching...
No Matches
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 void addBuffer (const char *buffer)
 
static void addFeature (const SbName &feature, const SbName &comment)
 
static void addFile (const SbName &filename)
 
static SbName getComment (const cc_glglue *context, const SbName &feature)
 
static void init (void)
 
static SbBool isBroken (const cc_glglue *context, const SbName &feature)
 
static SbBool isFast (const cc_glglue *context, const SbName &feature)
 
static SbBool isSlow (const cc_glglue *context, const SbName &feature)
 
static SbBool isSupported (const cc_glglue *context, const SbName &feature)
 
static void loadFromBuffer (const char *buffer)
 
static void loadFromFile (const SbName &filename)
 

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

◆ addBuffer()

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

Add the XML data in buffer to the driver database

◆ addFeature()

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

Add a feature to the driver database

◆ addFile()

void SoGLDriverDatabase::addFile ( const SbName & filename)
static

Add the XML data in filename to the driver database

◆ 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.

◆ isBroken()

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

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

◆ isFast()

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

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

◆ 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.

◆ isSupported()

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

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

◆ 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


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