506 lines
22 KiB
XML
506 lines
22 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
|
|
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
|
|
<refentry id="glXGetFBConfigAttrib">
|
|
<refmeta>
|
|
<refmetainfo>
|
|
<copyright>
|
|
<year>1991-2006</year>
|
|
<holder>Silicon Graphics, Inc.</holder>
|
|
</copyright>
|
|
</refmetainfo>
|
|
<refentrytitle>glXGetFBConfigAttrib</refentrytitle>
|
|
<manvolnum>3G</manvolnum>
|
|
</refmeta>
|
|
<refnamediv>
|
|
<refname>glXGetFBConfigAttrib</refname>
|
|
<refpurpose>return information about a GLX frame buffer configuration</refpurpose>
|
|
</refnamediv>
|
|
<refsynopsisdiv><title>C Specification</title>
|
|
<funcsynopsis>
|
|
<funcprototype>
|
|
<funcdef>int <function>glXGetFBConfigAttrib</function></funcdef>
|
|
<paramdef>Display * <parameter>dpy</parameter></paramdef>
|
|
<paramdef>GLXFBConfig <parameter>config</parameter></paramdef>
|
|
<paramdef>int <parameter>attribute</parameter></paramdef>
|
|
<paramdef>int * <parameter>value</parameter></paramdef>
|
|
</funcprototype>
|
|
</funcsynopsis>
|
|
</refsynopsisdiv>
|
|
<!-- eqn: ignoring delim $$ -->
|
|
<refsect1 id="parameters"><title>Parameters</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>dpy</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Specifies the connection to the X server.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>config</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Specifies the GLX frame buffer configuration to be queried.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>attribute</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Specifies the attribute to be returned.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>value</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
Returns the requested value.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
<refsect1 id="description"><title>Description</title>
|
|
<para>
|
|
<function>glXGetFBConfigAttrib</function> sets <parameter>value</parameter> to the <parameter>attribute</parameter> value of GLX drawables
|
|
created with respect to <parameter>config</parameter>.
|
|
<function>glXGetFBConfigAttrib</function> returns an error code if it fails for any reason.
|
|
Otherwise, <constant>Success</constant> is returned.
|
|
</para>
|
|
<para>
|
|
<parameter>attribute</parameter> is one of the following:
|
|
</para>
|
|
<para>
|
|
</para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><constant>GLX_FBCONFIG_ID</constant></term>
|
|
<listitem>
|
|
<para>
|
|
XID of the given GLXFBConfig.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_BUFFER_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits per color buffer.
|
|
If the frame buffer configuration supports RGBA contexts, then
|
|
<constant>GLX_BUFFER_SIZE</constant> is the sum of
|
|
<constant>GLX_RED_SIZE</constant>,
|
|
<constant>GLX_GREEN_SIZE</constant>,
|
|
<constant>GLX_BLUE_SIZE</constant>, and
|
|
<constant>GLX_ALPHA_SIZE</constant>.
|
|
If the frame buffer configuration supports only color index contexts,
|
|
<constant>GLX_BUFFER_SIZE</constant> is the size of the
|
|
color indexes.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_LEVEL</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Frame buffer level of the configuration.
|
|
Level zero is the default frame buffer.
|
|
Positive levels correspond to frame buffers that overlay the default buffer,
|
|
and negative levels correspond to frame buffers that underlie the default
|
|
buffer.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_DOUBLEBUFFER</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
<constant>True</constant> if color buffers exist in front/back pairs that can be swapped,
|
|
<constant>False</constant> otherwise.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_STEREO</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
<constant>True</constant> if color buffers exist in left/right pairs,
|
|
<constant>False</constant> otherwise.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_AUX_BUFFERS</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of auxiliary color buffers that are available.
|
|
Zero indicates that no auxiliary color buffers exist.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_RED_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of red stored in each color buffer.
|
|
Undefined if RGBA contexts are not supported by the frame buffer configuration.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_GREEN_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of green stored in each color buffer.
|
|
Undefined if RGBA contexts are not supported by the frame buffer configuration.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_BLUE_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of blue stored in each color buffer.
|
|
Undefined if RGBA contexts are not supported by the frame buffer configuration.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_ALPHA_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of alpha stored in each color buffer.
|
|
Undefined if RGBA contexts are not supported by the frame buffer configuration.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_DEPTH_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits in the depth buffer.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_STENCIL_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits in the stencil buffer.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_ACCUM_RED_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of red stored in the accumulation buffer.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_ACCUM_GREEN_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of green stored in the accumulation buffer.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_ACCUM_BLUE_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of blue stored in the accumulation buffer.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_ACCUM_ALPHA_SIZE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Number of bits of alpha stored in the accumulation buffer.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_RENDER_TYPE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Mask indicating what type of GLX contexts can be made
|
|
current to the frame buffer configuration. Valid bits are
|
|
<constant>GLX_RGBA_BIT</constant> and
|
|
<constant>GLX_COLOR_INDEX_BIT</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_DRAWABLE_TYPE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Mask indicating what drawable types the frame buffer configuration
|
|
supports. Valid bits are <constant>GLX_WINDOW_BIT</constant>,
|
|
<constant>GLX_PIXMAP_BIT</constant>, and <constant>GLX_PBUFFER_BIT</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_X_RENDERABLE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
<constant>True</constant> if drawables created with the
|
|
frame buffer configuration can be rendered to by X.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_VISUAL_ID</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
XID of the corresponding visual, or zero
|
|
if there is no associated visual (i.e., if
|
|
<constant>GLX_X_RENDERABLE</constant> is <constant>False</constant> or
|
|
<constant>GLX_DRAWABLE_TYPE</constant> does not have the
|
|
<constant>GLX_WINDOW_BIT</constant> bit set).
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_X_VISUAL_TYPE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Visual type of associated visual. The returned value will be one of:
|
|
<constant>GLX_TRUE_COLOR</constant>, <constant>GLX_DIRECT_COLOR</constant>, <constant>GLX_PSEUDO_COLOR</constant>,
|
|
<constant>GLX_STATIC_COLOR</constant>, <constant>GLX_GRAY_SCALE</constant>, <constant>GLX_STATIC_GRAY</constant>,
|
|
or <constant>GLX_NONE</constant>, if there is no associated visual (i.e., if
|
|
<constant>GLX_X_RENDERABLE</constant> is <constant>False</constant> or
|
|
<constant>GLX_DRAWABLE_TYPE</constant> does not have the
|
|
<constant>GLX_WINDOW_BIT</constant> bit set).
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_CONFIG_CAVEAT</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
One of <constant>GLX_NONE</constant>,
|
|
<constant>GLX_SLOW_CONFIG</constant>, or
|
|
<constant>GLX_NON_CONFORMANT_CONFIG</constant>, indicating
|
|
that the frame buffer configuration has no caveats,
|
|
some aspect of the frame buffer configuration runs slower
|
|
than other frame buffer configurations, or some aspect of the
|
|
frame buffer configuration is nonconformant, respectively.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_TRANSPARENT_TYPE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
One of <constant>GLX_NONE</constant>,
|
|
<constant>GLX_TRANSPARENT_RGB</constant>,
|
|
<constant>GLX_TRANSPARENT_INDEX</constant>, indicating that
|
|
the frame buffer configuration is opaque, is transparent for particular
|
|
values of red, green, and blue, or is transparent for
|
|
particular index values, respectively.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_TRANSPARENT_INDEX_VALUE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Integer value between 0 and the maximum
|
|
frame buffer value for indices, indicating the transparent
|
|
index value for the frame buffer configuration.
|
|
Undefined if <constant>GLX_TRANSPARENT_TYPE</constant>
|
|
is not <constant>GLX_TRANSPARENT_INDEX</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_TRANSPARENT_RED_VALUE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Integer value between 0 and the maximum
|
|
frame buffer value for red, indicating the transparent
|
|
red value for the frame buffer configuration.
|
|
Undefined if <constant>GLX_TRANSPARENT_TYPE</constant>
|
|
is not <constant>GLX_TRANSPARENT_RGB</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_TRANSPARENT_GREEN_VALUE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Integer value between 0 and the maximum
|
|
frame buffer value for green, indicating the transparent
|
|
green value for the frame buffer configuration.
|
|
Undefined if <constant>GLX_TRANSPARENT_TYPE</constant>
|
|
is not <constant>GLX_TRANSPARENT_RGB</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_TRANSPARENT_BLUE_VALUE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Integer value between 0 and the maximum
|
|
frame buffer value for blue, indicating the transparent
|
|
blue value for the frame buffer configuration.
|
|
Undefined if <constant>GLX_TRANSPARENT_TYPE</constant>
|
|
is not <constant>GLX_TRANSPARENT_RGB</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_TRANSPARENT_ALPHA_VALUE</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
Integer value between 0 and the maximum
|
|
frame buffer value for alpha, indicating the transparent
|
|
blue value for the frame buffer configuration.
|
|
Undefined if <constant>GLX_TRANSPARENT_TYPE</constant>
|
|
is not <constant>GLX_TRANSPARENT_RGB</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_MAX_PBUFFER_WIDTH</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
The maximum width that can be specified to
|
|
<citerefentry><refentrytitle>glXCreatePbuffer</refentrytitle></citerefentry>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_MAX_PBUFFER_HEIGHT</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
The maximum height that can be specified to
|
|
<citerefentry><refentrytitle>glXCreatePbuffer</refentrytitle></citerefentry>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><constant>GLX_MAX_PBUFFER_PIXELS</constant></term>
|
|
<listitem>
|
|
<para>
|
|
</para>
|
|
<para>
|
|
The maximum number of pixels (width times height) for a
|
|
pixel buffer. Note that this value may be less than
|
|
<constant>GLX_MAX_PBUFFER_WIDTH</constant> times
|
|
<constant>GLX_MAX_PBUFFER_HEIGHT</constant>. Also, this
|
|
value is static and assumes that no other pixel buffers
|
|
or X resources are contending for the frame buffer memory.
|
|
As a result, it may not be possible to allocate a pixel buffer of
|
|
the size given by <constant>GLX_MAX_PBUFFER_PIXELS</constant>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
<para>
|
|
Applications should choose the frame buffer configuration that most closely
|
|
meets their requirements.
|
|
Creating windows, GLX pixmaps, or GLX pixel buffers with unnecessary buffers
|
|
can result in
|
|
reduced rendering performance as well as poor resource allocation.
|
|
</para>
|
|
</refsect1>
|
|
<refsect1 id="notes"><title>Notes</title>
|
|
<para>
|
|
<function>glXGetFBConfigAttrib</function> is available only if the GLX version is 1.3 or greater.
|
|
</para>
|
|
<para>
|
|
If the GLX version is 1.1 or 1.0, the GL version must be 1.0.
|
|
If the GLX version is 1.2, then the GL version must be 1.1.
|
|
If the GLX version is 1.3, then the GL version must be 1.2.
|
|
</para>
|
|
</refsect1>
|
|
<refsect1 id="errors"><title>Errors</title>
|
|
<para>
|
|
<constant>GLX_NO_EXTENSION</constant> is returned if <parameter>dpy</parameter> does not support the GLX
|
|
extension.
|
|
<constant>GLX_BAD_ATTRIBUTE</constant> is returned if <parameter>attribute</parameter> is not a valid GLX attribute.
|
|
</para>
|
|
</refsect1>
|
|
<refsect1 id="seealso"><title>See Also</title>
|
|
<para>
|
|
<citerefentry><refentrytitle>glXGetFBConfigs</refentrytitle></citerefentry>,
|
|
<citerefentry><refentrytitle>glXChooseFBConfig</refentrytitle></citerefentry>,
|
|
<citerefentry><refentrytitle>glXGetVisualFromFBConfig</refentrytitle></citerefentry>,
|
|
<citerefentry><refentrytitle>glXGetConfig</refentrytitle></citerefentry>
|
|
</para>
|
|
</refsect1>
|
|
<refsect1 id="Copyright"><title>Copyright</title>
|
|
<para>
|
|
Copyright <trademark class="copyright"></trademark> 1991-2006
|
|
Silicon Graphics, Inc. This document is licensed under the SGI
|
|
Free Software B License. For details, see
|
|
<ulink url="http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/</ulink>.
|
|
</para>
|
|
</refsect1>
|
|
</refentry>
|