d8d459eff46a38300de6c2e1580df01195887fde
[clinton/guile-figl.git] / upstream-man-pages / man2 / xhtml / glXGetFBConfigAttrib.xml
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd">
2 <!-- saved from url=(0013)about:internet -->
3 <?xml-stylesheet type="text/xsl" href="mathml.xsl"?><html xmlns="http://www.w3.org/1999/xhtml" xmlns:pref="http://www.w3.org/2002/Math/preference" pref:renderer="mathplayer-dl"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>glXGetFBConfigAttrib</title><meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /></head><body><div class="refentry" lang="en" xml:lang="en"><a id="glXGetFBConfigAttrib"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>glXGetFBConfigAttrib — return information about a GLX frame buffer configuration</p></div><div class="refsynopsisdiv"><h2>C Specification</h2><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"><tr><td><code class="funcdef">int <b class="fsfunc">glXGetFBConfigAttrib</b>(</code></td><td>Display *  </td><td><var class="pdparam">dpy</var>, </td></tr><tr><td> </td><td>GLXFBConfig  </td><td><var class="pdparam">config</var>, </td></tr><tr><td> </td><td>int  </td><td><var class="pdparam">attribute</var>, </td></tr><tr><td> </td><td>int *  </td><td><var class="pdparam">value</var><code>)</code>;</td></tr></table></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="parameters"></a><h2>Parameters</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>dpy</code></em></span></dt><dd><p>
4 Specifies the connection to the X server.
5 </p></dd><dt><span class="term"><em class="parameter"><code>config</code></em></span></dt><dd><p>
6 Specifies the GLX frame buffer configuration to be queried.
7 </p></dd><dt><span class="term"><em class="parameter"><code>attribute</code></em></span></dt><dd><p>
8 Specifies the attribute to be returned.
9 </p></dd><dt><span class="term"><em class="parameter"><code>value</code></em></span></dt><dd><p>
10 Returns the requested value.
11 </p></dd></dl></div></div><div class="refsect1" lang="en" xml:lang="en"><a id="description"></a><h2>Description</h2><p>
12 <code class="function">glXGetFBConfigAttrib</code> sets <em class="parameter"><code>value</code></em> to the <em class="parameter"><code>attribute</code></em> value of GLX drawables
13 created with respect to <em class="parameter"><code>config</code></em>.
14 <code class="function">glXGetFBConfigAttrib</code> returns an error code if it fails for any reason.
15 Otherwise, <code class="constant">Success</code> is returned.
16 </p><p>
17 <em class="parameter"><code>attribute</code></em> is one of the following:
18 </p><p>
19 </p><div class="variablelist"><dl><dt><span class="term"><code class="constant">GLX_FBCONFIG_ID</code></span></dt><dd><p>
20 XID of the given GLXFBConfig.
21 </p></dd><dt><span class="term"><code class="constant">GLX_BUFFER_SIZE</code></span></dt><dd><p>
22 </p><p>
23 Number of bits per color buffer.
24 If the frame buffer configuration supports RGBA contexts, then
25 <code class="constant">GLX_BUFFER_SIZE</code> is the sum of
26 <code class="constant">GLX_RED_SIZE</code>,
27 <code class="constant">GLX_GREEN_SIZE</code>,
28 <code class="constant">GLX_BLUE_SIZE</code>, and
29 <code class="constant">GLX_ALPHA_SIZE</code>.
30 If the frame buffer configuration supports only color index contexts,
31 <code class="constant">GLX_BUFFER_SIZE</code> is the size of the
32 color indexes.
33 </p></dd><dt><span class="term"><code class="constant">GLX_LEVEL</code></span></dt><dd><p>
34 </p><p>
35 Frame buffer level of the configuration.
36 Level zero is the default frame buffer.
37 Positive levels correspond to frame buffers that overlay the default buffer,
38 and negative levels correspond to frame buffers that underlie the default
39 buffer.
40 </p></dd><dt><span class="term"><code class="constant">GLX_DOUBLEBUFFER</code></span></dt><dd><p>
41 </p><p>
42 <code class="constant">True</code> if color buffers exist in front/back pairs that can be swapped,
43 <code class="constant">False</code> otherwise.
44 </p></dd><dt><span class="term"><code class="constant">GLX_STEREO</code></span></dt><dd><p>
45 </p><p>
46 <code class="constant">True</code> if color buffers exist in left/right pairs,
47 <code class="constant">False</code> otherwise.
48 </p></dd><dt><span class="term"><code class="constant">GLX_AUX_BUFFERS</code></span></dt><dd><p>
49 </p><p>
50 Number of auxiliary color buffers that are available.
51 Zero indicates that no auxiliary color buffers exist.
52 </p></dd><dt><span class="term"><code class="constant">GLX_RED_SIZE</code></span></dt><dd><p>
53 </p><p>
54 Number of bits of red stored in each color buffer.
55 Undefined if RGBA contexts are not supported by the frame buffer configuration.
56 </p></dd><dt><span class="term"><code class="constant">GLX_GREEN_SIZE</code></span></dt><dd><p>
57 </p><p>
58 Number of bits of green stored in each color buffer.
59 Undefined if RGBA contexts are not supported by the frame buffer configuration.
60 </p></dd><dt><span class="term"><code class="constant">GLX_BLUE_SIZE</code></span></dt><dd><p>
61 </p><p>
62 Number of bits of blue stored in each color buffer.
63 Undefined if RGBA contexts are not supported by the frame buffer configuration.
64 </p></dd><dt><span class="term"><code class="constant">GLX_ALPHA_SIZE</code></span></dt><dd><p>
65 </p><p>
66 Number of bits of alpha stored in each color buffer.
67 Undefined if RGBA contexts are not supported by the frame buffer configuration.
68 </p></dd><dt><span class="term"><code class="constant">GLX_DEPTH_SIZE</code></span></dt><dd><p>
69 </p><p>
70 Number of bits in the depth buffer.
71 </p></dd><dt><span class="term"><code class="constant">GLX_STENCIL_SIZE</code></span></dt><dd><p>
72 </p><p>
73 Number of bits in the stencil buffer.
74 </p></dd><dt><span class="term"><code class="constant">GLX_ACCUM_RED_SIZE</code></span></dt><dd><p>
75 </p><p>
76 Number of bits of red stored in the accumulation buffer.
77 </p></dd><dt><span class="term"><code class="constant">GLX_ACCUM_GREEN_SIZE</code></span></dt><dd><p>
78 </p><p>
79 Number of bits of green stored in the accumulation buffer.
80 </p></dd><dt><span class="term"><code class="constant">GLX_ACCUM_BLUE_SIZE</code></span></dt><dd><p>
81 </p><p>
82 Number of bits of blue stored in the accumulation buffer.
83 </p></dd><dt><span class="term"><code class="constant">GLX_ACCUM_ALPHA_SIZE</code></span></dt><dd><p>
84 </p><p>
85 Number of bits of alpha stored in the accumulation buffer.
86 </p></dd><dt><span class="term"><code class="constant">GLX_RENDER_TYPE</code></span></dt><dd><p>
87 </p><p>
88 Mask indicating what type of GLX contexts can be made
89 current to the frame buffer configuration. Valid bits are
90 <code class="constant">GLX_RGBA_BIT</code> and
91 <code class="constant">GLX_COLOR_INDEX_BIT</code>.
92 </p></dd><dt><span class="term"><code class="constant">GLX_DRAWABLE_TYPE</code></span></dt><dd><p>
93 </p><p>
94 Mask indicating what drawable types the frame buffer configuration
95 supports. Valid bits are <code class="constant">GLX_WINDOW_BIT</code>,
96 <code class="constant">GLX_PIXMAP_BIT</code>, and <code class="constant">GLX_PBUFFER_BIT</code>.
97 </p></dd><dt><span class="term"><code class="constant">GLX_X_RENDERABLE</code></span></dt><dd><p>
98 </p><p>
99 <code class="constant">True</code> if drawables created with the
100 frame buffer configuration can be rendered to by X.
101 </p></dd><dt><span class="term"><code class="constant">GLX_VISUAL_ID</code></span></dt><dd><p>
102 </p><p>
103 XID of the corresponding visual, or zero
104 if there is no associated visual (i.e., if
105 <code class="constant">GLX_X_RENDERABLE</code> is <code class="constant">False</code> or
106 <code class="constant">GLX_DRAWABLE_TYPE</code> does not have the
107 <code class="constant">GLX_WINDOW_BIT</code> bit set).
108 </p></dd><dt><span class="term"><code class="constant">GLX_X_VISUAL_TYPE</code></span></dt><dd><p>
109 </p><p>
110 Visual type of associated visual. The returned value will be one of:
111 <code class="constant">GLX_TRUE_COLOR</code>, <code class="constant">GLX_DIRECT_COLOR</code>, <code class="constant">GLX_PSEUDO_COLOR</code>,
112 <code class="constant">GLX_STATIC_COLOR</code>, <code class="constant">GLX_GRAY_SCALE</code>, <code class="constant">GLX_STATIC_GRAY</code>,
113 or <code class="constant">GLX_NONE</code>, if there is no associated visual (i.e., if
114 <code class="constant">GLX_X_RENDERABLE</code> is <code class="constant">False</code> or
115 <code class="constant">GLX_DRAWABLE_TYPE</code> does not have the
116 <code class="constant">GLX_WINDOW_BIT</code> bit set).
117 </p></dd><dt><span class="term"><code class="constant">GLX_CONFIG_CAVEAT</code></span></dt><dd><p>
118 </p><p>
119 One of <code class="constant">GLX_NONE</code>,
120 <code class="constant">GLX_SLOW_CONFIG</code>, or
121 <code class="constant">GLX_NON_CONFORMANT_CONFIG</code>, indicating
122 that the frame buffer configuration has no caveats,
123 some aspect of the frame buffer configuration runs slower
124 than other frame buffer configurations, or some aspect of the
125 frame buffer configuration is nonconformant, respectively.
126 </p></dd><dt><span class="term"><code class="constant">GLX_TRANSPARENT_TYPE</code></span></dt><dd><p>
127 </p><p>
128 One of <code class="constant">GLX_NONE</code>,
129 <code class="constant">GLX_TRANSPARENT_RGB</code>,
130 <code class="constant">GLX_TRANSPARENT_INDEX</code>, indicating that
131 the frame buffer configuration is opaque, is transparent for particular
132 values of red, green, and blue, or is transparent for
133 particular index values, respectively.
134 </p></dd><dt><span class="term"><code class="constant">GLX_TRANSPARENT_INDEX_VALUE</code></span></dt><dd><p>
135 </p><p>
136 Integer value between 0 and the maximum
137 frame buffer value for indices, indicating the transparent
138 index value for the frame buffer configuration.
139 Undefined if <code class="constant">GLX_TRANSPARENT_TYPE</code>
140 is not <code class="constant">GLX_TRANSPARENT_INDEX</code>.
141 </p></dd><dt><span class="term"><code class="constant">GLX_TRANSPARENT_RED_VALUE</code></span></dt><dd><p>
142 </p><p>
143 Integer value between 0 and the maximum
144 frame buffer value for red, indicating the transparent
145 red value for the frame buffer configuration.
146 Undefined if <code class="constant">GLX_TRANSPARENT_TYPE</code>
147 is not <code class="constant">GLX_TRANSPARENT_RGB</code>.
148 </p></dd><dt><span class="term"><code class="constant">GLX_TRANSPARENT_GREEN_VALUE</code></span></dt><dd><p>
149 </p><p>
150 Integer value between 0 and the maximum
151 frame buffer value for green, indicating the transparent
152 green value for the frame buffer configuration.
153 Undefined if <code class="constant">GLX_TRANSPARENT_TYPE</code>
154 is not <code class="constant">GLX_TRANSPARENT_RGB</code>.
155 </p></dd><dt><span class="term"><code class="constant">GLX_TRANSPARENT_BLUE_VALUE</code></span></dt><dd><p>
156 </p><p>
157 Integer value between 0 and the maximum
158 frame buffer value for blue, indicating the transparent
159 blue value for the frame buffer configuration.
160 Undefined if <code class="constant">GLX_TRANSPARENT_TYPE</code>
161 is not <code class="constant">GLX_TRANSPARENT_RGB</code>.
162 </p></dd><dt><span class="term"><code class="constant">GLX_TRANSPARENT_ALPHA_VALUE</code></span></dt><dd><p>
163 </p><p>
164 Integer value between 0 and the maximum
165 frame buffer value for alpha, indicating the transparent
166 blue value for the frame buffer configuration.
167 Undefined if <code class="constant">GLX_TRANSPARENT_TYPE</code>
168 is not <code class="constant">GLX_TRANSPARENT_RGB</code>.
169 </p></dd><dt><span class="term"><code class="constant">GLX_MAX_PBUFFER_WIDTH</code></span></dt><dd><p>
170 </p><p>
171 The maximum width that can be specified to
172 <a class="citerefentry" href="glXCreatePbuffer.xml"><span class="citerefentry"><span class="refentrytitle">glXCreatePbuffer</span></span></a>.
173 </p></dd><dt><span class="term"><code class="constant">GLX_MAX_PBUFFER_HEIGHT</code></span></dt><dd><p>
174 </p><p>
175 The maximum height that can be specified to
176 <a class="citerefentry" href="glXCreatePbuffer.xml"><span class="citerefentry"><span class="refentrytitle">glXCreatePbuffer</span></span></a>.
177 </p></dd><dt><span class="term"><code class="constant">GLX_MAX_PBUFFER_PIXELS</code></span></dt><dd><p>
178 </p><p>
179 The maximum number of pixels (width times height) for a
180 pixel buffer. Note that this value may be less than
181 <code class="constant">GLX_MAX_PBUFFER_WIDTH</code> times
182 <code class="constant">GLX_MAX_PBUFFER_HEIGHT</code>. Also, this
183 value is static and assumes that no other pixel buffers
184 or X resources are contending for the frame buffer memory.
185 As a result, it may not be possible to allocate a pixel buffer of
186 the size given by <code class="constant">GLX_MAX_PBUFFER_PIXELS</code>.
187 </p></dd></dl></div><p>
188 Applications should choose the frame buffer configuration that most closely
189 meets their requirements.
190 Creating windows, GLX pixmaps, or GLX pixel buffers with unnecessary buffers
191 can result in
192 reduced rendering performance as well as poor resource allocation.
193 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="notes"></a><h2>Notes</h2><p>
194 <code class="function">glXGetFBConfigAttrib</code> is available only if the GLX version is 1.3 or greater.
195 </p><p>
196 If the GLX version is 1.1 or 1.0, the GL version must be 1.0.
197 If the GLX version is 1.2, then the GL version must be 1.1.
198 If the GLX version is 1.3, then the GL version must be 1.2.
199 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="errors"></a><h2>Errors</h2><p>
200 <code class="constant">GLX_NO_EXTENSION</code> is returned if <em class="parameter"><code>dpy</code></em> does not support the GLX
201 extension.
202 <code class="constant">GLX_BAD_ATTRIBUTE</code> is returned if <em class="parameter"><code>attribute</code></em> is not a valid GLX attribute.
203 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="seealso"></a><h2>See Also</h2><p>
204 <a class="citerefentry" href="glXGetFBConfigs.xml"><span class="citerefentry"><span class="refentrytitle">glXGetFBConfigs</span></span></a>,
205 <a class="citerefentry" href="glXChooseFBConfig.xml"><span class="citerefentry"><span class="refentrytitle">glXChooseFBConfig</span></span></a>,
206 <a class="citerefentry" href="glXGetVisualFromFBConfig.xml"><span class="citerefentry"><span class="refentrytitle">glXGetVisualFromFBConfig</span></span></a>,
207 <a class="citerefentry" href="glXGetConfig.xml"><span class="citerefentry"><span class="refentrytitle">glXGetConfig</span></span></a>
208 </p></div><div class="refsect1" lang="en" xml:lang="en"><a id="Copyright"></a><h2>Copyright</h2><p>
209 Copyright <span class="trademark"></span>© 1991-2006
210 Silicon Graphics, Inc. This document is licensed under the SGI
211 Free Software B License. For details, see
212 <a class="ulink" href="http://oss.sgi.com/projects/FreeB/" target="_top">http://oss.sgi.com/projects/FreeB/</a>.
213 </p></div></div></body></html>