<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+ "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
+[
+<!ENTITY % defs SYSTEM "defs.ent"> %defs;
+]>
<!-- lifted from troff+ms+XMan by doclifter -->
<bookinfo>
<title>Double Buffer Extension Library</title>
<subtitle>X Consortium Standard</subtitle>
- <!-- <releaseinfo>X Version 11, Release 6.4</releaseinfo> -->
+ <releaseinfo>X Version 11, Release &fullrelvers;</releaseinfo>
+ <releaseinfo>Version 1.0</releaseinfo>
<authorgroup>
<author>
<firstname>Ian</firstname><surname>Elliot</surname>
+ <affiliation><orgname>Hewlett-Packard Company</orgname></affiliation>
</author>
+ <othercredit>
+ <firstname>David</firstname><othername>P.</othername><surname>Wiggins</surname>
+ <affiliation><orgname>X Consortium, Inc</orgname></affiliation>
+ </othercredit>
</authorgroup>
- <othercredit>
- <firstname>Davide</firstname><surname>Wiggins</surname>
- </othercredit>
- <corpname>Hewlett-Packard Company</corpname>
- <copyright><year>1989</year><holder>X Consortium, Inc and Digital Equipment Corporation</holder></copyright>
- <copyright><year>1992</year><holder>X Consortium, Inc and Intergraph Corporation</holder></copyright>
- <copyright><year>1993</year><holder>X Consortium, Inc and Silicon Graphics, Inc.</holder></copyright>
- <copyright><year>1994</year><holder>X Consortium, Inc and Hewlett-Packard Company</holder></copyright>
- <copyright><year>1995</year><holder>X Consortium, Inc and Hewlett-Packard Company</holder></copyright>
- <releaseinfo>Version 1.0</releaseinfo>
- <affiliation><orgname>X Consortium</orgname></affiliation>
- <productnumber>X Version 11, Release 7</productnumber>
+ <copyright><year>1989</year>
+ <holder>X Consortium Inc</holder>
+ <holder>Digital Equipment Corporation</holder>
+ </copyright>
+ <copyright><year>1992</year>
+ <holder>X Consortium Inc</holder>
+ <holder>Intergraph Corporation</holder>
+ </copyright>
+ <copyright><year>1993</year>
+ <holder>X Consortium Inc</holder>
+ <holder>Silicon Graphics, Inc.</holder>
+ </copyright>
+ <copyright><year>1994</year><year>1995</year>
+ <holder>X Consortium Inc</holder>
+ <holder>Hewlett-Packard Company</holder>
+ </copyright>
<legalnotice>
<para>
</bookinfo>
-<chapter id="introduction">
+<chapter id='Introduction'>
<title>Introduction</title>
<para>
The Double Buffer Extension (DBE) provides a standard way to utilize
</chapter>
-<chapter id="goals">
+<chapter id='Goals'>
<title>Goals</title>
<para>
</chapter>
-<chapter id="concepts">
+<chapter id='Concepts'>
<title>Concepts</title>
<para>
Normal windows are created using the core CreateWindow request, which
should investigate the Synchronization Extension, an X Consortium standard.
</para>
-<sect1 id="window_management_operations">
+<sect1 id='Window_Management_Operations'>
<title>Window Management Operations</title>
<para>
</sect1>
-<sect1 id="complex_swap_actions">
+<sect1 id='Complex_Swap_Actions'>
<title>Complex Swap Actions</title>
<para>
DBE has no explicit knowledge of ancillary buffers (for example, depth buffers
</sect1>
</chapter>
-<chapter id="c_language_bindings">
+<chapter id='C_Language_Binding'>
<title>C Language Binding</title>
<para>
All identiļ¬er The header for this extension is <X11/extensions/Xdbe.h>.
names provided by this header begin with Xdbe.
</para>
-<sect1 id="types">
+<sect1 id='Types'>
<title>Types</title>
<para>
</sect1>
-<sect1 id="c_functions">
+<sect1 id='C_Functions'>
<title>C Functions</title>
<para>
The C functions provide direct access to the protocol and add no additional
zero for failure.
</para>
-<funcsynopsis>
+<funcsynopsis id='XdbeQueryExtension'>
<funcprototype>
<funcdef>Status <function>XdbeQueryExtension</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
</funcsynopsis>
<para>
-<function>XdbeQueryExtension</function> sets major version return and minor
+<olink targetdoc='dbelib' targetptr='XdbeQueryExtension'><function>XdbeQueryExtension</function></olink> sets major version return and minor
version return to the major and minor DBE protocol version supported by
the server. If the DBE library is compatible with the version returned by
the server, it returns nonzero. If dpy does not support the DBE extension,
are undefined.
</para>
-<funcsynopsis>
+<funcsynopsis id='XdbeGetVisualInfo'>
<funcprototype>
<funcdef>XdbeScreenVisualInfo *<function>XdbeGetVisualInfo</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
<para>
-<function>XdbeGetVisualInfo</function> returns information about which
+<olink targetdoc='dbelib' targetptr='XdbeGetVisualInfo'><function>XdbeGetVisualInfo</function></olink> returns information about which
visuals support double buffering. The argument num_screens specifies how
many elements there are in the screen_specifiers list. Each drawable in
screen_specifiers designates a screen for which the supported visuals are
<para>
<function>XdbeFreeVisualInfo</function> frees the list of
<function>XdbeScreenVisualInfo</function> returned by
-<function>XdbeGetVisualInfo</function>.
+<olink targetdoc='dbelib' targetptr='XdbeGetVisualInfo'><function>XdbeGetVisualInfo</function></olink>.
</para>
-<funcsynopsis>
+<funcsynopsis id='XdbeAllocateBackBufferName'>
<funcprototype>
<funcdef>XdbeBackBuffer <function>XdbeAllocateBackBufferName</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
<para>
-<function>XdbeAllocateBackBufferName</function> returns a drawable ID used
+<olink targetdoc='dbelib' targetptr='XdbeAllocateBackBufferName'><function>XdbeAllocateBackBufferName</function></olink> returns a drawable ID used
to refer to the back buffer of the specified window. The swap_action is a
hint to indicate the swap_action that will likely be used in subsequent
-calls to <function>XdbeSwapBuffers</function>. The actual swap_action
-used in calls to <function>XdbeSwapBuffers</function> does not have to be
+calls to <olink targetdoc='dbelib' targetptr='XdbeSwapBuffers'><function>XdbeSwapBuffers</function></olink>. The actual swap_action
+used in calls to <olink targetdoc='dbelib' targetptr='XdbeSwapBuffers'><function>XdbeSwapBuffers</function></olink> does not have to be
the same as the swap_action passed to this function, though clients are
encouraged to provide accurate information whenever possible.
</para>
-<funcsynopsis>
+<funcsynopsis id='XdbeDeallocateBackBufferName'>
<funcprototype>
<funcdef>Status <function>XdbeDeallocateBackBufferName</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
</funcsynopsis>
<para>
-<function>XdbeDeallocateBackBufferName</function> frees the specified
+<olink targetdoc='dbelib' targetptr='XdbeDeallocateBackBufferName'><function>XdbeDeallocateBackBufferName</function></olink> frees the specified
drawable ID, buffer, that was obtained via
-<function>XdbeAllocateBackBufferName</function>. The buffer must be a valid
+<olink targetdoc='dbelib' targetptr='XdbeAllocateBackBufferName'><function>XdbeAllocateBackBufferName</function></olink>. The buffer must be a valid
name for the back buffer of a window, or an
<function>XdbeBadBuffer</function> error results.
</para>
-<funcsynopsis>
+<funcsynopsis id='XdbeSwapBuffers'>
<funcprototype>
<funcdef>Status <function>XdbeSwapBuffers</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
</funcsynopsis>
<para>
-<function>XdbeSwapBuffers</function> swaps the front and back buffers
+<olink targetdoc='dbelib' targetptr='XdbeSwapBuffers'><function>XdbeSwapBuffers</function></olink> swaps the front and back buffers
for a list of windows. The argument num_windows specifies how many windows
are to have their buffers swapped; it is the number of elements in the
swap_info array. The argument swap_info specifies the information needed
XdbeSwapAction swap_action swap action to use for this swap window
</literallayout>
-<funcsynopsis>
+<funcsynopsis id='XdbeBeginIdiom'>
<funcprototype>
<funcdef>Status <function>XdbeBeginIdiom</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
</funcsynopsis>
<para>
-<function>XdbeBeginIdiom</function> marks the beginning of an idiom
+<olink targetdoc='dbelib' targetptr='XdbeBeginIdiom'><function>XdbeBeginIdiom</function></olink> marks the beginning of an idiom
sequence. See
-<link linkend="complex_swap_actions">
-<xref linkend="complex_swap_actions"></xref></link>
+<link linkend='Complex_Swap_Actions'>
+<xref linkend='Complex_Swap_Actions'></xref></link>
for a complete discussion of idioms.
</para>
-<funcsynopsis>
+<funcsynopsis id='XdbeEndIdiom'>
<funcprototype>
<funcdef>Status <function>XdbeEndIdiom</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
</funcsynopsis>
<para>
-<function>XdbeEndIdiom</function> marks the end of an idiom sequence.
+<olink targetdoc='dbelib' targetptr='XdbeEndIdiom'><function>XdbeEndIdiom</function></olink> marks the end of an idiom sequence.
</para>
-<funcsynopsis>
+<funcsynopsis id='XdbeGetBackBufferAttributes'>
<funcprototype>
<funcdef>XdbeBackBufferAttributes *<function>XdbeGetBackBufferAttributes</function></funcdef>
<paramdef>Display <parameter> *dpy</parameter></paramdef>
</funcsynopsis>
<para>
-<function>XdbeGetBackBufferAttributes</function> returns the attributes associated with
+<olink targetdoc='dbelib' targetptr='XdbeGetBackBufferAttributes'><function>XdbeGetBackBufferAttributes</function></olink> returns the attributes associated with
the specified buffer.
</para>
<para>
</para>
<para>
The returned <function>XdbeBackBufferAttributes</function> structure
-can be freed with the Xlib function <function>XFree</function>.
+can be freed with the Xlib function <olink targetdoc='libX11' targetptr='XFree'><function>XFree</function></olink>.
</para>
</sect1>
-<sect1 id="errors">
+<sect1 id='Errors'>
<title>Errors</title>
<para>
The <function>XdbeBufferError</function> structure has the following fields:
</sect1>
</chapter>
-<chapter id="acknowledgements">
+<chapter id='Acknowledgements'>
<title>Acknowledgements</title>
<para>
</para>
</chapter>
-<chapter id="references">
+<chapter id='References'>
<title>References</title>
<para>
Jeffrey Friedberg, Larry Seiler, and Jeff Vroom, "Multi-buffering Extension