<?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 "1.15.4">
]>
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">

  <bookinfo>
    <title>Cogl Reference Manual</title>
    <releaseinfo>for Cogl &version;</releaseinfo>

    <copyright>
      <year>2008</year>
      <holder>OpenedHand LTD</holder>
    </copyright>

    <copyright>
      <year>2009</year>
      <year>2010</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.xml"/>
    <xi:include href="xml/cogl-color.xml"/>
    <xi:include href="xml/cogl-texture.xml"/>
    <xi:include href="blend-strings.xml"/>
    <xi:include href="xml/cogl-material.xml"/>
    <xi:include href="xml/cogl-primitives.xml"/>
    <xi:include href="xml/cogl-paths.xml"/>
    <xi:include href="xml/cogl-clipping.xml"/>
    <xi:include href="xml/cogl-vertex-buffer.xml"/>
    <xi:include href="xml/cogl-matrix.xml"/>
    <xi:include href="xml/cogl-shaders.xml"/>
    <xi:include href="xml/cogl-offscreen.xml"/>
    <xi:include href="xml/cogl-bitmap.xml"/>
    <xi:include href="xml/cogl-fixed.xml"/>
    <xi:include href="xml/cogl-gtype.xml"/>

  </chapter>

  <chapter>
    <title>Cogl experimental API</title>

    <section id="cogl-experimental">
      <title>About the experimental API</title>

      <para>Cogl has some experimental API developers are welcomed to play
      with. The main drawback when using those is that there is no API
      stability guarantee, functions flagged as experimental could be changed
      or removed in future versions of the library. To use this experimental
      API you will need to define
      <literal>COGL_ENABLE_EXPERIMENTAL_API</literal> before including
      <filename class="headerfile">&lt;clutter/clutter.h&gt;</filename> or
      <filename class="headerfile">&lt;cogl/cogl.h&gt;</filename>.</para>

    </section>

    <xi:include href="xml/cogl-buffer.xml"/>
    <xi:include href="xml/cogl-vector.xml"/>
    <xi:include href="xml/cogl-texture-3d.xml"/>
    <xi:include href="xml/cogl-quaternion.xml"/>

  </chapter>

  <chapter>
    <title>Cogl deprecated API</title>

    <section id="cogl-deprecated">

      <title>About the deprecated API</title>

      <para>Cogl has evolved from once being a thin abstraction over
      OpenGL and GLES where a lot of OpenGL's state machine style APIs
      were simply rebranded as Cogl API into the more distinguished API
      style we have today. The result of this evolution though is that
      some of the APIs are considered deprecated and because we plan to
      remove them at the next opportunity we have to break the API
      developers should aim to avoid these functions to keep their code
      working with future major versions of Cogl.</para>

    </section>

    <xi:include href="xml/cogl-deprecated.xml"/>
    <xi:include href="xml/cogl-texture-deprecated.xml"/>
    <xi:include href="xml/cogl-material-deprecated.xml"/>
    <xi:include href="xml/cogl-clipping-deprecated.xml"/>
    <xi:include href="xml/cogl-vertex-buffer-deprecated.xml"/>
    <xi:include href="xml/cogl-shaders-deprecated.xml"/>
    <xi:include href="xml/cogl-offscreen-deprecated.xml"/>

  </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>

  <index role="1.6">
    <title>Index of new symbols in 1.6</title>
    <xi:include href="xml/api-index-1.6.xml"><xi:fallback /></xi:include>
  </index>

  <index role="1.8">
    <title>Index of new symbols in 1.8</title>
    <xi:include href="xml/api-index-1.8.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>
