mirror of
https://github.com/brl/mutter.git
synced 2024-11-27 10:30:47 -05:00
7497475295
This adds two new functions: void cogl_poll_get_info (CoglContext *context, CoglPollFD **poll_fds, int *n_poll_fds, gint64 *timeout); void cogl_poll_dispatch (CoglContext *context, const CoglPollFD *poll_fds, int n_poll_fds); The application is expected to call the first function whenever it is about to block to go idle, and the second function whenever it comes out of idle. This gives Cogl winsys's the ability poll file descriptors for events. For example when handing swap complete notifications, it can report that it needs to block on a file descriptor. The two functions are backed by winsys virtual functions. There are currently no implementations. The default handler for get_info just reports no file descriptors and an infinite timeout. Reviewed-by: Robert Bragg <robert@linux.intel.com>
209 lines
6.7 KiB
XML
209 lines
6.7 KiB
XML
<?xml version="1.0"?>
|
|
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
|
|
<!ENTITY version "@VERSION@">
|
|
]>
|
|
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
|
|
|
|
<bookinfo>
|
|
<title>Cogl 2.0 Reference Manual</title>
|
|
<releaseinfo>for Cogl 2.0;</releaseinfo>
|
|
|
|
<copyright>
|
|
<year>2008</year>
|
|
<holder>OpenedHand LTD</holder>
|
|
</copyright>
|
|
|
|
<copyright>
|
|
<year>2009</year>
|
|
<year>2010</year>
|
|
<year>2011</year>
|
|
<holder>Intel Corporation</holder>
|
|
</copyright>
|
|
|
|
<legalnotice>
|
|
<para>
|
|
Permission is granted to copy, distribute and/or modify this
|
|
document under the terms of the <citetitle>GNU Free
|
|
Documentation License</citetitle>, Version 1.1 or any later
|
|
version published by the Free Software Foundation with no
|
|
Invariant Sections, no Front-Cover Texts, and no Back-Cover
|
|
Texts. You may obtain a copy of the <citetitle>GNU Free
|
|
Documentation License</citetitle> from the Free Software
|
|
Foundation by visiting <ulink type="http"
|
|
url="http://www.fsf.org">their Web site</ulink> or by writing
|
|
to:
|
|
|
|
<address>
|
|
The Free Software Foundation, Inc.,
|
|
<street>59 Temple Place</street> - Suite 330,
|
|
<city>Boston</city>, <state>MA</state> <postcode>02111-1307</postcode>,
|
|
<country>USA</country>
|
|
</address>
|
|
</para>
|
|
</legalnotice>
|
|
|
|
</bookinfo>
|
|
|
|
<chapter>
|
|
<title>Cogl - a modern 3D graphics API</title>
|
|
|
|
<section id="cogl-intro">
|
|
<title>About Cogl</title>
|
|
|
|
<para>Cogl is a modern 3D graphics API with associated utility
|
|
APIs designed to expose the features of 3D graphics hardware
|
|
using a more object oriented design than OpenGL. The library has
|
|
primarily been driven by the practical needs of Clutter but it
|
|
is not tied to any one toolkit or even constrained to developing
|
|
UI toolkits.</para>
|
|
|
|
</section>
|
|
|
|
<xi:include href="xml/cogl-object.xml"/>
|
|
<xi:include href="xml/cogl-context.xml"/>
|
|
<xi:include href="xml/cogl-poll.xml"/>
|
|
|
|
<section id="cogl-pipeline-apis">
|
|
<title>Setting Up A GPU Pipeline</title>
|
|
<xi:include href="blend-strings.xml"/>
|
|
<xi:include href="xml/cogl-pipeline.xml"/>
|
|
<xi:include href="xml/cogl-snippet.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-buffer-apis">
|
|
<title>Allocating GPU Memory</title>
|
|
<xi:include href="xml/cogl-buffer.xml"/>
|
|
<xi:include href="xml/cogl-attribute-buffer.xml"/>
|
|
<xi:include href="xml/cogl-index-buffer.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-buffer-layout-apis">
|
|
<title>Describing the layout of GPU Memory</title>
|
|
<xi:include href="xml/cogl-attribute.xml"/>
|
|
<xi:include href="xml/cogl-indices.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-primitive-apis">
|
|
<title>Geometry</title>
|
|
<xi:include href="xml/cogl-primitive.xml"/>
|
|
<xi:include href="xml/cogl-paths.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-drawing-apis">
|
|
<title>Drawing</title>
|
|
<xi:include href="xml/cogl-drawing.xml"/>
|
|
<xi:include href="xml/cogl-rectangle.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-textures">
|
|
<title>Textures</title>
|
|
<xi:include href="xml/cogl-texture.xml"/>
|
|
<xi:include href="xml/cogl-texture-2d.xml"/>
|
|
<xi:include href="xml/cogl-texture-3d.xml"/>
|
|
<xi:include href="xml/cogl-texture-rectangle.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-meta-textures">
|
|
<title>Meta Textures</title>
|
|
<xi:include href="xml/cogl-meta-texture.xml"/>
|
|
<xi:include href="xml/cogl-sub-texture.xml"/>
|
|
<xi:include href="xml/cogl-texture-2d-sliced.xml"/>
|
|
<xi:include href="xml/cogl-texture-pixmap-x11.xml"/>
|
|
</section>
|
|
|
|
<xi:include href="xml/cogl-clipping.xml"/>
|
|
<section id="cogl-framebuffer-apis">
|
|
<title>Framebuffers</title>
|
|
<xi:include href="xml/cogl-framebuffer.xml"/>
|
|
<xi:include href="xml/cogl-offscreen.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-utilities">
|
|
<title>Utilities</title>
|
|
<xi:include href="xml/cogl-color.xml"/>
|
|
<xi:include href="xml/cogl-matrix.xml"/>
|
|
<xi:include href="xml/cogl-vector.xml"/>
|
|
<xi:include href="xml/cogl-quaternion.xml"/>
|
|
<xi:include href="xml/cogl-types.xml"/>
|
|
</section>
|
|
|
|
<section id="cogl-integration">
|
|
<title>Binding and Integrating</title>
|
|
<xi:include href="xml/cogl-gtype.xml"/>
|
|
</section>
|
|
|
|
</chapter>
|
|
|
|
<chapter id="coglglossary">
|
|
<title>Glossaries</title>
|
|
|
|
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
|
|
</chapter>
|
|
|
|
<index>
|
|
<title>Index of all symbols</title>
|
|
<xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
|
|
</index>
|
|
|
|
<index role="deprecated">
|
|
<title>Index of deprecated symbols</title>
|
|
<xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
|
|
</index>
|
|
|
|
<index role="0.8">
|
|
<title>Index of new symbols in 0.8</title>
|
|
<xi:include href="xml/api-index-0.8.xml"><xi:fallback /></xi:include>
|
|
</index>
|
|
|
|
<index role="1.0">
|
|
<title>Index of new symbols in 1.0</title>
|
|
<xi:include href="xml/api-index-1.0.xml"><xi:fallback /></xi:include>
|
|
</index>
|
|
|
|
<index role="1.2">
|
|
<title>Index of new symbols in 1.2</title>
|
|
<xi:include href="xml/api-index-1.2.xml"><xi:fallback /></xi:include>
|
|
</index>
|
|
|
|
<index role="1.4">
|
|
<title>Index of new symbols in 1.4</title>
|
|
<xi:include href="xml/api-index-1.4.xml"><xi:fallback /></xi:include>
|
|
</index>
|
|
|
|
<appendix id="license">
|
|
<title>License</title>
|
|
|
|
<para>
|
|
This library is free software; you can redistribute it and/or
|
|
modify it under the terms of the <citetitle>GNU Library General
|
|
Public License</citetitle> as published by the Free Software
|
|
Foundation; either version 2 of the License, or (at your option)
|
|
any later version.
|
|
</para>
|
|
|
|
<para>
|
|
This library is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
<citetitle>GNU Library General Public License</citetitle> for
|
|
more details.
|
|
</para>
|
|
|
|
<para>
|
|
You may obtain a copy of the <citetitle>GNU Library General
|
|
Public License</citetitle> from the Free Software Foundation by
|
|
visiting <ulink type="http" url="http://www.fsf.org">their Web
|
|
site</ulink> or by writing to:
|
|
|
|
<address>
|
|
Free Software Foundation, Inc.
|
|
<street>59 Temple Place</street> - Suite 330
|
|
<city>Boston</city>, <state>MA</state> <postcode>02111-1307</postcode>
|
|
<country>USA</country>
|
|
</address>
|
|
</para>
|
|
</appendix>
|
|
|
|
</book>
|