glXGetFBConfigAttrib

Aus DGL Wiki
Wechseln zu: Navigation, Suche

glXGetFBConfigAttrib

Name

glXGetFBConfigAttrib - Gibt Informationen über eine GLX-Framebufferkonfiguration zurück.


Delphi-Spezifikation

function glXGetFBConfigAttrib(dpy: PDisplay; config: GLXFBConfig; attribute: Integer; value: PGLint): Integer;


Parameter

dpy Gibt die Verbindung zum X-Server an
config Gibt die abzufragende GLX-Framebufferkonfiguration an
attribute Gibt das abzufragende Attribut an
value Gibt den abgefragten Wert zurück


Beschreibung

Die Funktion glXGetFBConfigAttrib setzt value auf den in attribute spezifizierten Attributswert der GLX-Zeichenflächen, welche mit config erstellt wurden. glXGetFBConfigAttrib gibt einen Fehlercode zurück, falls die Funktion aus irgendeinem Grund fehlschägt. Andernfalls wird Success zurückgegeben.

Anwendungen sollten die Framebufferkonfiguration wählen, die am nähesten an ihre Anforderungen herankommt. Das Erstellen von Fenstern, GLX_Pixmaps oder GLX-Pixelpuffern mit unnötigen Puffern kann eine verminderte Renderperformance als auch schlechte Ressourcenallokation zur Folge haben.

Der Parameter attribute kann folgende Werte haben:

GLX_ACCUM_ALPHA_SIZE

Gibt die Anzahl der im Akkumulationspuffer gespeicherten Alphabits zurück.

GLX_ACCUM_BLUE_SIZE

Gibt die Anzahl der im Akkumulationspuffer gespeicherten Blaubits zurück.

GLX_ACCUM_GREEN_SIZE

Gibt die Anzahl der im Akkumulationspuffer gespeicherten Grünbits zurück.

GLX_ACCUM_RED_SIZE

Gibt die Anzahl der im Akkumulationspuffer gespeicherten Rotbits zurück.

GLX_ALPHA_SIZE

Gibt die Anzahl der Alphabits an, die in jedem Farbpuffer bespeichert werden. Der Wert ist nicht definiert, falls RGBA-Kontexte von der Framebufferkonfiguration nicht unterstützt werden.

GLX_AUX_BUFFERS

Gibt die Anzahl der verfügbaren Hilfsfarbpuffer zurück. Ein Wert von null gibt an, dass es keine Hilfspuffer gibt.

GLX_BLUE_SIZE

Gibt die Anzahl der Blaubits an, die in jedem Farbpuffer bespeichert werden. Der Wert ist nicht definiert, falls RGBA-Kontexte von der Framebufferkonfiguration nicht unterstützt werden.

GLX_BUFFER_SIZE

Gibt die Anzahl der Bits pro Farbpuffer zurück. Falls die Framebufferkonfiguration RGBA-Renderkontexte unterstützt, so ist GLX_BUFFER_SIZE die Summe aus GLX_RED_SIZE, GLX_GREEN_SIZE, GLX_BLUE_SIZE und GLX_ALPHA_SIZE. Falls die Framebufferkonfiguration nur Farbindex-Kontexte unterstützt, so liefert GLX_BUFFER_SIZE die Größe der Farbindices zurück.

GLX_CONFIG_CAVEAT

Gibt einen der Werte GLX_NONE, GLX_SLOW_CONFIG oder GLX_NON_CONFORMANT_CONFIG zurück, welcher angibt, dass die Framebufferkonfiguration entweder keine Nachteile (caveats) hat, oder dass ein Aspekt der Framebufferkonfiguration langsamer läuft als andere Framebufferkonfigurationen, oder das die Framebufferkonfiguration nicht konform geht, in dieser Reihenfolge.

GLX_DEPTH_SIZE

Gibt die Anzahl der Bits im Tiefenpuffer zurück.

GLX_DOUBLEBUFFER

Gibt True zurück, falls die Farbpuffer in Front-/Backbufferpaaren existieren und vertauscht werden können. Andernfalls wird False zurückgegeben.

GLX_DRAWABLE_TYPE

Gibt eine Bitmaske zurück, die angibt, welche Typen von Zeichenflächen die Framebufferkonfiguration unterstützt. Gültige Bits sind GLX_WINDOW_BIT, GLX_PIXMAP_BIT und GLX_PBUFFER_BIT.

GLX_FBCONFIG_ID

XID der in config gegebenen GLXFBConfig wird zurückgegeben.

GLX_GREEN_SIZE

Gibt die Anzahl der Grünbits an, die in jedem Farbpuffer bespeichert werden. Der Wert ist nicht definiert, falls RGBA-Kontexte von der Framebufferkonfiguration nicht unterstützt werden.

GLX_LEVEL

Gibt das Framebufferlevel der Konfiguration zurück. Level null ist der Standardframebuffer. Positive Level entsprechen den Framebuffern, die über dem Vorgabeframebuffer liegen, und negative Level entsprechen den Framebuffern, die unter dem Standardframebuffer liegen.

GLX_MAX_PBUFFER_HEIGHT

Gibt die maximale Höhe zurück, welche bei glXCreatePbuffer angegeben werden kann.

GLX_MAX_PBUFFER_PIXELS

Gibt die maximale Pixelanzahl (Breite mal Höhe) für einen Pixelpuffer zurück. Zu beachten ist, dass dieser Wert geringer sein kann als GLX_MAX_PBUFFER_WIDTH mal GLX_MAX_PBUFFER_HEIGHT. Außerdem ist dieser Wert statisch und geht davon aus, dass keine anderen Pixelpuffer oder X-Ressourcen den Framebufferspeicher beanspruchen. Als Ergebnis davon kann es vorkommen, dass es nicht möglich ist, einen Pixelpuffer mit der von GLX_MAX_PBUFFER_PIXELS angegebenen Größe anzulegen.

GLX_MAX_PBUFFER_WIDTH

Gibt die maximale Breite zurück, welche bei glXCreatePbuffer angegeben werden kann.

GLX_RED_SIZE

Gibt die Anzahl der Rotbits an, die in jedem Farbpuffer bespeichert werden. Der Wert ist nicht definiert, falls RGBA-Kontexte von der Framebufferkonfiguration nicht unterstützt werden.

GLX_RENDER_TYPE

Gibt eine Bitmaske zurück, die angibt, welche Typen von GLX-Renderkontexten mit der Framebufferkonfiguration als aktueller Renderkontext gesetzt werden können. Gültige Bits sind GLX_RGBA_BIT und GLX_COLOR_INDEX_BIT.

GLX_STENCIL_SIZE

Gibt die Anzahl der Bits im Schablonenpuffer zurück.

GLX_STEREO

Gibt True zurück, falls die Farbpuffer in Links-/Rechts-Paaren existieren. Andernfalls wird False zurückgegeben.

GLX_TRANSPARENT_ALPHA_VALUE

Gibt einen Ganzzahlwert zwischen 0 und dem maximalen Framebufferwert für Alpha zurück, der den transparenten Alphawert der Framebufferkonfiguration angibt. Der Wert ist nicht definiert, falls GLX_TRANSPARENT_TYPE nicht den Wert GLX_TRANSPARENT_RGB hat.

GLX_TRANSPARENT_BLUE_VALUE

Gibt einen Ganzzahlwert zwischen 0 und dem maximalen Framebufferwert für Blau zurück, der den transparenten Blauwert der Framebufferkonfiguration angibt. Der Wert ist nicht definiert, falls GLX_TRANSPARENT_TYPE nicht den Wert GLX_TRANSPARENT_RGB hat.

GLX_TRANSPARENT_GREEN_VALUE

Gibt einen Ganzzahlwert zwischen 0 und dem maximalen Framebufferwert für Grün zurück, der den transparenten Grünwert der Framebufferkonfiguration angibt. Der Wert ist nicht definiert, falls GLX_TRANSPARENT_TYPE nicht den Wert GLX_TRANSPARENT_RGB hat.

GLX_TRANSPARENT_INDEX_VALUE

Gibt einen Ganzzahlwert zwischen 0 und dem maximalen Framebufferwert für Indices zurück, der den transparenten Indexwert der Framebufferkonfiguration angibt. Der Wert ist nicht definiert, falls GLX_TRANSPARENT_TYPE nicht den Wert GLX_TRANSPARENT_INDEX hat.

GLX_TRANSPARENT_RED_VALUE

Gibt einen Ganzzahlwert zwischen 0 und dem maximalen Framebufferwert für Rot zurück, der den transparenten Rotwert der Framebufferkonfiguration angibt. Der Wert ist nicht definiert, falls GLX_TRANSPARENT_TYPE nicht den Wert GLX_TRANSPARENT_RGB hat.

GLX_TRANSPARENT_TYPE

Gibt den Transparenztyp der Framebufferkonfiguration zurück, und kann einer der folgenden Werte sein: GLX_NONE, GLX_TRANSPARENT_RGB, GLX_TRANSPARENT_INDEX, welche angeben, dass die Framebufferkonfiguration nicht transparent, transparent für bestimmte Rot-, Grün- und Blauwerte, oder transparent für bestimmte Indexwerte ist, in dieser Reihenfolge.

GLX_VISUAL_ID

Gibt die XID des zugehörigen Visuals zurück, oder null, falls es kein zugehöriges Visual gibt (d.h. wenn GLX_X_RENDERABLE den Wert False hat oder wenn in GLX_DRAWABLE_TYPE das Bit GLX_WINDOW_BIT nicht gesetzt ist).

GLX_X_RENDERABLE

Gibt True zurück, falls vom X-Server auf die mit der Framebufferkonfiguration erzeugten Zeichenflächen gerendert werden kann.

GLX_X_VISUAL_TYPE

Gibt den Typ des zugehörigen Visuals zurück. Der Rückgabewert kann ist dabei einer der folgenden: GLX_TRUE_COLOR, GLX_DIRECT_COLOR, GLX_PSEUDO_COLOR, GLX_STATIC_COLOR, GLX_GRAY_SCALE, GLX_STATIC_GRAY oder GLX_NONE, falls es kein zugehöriges Visual gibt (d.h. wenn GLX_X_RENDERABLE den Wert False hat oder wenn in GLX_DRAWABLE_TYPE das Bit GLX_WINDOW_BIT nicht gesetzt ist).


Hinweise

glXGetFBConfigAttrib ist nur verfügbar, wenn die GLX-Version 1.3 oder höher ist.

Falls die GLX-Version 1.1 oder 1.0 ist, so muss die GL-Version 1.0 sein. Falls die GLX-Version 1.2 ist, so muss die GL-Version 1.1 sein. Falls die GLX-Version 1.3 ist, so muss die GL-Version 1.2 sein.


Fehlermeldungen

GLX_NO_EXTENSION wird zurückgegeben, wenn dpy die GLX-Erweiterung nicht unterstützt.

GLX_BAD_ATTRIBUTE wird zurückgegeben, wenn attribute kein gültiges GLX-Attribut ist.


Siehe auch

glXChooseFBConfig, glXGetConfig, glXGetFBConfigs, glXGetVisualFromFBConfig