---
name: "SoGLDriverDatabase"
section: "3"
platform: "linux"
package: "coin"
version: "1:4.0.10-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/SoGLDriverDatabase"
---

# SoGLDriverDatabase(3)

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

## NAME

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

## SYNOPSIS

\#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

### 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*.

### SbBool SoGLDriverDatabase::isBroken (const cc\_glglue \* context, const SbName & feature) \[static\]

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

### SbBool SoGLDriverDatabase::isSlow (const cc\_glglue \* context, const SbName & feature) \[static\]

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

### SbBool SoGLDriverDatabase::isFast (const cc\_glglue \* context, const SbName & feature) \[static\]

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

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

### void SoGLDriverDatabase::loadFromBuffer (const char \* buffer) \[static\]

Load the driver database from *buffer*

### void SoGLDriverDatabase::loadFromFile (const SbName & filename) \[static\]

Load the driver database from the file specified in *filename*

### void SoGLDriverDatabase::addBuffer (const char \* buffer) \[static\]

Add the XML data in *buffer* to the driver database

### void SoGLDriverDatabase::addFile (const SbName & filename) \[static\]

Add the XML data in *filename* to the driver database

### void SoGLDriverDatabase::addFeature (const SbName & feature, const SbName & comment) \[static\]

Add a feature to the driver database

## Author

Generated automatically by Doxygen for Coin from the source code.
