summaryrefslogtreecommitdiff
path: root/doc/public/xml/cairo-surface-observer.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/public/xml/cairo-surface-observer.xml')
-rw-r--r--doc/public/xml/cairo-surface-observer.xml301
1 files changed, 301 insertions, 0 deletions
diff --git a/doc/public/xml/cairo-surface-observer.xml b/doc/public/xml/cairo-surface-observer.xml
new file mode 100644
index 000000000..cfa56fe73
--- /dev/null
+++ b/doc/public/xml/cairo-surface-observer.xml
@@ -0,0 +1,301 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
+<!ENTITY version SYSTEM "version.xml">
+]>
+<refentry id="cairo-cairo-surface-observer">
+<refmeta>
+<refentrytitle role="top_of_page" id="cairo-cairo-surface-observer.top_of_page">cairo-surface-observer</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>
+ CAIRO Library
+</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>cairo-surface-observer</refname>
+<refpurpose></refpurpose>
+</refnamediv>
+
+<refsect1 id="cairo-cairo-surface-observer.functions" role="functions_proto">
+<title role="functions_proto.title">Functions</title>
+<informaltable pgwide="1" frame="none">
+<tgroup cols="2">
+<colspec colname="functions_return" colwidth="150px"/>
+<colspec colname="functions_name"/>
+<tbody>
+<row><entry role="function_type"><link linkend="cairo-surface-t"><returnvalue>cairo_surface_t</returnvalue></link>&#160;*
+</entry><entry role="function_name"><link linkend="cairo-surface-create-observer">cairo_surface_create_observer</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-add-fill-callback">cairo_surface_observer_add_fill_callback</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-add-finish-callback">cairo_surface_observer_add_finish_callback</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-add-flush-callback">cairo_surface_observer_add_flush_callback</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-add-glyphs-callback">cairo_surface_observer_add_glyphs_callback</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-add-mask-callback">cairo_surface_observer_add_mask_callback</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-add-paint-callback">cairo_surface_observer_add_paint_callback</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-add-stroke-callback">cairo_surface_observer_add_stroke_callback</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
+</entry><entry role="function_name"><phrase role="c_punctuation">(</phrase><link linkend="cairo-surface-observer-callback-t">*cairo_surface_observer_callback_t</link><phrase role="c_punctuation">)</phrase>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="double"><returnvalue>double</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-elapsed">cairo_surface_observer_elapsed</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-surface-observer-print">cairo_surface_observer_print</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+
+</tbody>
+</tgroup>
+</informaltable>
+</refsect1>
+<refsect1 id="cairo-cairo-surface-observer.other" role="other_proto">
+<title role="other_proto.title">Types and Values</title>
+<informaltable role="enum_members_table" pgwide="1" frame="none">
+<tgroup cols="2">
+<colspec colname="name" colwidth="150px"/>
+<colspec colname="description"/>
+<tbody>
+<row><entry role="define_keyword">#define</entry><entry role="function_name"><link linkend="CAIRO-HAS-OBSERVER-SURFACE:CAPS">CAIRO_HAS_OBSERVER_SURFACE</link></entry></row>
+<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="cairo-surface-observer-mode-t">cairo_surface_observer_mode_t</link></entry></row>
+
+</tbody>
+</tgroup>
+</informaltable>
+</refsect1>
+<refsect1 id="cairo-cairo-surface-observer.object-hierarchy" role="object_hierarchy">
+<title role="object_hierarchy.title">Object Hierarchy</title>
+<screen>
+</screen>
+</refsect1>
+
+
+<refsect1 id="cairo-cairo-surface-observer.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+
+</refsect1>
+<refsect1 id="cairo-cairo-surface-observer.functions_details" role="details">
+<title role="details.title">Functions</title>
+<refsect2 id="cairo-surface-create-observer" role="function" condition="since:1.12">
+<title>cairo_surface_create_observer&#160;()</title>
+<indexterm zone="cairo-surface-create-observer" role="1.12"><primary sortas="surface_create_observer">cairo_surface_create_observer</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-surface-t"><returnvalue>cairo_surface_t</returnvalue></link>&#160;*
+cairo_surface_create_observer (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *target</parameter>,
+ <parameter><link linkend="cairo-surface-observer-mode-t"><type>cairo_surface_observer_mode_t</type></link> mode</parameter>);</programlisting>
+<para>Create a new surface that exists solely to watch another is doing. In
+the process it will log operations and times, which are fast, which are
+slow, which are frequent, etc.</para>
+<para>The <parameter>mode</parameter>
+ parameter can be set to either CAIRO_SURFACE_OBSERVER_NORMAL
+or CAIRO_SURFACE_OBSERVER_RECORD_OPERATIONS, to control whether or not
+the internal observer should record operations.</para>
+<refsect3 role="parameters">
+<title>Parameters</title>
+<informaltable role="parameters_table" pgwide="1" frame="none">
+<tgroup cols="3">
+<colspec colname="parameters_name" colwidth="150px"/>
+<colspec colname="parameters_description"/>
+<colspec colname="parameters_annotations" colwidth="200px"/>
+<tbody>
+<row><entry role="parameter_name"><para>target</para></entry>
+<entry role="parameter_description"><para>an existing surface for which the observer will watch</para></entry>
+<entry role="parameter_annotations"></entry></row>
+<row><entry role="parameter_name"><para>mode</para></entry>
+<entry role="parameter_description"><para>sets the mode of operation (normal vs. record)</para></entry>
+<entry role="parameter_annotations"></entry></row>
+</tbody></tgroup></informaltable>
+</refsect3><refsect3 role="returns">
+<title>Returns</title>
+<para> a pointer to the newly allocated surface. The caller
+owns the surface and should call <link linkend="cairo-surface-destroy"><function>cairo_surface_destroy()</function></link> when done
+with it.</para>
+<para>This function always returns a valid pointer, but it will return a
+pointer to a "nil" surface if <parameter>other</parameter>
+is already in an error state
+or any other error occurs.</para>
+<para></para>
+</refsect3><para role="since">Since 1.12</para></refsect2>
+<refsect2 id="cairo-surface-observer-add-fill-callback" role="function">
+<title>cairo_surface_observer_add_fill_callback&#160;()</title>
+<indexterm zone="cairo-surface-observer-add-fill-callback"><primary sortas="surface_observer_add_fill_callback">cairo_surface_observer_add_fill_callback</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_add_fill_callback
+ (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *abstract_surface</parameter>,
+ <parameter><link linkend="cairo-surface-observer-callback-t"><type>cairo_surface_observer_callback_t</type></link> func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-add-finish-callback" role="function">
+<title>cairo_surface_observer_add_finish_callback&#160;()</title>
+<indexterm zone="cairo-surface-observer-add-finish-callback"><primary sortas="surface_observer_add_finish_callback">cairo_surface_observer_add_finish_callback</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_add_finish_callback
+ (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *abstract_surface</parameter>,
+ <parameter><link linkend="cairo-surface-observer-callback-t"><type>cairo_surface_observer_callback_t</type></link> func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-add-flush-callback" role="function">
+<title>cairo_surface_observer_add_flush_callback&#160;()</title>
+<indexterm zone="cairo-surface-observer-add-flush-callback"><primary sortas="surface_observer_add_flush_callback">cairo_surface_observer_add_flush_callback</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_add_flush_callback
+ (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *abstract_surface</parameter>,
+ <parameter><link linkend="cairo-surface-observer-callback-t"><type>cairo_surface_observer_callback_t</type></link> func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-add-glyphs-callback" role="function">
+<title>cairo_surface_observer_add_glyphs_callback&#160;()</title>
+<indexterm zone="cairo-surface-observer-add-glyphs-callback"><primary sortas="surface_observer_add_glyphs_callback">cairo_surface_observer_add_glyphs_callback</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_add_glyphs_callback
+ (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *abstract_surface</parameter>,
+ <parameter><link linkend="cairo-surface-observer-callback-t"><type>cairo_surface_observer_callback_t</type></link> func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-add-mask-callback" role="function">
+<title>cairo_surface_observer_add_mask_callback&#160;()</title>
+<indexterm zone="cairo-surface-observer-add-mask-callback"><primary sortas="surface_observer_add_mask_callback">cairo_surface_observer_add_mask_callback</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_add_mask_callback
+ (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *abstract_surface</parameter>,
+ <parameter><link linkend="cairo-surface-observer-callback-t"><type>cairo_surface_observer_callback_t</type></link> func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-add-paint-callback" role="function">
+<title>cairo_surface_observer_add_paint_callback&#160;()</title>
+<indexterm zone="cairo-surface-observer-add-paint-callback"><primary sortas="surface_observer_add_paint_callback">cairo_surface_observer_add_paint_callback</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_add_paint_callback
+ (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *abstract_surface</parameter>,
+ <parameter><link linkend="cairo-surface-observer-callback-t"><type>cairo_surface_observer_callback_t</type></link> func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-add-stroke-callback" role="function">
+<title>cairo_surface_observer_add_stroke_callback&#160;()</title>
+<indexterm zone="cairo-surface-observer-add-stroke-callback"><primary sortas="surface_observer_add_stroke_callback">cairo_surface_observer_add_stroke_callback</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_add_stroke_callback
+ (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *abstract_surface</parameter>,
+ <parameter><link linkend="cairo-surface-observer-callback-t"><type>cairo_surface_observer_callback_t</type></link> func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-callback-t" role="function">
+<title>cairo_surface_observer_callback_t&#160;()</title>
+<indexterm zone="cairo-surface-observer-callback-t"><primary sortas="surface_observer_callback_t">cairo_surface_observer_callback_t</primary></indexterm>
+<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
+<phrase role="c_punctuation">(</phrase>*cairo_surface_observer_callback_t<phrase role="c_punctuation">)</phrase> (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *observer</parameter>,
+ <parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *target</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *data</parameter>);</programlisting>
+<para>
+</para>
+</refsect2>
+<refsect2 id="cairo-surface-observer-elapsed" role="function">
+<title>cairo_surface_observer_elapsed&#160;()</title>
+<indexterm zone="cairo-surface-observer-elapsed"><primary sortas="surface_observer_elapsed">cairo_surface_observer_elapsed</primary></indexterm>
+<programlisting language="C"><link linkend="double"><returnvalue>double</returnvalue></link>
+cairo_surface_observer_elapsed (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *surface</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+<refsect2 id="cairo-surface-observer-print" role="function">
+<title>cairo_surface_observer_print&#160;()</title>
+<indexterm zone="cairo-surface-observer-print"><primary sortas="surface_observer_print">cairo_surface_observer_print</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-status-t"><returnvalue>cairo_status_t</returnvalue></link>
+cairo_surface_observer_print (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *surface</parameter>,
+ <parameter><link linkend="cairo-write-func-t"><type>cairo_write_func_t</type></link> write_func</parameter>,
+ <parameter><link linkend="void"><type>void</type></link> *closure</parameter>);</programlisting>
+<para>
+</para>
+<refsect3 role="returns">
+<title>Returns</title>
+
+<para></para>
+</refsect3></refsect2>
+
+</refsect1>
+<refsect1 id="cairo-cairo-surface-observer.other_details" role="details">
+<title role="details.title">Types and Values</title>
+<refsect2 id="CAIRO-HAS-OBSERVER-SURFACE:CAPS" role="macro">
+<title>CAIRO_HAS_OBSERVER_SURFACE</title>
+<indexterm zone="CAIRO-HAS-OBSERVER-SURFACE:CAPS"><primary sortas="HAS_OBSERVER_SURFACE">CAIRO_HAS_OBSERVER_SURFACE</primary></indexterm>
+<programlisting language="C">#define CAIRO_HAS_OBSERVER_SURFACE 1
+</programlisting>
+<para>
+</para>
+</refsect2>
+<refsect2 id="cairo-surface-observer-mode-t" role="enum" condition="since:1.12">
+<title>enum cairo_surface_observer_mode_t</title>
+<indexterm zone="cairo-surface-observer-mode-t" role="1.12"><primary sortas="surface_observer_mode_t">cairo_surface_observer_mode_t</primary></indexterm>
+<para>Whether operations should be recorded.</para>
+<refsect3 role="enum_members">
+<title>Members</title>
+<informaltable role="enum_members_table" pgwide="1" frame="none">
+<tgroup cols="3">
+<colspec colname="enum_members_name" colwidth="300px"/>
+<colspec colname="enum_members_description"/>
+<colspec colname="enum_members_annotations" colwidth="200px"/>
+<tbody>
+<row role="constant"><entry role="enum_member_name"><para id="CAIRO-SURFACE-OBSERVER-NORMAL:CAPS">CAIRO_SURFACE_OBSERVER_NORMAL</para></entry>
+<entry role="enum_member_description"><para>no recording is done</para>
+</entry>
+<entry role="enum_member_annotations"></entry>
+</row>
+<row role="constant"><entry role="enum_member_name"><para id="CAIRO-SURFACE-OBSERVER-RECORD-OPERATIONS:CAPS">CAIRO_SURFACE_OBSERVER_RECORD_OPERATIONS</para></entry>
+<entry role="enum_member_description"><para>operations are recorded</para>
+</entry>
+<entry role="enum_member_annotations"></entry>
+</row>
+</tbody></tgroup></informaltable>
+</refsect3><para role="since">Since 1.12</para></refsect2>
+
+</refsect1>
+
+</refentry>