<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="GObject" version="2.0"/>
  <include name="Gio" version="2.0"/>
  <package name="colord"/>
  <c:include name="colord.h"/>
  <doc:format name="unknown"/>
  <namespace name="Colord"
             version="1.0"
             shared-library="libcolord.so.2,libcolordprivate.so.2"
             c:identifier-prefixes="Cd"
             c:symbol-prefixes="cd">
    <alias name="PixelFormat" c:type="CdPixelFormat">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="101">The pixel format of an image.
NOTE: these values are the same as the lcms2 AOTTTTTUYFPXSEEECCCCBBB type.</doc>
      <source-position filename="cd-enum.h" line="107"/>
      <type name="guint32" c:type="guint32"/>
    </alias>
    <enumeration name="BufferKind" c:type="CdBufferKind">
      <source-position filename="cd-buffer.h" line="37"/>
      <member name="request" value="0" c:identifier="CD_BUFFER_KIND_REQUEST">
      </member>
      <member name="response" value="1" c:identifier="CD_BUFFER_KIND_RESPONSE">
      </member>
      <member name="unknown" value="2" c:identifier="CD_BUFFER_KIND_UNKNOWN">
      </member>
    </enumeration>
    <function-macro name="CHECK_VERSION"
                    c:identifier="CD_CHECK_VERSION"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="cd-version.h"
           line="60">Check whether a colord version equal to or greater than
major.minor.micro.</doc>
      <source-position filename="cd-version.h" line="66"/>
      <parameters>
        <parameter name="major">
        </parameter>
        <parameter name="minor">
        </parameter>
        <parameter name="micro">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="CLIENT_PROPERTY_DAEMON_VERSION"
              value="DaemonVersion"
              c:type="CD_CLIENT_PROPERTY_DAEMON_VERSION">
      <source-position filename="cd-enum.h" line="428"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="CLIENT_PROPERTY_SYSTEM_MODEL"
              value="SystemModel"
              c:type="CD_CLIENT_PROPERTY_SYSTEM_MODEL">
      <source-position filename="cd-enum.h" line="430"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="CLIENT_PROPERTY_SYSTEM_VENDOR"
              value="SystemVendor"
              c:type="CD_CLIENT_PROPERTY_SYSTEM_VENDOR">
      <source-position filename="cd-enum.h" line="429"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="Client"
           c:symbol-prefix="client"
           c:type="CdClient"
           parent="GObject.Object"
           glib:type-name="CdClient"
           glib:get-type="cd_client_get_type"
           glib:type-struct="ClientClass">
      <source-position filename="cd-client.h" line="76"/>
      <constructor name="new" c:identifier="cd_client_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2656">Creates a new #CdClient object.</doc>
        <source-position filename="cd-client.h" line="79"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="2661">a new CdClient object.</doc>
          <type name="Client" c:type="CdClient*"/>
        </return-value>
      </constructor>
      <function name="error_from_string"
                c:identifier="cd_client_error_from_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="876">Converts a string to a #CdClientError.</doc>
        <source-position filename="cd-enum.h" line="579"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="881">enumerated value</doc>
          <type name="ClientError" c:type="CdClientError"/>
        </return-value>
        <parameters>
          <parameter name="error_desc" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="error_quark"
                c:identifier="cd_client_error_quark"
                version="0.1.0">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="111">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="error_to_string"
                c:identifier="cd_client_error_to_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="847">Converts a #CdClientError to a string.</doc>
        <source-position filename="cd-enum.h" line="578"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="852">identifier string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="error_enum" transfer-ownership="none">
            <type name="ClientError" c:type="CdClientError"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="changed">
        <source-position filename="cd-client.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="device_added">
        <source-position filename="cd-client.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="device" transfer-ownership="none">
            <type name="Device" c:type="CdDevice*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="device_changed">
        <source-position filename="cd-client.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="device" transfer-ownership="none">
            <type name="Device" c:type="CdDevice*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="device_removed">
        <source-position filename="cd-client.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="device" transfer-ownership="none">
            <type name="Device" c:type="CdDevice*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="profile_added">
        <source-position filename="cd-client.h" line="53"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="profile_changed">
        <source-position filename="cd-client.h" line="57"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="profile_removed">
        <source-position filename="cd-client.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="sensor_added">
        <source-position filename="cd-client.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="sensor" transfer-ownership="none">
            <type name="Sensor" c:type="CdSensor*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="sensor_changed">
        <source-position filename="cd-client.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="sensor" transfer-ownership="none">
            <type name="Sensor" c:type="CdSensor*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="sensor_removed">
        <source-position filename="cd-client.h" line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="sensor" transfer-ownership="none">
            <type name="Sensor" c:type="CdSensor*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="connect"
              c:identifier="cd_client_connect"
              version="0.1.6"
              glib:finish-func="connect_finish"
              glib:sync-func="connect_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="412">Connects to the colord daemon.</doc>
        <source-position filename="cd-client.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="414">a #CdClient instance</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="415">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="416">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="417">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_finish"
              c:identifier="cd_client_connect_finish"
              version="0.1.6"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="327">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="335">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="329">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="330">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_sync"
              c:identifier="cd_client_connect_sync"
              version="0.1.0"
              throws="1"
              glib:async-func="connect">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="63">Connects to the colord daemon.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="74">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="65">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="66">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_device"
              c:identifier="cd_client_create_device"
              version="0.1.8"
              glib:finish-func="create_device_finish"
              glib:sync-func="create_device_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="530">Creates a color device.</doc>
        <source-position filename="cd-client.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="532">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="533">identifier for the device</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="534">the scope of the device</doc>
            <type name="ObjectScope" c:type="CdObjectScope"/>
          </parameter>
          <parameter name="properties"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="535">properties to
  set on the device, or %NULL</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="utf8"/>
              <type name="utf8"/>
            </type>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="537">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="5">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="538">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="539">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_device_finish"
              c:identifier="cd_client_create_device_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="458">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="97"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="466">a #CdDevice or %NULL</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="460">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="461">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_device_sync"
              c:identifier="cd_client_create_device_sync"
              version="0.1.2"
              throws="1"
              glib:async-func="create_device">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="499">Creates a color device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="79"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="514">A #CdDevice object, or %NULL for error</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="501">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="502">identifier for the device</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="503">the scope of the device</doc>
            <type name="ObjectScope" c:type="CdObjectScope"/>
          </parameter>
          <parameter name="properties"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="504">properties to
  set on the device, or %NULL</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="utf8"/>
              <type name="utf8"/>
            </type>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="506">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_profile"
              c:identifier="cd_client_create_profile"
              version="0.1.8"
              glib:finish-func="create_profile_finish"
              glib:sync-func="create_profile_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="662">Creates a color profile.</doc>
        <source-position filename="cd-client.h" line="101"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="664">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="665">identifier for the profile</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="666">the scope of the profile</doc>
            <type name="ObjectScope" c:type="CdObjectScope"/>
          </parameter>
          <parameter name="properties"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="667">properties to
  set on the profile, or %NULL</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="utf8"/>
              <type name="utf8"/>
            </type>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="669">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="5">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="670">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="671">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_profile_finish"
              c:identifier="cd_client_create_profile_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="601">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="108"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="609">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="603">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="604">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_profile_for_icc"
              c:identifier="cd_client_create_profile_for_icc"
              version="1.1.1"
              glib:finish-func="create_profile_for_icc_finish"
              glib:sync-func="create_profile_for_icc_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="781">Creates a color profile for an #CdIcc Object.</doc>
        <source-position filename="cd-client.h" line="112"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="783">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="784">#CdIcc object</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </parameter>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="785">the scope of the profile</doc>
            <type name="ObjectScope" c:type="CdObjectScope"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="786">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="787">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="788">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_profile_for_icc_finish"
              c:identifier="cd_client_create_profile_for_icc_finish"
              version="1.1.1"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="833">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="118"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="841">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="835">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="836">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_profile_for_icc_sync"
              c:identifier="cd_client_create_profile_for_icc_sync"
              version="1.1.1"
              throws="1"
              glib:async-func="create_profile_for_icc">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="387">Creates a color profile from a #CdIcc object.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="68"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="400">A #CdProfile object, or %NULL for error</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="389">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="390">A #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </parameter>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="391">the scope of the profile</doc>
            <type name="ObjectScope" c:type="CdObjectScope"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="392">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_profile_sync"
              c:identifier="cd_client_create_profile_sync"
              version="0.1.2"
              throws="1"
              glib:async-func="create_profile">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="326">Creates a color profile.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="61"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="341">A #CdProfile object, or %NULL for error</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="328">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="329">identifier for the device</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="330">the scope of the profile</doc>
            <type name="ObjectScope" c:type="CdObjectScope"/>
          </parameter>
          <parameter name="properties"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="331">properties to
  set on the profile, or %NULL</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="utf8"/>
              <type name="utf8"/>
            </type>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="333">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete_device"
              c:identifier="cd_client_delete_device"
              version="0.1.8"
              glib:finish-func="delete_device_finish"
              glib:sync-func="delete_device_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1166">Deletes a device.</doc>
        <source-position filename="cd-client.h" line="131"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1168">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1169">a #CdDevice</doc>
            <type name="Device" c:type="CdDevice*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1170">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1171">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1172">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete_device_finish"
              c:identifier="cd_client_delete_device_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1122">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="136"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1130">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1124">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1125">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete_device_sync"
              c:identifier="cd_client_delete_device_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="delete_device">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="163">Deletes a color device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="46"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="175">%TRUE is the device was deleted</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="165">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="166">a #CdDevice.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="167">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete_profile"
              c:identifier="cd_client_delete_profile"
              version="0.1.8"
              glib:finish-func="delete_profile_finish"
              glib:sync-func="delete_profile_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1251">Deletes a profile.</doc>
        <source-position filename="cd-client.h" line="140"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1253">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1254">a #CdProfile</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1255">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1256">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1257">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete_profile_finish"
              c:identifier="cd_client_delete_profile_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1207">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="145"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1215">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1209">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1210">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete_profile_sync"
              c:identifier="cd_client_delete_profile_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="delete_profile">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="112">Deletes a color profile.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="124">%TRUE is the profile was deleted</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="114">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="115">a #CdProfile.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="116">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_device"
              c:identifier="cd_client_find_device"
              version="0.1.8"
              glib:finish-func="find_device_finish"
              glib:sync-func="find_device_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1343">Finds a device by an ID.</doc>
        <source-position filename="cd-client.h" line="149"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1345">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1346">a device id</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1347">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1348">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1349">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_device_by_property"
              c:identifier="cd_client_find_device_by_property"
              version="0.1.8"
              glib:finish-func="find_device_by_property_finish"
              glib:sync-func="find_device_by_property_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1434">Finds a color device that has a property value.</doc>
        <source-position filename="cd-client.h" line="158"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1436">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1437">the device property key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1438">the device property value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1439">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1440">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1441">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_device_by_property_finish"
              c:identifier="cd_client_find_device_by_property_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1383">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="164"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1391">a #CdDevice or %NULL</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1385">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1386">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_device_by_property_sync"
              c:identifier="cd_client_find_device_by_property_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="find_device_by_property">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="776">Finds a color device that has a property value.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="103"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="789">A #CdDevice object, or %NULL for error</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="778">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="779">The device property key.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="780">The device property value.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="781">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_device_finish"
              c:identifier="cd_client_find_device_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1292">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="154"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1300">a #CdDevice or %NULL</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1294">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1295">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_device_sync"
              c:identifier="cd_client_find_device_sync"
              version="0.1.0"
              throws="1"
              glib:async-func="find_device">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="722">Finds a color device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="98"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="734">A #CdDevice object, or %NULL for error</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="724">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="725">The device ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="726">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile"
              c:identifier="cd_client_find_profile"
              version="0.1.8"
              glib:finish-func="find_profile_finish"
              glib:sync-func="find_profile_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1527">Finds a profile by an ID.</doc>
        <source-position filename="cd-client.h" line="168"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1529">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1530">a profile id</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1531">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1532">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1533">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_by_filename"
              c:identifier="cd_client_find_profile_by_filename"
              version="0.1.8"
              glib:finish-func="find_profile_by_filename_finish"
              glib:sync-func="find_profile_by_filename_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1618">Finds a profile by a filename.</doc>
        <source-position filename="cd-client.h" line="178"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1620">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1621">a profile filename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1622">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1623">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1624">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_by_filename_finish"
              c:identifier="cd_client_find_profile_by_filename_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1567">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="183"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1575">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1569">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1570">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_by_filename_sync"
              c:identifier="cd_client_find_profile_by_filename_sync"
              version="0.1.3"
              throws="1"
              glib:async-func="find_profile_by_filename">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="271">Finds a color profile from its filename.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="56"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="283">A #CdProfile object, or %NULL for error</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="273">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="274">filename for the profile</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="275">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_by_property"
              c:identifier="cd_client_find_profile_by_property"
              version="0.1.24"
              glib:finish-func="find_profile_by_property_finish"
              glib:sync-func="find_profile_by_property_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2239">Finds a color profile that has a property value.</doc>
        <source-position filename="cd-client.h" line="229"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2241">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2242">the profile property key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2243">the profile property value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2244">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2245">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2246">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_by_property_finish"
              c:identifier="cd_client_find_profile_by_property_finish"
              version="0.1.24"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2188">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="235"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="2196">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2190">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2191">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_by_property_sync"
              c:identifier="cd_client_find_profile_by_property_sync"
              version="0.1.24"
              throws="1"
              glib:async-func="find_profile_by_property">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="942">Finds a color profile that has a property value.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="119"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="955">A #CdProfile object, or %NULL for error</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="944">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="945">The profile property key.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="946">The profile property value.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="947">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_finish"
              c:identifier="cd_client_find_profile_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1476">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="173"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1484">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1478">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1479">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_profile_sync"
              c:identifier="cd_client_find_profile_sync"
              version="0.1.0"
              throws="1"
              glib:async-func="find_profile">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="216">Finds a color profile from its id.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="51"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="228">A #CdProfile object, or %NULL for error</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="218">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="219">id for the profile</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="220">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_sensor"
              c:identifier="cd_client_find_sensor"
              version="0.1.26"
              glib:finish-func="find_sensor_finish"
              glib:sync-func="find_sensor_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2332">Finds a sensor by an ID.</doc>
        <source-position filename="cd-client.h" line="239"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2334">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2335">a sensor id</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2336">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2337">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2338">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_sensor_finish"
              c:identifier="cd_client_find_sensor_finish"
              version="0.1.26"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2281">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="244"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="2289">a #CdSensor or %NULL</doc>
          <type name="Sensor" c:type="CdSensor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2283">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2284">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_sensor_sync"
              c:identifier="cd_client_find_sensor_sync"
              version="0.1.26"
              throws="1"
              glib:async-func="find_sensor">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="998">Finds a color sensor.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="125"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="1010">A #CdSensor object, or %NULL for error</doc>
          <type name="Sensor" c:type="CdSensor*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="1000">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="1001">The sensor ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="1002">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_connected"
              c:identifier="cd_client_get_connected"
              glib:get-property="connected"
              version="0.1.9">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="188">Gets if the client has been connected.</doc>
        <source-position filename="cd-client.h" line="250"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="194">%TRUE if properties are valid</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="190">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_daemon_version"
              c:identifier="cd_client_get_daemon_version"
              glib:get-property="daemon-version"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="131">Get colord daemon version.</doc>
        <source-position filename="cd-client.h" line="252"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="137">string containing the daemon version, e.g. "0.1.0"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="133">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_devices"
              c:identifier="cd_client_get_devices"
              version="0.1.8"
              glib:finish-func="get_devices_finish"
              glib:sync-func="get_devices_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1828">Gets an array of color devices.</doc>
        <source-position filename="cd-client.h" line="196"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1830">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1831">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1832">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1833">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_devices_by_kind"
              c:identifier="cd_client_get_devices_by_kind"
              version="0.1.8"
              glib:finish-func="get_devices_by_kind_finish"
              glib:sync-func="get_devices_by_kind_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1916">Gets an array of color devices.</doc>
        <source-position filename="cd-client.h" line="204"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1918">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1919">the type of device.</doc>
            <type name="DeviceKind" c:type="CdDeviceKind"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1920">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1921">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1922">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_devices_by_kind_finish"
              c:identifier="cd_client_get_devices_by_kind_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1865">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="209"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1873">the devices</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Device"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1867">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1868">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_devices_by_kind_sync"
              c:identifier="cd_client_get_devices_by_kind_sync"
              version="0.1.0"
              throws="1"
              glib:async-func="get_devices_by_kind">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="887">Get an array of the device objects of a specified kind.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="114"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="899">an array of
	 #CdDevice objects.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Device"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="889">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="890">a #CdDeviceKind, e.g. %CD_DEVICE_KIND_DISPLAY</doc>
            <type name="DeviceKind" c:type="CdDeviceKind"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="891">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_devices_finish"
              c:identifier="cd_client_get_devices_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1777">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="200"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1785">the devices</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Device"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1779">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1780">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_devices_sync"
              c:identifier="cd_client_get_devices_sync"
              version="0.1.0"
              throws="1"
              glib:async-func="get_devices">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="560">Get an array of the device objects.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="86"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="571">an array of
	 #CdDevice objects.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Device"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="562">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="563">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_has_server"
              c:identifier="cd_client_get_has_server"
              version="0.1.12">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="206">Gets if the colord server is currently running.
WARNING: This function may block for up to 5 seconds waiting for the daemon
to start if it is not already running.</doc>
        <source-position filename="cd-client.h" line="251"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="214">%TRUE if the colord process is running</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="208">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_profiles"
              c:identifier="cd_client_get_profiles"
              version="0.1.8"
              glib:finish-func="get_profiles_finish"
              glib:sync-func="get_profiles_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2035">Gets an array of color profiles.</doc>
        <source-position filename="cd-client.h" line="213"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2037">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2038">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2039">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2040">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profiles_finish"
              c:identifier="cd_client_get_profiles_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1984">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="217"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1992">the profiles</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Profile"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1986">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1987">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profiles_sync"
              c:identifier="cd_client_get_profiles_sync"
              version="0.1.0"
              throws="1"
              glib:async-func="get_profiles">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="614">Get an array of the profile objects.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="90"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="625">an array of
	 #CdProfile objects.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Profile"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="616">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="617">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_sensors"
              c:identifier="cd_client_get_sensors"
              version="0.1.8"
              glib:finish-func="get_sensors_finish"
              glib:sync-func="get_sensors_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2151">Gets an array of color sensors.</doc>
        <source-position filename="cd-client.h" line="221"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2153">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2154">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2155">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2156">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_sensors_finish"
              c:identifier="cd_client_get_sensors_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2100">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="225"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="2108">the sensors</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Sensor"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2102">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2103">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_sensors_sync"
              c:identifier="cd_client_get_sensors_sync"
              version="0.1.0"
              throws="1"
              glib:async-func="get_sensors">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="668">Get an array of the sensor objects.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="94"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="679">an array of
	 #CdSensor objects.</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Sensor"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="670">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="671">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_standard_space"
              c:identifier="cd_client_get_standard_space"
              version="0.1.8"
              glib:finish-func="get_standard_space_finish"
              glib:sync-func="get_standard_space_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1709">Finds a standard profile space.</doc>
        <source-position filename="cd-client.h" line="187"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1711">a #CdStandardSpace instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="standard_space" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1712">a profile id</doc>
            <type name="StandardSpace" c:type="CdStandardSpace"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1713">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1714">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1715">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_standard_space_finish"
              c:identifier="cd_client_get_standard_space_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1658">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="192"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="1666">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1660">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1661">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_standard_space_sync"
              c:identifier="cd_client_get_standard_space_sync"
              version="0.1.2"
              throws="1"
              glib:async-func="get_standard_space">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="832">Finds a standard colorspace.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="109"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="844">A #CdProfile object, or %NULL for error</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="834">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="standard_space" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="835">standard colorspace value</doc>
            <type name="StandardSpace" c:type="CdStandardSpace"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="836">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_system_model"
              c:identifier="cd_client_get_system_model"
              glib:get-property="system-model"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="169">Get system model.</doc>
        <source-position filename="cd-client.h" line="254"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="175">string containing the system model, e.g. "T61"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="171">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_system_vendor"
              c:identifier="cd_client_get_system_vendor"
              glib:get-property="system-vendor"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="150">Get system vendor.</doc>
        <source-position filename="cd-client.h" line="253"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="156">string containing the system vendor, e.g. "Lenovo"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="152">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="import_profile"
              c:identifier="cd_client_import_profile"
              version="0.1.12"
              glib:finish-func="import_profile_finish"
              glib:sync-func="import_profile_sync">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="1075">Imports a color profile into the users home directory.

If the profile should be accessable for all users, then call
cd_profile_install_system_wide() on the result.</doc>
        <source-position filename="cd-client.h" line="122"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1077">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1078">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1079">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1080">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="1081">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="import_profile_finish"
              c:identifier="cd_client_import_profile_finish"
              version="0.1.12"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="908">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-client.h" line="127"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client.c"
               line="916">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="910">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="911">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="import_profile_sync"
              c:identifier="cd_client_import_profile_sync"
              version="0.1.12"
              throws="1"
              glib:async-func="import_profile">
        <doc xml:space="preserve"
             filename="cd-client-sync.c"
             line="445">Imports a color profile into the users home directory.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-client-sync.h" line="74"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-client-sync.c"
               line="457">A #CdProfile object, or %NULL for error</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="client" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="447">a #CdClient instance.</doc>
            <type name="Client" c:type="CdClient*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="448">A #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-client-sync.c"
                 line="449">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <property name="connected"
                version="0.1.9"
                transfer-ownership="none"
                getter="get_connected"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2456">The if the object path has been connected as is valid for use.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="daemon-version"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_daemon_version"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2414">The daemon version.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="system-model"
                version="1.0.2"
                transfer-ownership="none"
                getter="get_system_model"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2442">The system model.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="system-vendor"
                version="1.0.2"
                transfer-ownership="none"
                getter="get_system_vendor"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2428">The system vendor.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="changed" when="last" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2610">The ::changed signal is emitted when properties may have changed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="device-added" when="last" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2470">The ::device-added signal is emitted when a device is added.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2473">the #CdDevice that was added.</doc>
            <type name="Device"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="device-changed" when="last" version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2501">The ::device-changed signal is emitted when a device is changed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2504">the #CdDevice that was changed.</doc>
            <type name="Device"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="device-removed" when="last" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2486">The ::device-added signal is emitted when a device is removed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2489">the #CdDevice that was removed.</doc>
            <type name="Device"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="profile-added" when="last" version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2516">The ::profile-added signal is emitted when a profile is added.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2519">the #CdProfile that was added.</doc>
            <type name="Profile"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="profile-changed" when="last" version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2547">The ::profile-changed signal is emitted when a profile is changed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2550">the #CdProfile that was removed.</doc>
            <type name="Profile"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="profile-removed" when="last" version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2532">The ::profile-added signal is emitted when a profile is removed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2535">the #CdProfile that was removed.</doc>
            <type name="Profile"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="sensor-added" when="last" version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2563">The ::sensor-added signal is emitted when a sensor is added.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2566">the #CdSensor that was added.</doc>
            <type name="Sensor"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="sensor-changed" when="last" version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2594">The ::sensor-changed signal is emitted when a sensor is changed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2597">the #CdSensor that was removed.</doc>
            <type name="Sensor"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="sensor-removed" when="last" version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-client.c"
             line="2579">The ::sensor-added signal is emitted when a sensor is removed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-client.c"
                 line="2582">the #CdSensor that was removed.</doc>
            <type name="Sensor"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="ClientClass"
            c:type="CdClientClass"
            glib:is-gtype-struct-for="Client">
      <source-position filename="cd-client.h" line="76"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="device_added">
        <callback name="device_added">
          <source-position filename="cd-client.h" line="47"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="device" transfer-ownership="none">
              <type name="Device" c:type="CdDevice*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="device_removed">
        <callback name="device_removed">
          <source-position filename="cd-client.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="device" transfer-ownership="none">
              <type name="Device" c:type="CdDevice*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="device_changed">
        <callback name="device_changed">
          <source-position filename="cd-client.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="device" transfer-ownership="none">
              <type name="Device" c:type="CdDevice*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="profile_added">
        <callback name="profile_added">
          <source-position filename="cd-client.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="profile" transfer-ownership="none">
              <type name="Profile" c:type="CdProfile*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="profile_removed">
        <callback name="profile_removed">
          <source-position filename="cd-client.h" line="55"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="profile" transfer-ownership="none">
              <type name="Profile" c:type="CdProfile*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="profile_changed">
        <callback name="profile_changed">
          <source-position filename="cd-client.h" line="57"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="profile" transfer-ownership="none">
              <type name="Profile" c:type="CdProfile*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="sensor_added">
        <callback name="sensor_added">
          <source-position filename="cd-client.h" line="59"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="sensor" transfer-ownership="none">
              <type name="Sensor" c:type="CdSensor*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="sensor_removed">
        <callback name="sensor_removed">
          <source-position filename="cd-client.h" line="61"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="sensor" transfer-ownership="none">
              <type name="Sensor" c:type="CdSensor*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="sensor_changed">
        <callback name="sensor_changed">
          <source-position filename="cd-client.h" line="63"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
            <parameter name="sensor" transfer-ownership="none">
              <type name="Sensor" c:type="CdSensor*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="changed">
        <callback name="changed">
          <source-position filename="cd-client.h" line="65"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="client" transfer-ownership="none">
              <type name="Client" c:type="CdClient*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_cd_client_reserved1" introspectable="0">
        <callback name="_cd_client_reserved1">
          <source-position filename="cd-client.h" line="68"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_client_reserved2" introspectable="0">
        <callback name="_cd_client_reserved2">
          <source-position filename="cd-client.h" line="69"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_client_reserved3" introspectable="0">
        <callback name="_cd_client_reserved3">
          <source-position filename="cd-client.h" line="70"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_client_reserved4" introspectable="0">
        <callback name="_cd_client_reserved4">
          <source-position filename="cd-client.h" line="71"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_client_reserved5" introspectable="0">
        <callback name="_cd_client_reserved5">
          <source-position filename="cd-client.h" line="72"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_client_reserved6" introspectable="0">
        <callback name="_cd_client_reserved6">
          <source-position filename="cd-client.h" line="73"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_client_reserved7" introspectable="0">
        <callback name="_cd_client_reserved7">
          <source-position filename="cd-client.h" line="74"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_client_reserved8" introspectable="0">
        <callback name="_cd_client_reserved8">
          <source-position filename="cd-client.h" line="75"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ClientError" c:type="CdClientError">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="403">Errors that can be thrown</doc>
      <source-position filename="cd-enum.h" line="425"/>
      <member name="internal"
              value="0"
              c:identifier="CD_CLIENT_ERROR_INTERNAL">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="405">An internal error occurred</doc>
      </member>
      <member name="already_exists"
              value="1"
              c:identifier="CD_CLIENT_ERROR_ALREADY_EXISTS">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="406">The profile already exists</doc>
      </member>
      <member name="failed_to_authenticate"
              value="2"
              c:identifier="CD_CLIENT_ERROR_FAILED_TO_AUTHENTICATE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="407">Authentication failed</doc>
      </member>
      <member name="not_supported"
              value="3"
              c:identifier="CD_CLIENT_ERROR_NOT_SUPPORTED">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="408">Feature not supported</doc>
      </member>
      <member name="not_found"
              value="4"
              c:identifier="CD_CLIENT_ERROR_NOT_FOUND">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="409">Profile or device not found</doc>
      </member>
      <member name="input_invalid"
              value="5"
              c:identifier="CD_CLIENT_ERROR_INPUT_INVALID">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="410">One or more of the parameters is invalid</doc>
      </member>
      <member name="file_invalid"
              value="6"
              c:identifier="CD_CLIENT_ERROR_FILE_INVALID">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="411">The file if invalid</doc>
      </member>
    </enumeration>
    <enumeration name="ColorBlackbodyFlags"
                 version="1.3.5"
                 c:type="CdColorBlackbodyFlags">
      <doc xml:space="preserve"
           filename="cd-color.h"
           line="69">Flags used when returning an RGB color from a temperature.</doc>
      <source-position filename="cd-color.h" line="83"/>
      <member name="none"
              value="0"
              c:identifier="CD_COLOR_BLACKBODY_FLAG_NONE">
        <doc xml:space="preserve"
             filename="cd-color.h"
             line="71">No flags set.</doc>
      </member>
      <member name="use_planckian"
              value="1"
              c:identifier="CD_COLOR_BLACKBODY_FLAG_USE_PLANCKIAN">
        <doc xml:space="preserve"
             filename="cd-color.h"
             line="72">Use Planckian below 5000K</doc>
      </member>
    </enumeration>
    <record name="ColorLab"
            c:type="CdColorLab"
            glib:type-name="CdColorLab"
            glib:get-type="cd_color_lab_get_type"
            c:symbol-prefix="color_lab">
      <source-position filename="cd-color.h" line="43"/>
      <field name="L" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="a" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="b" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <constructor name="new" c:identifier="cd_color_lab_new" version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="321">Allocates a color value.</doc>
        <source-position filename="cd-color.h" line="106"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="326">A newly allocated #CdColorLab object</doc>
          <type name="ColorLab" c:type="CdColorLab*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="cd_color_lab_copy" version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="703">Deep copies a color value.</doc>
        <source-position filename="cd-color.h" line="164"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="705">the source color</doc>
            <type name="ColorLab" c:type="const CdColorLab*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="706">the destination color</doc>
            <type name="ColorLab" c:type="CdColorLab*"/>
          </parameter>
        </parameters>
      </method>
      <method name="delta_e76"
              c:identifier="cd_color_lab_delta_e76"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="547">Calculates the ΔE of two colors using the 1976 formula.</doc>
        <source-position filename="cd-color.h" line="166"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="554">distance metric, where JND ΔE ≈ 2.3</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="p1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="549">Lab value 1</doc>
            <type name="ColorLab" c:type="const CdColorLab*"/>
          </instance-parameter>
          <parameter name="p2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="550">Lab value 2</doc>
            <type name="ColorLab" c:type="const CdColorLab*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="cd_color_lab_dup" version="0.1.32">
        <source-position filename="cd-color.h" line="127"/>
        <return-value transfer-ownership="full">
          <type name="ColorLab" c:type="CdColorLab*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <type name="ColorLab" c:type="const CdColorLab*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="cd_color_lab_free" version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="409">Deallocates a color value.</doc>
        <source-position filename="cd-color.h" line="114"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="411">the color object</doc>
            <type name="ColorLab" c:type="CdColorLab*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set" c:identifier="cd_color_lab_set" version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="526">Initialises a color value.</doc>
        <source-position filename="cd-color.h" line="141"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="528">the destination color</doc>
            <type name="ColorLab" c:type="CdColorLab*"/>
          </instance-parameter>
          <parameter name="L" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="529">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="a" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="530">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="b" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="531">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <record name="ColorRGB"
            c:type="CdColorRGB"
            glib:type-name="CdColorRGB"
            glib:get-type="cd_color_rgb_get_type"
            c:symbol-prefix="color_rgb">
      <source-position filename="cd-color.h" line="61"/>
      <field name="R" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="G" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="B" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <constructor name="new" c:identifier="cd_color_rgb_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="306">Allocates a color value.</doc>
        <source-position filename="cd-color.h" line="107"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="311">A newly allocated #CdColorRGB object</doc>
          <type name="ColorRGB" c:type="CdColorRGB*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="cd_color_rgb_copy" version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="723">Deep copies a color value.</doc>
        <source-position filename="cd-color.h" line="169"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="725">the source color</doc>
            <type name="ColorRGB" c:type="const CdColorRGB*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="726">the destination color</doc>
            <type name="ColorRGB" c:type="CdColorRGB*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="cd_color_rgb_dup" version="0.1.27">
        <source-position filename="cd-color.h" line="128"/>
        <return-value transfer-ownership="full">
          <type name="ColorRGB" c:type="CdColorRGB*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <type name="ColorRGB" c:type="const CdColorRGB*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="cd_color_rgb_free" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="395">Deallocates a color value.</doc>
        <source-position filename="cd-color.h" line="113"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="397">the color object</doc>
            <type name="ColorRGB" c:type="CdColorRGB*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="from_wavelength"
              c:identifier="cd_color_rgb_from_wavelength"
              version="1.3.4">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1222">Set an RGB color which is roughly representative to the wavelength.</doc>
        <source-position filename="cd-color.h" line="197"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="1224">a #CdColorRGB for the RGB result</doc>
            <type name="ColorRGB" c:type="CdColorRGB*"/>
          </instance-parameter>
          <parameter name="wavelength" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="1225">the wavelength roughly between 380nm and 780nm</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="interpolate"
              c:identifier="cd_color_rgb_interpolate"
              version="0.1.26">
        <source-position filename="cd-color.h" line="193"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="p1" transfer-ownership="none">
            <type name="ColorRGB" c:type="const CdColorRGB*"/>
          </instance-parameter>
          <parameter name="p2" transfer-ownership="none">
            <type name="ColorRGB" c:type="const CdColorRGB*"/>
          </parameter>
          <parameter name="index" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="result" transfer-ownership="none">
            <type name="ColorRGB" c:type="CdColorRGB*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set" c:identifier="cd_color_rgb_set" version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="505">Initialises a color value.</doc>
        <source-position filename="cd-color.h" line="137"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="507">the destination color</doc>
            <type name="ColorRGB" c:type="CdColorRGB*"/>
          </instance-parameter>
          <parameter name="R" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="508">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="G" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="509">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="B" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="510">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_rgb8"
              c:identifier="cd_color_rgb_to_rgb8"
              version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="776">Convert from one color format to another.</doc>
        <source-position filename="cd-color.h" line="173"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="778">the source color</doc>
            <type name="ColorRGB" c:type="const CdColorRGB*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="779">the destination color</doc>
            <type name="ColorRGB8" c:type="CdColorRGB8*"/>
          </parameter>
        </parameters>
      </method>
      <function name="array_interpolate"
                c:identifier="cd_color_rgb_array_interpolate"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1342">Interpolate the RGB array to a different size.
This uses the Akima interpolation algorithm unless the array would become
non-monotonic, in which case it falls back to linear interpolation.</doc>
        <source-position filename="cd-color.h" line="206"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1351">An array of size @new_length or %NULL</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="ColorRGB"/>
          </array>
        </return-value>
        <parameters>
          <parameter name="array" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="1344">Input array</doc>
            <array name="GLib.PtrArray" c:type="const GPtrArray*">
              <type name="ColorRGB"/>
            </array>
          </parameter>
          <parameter name="new_length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="1345">the target length of the return array</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
      <function name="array_is_monotonic"
                c:identifier="cd_color_rgb_array_is_monotonic"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1293">Checks the array for monotonicity.</doc>
        <source-position filename="cd-color.h" line="205"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1299">%TRUE if the array is monotonic</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="array" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="1295">Input array</doc>
            <array name="GLib.PtrArray" c:type="const GPtrArray*">
              <type name="ColorRGB"/>
            </array>
          </parameter>
        </parameters>
      </function>
      <function name="array_new"
                c:identifier="cd_color_rgb_array_new"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1327">Creates a new RGB array.</doc>
        <source-position filename="cd-color.h" line="204"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1332">New array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="ColorRGB"/>
          </array>
        </return-value>
      </function>
    </record>
    <record name="ColorRGB8" c:type="CdColorRGB8">
      <source-position filename="cd-color.h" line="37"/>
      <field name="R" writable="1">
        <type name="guint8" c:type="guint8"/>
      </field>
      <field name="G" writable="1">
        <type name="guint8" c:type="guint8"/>
      </field>
      <field name="B" writable="1">
        <type name="guint8" c:type="guint8"/>
      </field>
    </record>
    <record name="ColorSwatch"
            c:type="CdColorSwatch"
            opaque="1"
            glib:type-name="CdColorSwatch"
            glib:get-type="cd_color_swatch_get_type"
            c:symbol-prefix="color_swatch">
      <source-position filename="cd-color.h" line="85"/>
      <constructor name="new"
                   c:identifier="cd_color_swatch_new"
                   version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="366">Allocates a color value.</doc>
        <source-position filename="cd-color.h" line="110"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="371">A newly allocated #CdColorSwatch object</doc>
          <type name="ColorSwatch" c:type="CdColorSwatch*"/>
        </return-value>
      </constructor>
      <method name="dup" c:identifier="cd_color_swatch_dup" version="0.1.32">
        <source-position filename="cd-color.h" line="131"/>
        <return-value transfer-ownership="full">
          <type name="ColorSwatch" c:type="CdColorSwatch*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <type name="ColorSwatch" c:type="const CdColorSwatch*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="cd_color_swatch_free" version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="451">Deallocates a color swatch.</doc>
        <source-position filename="cd-color.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="453">the color object</doc>
            <type name="ColorSwatch" c:type="CdColorSwatch*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name"
              c:identifier="cd_color_swatch_get_name"
              version="0.1.32">
        <source-position filename="cd-color.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="swatch" transfer-ownership="none">
            <type name="ColorSwatch" c:type="const CdColorSwatch*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="cd_color_swatch_get_value"
              version="0.1.32">
        <source-position filename="cd-color.h" line="103"/>
        <return-value transfer-ownership="none">
          <type name="ColorLab" c:type="const CdColorLab*"/>
        </return-value>
        <parameters>
          <instance-parameter name="swatch" transfer-ownership="none">
            <type name="ColorSwatch" c:type="const CdColorSwatch*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_name"
              c:identifier="cd_color_swatch_set_name"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="608">Initialises a swatch name.</doc>
        <source-position filename="cd-color.h" line="153"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="610">the destination swatch</doc>
            <type name="ColorSwatch" c:type="CdColorSwatch*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="611">component name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value"
              c:identifier="cd_color_swatch_set_value"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="626">Initialises a swatch value.</doc>
        <source-position filename="cd-color.h" line="155"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="628">the destination swatch</doc>
            <type name="ColorSwatch" c:type="CdColorSwatch*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="629">component value</doc>
            <type name="ColorLab" c:type="const CdColorLab*"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <record name="ColorUVW"
            c:type="CdColorUVW"
            glib:type-name="CdColorUVW"
            glib:get-type="cd_color_uvw_get_type"
            c:symbol-prefix="color_uvw">
      <source-position filename="cd-color.h" line="67"/>
      <field name="U" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="V" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="W" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <constructor name="new" c:identifier="cd_color_uvw_new" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="351">Allocates a color value.</doc>
        <source-position filename="cd-color.h" line="109"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="356">A newly allocated #CdColorUVW object</doc>
          <type name="ColorUVW" c:type="CdColorUVW*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="cd_color_uvw_copy" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="683">Deep copies a color value.</doc>
        <source-position filename="cd-color.h" line="162"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="685">the source color</doc>
            <type name="ColorUVW" c:type="const CdColorUVW*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="686">the destination color</doc>
            <type name="ColorUVW" c:type="CdColorUVW*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="cd_color_uvw_dup" version="1.1.6">
        <source-position filename="cd-color.h" line="130"/>
        <return-value transfer-ownership="full">
          <type name="ColorUVW" c:type="CdColorUVW*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <type name="ColorUVW" c:type="const CdColorUVW*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="cd_color_uvw_free" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="437">Deallocates a color value.</doc>
        <source-position filename="cd-color.h" line="116"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="439">the color object</doc>
            <type name="ColorUVW" c:type="CdColorUVW*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_chroma_difference"
              c:identifier="cd_color_uvw_get_chroma_difference"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="876">Gets the chromaticity distance in the CIE 1960 UCS.</doc>
        <source-position filename="cd-color.h" line="186"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="883">The Euclidean distance</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="p1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="878">color</doc>
            <type name="ColorUVW" c:type="const CdColorUVW*"/>
          </instance-parameter>
          <parameter name="p2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="879">color</doc>
            <type name="ColorUVW" c:type="const CdColorUVW*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set" c:identifier="cd_color_uvw_set" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="587">Initialises a color value.</doc>
        <source-position filename="cd-color.h" line="149"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="589">the destination color</doc>
            <type name="ColorUVW" c:type="CdColorUVW*"/>
          </instance-parameter>
          <parameter name="U" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="590">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="V" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="591">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="W" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="592">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_planckian_locus"
              c:identifier="cd_color_uvw_set_planckian_locus"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="893">Sets the CIEUVW color from a Planckian locus of specific temperature.</doc>
        <source-position filename="cd-color.h" line="184"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="895">destination color</doc>
            <type name="ColorUVW" c:type="CdColorUVW*"/>
          </instance-parameter>
          <parameter name="temp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="896">temperature in Kelvin</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <record name="ColorXYZ"
            c:type="CdColorXYZ"
            glib:type-name="CdColorXYZ"
            glib:get-type="cd_color_xyz_get_type"
            c:symbol-prefix="color_xyz">
      <source-position filename="cd-color.h" line="55"/>
      <field name="X" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="Y" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="Z" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <constructor name="new" c:identifier="cd_color_xyz_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="291">Allocates a color value.</doc>
        <source-position filename="cd-color.h" line="105"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="296">A newly allocated #CdColorXYZ object</doc>
          <type name="ColorXYZ" c:type="CdColorXYZ*"/>
        </return-value>
      </constructor>
      <method name="clear" c:identifier="cd_color_xyz_clear" version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="487">Initialises a color value.</doc>
        <source-position filename="cd-color.h" line="168"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="489">the destination color</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="copy" c:identifier="cd_color_xyz_copy" version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="643">Deep copies a color value.</doc>
        <source-position filename="cd-color.h" line="158"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="645">the source color</doc>
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="646">the destination color</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="cd_color_xyz_dup" version="0.1.27">
        <source-position filename="cd-color.h" line="126"/>
        <return-value transfer-ownership="full">
          <type name="ColorXYZ" c:type="CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="cd_color_xyz_free" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="381">Deallocates a color value.</doc>
        <source-position filename="cd-color.h" line="112"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="383">the color object</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="normalize"
              c:identifier="cd_color_xyz_normalize"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="832">Normalizes @src to y=1.0</doc>
        <source-position filename="cd-color.h" line="200"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="834">the source color</doc>
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </instance-parameter>
          <parameter name="max" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="835">the destination color</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set" c:identifier="cd_color_xyz_set" version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="466">Initialises a color value.</doc>
        <source-position filename="cd-color.h" line="133"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="468">the destination color</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </instance-parameter>
          <parameter name="X" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="469">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="Y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="470">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="Z" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="471">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_cct" c:identifier="cd_color_xyz_to_cct" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="849">Gets the correlated color temperature for the XYZ value.</doc>
        <source-position filename="cd-color.h" line="199"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="851">the source color</doc>
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="to_uvw" c:identifier="cd_color_xyz_to_uvw" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="964">Convert from one color format to another.</doc>
        <source-position filename="cd-color.h" line="179"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="966">the source color</doc>
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </instance-parameter>
          <parameter name="whitepoint" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="967">the whitepoint</doc>
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="968">the destination color</doc>
            <type name="ColorUVW" c:type="CdColorUVW*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_yxy"
              c:identifier="cd_color_xyz_to_yxy"
              version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="920">Convert from one color format to another.</doc>
        <source-position filename="cd-color.h" line="177"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="922">the source color</doc>
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="923">the destination color</doc>
            <type name="ColorYxy" c:type="CdColorYxy*"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <record name="ColorYxy"
            c:type="CdColorYxy"
            glib:type-name="CdColorYxy"
            glib:get-type="cd_color_yxy_get_type"
            c:symbol-prefix="color_yxy">
      <source-position filename="cd-color.h" line="49"/>
      <field name="Y" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="x" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="y" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <constructor name="new" c:identifier="cd_color_yxy_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="336">Allocates a color value.</doc>
        <source-position filename="cd-color.h" line="108"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="341">A newly allocated #CdColorYxy object</doc>
          <type name="ColorYxy" c:type="CdColorYxy*"/>
        </return-value>
      </constructor>
      <method name="copy" c:identifier="cd_color_yxy_copy" version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="663">Deep copies a color value.</doc>
        <source-position filename="cd-color.h" line="160"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="665">the source color</doc>
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="666">the destination color</doc>
            <type name="ColorYxy" c:type="CdColorYxy*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="cd_color_yxy_dup" version="0.1.27">
        <source-position filename="cd-color.h" line="129"/>
        <return-value transfer-ownership="full">
          <type name="ColorYxy" c:type="CdColorYxy*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="cd_color_yxy_free" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="423">Deallocates a color value.</doc>
        <source-position filename="cd-color.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="425">the color object</doc>
            <type name="ColorYxy" c:type="CdColorYxy*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set" c:identifier="cd_color_yxy_set" version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="566">Initialises a color value.</doc>
        <source-position filename="cd-color.h" line="145"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="568">the destination color</doc>
            <type name="ColorYxy" c:type="CdColorYxy*"/>
          </instance-parameter>
          <parameter name="Y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="569">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="x" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="570">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="571">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_uvw" c:identifier="cd_color_yxy_to_uvw" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="990">Convert from one color format to another.</doc>
        <source-position filename="cd-color.h" line="182"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="992">the source color</doc>
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="993">the destination color</doc>
            <type name="ColorUVW" c:type="CdColorUVW*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_xyz"
              c:identifier="cd_color_yxy_to_xyz"
              version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="797">Convert from one color format to another.</doc>
        <source-position filename="cd-color.h" line="175"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="799">the source color</doc>
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-color.c"
                 line="800">the destination color</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <enumeration name="Colorspace" c:type="CdColorspace">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="116">The known colorspace.</doc>
      <source-position filename="cd-enum.h" line="135"/>
      <member name="unknown" value="0" c:identifier="CD_COLORSPACE_UNKNOWN">
      </member>
      <member name="xyz" value="1" c:identifier="CD_COLORSPACE_XYZ">
      </member>
      <member name="lab" value="2" c:identifier="CD_COLORSPACE_LAB">
      </member>
      <member name="luv" value="3" c:identifier="CD_COLORSPACE_LUV">
      </member>
      <member name="ycbcr" value="4" c:identifier="CD_COLORSPACE_YCBCR">
      </member>
      <member name="yxy" value="5" c:identifier="CD_COLORSPACE_YXY">
      </member>
      <member name="rgb" value="6" c:identifier="CD_COLORSPACE_RGB">
      </member>
      <member name="gray" value="7" c:identifier="CD_COLORSPACE_GRAY">
      </member>
      <member name="hsv" value="8" c:identifier="CD_COLORSPACE_HSV">
      </member>
      <member name="cmyk" value="9" c:identifier="CD_COLORSPACE_CMYK">
      </member>
      <member name="cmy" value="10" c:identifier="CD_COLORSPACE_CMY">
      </member>
    </enumeration>
    <constant name="DEVICE_METADATA_OUTPUT_EDID_MD5"
              value="OutputEdidMd5"
              c:type="CD_DEVICE_METADATA_OUTPUT_EDID_MD5">
      <source-position filename="cd-enum.h" line="489"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_METADATA_OUTPUT_PRIORITY"
              value="OutputPriority"
              c:type="CD_DEVICE_METADATA_OUTPUT_PRIORITY">
      <source-position filename="cd-enum.h" line="490"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_METADATA_OUTPUT_PRIORITY_PRIMARY"
              value="primary"
              c:type="CD_DEVICE_METADATA_OUTPUT_PRIORITY_PRIMARY">
      <source-position filename="cd-enum.h" line="491"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_METADATA_OUTPUT_PRIORITY_SECONDARY"
              value="secondary"
              c:type="CD_DEVICE_METADATA_OUTPUT_PRIORITY_SECONDARY">
      <source-position filename="cd-enum.h" line="492"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_METADATA_OWNER_CMDLINE"
              value="OwnerCmdline"
              c:type="CD_DEVICE_METADATA_OWNER_CMDLINE">
      <source-position filename="cd-enum.h" line="493"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_METADATA_XRANDR_NAME"
              value="XRANDR_name"
              c:type="CD_DEVICE_METADATA_XRANDR_NAME">
      <source-position filename="cd-enum.h" line="488"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_COLORSPACE"
              value="Colorspace"
              c:type="CD_DEVICE_PROPERTY_COLORSPACE">
      <source-position filename="cd-enum.h" line="500"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_CREATED"
              value="Created"
              c:type="CD_DEVICE_PROPERTY_CREATED">
      <source-position filename="cd-enum.h" line="504"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_EMBEDDED"
              value="Embedded"
              c:type="CD_DEVICE_PROPERTY_EMBEDDED">
      <source-position filename="cd-enum.h" line="513"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_ENABLED"
              value="Enabled"
              c:type="CD_DEVICE_PROPERTY_ENABLED">
      <source-position filename="cd-enum.h" line="512"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_FORMAT"
              value="Format"
              c:type="CD_DEVICE_PROPERTY_FORMAT">
      <source-position filename="cd-enum.h" line="501"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_ID"
              value="DeviceId"
              c:type="CD_DEVICE_PROPERTY_ID">
      <source-position filename="cd-enum.h" line="507"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_KIND"
              value="Kind"
              c:type="CD_DEVICE_PROPERTY_KIND">
      <source-position filename="cd-enum.h" line="497"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_METADATA"
              value="Metadata"
              c:type="CD_DEVICE_PROPERTY_METADATA">
      <source-position filename="cd-enum.h" line="506"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_MODE"
              value="Mode"
              c:type="CD_DEVICE_PROPERTY_MODE">
      <source-position filename="cd-enum.h" line="502"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_MODEL"
              value="Model"
              c:type="CD_DEVICE_PROPERTY_MODEL">
      <source-position filename="cd-enum.h" line="496"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_MODIFIED"
              value="Modified"
              c:type="CD_DEVICE_PROPERTY_MODIFIED">
      <source-position filename="cd-enum.h" line="505"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_OWNER"
              value="Owner"
              c:type="CD_DEVICE_PROPERTY_OWNER">
      <source-position filename="cd-enum.h" line="509"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_PROFILES"
              value="Profiles"
              c:type="CD_DEVICE_PROPERTY_PROFILES">
      <source-position filename="cd-enum.h" line="503"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_PROFILING_INHIBITORS"
              value="ProfilingInhibitors"
              c:type="CD_DEVICE_PROPERTY_PROFILING_INHIBITORS">
      <source-position filename="cd-enum.h" line="511"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_SCOPE"
              value="Scope"
              c:type="CD_DEVICE_PROPERTY_SCOPE">
      <source-position filename="cd-enum.h" line="508"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_SEAT"
              value="Seat"
              c:type="CD_DEVICE_PROPERTY_SEAT">
      <source-position filename="cd-enum.h" line="510"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_SERIAL"
              value="Serial"
              c:type="CD_DEVICE_PROPERTY_SERIAL">
      <source-position filename="cd-enum.h" line="499"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="DEVICE_PROPERTY_VENDOR"
              value="Vendor"
              c:type="CD_DEVICE_PROPERTY_VENDOR">
      <source-position filename="cd-enum.h" line="498"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="Device"
           c:symbol-prefix="device"
           c:type="CdDevice"
           parent="GObject.Object"
           glib:type-name="CdDevice"
           glib:get-type="cd_device_get_type"
           glib:type-struct="DeviceClass">
      <source-position filename="cd-device.h" line="57"/>
      <constructor name="new" c:identifier="cd_device_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2257">Creates a new #CdDevice object.</doc>
        <source-position filename="cd-device.h" line="60"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="2262">a new CdDevice object.</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
      </constructor>
      <constructor name="new_with_object_path"
                   c:identifier="cd_device_new_with_object_path"
                   version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2274">Creates a new #CdDevice object with a known object path.</doc>
        <source-position filename="cd-device.h" line="61"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="2280">a new device object.</doc>
          <type name="Device" c:type="CdDevice*"/>
        </return-value>
        <parameters>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="2276">The colord object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="error_from_string"
                c:identifier="cd_device_error_from_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="812">Converts a string to a #CdDeviceError.</doc>
        <source-position filename="cd-enum.h" line="577"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="817">enumerated value</doc>
          <type name="DeviceError" c:type="CdDeviceError"/>
        </return-value>
        <parameters>
          <parameter name="error_desc" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="error_quark"
                c:identifier="cd_device_error_quark"
                version="0.1.0">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="116">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="error_to_string"
                c:identifier="cd_device_error_to_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="779">Converts a #CdDeviceError to a string.</doc>
        <source-position filename="cd-enum.h" line="576"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="784">identifier string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="error_enum" transfer-ownership="none">
            <type name="DeviceError" c:type="CdDeviceError"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_from_string"
                c:identifier="cd_device_kind_from_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="289">Converts a string to a #CdDeviceKind.</doc>
        <source-position filename="cd-enum.h" line="543"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="294">enumerated value</doc>
          <type name="DeviceKind" c:type="CdDeviceKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_profile_kind"
                c:identifier="cd_device_kind_to_profile_kind"
                version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="606">Gets the most suitable profile kind for a device kind.</doc>
        <source-position filename="cd-enum.h" line="570"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="612">a #CdProfileKind</doc>
          <type name="ProfileKind" c:type="CdProfileKind"/>
        </return-value>
        <parameters>
          <parameter name="device_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-enum.c"
                 line="608">A #CdDeviceKind</doc>
            <type name="DeviceKind" c:type="CdDeviceKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="cd_device_kind_to_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="274">Converts a #CdDeviceKind to a string.</doc>
        <source-position filename="cd-enum.h" line="542"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="279">identifier string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind_enum" transfer-ownership="none">
            <type name="DeviceKind" c:type="CdDeviceKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="mode_from_string"
                c:identifier="cd_device_mode_from_string">
        <source-position filename="cd-enum.h" line="553"/>
        <return-value transfer-ownership="none">
          <type name="DeviceMode" c:type="CdDeviceMode"/>
        </return-value>
        <parameters>
          <parameter name="device_mode" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="mode_to_string" c:identifier="cd_device_mode_to_string">
        <source-position filename="cd-enum.h" line="552"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="device_mode" transfer-ownership="none">
            <type name="DeviceMode" c:type="CdDeviceMode"/>
          </parameter>
        </parameters>
      </function>
      <function name="relation_from_string"
                c:identifier="cd_device_relation_from_string">
        <source-position filename="cd-enum.h" line="555"/>
        <return-value transfer-ownership="none">
          <type name="DeviceRelation" c:type="CdDeviceRelation"/>
        </return-value>
        <parameters>
          <parameter name="device_relation" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="relation_to_string"
                c:identifier="cd_device_relation_to_string">
        <source-position filename="cd-enum.h" line="554"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="device_relation" transfer-ownership="none">
            <type name="DeviceRelation" c:type="CdDeviceRelation"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="changed">
        <source-position filename="cd-device.h" line="46"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="add_profile"
              c:identifier="cd_device_add_profile"
              version="0.1.8"
              glib:finish-func="add_profile_finish"
              glib:sync-func="add_profile_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1106">Adds a profile to a device.</doc>
        <source-position filename="cd-device.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1108">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="relation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1109">a #CdDeviceRelation, e.g. #CD_DEVICE_RELATION_HARD</doc>
            <type name="DeviceRelation" c:type="CdDeviceRelation"/>
          </parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1110">a #CdProfile instance</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1111">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1112">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1113">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_profile_finish"
              c:identifier="cd_device_add_profile_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1062">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="88"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1070">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1064">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1065">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_profile_sync"
              c:identifier="cd_device_add_profile_sync"
              version="0.1.3"
              throws="1"
              glib:async-func="add_profile">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="170">Adds a profile to a device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="46"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="183">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="172">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="relation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="173">a #CdDeviceRelation, e.g. #CD_DEVICE_RELATION_HARD</doc>
            <type name="DeviceRelation" c:type="CdDeviceRelation"/>
          </parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="174">a #CdProfile instance</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="175">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect"
              c:identifier="cd_device_connect"
              version="0.1.8"
              glib:finish-func="connect_finish"
              glib:sync-func="connect_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="909">Connects to the object and fills up initial properties.</doc>
        <source-position filename="cd-device.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="911">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="912">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="913">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="914">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_finish"
              c:identifier="cd_device_connect_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="710">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="718">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="712">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="713">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_sync"
              c:identifier="cd_device_connect_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="connect">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="62">Connects to the object and fills up initial properties.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="73">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="64">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="65">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="cd_device_equal" version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1829">Tests two devices for equality.</doc>
        <source-position filename="cd-device.h" line="182"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1836">%TRUE if the devices are the same device</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1831">one #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="device2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1832">another #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_colorspace"
              c:identifier="cd_device_get_colorspace"
              glib:get-property="colorspace"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="337">Gets the device colorspace.</doc>
        <source-position filename="cd-device.h" line="164"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="343">A colorspace, e.g. %CD_COLORSPACE_RGB</doc>
          <type name="Colorspace" c:type="CdColorspace"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="339">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_connected"
              c:identifier="cd_device_get_connected"
              glib:get-property="connected"
              version="0.1.9">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1776">Gets if the device has been connected.</doc>
        <source-position filename="cd-device.h" line="180"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1782">%TRUE if properties are valid</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1778">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_created"
              c:identifier="cd_device_get_created"
              glib:get-property="created"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="280">Gets the device creation date.</doc>
        <source-position filename="cd-device.h" line="161"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="286">A value in microseconds, or 0 for invalid</doc>
          <type name="guint64" c:type="guint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="282">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_default_profile"
              c:identifier="cd_device_get_default_profile"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="473">Gets the default device profile. A profile will not be returned
if the device is being profiled or is disabled.</doc>
        <source-position filename="cd-device.h" line="171"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="480">A #CdProfile's or NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="475">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_embedded"
              c:identifier="cd_device_get_embedded"
              glib:get-property="embedded"
              version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="394">Returns if the device is embedded in the computer and cannot be
removed.</doc>
        <source-position filename="cd-device.h" line="167"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="401">%TRUE if embedded.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="396">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enabled"
              c:identifier="cd_device_get_enabled"
              glib:get-property="enabled"
              version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="375">Gets the device enabled state.</doc>
        <source-position filename="cd-device.h" line="166"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="381">%TRUE if the device is enabled</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="377">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_format"
              c:identifier="cd_device_get_format"
              glib:get-property="format"
              version="0.1.9">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="242">Gets the device format.</doc>
        <source-position filename="cd-device.h" line="159"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="248">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="244">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id"
              c:identifier="cd_device_get_id"
              glib:get-property="id"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="147">Gets the device ID.</doc>
        <source-position filename="cd-device.h" line="154"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="153">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="149">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="cd_device_get_kind"
              glib:get-property="kind"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="318">Gets the device kind.</doc>
        <source-position filename="cd-device.h" line="163"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="324">A device kind, e.g. %CD_DEVICE_KIND_DISPLAY</doc>
          <type name="DeviceKind" c:type="CdDeviceKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="320">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata"
              c:identifier="cd_device_get_metadata"
              version="0.1.5">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="526">Returns the device metadata.</doc>
        <source-position filename="cd-device.h" line="173"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="532">a
              #GHashTable.</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="utf8"/>
            <type name="utf8"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="528">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata_item"
              c:identifier="cd_device_get_metadata_item"
              version="0.1.5">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="546">Returns the device metadata for a specific key.</doc>
        <source-position filename="cd-device.h" line="174"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="553">the metadata value, or %NULL if not set.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="548">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="549">a key for the metadata dictionary</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_mode"
              c:identifier="cd_device_get_mode"
              glib:get-property="mode"
              version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="356">Gets the device mode.</doc>
        <source-position filename="cd-device.h" line="165"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="362">A colorspace, e.g. %CD_DEVICE_MODE_VIRTUAL</doc>
          <type name="DeviceMode" c:type="CdDeviceMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="358">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_model"
              c:identifier="cd_device_get_model"
              glib:get-property="model"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="166">Gets the device model.</doc>
        <source-position filename="cd-device.h" line="155"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="172">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="168">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_modified"
              c:identifier="cd_device_get_modified"
              glib:get-property="modified"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="299">Gets the device modified date.</doc>
        <source-position filename="cd-device.h" line="162"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="305">A value in microseconds, or 0 for invalid</doc>
          <type name="guint64" c:type="guint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="301">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_object_path"
              c:identifier="cd_device_get_object_path"
              glib:get-property="object-path"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1758">Gets the object path for the device.</doc>
        <source-position filename="cd-device.h" line="172"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1764">the object path, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1760">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_owner"
              c:identifier="cd_device_get_owner"
              glib:get-property="owner"
              version="0.1.13">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="433">Gets the device owner.</doc>
        <source-position filename="cd-device.h" line="169"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="439">The UID of the user that created the device</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="435">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_profile_for_qualifiers"
              c:identifier="cd_device_get_profile_for_qualifiers"
              version="0.1.8"
              glib:finish-func="get_profile_for_qualifiers_finish"
              glib:sync-func="get_profile_for_qualifiers_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1535">Gets the prefered profile for some qualifiers.</doc>
        <source-position filename="cd-device.h" line="134"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1537">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="qualifiers" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1538">a set of qualifiers that can included wildcards</doc>
            <type name="utf8" c:type="const gchar**"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1539">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1540">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1541">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profile_for_qualifiers_finish"
              c:identifier="cd_device_get_profile_for_qualifiers_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1484">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="139"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1492">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1486">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1487">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profile_for_qualifiers_sync"
              c:identifier="cd_device_get_profile_for_qualifiers_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="get_profile_for_qualifiers">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="280">Gets the prefered profile for some qualifiers.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="57"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="292">a #CdProfile or %NULL</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="282">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="qualifiers" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="283">a set of qualifiers that can included wildcards</doc>
            <type name="utf8" c:type="const gchar**"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="284">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profile_relation"
              c:identifier="cd_device_get_profile_relation"
              version="0.1.8"
              glib:finish-func="get_profile_relation_finish"
              glib:sync-func="get_profile_relation_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1634">Gets the property relationship to the device.</doc>
        <source-position filename="cd-device.h" line="143"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1636">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1637">a #CdProfile instance</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1638">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1639">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1640">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profile_relation_finish"
              c:identifier="cd_device_get_profile_relation_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1582">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="148"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1590">success</doc>
          <type name="DeviceRelation" c:type="CdDeviceRelation"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1584">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1585">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profile_relation_sync"
              c:identifier="cd_device_get_profile_relation_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="get_profile_relation">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="494">Gets the property relationship to the device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="74"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="506">%TRUE for success, else %FALSE.</doc>
          <type name="DeviceRelation" c:type="CdDeviceRelation"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="496">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="497">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="498">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profiles"
              c:identifier="cd_device_get_profiles"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="452">Gets the device profiles.</doc>
        <source-position filename="cd-device.h" line="170"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="458">An array of #CdProfile's</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Profile"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="454">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_profiling_inhibitors"
              c:identifier="cd_device_get_profiling_inhibitors"
              glib:get-property="profiling-inhibitors"
              version="0.1.17">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="261">Gets any profiling inhibitors for the device.</doc>
        <source-position filename="cd-device.h" line="160"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="267">A strv, or %NULL for invalid</doc>
          <array c:type="const gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="263">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scope"
              c:identifier="cd_device_get_scope"
              glib:get-property="scope"
              version="0.1.10">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="414">Gets the device scope.</doc>
        <source-position filename="cd-device.h" line="168"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="420">An object scope, e.g. %CD_OBJECT_SCOPE_TEMP</doc>
          <type name="ObjectScope" c:type="CdObjectScope"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="416">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_seat"
              c:identifier="cd_device_get_seat"
              glib:get-property="seat"
              version="0.1.24">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="223">Gets the device seat identifier.</doc>
        <source-position filename="cd-device.h" line="158"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="229">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="225">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_serial"
              c:identifier="cd_device_get_serial"
              glib:get-property="serial"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="204">Gets the device serial number.</doc>
        <source-position filename="cd-device.h" line="157"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="210">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="206">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vendor"
              c:identifier="cd_device_get_vendor"
              glib:get-property="vendor"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="185">Gets the device vendor.</doc>
        <source-position filename="cd-device.h" line="156"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="191">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="187">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="make_profile_default"
              c:identifier="cd_device_make_profile_default"
              version="0.1.8"
              glib:finish-func="make_profile_default_finish"
              glib:sync-func="make_profile_default_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1279">Makes an already added profile default for a device.</doc>
        <source-position filename="cd-device.h" line="101"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1281">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1282">a #CdProfile instance</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1283">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1284">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1285">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="make_profile_default_finish"
              c:identifier="cd_device_make_profile_default_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1235">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="106"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1243">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1237">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1238">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="make_profile_default_sync"
              c:identifier="cd_device_make_profile_default_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="make_profile_default">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="334">Makes an already added profile default for a device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="346">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="336">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="337">a #CdProfile instance</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="338">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="profiling_inhibit"
              c:identifier="cd_device_profiling_inhibit"
              version="0.1.8"
              glib:finish-func="profiling_inhibit_finish"
              glib:sync-func="profiling_inhibit_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1364">Sets up the device for profiling and causes no profiles to be
returned if cd_device_get_profile_for_qualifiers_sync() is used.</doc>
        <source-position filename="cd-device.h" line="110"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1366">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1367">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1368">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1369">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="profiling_inhibit_finish"
              c:identifier="cd_device_profiling_inhibit_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1320">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="114"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1328">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1322">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1323">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="profiling_inhibit_sync"
              c:identifier="cd_device_profiling_inhibit_sync"
              version="0.1.1"
              throws="1"
              glib:async-func="profiling_inhibit">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="388">Sets up the device for profiling and causes no profiles to be
returned if cd_device_get_profile_for_qualifiers_sync() is used.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="400">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="390">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="391">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="profiling_uninhibit"
              c:identifier="cd_device_profiling_uninhibit"
              version="0.1.8"
              glib:finish-func="profiling_uninhibit_finish"
              glib:sync-func="profiling_uninhibit_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1446">Restores the device after profiling and causes normal profiles to be
returned if cd_device_get_profile_for_qualifiers_sync() is used.</doc>
        <source-position filename="cd-device.h" line="127"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1448">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1449">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1450">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1451">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="profiling_uninhibit_finish"
              c:identifier="cd_device_profiling_uninhibit_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1402">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="131"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1410">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1404">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1405">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="profiling_uninhibit_sync"
              c:identifier="cd_device_profiling_uninhibit_sync"
              version="0.1.1"
              throws="1"
              glib:async-func="profiling_uninhibit">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="441">Sets up the device for profiling and causes no profiles to be
returned if cd_device_get_profile_for_qualifiers_sync() is used.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="453">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="443">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="444">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_profile"
              c:identifier="cd_device_remove_profile"
              version="0.1.8"
              glib:finish-func="remove_profile_finish"
              glib:sync-func="remove_profile_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1194">Removes a profile from a device.</doc>
        <source-position filename="cd-device.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1196">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1197">a #CdProfile instance</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1198">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1199">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1200">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_profile_finish"
              c:identifier="cd_device_remove_profile_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1150">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1158">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1152">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1153">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_profile_sync"
              c:identifier="cd_device_remove_profile_sync"
              version="0.1.2"
              throws="1"
              glib:async-func="remove_profile">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="226">Removes a profile from a device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="52"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="238">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="228">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="229">a #CdProfile instance</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="230">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_colorspace_sync"
              c:identifier="cd_device_set_colorspace_sync"
              version="0.1.1"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="703">Sets the device kind.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="107"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="715">#TRUE for success, else #FALSE and @error is used</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="705">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="colorspace" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="706">The device colorspace, e.g. #CD_COLORSPACE_RGB</doc>
            <type name="Colorspace" c:type="CdColorspace"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="707">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enabled"
              c:identifier="cd_device_set_enabled"
              version="0.1.26"
              glib:finish-func="set_enabled_finish"
              glib:sync-func="set_enabled_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1719">Enables or disables a device.</doc>
        <source-position filename="cd-device.h" line="118"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1721">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1722">the enabled state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1723">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1724">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1725">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enabled_finish"
              c:identifier="cd_device_set_enabled_finish"
              version="0.1.26"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1675">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="123"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1683">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1677">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1678">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enabled_sync"
              c:identifier="cd_device_set_enabled_sync"
              version="0.1.26"
              throws="1"
              glib:async-func="set_enabled">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="548">Enables or disables a device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="79"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="560">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="550">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="551">the enabled state</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="552">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind_sync"
              c:identifier="cd_device_set_kind_sync"
              version="0.1.0"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="675">Sets the device kind.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="102"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="687">#TRUE for success, else #FALSE and @error is used</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="677">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="678">The device kind, e.g. #CD_DEVICE_KIND_DISPLAY</doc>
            <type name="DeviceKind" c:type="CdDeviceKind"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="679">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_mode_sync"
              c:identifier="cd_device_set_mode_sync"
              version="0.1.2"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="731">Sets the device mode.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="112"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="743">#TRUE for success, else #FALSE and @error is used</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="733">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="734">The device kind, e.g. #CD_DEVICE_MODE_VIRTUAL</doc>
            <type name="DeviceMode" c:type="CdDeviceMode"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="735">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_model_sync"
              c:identifier="cd_device_set_model_sync"
              version="0.1.0"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="591">Sets the device model.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="87"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="603">#TRUE for success, else #FALSE and @error is used</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="593">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="594">The model.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="595">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_object_path"
              c:identifier="cd_device_set_object_path"
              glib:set-property="object-path"
              version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="129">Sets the object path of the device.</doc>
        <source-position filename="cd-device.h" line="178"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="131">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="132">The colord object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property"
              c:identifier="cd_device_set_property"
              version="0.1.8"
              glib:finish-func="set_property_finish"
              glib:sync-func="set_property_sync">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1018">Sets a property on the device.</doc>
        <source-position filename="cd-device.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1020">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1021">a property key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1022">a property key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1023">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1024">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1025">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property_finish"
              c:identifier="cd_device_set_property_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="953">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-device.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="961">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="955">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="956">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property_sync"
              c:identifier="cd_device_set_property_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="set_property">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="114">Sets an object property.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="127">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="116">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="117">The property key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="118">The property value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="119">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_serial_sync"
              c:identifier="cd_device_set_serial_sync"
              version="0.1.1"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="619">Sets the device serial number.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="631">#TRUE for success, else #FALSE and @error is used</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="621">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="622">The string value.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="623">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_vendor_sync"
              c:identifier="cd_device_set_vendor_sync"
              version="0.1.1"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-device-sync.c"
             line="647">Sets the device vendor.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-device-sync.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-device-sync.c"
               line="659">#TRUE for success, else #FALSE and @error is used</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="649">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="650">The string value.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-device-sync.c"
                 line="651">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string"
              c:identifier="cd_device_to_string"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1794">Converts the device to a string description.</doc>
        <source-position filename="cd-device.h" line="181"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-device.c"
               line="1800">text representation of #CdDevice</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="device" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-device.c"
                 line="1796">a #CdDevice instance.</doc>
            <type name="Device" c:type="CdDevice*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="colorspace"
                version="0.1.1"
                transfer-ownership="none"
                getter="get_colorspace"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2124">The device colorspace, e.g. %CD_COLORSPACE_RGB.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="connected"
                version="0.1.9"
                transfer-ownership="none"
                getter="get_connected"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1979">The if the object path has been connected as is valid for use.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="created"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_created"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1992">The time the device was created.</doc>
        <type name="guint64" c:type="guint64"/>
      </property>
      <property name="embedded"
                version="0.1.27"
                transfer-ownership="none"
                getter="get_embedded"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2201">If the device is embedded in the device and cannot be removed.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="enabled"
                version="0.1.26"
                transfer-ownership="none"
                getter="get_enabled"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2172">The device enabled state.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="format"
                version="0.1.9"
                transfer-ownership="none"
                getter="get_format"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2070">The device format.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="id"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_id"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2018">The device ID.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="kind"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_kind"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2109">The device kind, e.g. %CD_DEVICE_KIND_DISPLAY.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="mode"
                version="0.1.2"
                transfer-ownership="none"
                getter="get_mode"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2140">The device colorspace, e.g. %CD_DEVICE_MODE_VIRTUAL.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="model"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_model"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2031">The device model.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="modified"
                version="0.1.1"
                transfer-ownership="none"
                getter="get_modified"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2005">The last time the device was modified.</doc>
        <type name="guint64" c:type="guint64"/>
      </property>
      <property name="object-path"
                version="0.1.8"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_object_path"
                getter="get_object_path"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1966">The object path of the remote object</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="owner"
                version="0.1.13"
                transfer-ownership="none"
                getter="get_owner"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2186">The device owner, e.g. 500.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="profiling-inhibitors"
                transfer-ownership="none"
                getter="get_profiling_inhibitors">
        <array>
          <type name="utf8"/>
        </array>
      </property>
      <property name="scope"
                version="0.1.10"
                transfer-ownership="none"
                getter="get_scope"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2156">The device scope, e.g. %CD_OBJECT_SCOPE_TEMP.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="seat"
                version="0.1.24"
                transfer-ownership="none"
                getter="get_seat"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2057">The device seat identifier.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="serial"
                version="0.1.1"
                transfer-ownership="none"
                getter="get_serial"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2044">The device serial number.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="vendor"
                version="0.1.1"
                transfer-ownership="none"
                getter="get_vendor"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="2083">The device vendor.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="changed" when="last" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-device.c"
             line="1951">The ::changed signal is emitted when the device data has changed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="DeviceClass"
            c:type="CdDeviceClass"
            glib:is-gtype-struct-for="Device">
      <source-position filename="cd-device.h" line="57"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="changed">
        <callback name="changed">
          <source-position filename="cd-device.h" line="46"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="device" transfer-ownership="none">
              <type name="Device" c:type="CdDevice*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_cd_device_reserved1" introspectable="0">
        <callback name="_cd_device_reserved1">
          <source-position filename="cd-device.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_device_reserved2" introspectable="0">
        <callback name="_cd_device_reserved2">
          <source-position filename="cd-device.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_device_reserved3" introspectable="0">
        <callback name="_cd_device_reserved3">
          <source-position filename="cd-device.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_device_reserved4" introspectable="0">
        <callback name="_cd_device_reserved4">
          <source-position filename="cd-device.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_device_reserved5" introspectable="0">
        <callback name="_cd_device_reserved5">
          <source-position filename="cd-device.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_device_reserved6" introspectable="0">
        <callback name="_cd_device_reserved6">
          <source-position filename="cd-device.h" line="54"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_device_reserved7" introspectable="0">
        <callback name="_cd_device_reserved7">
          <source-position filename="cd-device.h" line="55"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_device_reserved8" introspectable="0">
        <callback name="_cd_device_reserved8">
          <source-position filename="cd-device.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="DeviceError" c:type="CdDeviceError">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="374">Errors that can be thrown</doc>
      <source-position filename="cd-enum.h" line="401"/>
      <member name="internal"
              value="0"
              c:identifier="CD_DEVICE_ERROR_INTERNAL">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="376">An internal error occurred</doc>
      </member>
      <member name="profile_does_not_exist"
              value="1"
              c:identifier="CD_DEVICE_ERROR_PROFILE_DOES_NOT_EXIST">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="377">The profile does not exist</doc>
      </member>
      <member name="profile_already_added"
              value="2"
              c:identifier="CD_DEVICE_ERROR_PROFILE_ALREADY_ADDED">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="378">The profile has already been added</doc>
      </member>
      <member name="profiling"
              value="3"
              c:identifier="CD_DEVICE_ERROR_PROFILING">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="379">The device is being profiled</doc>
      </member>
      <member name="nothing_matched"
              value="4"
              c:identifier="CD_DEVICE_ERROR_NOTHING_MATCHED">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="380">Nothing matched the search term</doc>
      </member>
      <member name="failed_to_inhibit"
              value="5"
              c:identifier="CD_DEVICE_ERROR_FAILED_TO_INHIBIT">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="381">Cound not inhibit device</doc>
      </member>
      <member name="failed_to_uninhibit"
              value="6"
              c:identifier="CD_DEVICE_ERROR_FAILED_TO_UNINHIBIT">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="382">Cound not uninhibit device</doc>
      </member>
      <member name="failed_to_authenticate"
              value="7"
              c:identifier="CD_DEVICE_ERROR_FAILED_TO_AUTHENTICATE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="383">Authentication failed</doc>
      </member>
      <member name="not_enabled"
              value="8"
              c:identifier="CD_DEVICE_ERROR_NOT_ENABLED">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="384">The device has been disabled</doc>
      </member>
    </enumeration>
    <enumeration name="DeviceKind" c:type="CdDeviceKind">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="33">The device type.</doc>
      <source-position filename="cd-enum.h" line="47"/>
      <member name="unknown" value="0" c:identifier="CD_DEVICE_KIND_UNKNOWN">
      </member>
      <member name="display" value="1" c:identifier="CD_DEVICE_KIND_DISPLAY">
      </member>
      <member name="scanner" value="2" c:identifier="CD_DEVICE_KIND_SCANNER">
      </member>
      <member name="printer" value="3" c:identifier="CD_DEVICE_KIND_PRINTER">
      </member>
      <member name="camera" value="4" c:identifier="CD_DEVICE_KIND_CAMERA">
      </member>
      <member name="webcam" value="5" c:identifier="CD_DEVICE_KIND_WEBCAM">
      </member>
    </enumeration>
    <enumeration name="DeviceMode" c:type="CdDeviceMode">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="137">The device mode.</doc>
      <source-position filename="cd-enum.h" line="148"/>
      <member name="unknown" value="0" c:identifier="CD_DEVICE_MODE_UNKNOWN">
      </member>
      <member name="physical" value="1" c:identifier="CD_DEVICE_MODE_PHYSICAL">
      </member>
      <member name="virtual" value="2" c:identifier="CD_DEVICE_MODE_VIRTUAL">
      </member>
    </enumeration>
    <enumeration name="DeviceRelation" c:type="CdDeviceRelation">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="150">The device to profile relationship.</doc>
      <source-position filename="cd-enum.h" line="161"/>
      <member name="unknown"
              value="0"
              c:identifier="CD_DEVICE_RELATION_UNKNOWN">
      </member>
      <member name="soft" value="1" c:identifier="CD_DEVICE_RELATION_SOFT">
      </member>
      <member name="hard" value="2" c:identifier="CD_DEVICE_RELATION_HARD">
      </member>
    </enumeration>
    <class name="Dom"
           c:symbol-prefix="dom"
           c:type="CdDom"
           parent="GObject.Object"
           glib:type-name="CdDom"
           glib:get-type="cd_dom_get_type"
           glib:type-struct="DomClass">
      <source-position filename="cd-dom.h" line="54"/>
      <constructor name="new" c:identifier="cd_dom_new" version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="668">Creates a new #CdDom object.</doc>
        <source-position filename="cd-dom.h" line="57"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="673">a new CdDom object.</doc>
          <type name="Dom" c:type="CdDom*"/>
        </return-value>
      </constructor>
      <function name="error_quark"
                c:identifier="cd_dom_error_quark"
                version="0.1.31">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="62">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="get_node_attribute"
                c:identifier="cd_dom_get_node_attribute"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="377">Gets a node attribute, e.g. "false"</doc>
        <source-position filename="cd-dom.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="383">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="379">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
          <parameter name="key" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_data"
                c:identifier="cd_dom_get_node_data"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="290">Gets the node data, e.g. "paragraph text"</doc>
        <source-position filename="cd-dom.h" line="69"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="296">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="292">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_data_as_double"
                c:identifier="cd_dom_get_node_data_as_double"
                version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="309">Gets the node data, e.g. 7.4</doc>
        <source-position filename="cd-dom.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="315">floating point value, or %G_MAXDOUBLE for error</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="311">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_data_as_int"
                c:identifier="cd_dom_get_node_data_as_int"
                version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="342">Gets the node data, e.g. 128</doc>
        <source-position filename="cd-dom.h" line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="348">signed integer value, or %G_MAXINT for error</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="344">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_lab"
                c:identifier="cd_dom_get_node_lab"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="434">Extracts a Lab color value from the DOM tree</doc>
        <source-position filename="cd-dom.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="441">%TRUE if the color was parsed successfully</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="436">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
          <parameter name="lab" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="437">a #CdColorLab</doc>
            <type name="ColorLab" c:type="CdColorLab*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_localized"
                c:identifier="cd_dom_get_node_localized"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="563">Extracts localized values from the DOM tree</doc>
        <source-position filename="cd-dom.h" line="80"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="570">A hash table with the locale (e.g. en_GB) as the key</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="565">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="566">the key to use, e.g. "copyright"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_name"
                c:identifier="cd_dom_get_node_name"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="271">Gets the node name, e.g. "body"</doc>
        <source-position filename="cd-dom.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="277">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="273">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_rgb"
                c:identifier="cd_dom_get_node_rgb"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="477">Extracts a RGB color value from the DOM tree</doc>
        <source-position filename="cd-dom.h" line="74"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="484">%TRUE if the color was parsed successfully</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="479">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
          <parameter name="rgb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="480">a #CdColorRGB</doc>
            <type name="ColorRGB" c:type="CdColorRGB*"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_node_yxy"
                c:identifier="cd_dom_get_node_yxy"
                version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="520">Extracts a Yxy color value from the DOM tree</doc>
        <source-position filename="cd-dom.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="527">%TRUE if the color was parsed successfully</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="node" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="522">a #GNode</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
          <parameter name="yxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="523">a #CdColorYxy</doc>
            <type name="ColorYxy" c:type="CdColorYxy*"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_node" c:identifier="cd_dom_get_node" version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="397">Gets a node from the DOM tree.</doc>
        <source-position filename="cd-dom.h" line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="405">A #GNode, or %NULL if not found</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </return-value>
        <parameters>
          <instance-parameter name="dom" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="399">a #CdDom instance.</doc>
            <type name="Dom" c:type="CdDom*"/>
          </instance-parameter>
          <parameter name="root" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="400">a root node, or %NULL</doc>
            <type name="GLib.Node" c:type="const GNode*"/>
          </parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="401">a path in the DOM, e.g. "html/body"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_xml_data"
              c:identifier="cd_dom_parse_xml_data"
              version="0.1.31"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="211">Parses data into a DOM tree.</doc>
        <source-position filename="cd-dom.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="dom" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="213">a #CdDom instance.</doc>
            <type name="Dom" c:type="CdDom*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="214">XML data</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="data_len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="215">Length of @data, or -1 if NULL terminated</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string"
              c:identifier="cd_dom_to_string"
              version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-dom.c"
             line="97">Returns a string representation of the DOM tree.</doc>
        <source-position filename="cd-dom.h" line="58"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-dom.c"
               line="103">an allocated string</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="dom" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-dom.c"
                 line="99">a #CdDom instance.</doc>
            <type name="Dom" c:type="CdDom*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="DomClass" c:type="CdDomClass" glib:is-gtype-struct-for="Dom">
      <source-position filename="cd-dom.h" line="54"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_cd_dom_reserved1" introspectable="0">
        <callback name="_cd_dom_reserved1">
          <source-position filename="cd-dom.h" line="46"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_dom_reserved2" introspectable="0">
        <callback name="_cd_dom_reserved2">
          <source-position filename="cd-dom.h" line="47"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_dom_reserved3" introspectable="0">
        <callback name="_cd_dom_reserved3">
          <source-position filename="cd-dom.h" line="48"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_dom_reserved4" introspectable="0">
        <callback name="_cd_dom_reserved4">
          <source-position filename="cd-dom.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_dom_reserved5" introspectable="0">
        <callback name="_cd_dom_reserved5">
          <source-position filename="cd-dom.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_dom_reserved6" introspectable="0">
        <callback name="_cd_dom_reserved6">
          <source-position filename="cd-dom.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_dom_reserved7" introspectable="0">
        <callback name="_cd_dom_reserved7">
          <source-position filename="cd-dom.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_dom_reserved8" introspectable="0">
        <callback name="_cd_dom_reserved8">
          <source-position filename="cd-dom.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <class name="Edid"
           c:symbol-prefix="edid"
           c:type="CdEdid"
           parent="GObject.Object"
           glib:type-name="CdEdid"
           glib:get-type="cd_edid_get_type"
           glib:type-struct="EdidClass">
      <source-position filename="cd-edid.h" line="53"/>
      <constructor name="new" c:identifier="cd_edid_new" version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="712">Creates an object suitable for parsing an EDID.</doc>
        <source-position filename="cd-edid.h" line="69"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="717">A new #CdEdid</doc>
          <type name="Edid" c:type="CdEdid*"/>
        </return-value>
      </constructor>
      <function name="error_quark"
                c:identifier="cd_edid_error_quark"
                version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="72">Gets the #CdEdid error quark.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="77">a #GQuark</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <method name="get_blue" c:identifier="cd_edid_get_blue" version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="368">Gets the blue primary.</doc>
        <source-position filename="cd-edid.h" line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="374">#CdColorYxy chromaticity</doc>
          <type name="ColorYxy" c:type="const CdColorYxy*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="370">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_checksum"
              c:identifier="cd_edid_get_checksum"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="242">Gets the EDID MD5 checksum.</doc>
        <source-position filename="cd-edid.h" line="79"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="248">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="244">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_eisa_id"
              c:identifier="cd_edid_get_eisa_id"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="224">Gets the EDID EISA ID.</doc>
        <source-position filename="cd-edid.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="230">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="226">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_gamma"
              c:identifier="cd_edid_get_gamma"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="314">Gets the native panel gamma.</doc>
        <source-position filename="cd-edid.h" line="83"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="320">floating point value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="316">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_green"
              c:identifier="cd_edid_get_green"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="350">Gets the green primary.</doc>
        <source-position filename="cd-edid.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="356">#CdColorYxy chromaticity</doc>
          <type name="ColorYxy" c:type="const CdColorYxy*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="352">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_height"
              c:identifier="cd_edid_get_height"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="296">Gets the panel height in inches.</doc>
        <source-position filename="cd-edid.h" line="82"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="302">integer value</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="298">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_monitor_name"
              c:identifier="cd_edid_get_monitor_name"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="90">Gets the EDID monitor name.</doc>
        <source-position filename="cd-edid.h" line="75"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="96">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="92">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pnp_id"
              c:identifier="cd_edid_get_pnp_id"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="260">Gets the EDID PNP ID.</doc>
        <source-position filename="cd-edid.h" line="80"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="266">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="262">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_red" c:identifier="cd_edid_get_red" version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="332">Gets the red primary.</doc>
        <source-position filename="cd-edid.h" line="84"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="338">%TRUE for success</doc>
          <type name="ColorYxy" c:type="const CdColorYxy*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="334">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_serial_number"
              c:identifier="cd_edid_get_serial_number"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="206">Gets the EDID serial number.</doc>
        <source-position filename="cd-edid.h" line="77"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="212">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="208">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vendor_name"
              c:identifier="cd_edid_get_vendor_name"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="186">Gets the EDID vendor name.</doc>
        <source-position filename="cd-edid.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="192">string value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="188">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_white"
              c:identifier="cd_edid_get_white"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="386">Gets the whitepoint.</doc>
        <source-position filename="cd-edid.h" line="87"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="392">#CdColorYxy chromaticity</doc>
          <type name="ColorYxy" c:type="const CdColorYxy*"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="388">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_width"
              c:identifier="cd_edid_get_width"
              version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="278">Gets the panel width in inches.</doc>
        <source-position filename="cd-edid.h" line="81"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="284">integer value</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="280">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="parse"
              c:identifier="cd_edid_parse"
              version="1.1.2"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="523">Parses the EDID.</doc>
        <source-position filename="cd-edid.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-edid.c"
               line="531">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="525">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
          <parameter name="edid_data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="526">data to parse</doc>
            <type name="GLib.Bytes" c:type="GBytes*"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset" c:identifier="cd_edid_reset" version="1.1.2">
        <doc xml:space="preserve"
             filename="cd-edid.c"
             line="404">Resets all cached data.</doc>
        <source-position filename="cd-edid.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-edid.c"
                 line="406">A valid #CdEdid</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="EdidClass"
            c:type="CdEdidClass"
            glib:is-gtype-struct-for="Edid">
      <source-position filename="cd-edid.h" line="53"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_cd_edid_reserved1" introspectable="0">
        <callback name="_cd_edid_reserved1">
          <source-position filename="cd-edid.h" line="45"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_edid_reserved2" introspectable="0">
        <callback name="_cd_edid_reserved2">
          <source-position filename="cd-edid.h" line="46"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_edid_reserved3" introspectable="0">
        <callback name="_cd_edid_reserved3">
          <source-position filename="cd-edid.h" line="47"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_edid_reserved4" introspectable="0">
        <callback name="_cd_edid_reserved4">
          <source-position filename="cd-edid.h" line="48"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_edid_reserved5" introspectable="0">
        <callback name="_cd_edid_reserved5">
          <source-position filename="cd-edid.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_edid_reserved6" introspectable="0">
        <callback name="_cd_edid_reserved6">
          <source-position filename="cd-edid.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_edid_reserved7" introspectable="0">
        <callback name="_cd_edid_reserved7">
          <source-position filename="cd-edid.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_edid_reserved8" introspectable="0">
        <callback name="_cd_edid_reserved8">
          <source-position filename="cd-edid.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <class name="Icc"
           c:symbol-prefix="icc"
           c:type="CdIcc"
           parent="GObject.Object"
           glib:type-name="CdIcc"
           glib:get-type="cd_icc_get_type"
           glib:type-struct="IccClass">
      <source-position filename="cd-icc.h" line="85"/>
      <constructor name="new" c:identifier="cd_icc_new" version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="4086">Creates a new #CdIcc object.</doc>
        <source-position filename="cd-icc.h" line="131"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="4091">a new CdIcc object.</doc>
          <type name="Icc" c:type="CdIcc*"/>
        </return-value>
      </constructor>
      <function name="error_quark"
                c:identifier="cd_icc_error_quark"
                version="0.1.32">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="103">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <method name="add_metadata"
              c:identifier="cd_icc_add_metadata"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2293">Sets an item of data to the profile metadata, overwriting it if
it already exists.</doc>
        <source-position filename="cd-icc.h" line="190"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2295">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2296">the metadata key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2297">the UTF-8 metadata value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_default"
              c:identifier="cd_icc_create_default"
              version="1.1.2"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3029">Creates a default sRGB ICC profile.</doc>
        <source-position filename="cd-icc.h" line="253"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="3036">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3031">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="create_from_edid"
              c:identifier="cd_icc_create_from_edid"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3145">Creates an ICC profile from EDID data.</doc>
        <source-position filename="cd-icc.h" line="241"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="3157">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3147">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="gamma_value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3148">approximate device gamma</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="red" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3149">primary color value</doc>
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </parameter>
          <parameter name="green" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3150">primary color value</doc>
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </parameter>
          <parameter name="blue" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3151">primary color value</doc>
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </parameter>
          <parameter name="white" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3152">whitepoint value</doc>
            <type name="ColorYxy" c:type="const CdColorYxy*"/>
          </parameter>
        </parameters>
      </method>
      <method name="create_from_edid_data"
              c:identifier="cd_icc_create_from_edid_data"
              version="1.1.2"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3083">Creates an ICC profile from EDID data.</doc>
        <source-position filename="cd-icc.h" line="249"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="3091">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3085">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="edid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3086">EDID data</doc>
            <type name="Edid" c:type="CdEdid*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_blue"
              c:identifier="cd_icc_get_blue"
              glib:get-property="blue"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2989">Gets the profile red chromaticity value.
This function will only return results if the profile was loaded with the
%CD_ICC_LOAD_FLAGS_PRIMARIES flag.</doc>
        <source-position filename="cd-icc.h" line="236"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2997">the #CdColorXYZ value</doc>
          <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2991">a valid #CdIcc instance</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_can_delete"
              c:identifier="cd_icc_get_can_delete"
              glib:get-property="can-delete"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2428">Finds out if the profile could be deleted.
This is only applicable for profiles loaded with cd_icc_load_file() as
obviously data and fd's cannot be sanely unlinked.</doc>
        <source-position filename="cd-icc.h" line="196"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2436">%TRUE if g_file_delete() would likely work</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2430">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_characterization_data"
              c:identifier="cd_icc_get_characterization_data"
              version="1.1.1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1755">Gets any characterization data used to build the profile.
This function will only return results if the profile was loaded with the
%CD_ICC_LOAD_FLAGS_CHARACTERIZATION flag.</doc>
        <source-position filename="cd-icc.h" line="202"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="1763">TI3 string data</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1757">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_checksum"
              c:identifier="cd_icc_get_checksum"
              glib:get-property="checksum"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2482">Gets the profile checksum if one exists.
This will either be the embedded profile ID, or the file checksum if
the #CdIcc object was loaded using cd_icc_load_data() or cd_icc_load_file()
and the %CD_ICC_LOAD_FLAGS_FALLBACK_MD5 flag is used.</doc>
        <source-position filename="cd-icc.h" line="198"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2491">An embedded MD5 checksum, or %NULL for not set</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2484">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_colorspace"
              c:identifier="cd_icc_get_colorspace"
              glib:get-property="colorspace"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2219">Gets the profile colorspace</doc>
        <source-position filename="cd-icc.h" line="184"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2225">The profile colorspace, e.g. %CD_COLORSPACE_RGB</doc>
          <type name="Colorspace" c:type="CdColorspace"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2221">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_context"
              c:identifier="cd_icc_get_context"
              version="1.1.7">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2040">Return the cmsContext instance used locally. This may be required if you
are using native LCMS calls and then cd_icc_load_handle().</doc>
        <source-position filename="cd-icc.h" line="173"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2047">Do not call cmsDeleteContext() on this value!</doc>
          <type name="gpointer" c:type="gpointer"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2042">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_copyright"
              c:identifier="cd_icc_get_copyright"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2659">Gets the profile copyright.
If the translated text is not available in the selected locale then the
default untranslated (en_US) text is returned.</doc>
        <source-position filename="cd-icc.h" line="205"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2669">The text as a UTF-8 string, or %NULL of the locale is invalid
              or the tag does not exist.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2661">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2662">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_created"
              c:identifier="cd_icc_get_created"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2448">Gets the ICC creation date and time.</doc>
        <source-position filename="cd-icc.h" line="197"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2454">A #GDateTime object, or %NULL for not set</doc>
          <type name="GLib.DateTime" c:type="GDateTime*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2450">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_description"
              c:identifier="cd_icc_get_description"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2631">Gets the profile description.
If the translated text is not available in the selected locale then the
default untranslated (en_US) text is returned.</doc>
        <source-position filename="cd-icc.h" line="199"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2641">The text as a UTF-8 string, or %NULL of the locale is invalid
              or the tag does not exist.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2633">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2634">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_filename"
              c:identifier="cd_icc_get_filename"
              glib:get-property="filename"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2129">Gets the filename of the ICC data, if one exists.</doc>
        <source-position filename="cd-icc.h" line="175"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2135">A filename, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2131">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_green"
              c:identifier="cd_icc_get_green"
              glib:get-property="green"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2969">Gets the profile green chromaticity value.
This function will only return results if the profile was loaded with the
%CD_ICC_LOAD_FLAGS_PRIMARIES flag.</doc>
        <source-position filename="cd-icc.h" line="235"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2977">the #CdColorXYZ value</doc>
          <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2971">a valid #CdIcc instance</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_handle" c:identifier="cd_icc_get_handle">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2023">Return the cmsHPROFILE instance used locally. This may be required if you
are using the profile in a transform.</doc>
        <source-position filename="cd-icc.h" line="172"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2030">Do not call cmsCloseProfile() on this value!</doc>
          <type name="gpointer" c:type="gpointer"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2025">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="cd_icc_get_kind"
              glib:get-property="kind"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2183">Gets the profile kind.</doc>
        <source-position filename="cd-icc.h" line="181"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2189">The kind, e.g. %CD_PROFILE_KIND_INPUT</doc>
          <type name="ProfileKind" c:type="CdProfileKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2185">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_manufacturer"
              c:identifier="cd_icc_get_manufacturer"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2685">Gets the profile manufacturer.
If the translated text is not available in the selected locale then the
default untranslated (en_US) text is returned.</doc>
        <source-position filename="cd-icc.h" line="208"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2695">The text as a UTF-8 string, or %NULL of the locale is invalid
              or the tag does not exist.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2687">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2688">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_metadata"
              c:identifier="cd_icc_get_metadata"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2255">Gets all the metadata from the ICC profile.</doc>
        <source-position filename="cd-icc.h" line="187"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2261">The profile metadata</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2257">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata_item"
              c:identifier="cd_icc_get_metadata_item"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2273">Gets an item of data from the ICC metadata store.</doc>
        <source-position filename="cd-icc.h" line="188"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2280">The dictionary data, or %NULL if the key does not exist.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2275">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2276">the dictionary key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_model"
              c:identifier="cd_icc_get_model"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2711">Gets the profile model.
If the translated text is not available in the selected locale then the
default untranslated (en_US) text is returned.</doc>
        <source-position filename="cd-icc.h" line="211"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2721">The text as a UTF-8 string, or %NULL of the locale is invalid
              or the tag does not exist.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2713">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2714">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_named_colors"
              c:identifier="cd_icc_get_named_colors"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2408">Gets any named colors in the profile.
This function will only return results if the profile was loaded with the
%CD_ICC_LOAD_FLAGS_NAMED_COLORS flag.</doc>
        <source-position filename="cd-icc.h" line="195"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2416">An array of color swatches</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="ColorSwatch"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2410">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_red"
              c:identifier="cd_icc_get_red"
              glib:get-property="red"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2949">Gets the profile red chromaticity value.
This function will only return results if the profile was loaded with the
%CD_ICC_LOAD_FLAGS_PRIMARIES flag.</doc>
        <source-position filename="cd-icc.h" line="234"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2957">the #CdColorXYZ value</doc>
          <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2951">a valid #CdIcc instance</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_response"
              c:identifier="cd_icc_get_response"
              version="0.1.34"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3288">Generates a response curve of a specified size.</doc>
        <source-position filename="cd-icc.h" line="264"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="3296">response data, or %NULL for error</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="ColorRGB"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3290">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3291">the size of the curve to generate</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_size"
              c:identifier="cd_icc_get_size"
              glib:get-property="size"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2112">Gets the ICC profile file size</doc>
        <source-position filename="cd-icc.h" line="174"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2117">The size in bytes, or 0 for unknown.</doc>
          <type name="guint32" c:type="guint32"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag_data"
              c:identifier="cd_icc_get_tag_data"
              version="1.1.6"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="708">Returns the raw data for the specific tag.
Most users do not need to do this.</doc>
        <source-position filename="cd-icc.h" line="270"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="717">the data for the tag</doc>
          <type name="GLib.Bytes" c:type="GBytes*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="710">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="711">a 4 bytes tag description, e.g. "cprt" or "vcgt"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_tags"
              c:identifier="cd_icc_get_tags"
              version="1.1.6"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="662">Returns the internal tag table. Most users do not need to do this.</doc>
        <source-position filename="cd-icc.h" line="268"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="669">the tag tables as an array of strings</doc>
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="664">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_temperature"
              c:identifier="cd_icc_get_temperature"
              glib:get-property="temperature"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2929">Gets the ICC color temperature, rounded to the nearest 100K.
This function will only return results if the profile was loaded with the
%CD_ICC_LOAD_FLAGS_PRIMARIES flag.</doc>
        <source-position filename="cd-icc.h" line="238"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2937">The color temperature in Kelvin, or 0 for error.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2931">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vcgt"
              c:identifier="cd_icc_get_vcgt"
              version="0.1.34"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3238">Gets the video card calibration data from the profile.</doc>
        <source-position filename="cd-icc.h" line="256"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="3246">VCGT data, or %NULL for error</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="ColorRGB"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3240">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3241">the desired size of the table data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_version"
              c:identifier="cd_icc_get_version"
              glib:get-property="version"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2147">Gets the ICC profile version, typically 2.1 or 4.2</doc>
        <source-position filename="cd-icc.h" line="178"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="2153">A floating point version number, or 0.0 for unknown</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2149">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_warnings"
              c:identifier="cd_icc_get_warnings"
              version="0.1.34">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3770">Returns any warnings with profiles</doc>
        <source-position filename="cd-icc.h" line="239"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="3776">An array of warning values</doc>
          <array name="GLib.Array" c:type="GArray*">
            <type name="ProfileWarning"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3772">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_white"
              c:identifier="cd_icc_get_white"
              glib:get-property="white"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3009">Gets the profile white point.
This function will only return results if the profile was loaded with the
%CD_ICC_LOAD_FLAGS_PRIMARIES flag.</doc>
        <source-position filename="cd-icc.h" line="237"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="3017">the #CdColorXYZ value</doc>
          <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3011">a valid #CdIcc instance</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load_data"
              c:identifier="cd_icc_load_data"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1186">Loads an ICC profile from raw byte data.</doc>
        <source-position filename="cd-icc.h" line="133"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1188">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1189">binary data</doc>
            <type name="guint8" c:type="const guint8*"/>
          </parameter>
          <parameter name="data_len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1190">Length of @data</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1191">a set of #CdIccLoadFlags</doc>
            <type name="IccLoadFlags" c:type="CdIccLoadFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_fd"
              c:identifier="cd_icc_load_fd"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1975">Loads an ICC profile from an open file descriptor.</doc>
        <source-position filename="cd-icc.h" line="145"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1977">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="fd" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1978">a file descriptor</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1979">a set of #CdIccLoadFlags</doc>
            <type name="IccLoadFlags" c:type="CdIccLoadFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_file"
              c:identifier="cd_icc_load_file"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1903">Loads an ICC profile from a local or remote file.</doc>
        <source-position filename="cd-icc.h" line="139"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1905">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1906">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1907">a set of #CdIccLoadFlags</doc>
            <type name="IccLoadFlags" c:type="CdIccLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1908">A #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_handle"
              c:identifier="cd_icc_load_handle"
              version="0.1.33"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2059">Set the internal cmsHPROFILE instance. This may be required if you create
the profile using cmsCreateRGBProfileTHR() and then want to use the
functionality in #CdIcc.

Do not call cmsCloseProfile() on @handle in the caller, this will be done
when the @icc object is finalized. Treat the profile like it's been adopted
by this module.

To handle the internal error callback, you should use the thread-safe
creation function, e.g. cmsCreateNULLProfileTHR(). The @context_id should be
set as the value of cd_icc_get_context() for this object.

Additionally, this function cannot be called more than once, and also can't
be called if cd_icc_load_file() has previously been used on the @icc object.</doc>
        <source-position filename="cd-icc.h" line="150"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2061">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="handle"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2062">a cmsHPROFILE instance</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2063">a set of #CdIccLoadFlags</doc>
            <type name="IccLoadFlags" c:type="CdIccLoadFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_metadata"
              c:identifier="cd_icc_remove_metadata"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2318">Removes an item of metadata.</doc>
        <source-position filename="cd-icc.h" line="193"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2320">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2321">the metadata key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_data"
              c:identifier="cd_icc_save_data"
              version="1.0.2"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1588">Saves an ICC profile to an allocated memory location.

Return vale: A #GBytes structure, or %NULL for error</doc>
        <source-position filename="cd-icc.h" line="155"/>
        <return-value transfer-ownership="full">
          <type name="GLib.Bytes" c:type="GBytes*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1590">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1591">a set of #CdIccSaveFlags</doc>
            <type name="IccSaveFlags" c:type="CdIccSaveFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_default"
              c:identifier="cd_icc_save_default"
              version="1.1.1"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1851">Saves an ICC profile to the default per-user location.

Return vale: %TRUE for success.</doc>
        <source-position filename="cd-icc.h" line="165"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1853">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1854">a set of #CdIccSaveFlags</doc>
            <type name="IccSaveFlags" c:type="CdIccSaveFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1855">A #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_file"
              c:identifier="cd_icc_save_file"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1793">Saves an ICC profile to a local or remote file.

Return vale: %TRUE for success.</doc>
        <source-position filename="cd-icc.h" line="159"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1795">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1796">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1797">a set of #CdIccSaveFlags</doc>
            <type name="IccSaveFlags" c:type="CdIccSaveFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1798">A #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_characterization_data"
              c:identifier="cd_icc_set_characterization_data"
              version="1.1.1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1775">Sets the characterization data used to build the profile.</doc>
        <source-position filename="cd-icc.h" line="203"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1777">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1778">TI3 string data, or %NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_colorspace"
              c:identifier="cd_icc_set_colorspace"
              glib:set-property="colorspace"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2237">Sets the colorspace kind.</doc>
        <source-position filename="cd-icc.h" line="185"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2239">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="colorspace" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2240">the profile colorspace, e.g. %CD_COLORSPACE_RGB</doc>
            <type name="Colorspace" c:type="CdColorspace"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_copyright"
              c:identifier="cd_icc_set_copyright"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2785">Sets the profile _copyright for a specific locale.</doc>
        <source-position filename="cd-icc.h" line="219"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2787">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2788">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2789">New UTF-8 string value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_copyright_items"
              c:identifier="cd_icc_set_copyright_items"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2805">Sets the profile copyrights for specific locales.</doc>
        <source-position filename="cd-icc.h" line="222"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2807">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="values" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2808">New translated values, with the key being the locale.</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="gpointer" c:type="gpointer"/>
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="set_description"
              c:identifier="cd_icc_set_description"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2737">Sets the profile description for a specific locale.</doc>
        <source-position filename="cd-icc.h" line="214"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2739">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2740">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2741">New UTF-8 string value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_description_items"
              c:identifier="cd_icc_set_description_items"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2757">Sets the profile descriptions for specific locales.</doc>
        <source-position filename="cd-icc.h" line="217"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2759">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="values" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2760">New translated values, with the key being the locale.</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="gpointer" c:type="gpointer"/>
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="set_filename"
              c:identifier="cd_icc_set_filename"
              version="1.1.1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="1885">Sets the filename, which may be required if the ICC profile has been loaded
using cd_icc_load_fd() from a disk cache.</doc>
        <source-position filename="cd-icc.h" line="176"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1887">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="1888">a filename, or %NULL</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="cd_icc_set_kind"
              glib:set-property="kind"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2201">Sets the profile kind.</doc>
        <source-position filename="cd-icc.h" line="182"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2203">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2204">the profile kind, e.g. %CD_PROFILE_KIND_DISPLAY_DEVICE</doc>
            <type name="ProfileKind" c:type="CdProfileKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_manufacturer"
              c:identifier="cd_icc_set_manufacturer"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2833">Sets the profile manufacturer for a specific locale.</doc>
        <source-position filename="cd-icc.h" line="224"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2835">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2836">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2837">New UTF-8 string value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_manufacturer_items"
              c:identifier="cd_icc_set_manufacturer_items"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2853">Sets the profile manufacturers for specific locales.</doc>
        <source-position filename="cd-icc.h" line="227"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2855">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="values" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2856">New translated values, with the key being the locale.</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="gpointer" c:type="gpointer"/>
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="set_model"
              c:identifier="cd_icc_set_model"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2881">Sets the profile model for a specific locale.</doc>
        <source-position filename="cd-icc.h" line="229"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2883">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2884">A locale, e.g. "en_GB.UTF-8" or %NULL for the profile default</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2885">New UTF-8 string value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_model_items"
              c:identifier="cd_icc_set_model_items"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2901">Sets the profile models for specific locales.</doc>
        <source-position filename="cd-icc.h" line="232"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2903">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="values" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2904">New translated values, with the key being the locale.</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="gpointer" c:type="gpointer"/>
              <type name="gpointer" c:type="gpointer"/>
            </type>
          </parameter>
        </parameters>
      </method>
      <method name="set_tag_data"
              c:identifier="cd_icc_set_tag_data"
              version="1.1.6"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="753">Sets the raw data for the specific tag.
Most users do not need to do this.</doc>
        <source-position filename="cd-icc.h" line="273"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="755">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="756">a 4 bytes tag description, e.g. "cprt" or "vcgt"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="757">a variable sized data entry</doc>
            <type name="GLib.Bytes" c:type="GBytes*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_vcgt"
              c:identifier="cd_icc_set_vcgt"
              version="0.1.34"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="3391">Sets the Video Card Gamma Table from the profile.

Return vale: %TRUE for success.</doc>
        <source-position filename="cd-icc.h" line="260"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3393">A valid #CdIcc</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="vcgt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="3394">video card calibration data</doc>
            <array name="GLib.PtrArray" c:type="GPtrArray*">
              <type name="ColorRGB"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="set_version"
              c:identifier="cd_icc_set_version"
              glib:set-property="version"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="2165">Sets the profile version.</doc>
        <source-position filename="cd-icc.h" line="179"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2167">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="2168">the profile version, e.g. 2.1 or 4.0</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string"
              c:identifier="cd_icc_to_string"
              version="0.1.32">
        <doc xml:space="preserve"
             filename="cd-icc.c"
             line="224">Returns a string representation of the ICC profile.</doc>
        <source-position filename="cd-icc.h" line="170"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc.c"
               line="230">an allocated string</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc.c"
                 line="226">a #CdIcc instance.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="utils_get_coverage"
              c:identifier="cd_icc_utils_get_coverage"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc-utils.c"
             line="139">Gets the gamut coverage of two profiles where 0.5 would mean the gamut is
half the size, and 2.0 would indicate the gamut is twice the size.</doc>
        <source-position filename="cd-icc-utils.h" line="35"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc-utils.c"
               line="149">TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-utils.c"
                 line="141">The profile to test</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </instance-parameter>
          <parameter name="icc_reference" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-utils.c"
                 line="142">The reference profile, e.g. sRGB</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </parameter>
          <parameter name="coverage" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-utils.c"
                 line="143">The coverage of @icc on @icc_reference</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <property name="blue" transfer-ownership="none" getter="get_blue">
        <type name="ColorXYZ"/>
      </property>
      <property name="can-delete"
                transfer-ownership="none"
                getter="get_can_delete"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="checksum"
                transfer-ownership="none"
                getter="get_checksum"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="colorspace"
                writable="1"
                transfer-ownership="none"
                setter="set_colorspace"
                getter="get_colorspace"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="filename"
                transfer-ownership="none"
                getter="get_filename"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="green" transfer-ownership="none" getter="get_green">
        <type name="ColorXYZ"/>
      </property>
      <property name="kind"
                writable="1"
                transfer-ownership="none"
                setter="set_kind"
                getter="get_kind"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="red" transfer-ownership="none" getter="get_red">
        <type name="ColorXYZ"/>
      </property>
      <property name="size"
                transfer-ownership="none"
                getter="get_size"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="temperature"
                transfer-ownership="none"
                getter="get_temperature"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="version"
                writable="1"
                transfer-ownership="none"
                setter="set_version"
                getter="get_version"
                default-value="0.000000">
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="white" transfer-ownership="none" getter="get_white">
        <type name="ColorXYZ"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="IccClass" c:type="CdIccClass" glib:is-gtype-struct-for="Icc">
      <source-position filename="cd-icc.h" line="85"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_cd_icc_reserved1" introspectable="0">
        <callback name="_cd_icc_reserved1">
          <source-position filename="cd-icc.h" line="77"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_icc_reserved2" introspectable="0">
        <callback name="_cd_icc_reserved2">
          <source-position filename="cd-icc.h" line="78"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_icc_reserved3" introspectable="0">
        <callback name="_cd_icc_reserved3">
          <source-position filename="cd-icc.h" line="79"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_icc_reserved4" introspectable="0">
        <callback name="_cd_icc_reserved4">
          <source-position filename="cd-icc.h" line="80"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_icc_reserved5" introspectable="0">
        <callback name="_cd_icc_reserved5">
          <source-position filename="cd-icc.h" line="81"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_icc_reserved6" introspectable="0">
        <callback name="_cd_icc_reserved6">
          <source-position filename="cd-icc.h" line="82"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_icc_reserved7" introspectable="0">
        <callback name="_cd_icc_reserved7">
          <source-position filename="cd-icc.h" line="83"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_icc_reserved8" introspectable="0">
        <callback name="_cd_icc_reserved8">
          <source-position filename="cd-icc.h" line="84"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="IccError" c:type="CdIccError">
      <doc xml:space="preserve"
           filename="cd-icc.h"
           line="44">The ICC error code.</doc>
      <source-position filename="cd-icc.h" line="70"/>
      <member name="failed_to_open"
              value="0"
              c:identifier="CD_ICC_ERROR_FAILED_TO_OPEN">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="46">Failed to open file</doc>
      </member>
      <member name="failed_to_parse"
              value="1"
              c:identifier="CD_ICC_ERROR_FAILED_TO_PARSE">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="47">Failed to parse data</doc>
      </member>
      <member name="invalid_locale"
              value="2"
              c:identifier="CD_ICC_ERROR_INVALID_LOCALE">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="48">Locale was invalid</doc>
      </member>
      <member name="no_data" value="3" c:identifier="CD_ICC_ERROR_NO_DATA">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="49">No data to read</doc>
      </member>
      <member name="failed_to_save"
              value="4"
              c:identifier="CD_ICC_ERROR_FAILED_TO_SAVE">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="50">Failed to save file</doc>
      </member>
      <member name="failed_to_create"
              value="5"
              c:identifier="CD_ICC_ERROR_FAILED_TO_CREATE">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="51">Failed to create file</doc>
      </member>
      <member name="invalid_colorspace"
              value="6"
              c:identifier="CD_ICC_ERROR_INVALID_COLORSPACE">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="52">Invalid colorspace</doc>
      </member>
      <member name="corruption_detected"
              value="7"
              c:identifier="CD_ICC_ERROR_CORRUPTION_DETECTED">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="53">Corruption has been detected</doc>
      </member>
      <member name="internal" value="8" c:identifier="CD_ICC_ERROR_INTERNAL">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="54">Something inside LCMS broke</doc>
      </member>
    </enumeration>
    <bitfield name="IccLoadFlags" version="0.1.32" c:type="CdIccLoadFlags">
      <doc xml:space="preserve"
           filename="cd-icc.h"
           line="87">Flags used when loading an ICC profile.</doc>
      <source-position filename="cd-icc.h" line="114"/>
      <member name="none" value="0" c:identifier="CD_ICC_LOAD_FLAGS_NONE">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="89">No flags set.</doc>
      </member>
      <member name="named_colors"
              value="1"
              c:identifier="CD_ICC_LOAD_FLAGS_NAMED_COLORS">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="90">Parse any named colors in the profile.</doc>
      </member>
      <member name="translations"
              value="2"
              c:identifier="CD_ICC_LOAD_FLAGS_TRANSLATIONS">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="91">Parse all translations in the profile.</doc>
      </member>
      <member name="metadata"
              value="4"
              c:identifier="CD_ICC_LOAD_FLAGS_METADATA">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="92">Parse the metadata in the profile.</doc>
      </member>
      <member name="fallback_md5"
              value="8"
              c:identifier="CD_ICC_LOAD_FLAGS_FALLBACK_MD5">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="93">Calculate the profile MD5 if a profile
					ID was not supplied in the profile.</doc>
      </member>
      <member name="primaries"
              value="16"
              c:identifier="CD_ICC_LOAD_FLAGS_PRIMARIES">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="95">Parse the primaries in the profile.</doc>
      </member>
      <member name="characterization"
              value="32"
              c:identifier="CD_ICC_LOAD_FLAGS_CHARACTERIZATION">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="96">Load the characterization data from the profile</doc>
      </member>
      <member name="all" value="255" c:identifier="CD_ICC_LOAD_FLAGS_ALL">
      </member>
    </bitfield>
    <enumeration name="IccSaveFlags" version="0.1.32" c:type="CdIccSaveFlags">
      <doc xml:space="preserve"
           filename="cd-icc.h"
           line="116">Flags used when saving an ICC profile.</doc>
      <source-position filename="cd-icc.h" line="128"/>
      <member name="none" value="0" c:identifier="CD_ICC_SAVE_FLAGS_NONE">
        <doc xml:space="preserve"
             filename="cd-icc.h"
             line="118">No flags set.</doc>
      </member>
    </enumeration>
    <class name="IccStore"
           c:symbol-prefix="icc_store"
           c:type="CdIccStore"
           parent="GObject.Object"
           glib:type-name="CdIccStore"
           glib:get-type="cd_icc_store_get_type"
           glib:type-struct="IccStoreClass">
      <source-position filename="cd-icc-store.h" line="43"/>
      <constructor name="new" c:identifier="cd_icc_store_new" version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="765">Creates a new #CdIccStore object.</doc>
        <source-position filename="cd-icc-store.h" line="79"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc-store.c"
               line="770">a new CdIccStore object.</doc>
          <type name="IccStore" c:type="CdIccStore*"/>
        </return-value>
      </constructor>
      <method name="find_by_checksum"
              c:identifier="cd_icc_store_find_by_checksum"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="119">Finds a ICC object in the store by checksum.</doc>
        <source-position filename="cd-icc-store.h" line="98"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc-store.c"
               line="126">an ICC profile object or %NULL</doc>
          <type name="Icc" c:type="CdIcc*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="121">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
          <parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="122">a checksum value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_by_filename"
              c:identifier="cd_icc_store_find_by_filename"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="89">Finds a ICC object in the store by filename.</doc>
        <source-position filename="cd-icc-store.h" line="96"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-icc-store.c"
               line="96">an ICC profile object or %NULL</doc>
          <type name="Icc" c:type="CdIcc*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="91">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="92">a fully qualified filename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_all"
              c:identifier="cd_icc_store_get_all"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="568">Gets the list of #CdIcc objects in the store</doc>
        <source-position filename="cd-icc-store.h" line="95"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-icc-store.c"
               line="574">ICC profile objects</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Icc"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="570">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_load_flags"
              c:identifier="cd_icc_store_get_load_flags"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="531">Gets the load flags to use when loading newly added profiles</doc>
        <source-position filename="cd-icc-store.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc-store.c"
               line="537">the load flags to use</doc>
          <type name="IccLoadFlags" c:type="CdIccLoadFlags"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="533">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="search_kind"
              c:identifier="cd_icc_store_search_kind"
              version="1.0.2"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="586">Adds a location to be watched for ICC profiles</doc>
        <source-position filename="cd-icc-store.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc-store.c"
               line="596">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="588">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
          <parameter name="search_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="589">a #CdIccStoreSearchKind, e.g. %CD_ICC_STORE_SEARCH_KIND_USER</doc>
            <type name="IccStoreSearchKind" c:type="CdIccStoreSearchKind"/>
          </parameter>
          <parameter name="search_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="590">a #CdIccStoreSearchFlags, e.g. %CD_ICC_STORE_SEARCH_FLAGS_CREATE_LOCATION</doc>
            <type name="IccStoreSearchFlags" c:type="CdIccStoreSearchFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="591">A #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="search_location"
              c:identifier="cd_icc_store_search_location"
              version="1.0.2"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="652">Adds a location to be watched for ICC profiles</doc>
        <source-position filename="cd-icc-store.h" line="80"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-icc-store.c"
               line="662">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="654">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
          <parameter name="location" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="655">a fully qualified path</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="search_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="656">#CdIccStoreSearchFlags, e.g. %CD_ICC_STORE_SEARCH_FLAGS_CREATE_LOCATION</doc>
            <type name="IccStoreSearchFlags" c:type="CdIccStoreSearchFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="657">A #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cache"
              c:identifier="cd_icc_store_set_cache"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="549">Sets an optional cache to use when reading profiles. This is probably
only useful to the colord daemon. This function can only be called once.</doc>
        <source-position filename="cd-icc-store.h" line="93"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="551">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
          <parameter name="cache" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="552">a #GResource</doc>
            <type name="Gio.Resource" c:type="GResource*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_load_flags"
              c:identifier="cd_icc_store_set_load_flags"
              version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="514">Sets the load flags to use when loading newly added profiles</doc>
        <source-position filename="cd-icc-store.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="516">a #CdIccStore instance.</doc>
            <type name="IccStore" c:type="CdIccStore*"/>
          </instance-parameter>
          <parameter name="load_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="517">#CdIccLoadFlags, e.g. %CD_ICC_LOAD_FLAGS_TRANSLATIONS</doc>
            <type name="IccLoadFlags" c:type="CdIccLoadFlags"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="added" when="last" version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="704">The ::added signal is emitted when an ICC profile has been added.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="707">the #CdIcc that was added</doc>
            <type name="Icc"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="removed" when="last" version="1.0.2">
        <doc xml:space="preserve"
             filename="cd-icc-store.c"
             line="719">The ::removed signal is emitted when an ICC profile has been removed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-icc-store.c"
                 line="722">the #CdIcc that was removed</doc>
            <type name="Icc"/>
          </parameter>
        </parameters>
      </glib:signal>
    </class>
    <record name="IccStoreClass"
            c:type="CdIccStoreClass"
            glib:is-gtype-struct-for="IccStore">
      <source-position filename="cd-icc-store.h" line="43"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="added">
        <callback name="added">
          <source-position filename="cd-icc-store.h" line="41"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="icc" transfer-ownership="none">
              <type name="Icc" c:type="CdIcc*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="removed">
        <callback name="removed">
          <source-position filename="cd-icc-store.h" line="42"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="icc" transfer-ownership="none">
              <type name="Icc" c:type="CdIcc*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <enumeration name="IccStoreSearchFlags"
                 version="1.1.1"
                 c:type="CdIccStoreSearchFlags">
      <doc xml:space="preserve"
           filename="cd-icc-store.h"
           line="45">Flags used when adding scan locations.</doc>
      <source-position filename="cd-icc-store.h" line="59"/>
      <member name="none"
              value="0"
              c:identifier="CD_ICC_STORE_SEARCH_FLAGS_NONE">
        <doc xml:space="preserve"
             filename="cd-icc-store.h"
             line="47">No flags set.</doc>
      </member>
      <member name="create_location"
              value="1"
              c:identifier="CD_ICC_STORE_SEARCH_FLAGS_CREATE_LOCATION">
        <doc xml:space="preserve"
             filename="cd-icc-store.h"
             line="48">Create the location if it does not exist</doc>
      </member>
    </enumeration>
    <enumeration name="IccStoreSearchKind"
                 version="1.1.1"
                 c:type="CdIccStoreSearchKind">
      <doc xml:space="preserve"
           filename="cd-icc-store.h"
           line="61">The kind of profiles locations to search.</doc>
      <source-position filename="cd-icc-store.h" line="77"/>
      <member name="system"
              value="0"
              c:identifier="CD_ICC_STORE_SEARCH_KIND_SYSTEM">
        <doc xml:space="preserve"
             filename="cd-icc-store.h"
             line="63">Per-system locations</doc>
      </member>
      <member name="machine"
              value="1"
              c:identifier="CD_ICC_STORE_SEARCH_KIND_MACHINE">
        <doc xml:space="preserve"
             filename="cd-icc-store.h"
             line="64">Per-machine locations</doc>
      </member>
      <member name="user"
              value="2"
              c:identifier="CD_ICC_STORE_SEARCH_KIND_USER">
        <doc xml:space="preserve"
             filename="cd-icc-store.h"
             line="65">Per-user locations</doc>
      </member>
    </enumeration>
    <class name="Interp"
           c:symbol-prefix="interp"
           c:type="CdInterp"
           parent="GObject.Object"
           glib:type-name="CdInterp"
           glib:get-type="cd_interp_get_type"
           glib:type-struct="InterpClass">
      <source-position filename="cd-interp.h" line="59"/>
      <function name="error_quark"
                c:identifier="cd_interp_error_quark"
                version="0.1.31">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="66">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="kind_to_string" c:identifier="cd_interp_kind_to_string">
        <source-position filename="cd-interp.h" line="103"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <type name="InterpKind" c:type="CdInterpKind"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="eval" invoker="eval" version="0.1.31" throws="1">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="211">Evaluate the interpolation function at a specific point.
You must have called cd_interp_insert() and cd_interp_prepare() before
calling this method.</doc>
        <source-position filename="cd-interp.h" line="46"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="221">The Y co-ordinate, or -1 for error</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="213">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="214">The X co-ordinate</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="prepare"
                      invoker="prepare"
                      version="0.1.31"
                      throws="1">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="170">Prepares the data set so that cd_interp_eval() can be used.</doc>
        <source-position filename="cd-interp.h" line="43"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="176">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="172">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="eval"
              c:identifier="cd_interp_eval"
              version="0.1.31"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="211">Evaluate the interpolation function at a specific point.
You must have called cd_interp_insert() and cd_interp_prepare() before
calling this method.</doc>
        <source-position filename="cd-interp.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="221">The Y co-ordinate, or -1 for error</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="213">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="214">The X co-ordinate</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="cd_interp_get_kind"
              glib:get-property="kind"
              version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="268">Gets the kind of INTERP file.</doc>
        <source-position filename="cd-interp.h" line="88"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="274">a #CdInterpKind, e.g %CD_INTERP_KIND_AKIMA.</doc>
          <type name="InterpKind" c:type="CdInterpKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="270">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_size"
              c:identifier="cd_interp_get_size"
              version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="127">Gets the number of items of data added with cd_interp_insert().

NOTE: This method has to be called after cd_interp_prepare() and it returns
the number of items originally in the array.
If you need the updated private size then just use cd_interp_get_x() and
read the size from that.</doc>
        <source-position filename="cd-interp.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="138">The original array size</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="129">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_x" c:identifier="cd_interp_get_x" version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="79">Gets the X data used the interpolation.

NOTE: this is only guaranteed to return the data inserted by
cd_interp_insert() *BEFORE* calling cd_interp_prepare().

After prepating the #CdInterp this data should be considered an
implementation detail.</doc>
        <source-position filename="cd-interp.h" line="89"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="91">The X co-ordinate data</doc>
          <array name="GLib.Array" c:type="GArray*">
            <type name="gdouble"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="81">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_y" c:identifier="cd_interp_get_y" version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="103">Gets the Y data used the interpolation.

NOTE: this is only guaranteed to return the data inserted by
cd_interp_insert() *BEFORE* calling cd_interp_prepare().

After prepating the #CdInterp this data should be considered an
implementation detail.</doc>
        <source-position filename="cd-interp.h" line="90"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="115">The Y co-ordinate data</doc>
          <array name="GLib.Array" c:type="GArray*">
            <type name="gdouble"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="105">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="insert" c:identifier="cd_interp_insert" version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="150">Inserts data to be interpolated.</doc>
        <source-position filename="cd-interp.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="152">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
          <parameter name="x" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="153">X data</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="154">Y data</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="prepare"
              c:identifier="cd_interp_prepare"
              version="0.1.31"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="170">Prepares the data set so that cd_interp_eval() can be used.</doc>
        <source-position filename="cd-interp.h" line="95"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-interp.c"
               line="176">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="interp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="172">a #CdInterp instance.</doc>
            <type name="Interp" c:type="CdInterp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="kind"
                version="0.1.20"
                writable="1"
                transfer-ownership="none"
                getter="get_kind"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-interp.c"
             line="356">The kind of interpolation.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <class name="InterpAkima"
           c:symbol-prefix="interp_akima"
           c:type="CdInterpAkima"
           parent="Interp"
           glib:type-name="CdInterpAkima"
           glib:get-type="cd_interp_akima_get_type"
           glib:type-struct="InterpAkimaClass">
      <source-position filename="cd-interp-akima.h" line="40"/>
      <constructor name="new"
                   c:identifier="cd_interp_akima_new"
                   version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-interp-akima.c"
             line="223">Creates a new #CdInterpAkima object.</doc>
        <source-position filename="cd-interp-akima.h" line="42"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-interp-akima.c"
               line="228">a new CdInterp object.</doc>
          <type name="Interp" c:type="CdInterp*"/>
        </return-value>
      </constructor>
      <field name="parent_instance">
        <type name="Interp" c:type="CdInterp"/>
      </field>
    </class>
    <record name="InterpAkimaClass"
            c:type="CdInterpAkimaClass"
            glib:is-gtype-struct-for="InterpAkima">
      <source-position filename="cd-interp-akima.h" line="40"/>
      <field name="parent_class">
        <type name="InterpClass" c:type="CdInterpClass"/>
      </field>
    </record>
    <record name="InterpClass"
            c:type="CdInterpClass"
            glib:is-gtype-struct-for="Interp">
      <source-position filename="cd-interp.h" line="59"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="prepare">
        <callback name="prepare" throws="1">
          <source-position filename="cd-interp.h" line="43"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="176">%TRUE for success</doc>
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="interp" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="cd-interp.c"
                   line="172">a #CdInterp instance.</doc>
              <type name="Interp" c:type="CdInterp*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="eval">
        <callback name="eval" throws="1">
          <source-position filename="cd-interp.h" line="46"/>
          <return-value transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-interp.c"
                 line="221">The Y co-ordinate, or -1 for error</doc>
            <type name="gdouble" c:type="gdouble"/>
          </return-value>
          <parameters>
            <parameter name="interp" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="cd-interp.c"
                   line="213">a #CdInterp instance.</doc>
              <type name="Interp" c:type="CdInterp*"/>
            </parameter>
            <parameter name="value" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="cd-interp.c"
                   line="214">The X co-ordinate</doc>
              <type name="gdouble" c:type="gdouble"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_cd_interp_reserved1" introspectable="0">
        <callback name="_cd_interp_reserved1">
          <source-position filename="cd-interp.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_interp_reserved2" introspectable="0">
        <callback name="_cd_interp_reserved2">
          <source-position filename="cd-interp.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_interp_reserved3" introspectable="0">
        <callback name="_cd_interp_reserved3">
          <source-position filename="cd-interp.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_interp_reserved4" introspectable="0">
        <callback name="_cd_interp_reserved4">
          <source-position filename="cd-interp.h" line="54"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_interp_reserved5" introspectable="0">
        <callback name="_cd_interp_reserved5">
          <source-position filename="cd-interp.h" line="55"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_interp_reserved6" introspectable="0">
        <callback name="_cd_interp_reserved6">
          <source-position filename="cd-interp.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_interp_reserved7" introspectable="0">
        <callback name="_cd_interp_reserved7">
          <source-position filename="cd-interp.h" line="57"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_interp_reserved8" introspectable="0">
        <callback name="_cd_interp_reserved8">
          <source-position filename="cd-interp.h" line="58"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="InterpError" c:type="CdInterpError">
      <doc xml:space="preserve"
           filename="cd-interp.h"
           line="61">Errors that can be thrown</doc>
      <source-position filename="cd-interp.h" line="72"/>
      <member name="failed" value="0" c:identifier="CD_INTERP_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="cd-interp.h"
             line="63">the method failed for an unknown reason</doc>
      </member>
    </enumeration>
    <enumeration name="InterpKind" c:type="CdInterpKind">
      <doc xml:space="preserve"
           filename="cd-interp.h"
           line="74">The kind of interpolation.</doc>
      <source-position filename="cd-interp.h" line="84"/>
      <member name="linear" value="0" c:identifier="CD_INTERP_KIND_LINEAR">
      </member>
      <member name="akima" value="1" c:identifier="CD_INTERP_KIND_AKIMA">
      </member>
    </enumeration>
    <class name="InterpLinear"
           c:symbol-prefix="interp_linear"
           c:type="CdInterpLinear"
           parent="Interp"
           glib:type-name="CdInterpLinear"
           glib:get-type="cd_interp_linear_get_type"
           glib:type-struct="InterpLinearClass">
      <source-position filename="cd-interp-linear.h" line="40"/>
      <constructor name="new"
                   c:identifier="cd_interp_linear_new"
                   version="0.1.31">
        <doc xml:space="preserve"
             filename="cd-interp-linear.c"
             line="81">Creates a new #CdInterpLinear object.</doc>
        <source-position filename="cd-interp-linear.h" line="42"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-interp-linear.c"
               line="86">a new CdInterp object.</doc>
          <type name="Interp" c:type="CdInterp*"/>
        </return-value>
      </constructor>
      <field name="parent_instance">
        <type name="Interp" c:type="CdInterp"/>
      </field>
    </class>
    <record name="InterpLinearClass"
            c:type="CdInterpLinearClass"
            glib:is-gtype-struct-for="InterpLinear">
      <source-position filename="cd-interp-linear.h" line="40"/>
      <field name="parent_class">
        <type name="InterpClass" c:type="CdInterpClass"/>
      </field>
    </record>
    <class name="It8"
           c:symbol-prefix="it8"
           c:type="CdIt8"
           parent="GObject.Object"
           glib:type-name="CdIt8"
           glib:get-type="cd_it8_get_type"
           glib:type-struct="It8Class">
      <source-position filename="cd-it8.h" line="57"/>
      <constructor name="new" c:identifier="cd_it8_new" version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="2126">Creates a new #CdIt8 object.</doc>
        <source-position filename="cd-it8.h" line="93"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="2131">a new CdIt8 object.</doc>
          <type name="It8" c:type="CdIt8*"/>
        </return-value>
      </constructor>
      <constructor name="new_with_kind"
                   c:identifier="cd_it8_new_with_kind"
                   version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="2143">Creates a new #CdIt8 object.</doc>
        <source-position filename="cd-it8.h" line="94"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="2149">a new CdIt8 object.</doc>
          <type name="It8" c:type="CdIt8*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="2145">a #CdIt8Kind, e.g %CD_IT8_KIND_TI3.</doc>
            <type name="It8Kind" c:type="CdIt8Kind"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="error_quark"
                c:identifier="cd_it8_error_quark"
                version="0.1.0">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="87">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <method name="add_data" c:identifier="cd_it8_add_data" version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1684">Adds a reading to this object. If either of @rgb or @xyz is NULL then
a black reading (0.0, 0.0, 0.0) is added instead.</doc>
        <source-position filename="cd-it8.h" line="133"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1686">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="rgb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1687">a #CdColorRGB, or %NULL</doc>
            <type name="ColorRGB" c:type="const CdColorRGB*"/>
          </parameter>
          <parameter name="xyz" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1688">a #CdColorXYZ, or %NULL</doc>
            <type name="ColorXYZ" c:type="const CdColorXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_option"
              c:identifier="cd_it8_add_option"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1538">Sets any extra options that have to be set in the CCMX file</doc>
        <source-position filename="cd-it8.h" line="136"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1540">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="option" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1541">A IT8 option, e.g. "TYPE_LCD"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_spectrum"
              c:identifier="cd_it8_add_spectrum"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1833">Adds a spectrum to the spectral array.</doc>
        <source-position filename="cd-it8.h" line="142"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1835">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1836">the spectral data</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_data_item"
              c:identifier="cd_it8_get_data_item"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1741">Gets a specific bit of data from this object.
The returned data are absolute readings and are not normalised.</doc>
        <source-position filename="cd-it8.h" line="156"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="1751">%TRUE if the index existed.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1743">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="idx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1744">the item index</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="rgb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1745">the returned RGB value</doc>
            <type name="ColorRGB" c:type="CdColorRGB*"/>
          </parameter>
          <parameter name="xyz" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1746">the returned XYZ value</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_data_size"
              c:identifier="cd_it8_get_data_size"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1723">Gets the data size.</doc>
        <source-position filename="cd-it8.h" line="155"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="1729">The number of RGB-XYZ readings in this object.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1725">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enable_created"
              c:identifier="cd_it8_get_enable_created"
              version="0.1.33">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="382">Gets if the 'CREATED' attribute will be written. This is typically only
set in the self test programs.</doc>
        <source-position filename="cd-it8.h" line="154"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="389">The reference, or %NULL if unset</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="384">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_instrument"
              c:identifier="cd_it8_get_instrument"
              glib:get-property="instrument"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="346">Gets the instrument the file was created by.</doc>
        <source-position filename="cd-it8.h" line="152"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="352">The instrument, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="348">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="cd_it8_get_kind"
              glib:get-property="kind"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="268">Gets the kind of IT8 file.</doc>
        <source-position filename="cd-it8.h" line="147"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="274">a #CdIt8Kind, e.g %CD_IT8_KIND_TI3.</doc>
          <type name="It8Kind" c:type="CdIt8Kind"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="270">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_matrix"
              c:identifier="cd_it8_get_matrix"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="233">Gets the calibration matrix in the it8 file.</doc>
        <source-position filename="cd-it8.h" line="146"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="239">a #CdMat3x3.</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="235">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_normalized"
              c:identifier="cd_it8_get_normalized"
              glib:get-property="normalized"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="401">Gets if the data should be written normlaised to y=100.</doc>
        <source-position filename="cd-it8.h" line="148"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="407">%TRUE if the data should be normalised.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="403">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_originator"
              c:identifier="cd_it8_get_originator"
              glib:get-property="originator"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="310">Gets the file orginator.</doc>
        <source-position filename="cd-it8.h" line="149"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="316">The originator, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="312">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reference"
              c:identifier="cd_it8_get_reference"
              glib:get-property="reference"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="364">Gets the reference the file was created against.</doc>
        <source-position filename="cd-it8.h" line="153"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="370">The reference, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="366">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_spectral"
              c:identifier="cd_it8_get_spectral"
              glib:get-property="spectral"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="419">Gets if the data is spectral or XYZ.</doc>
        <source-position filename="cd-it8.h" line="151"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="425">%TRUE if the data is in spectral bands.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="421">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_spectrum_array"
              c:identifier="cd_it8_get_spectrum_array"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1863">Gets the spectral data of IT8 file.</doc>
        <source-position filename="cd-it8.h" line="160"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="1869">spectral data</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Spectrum"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1865">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_spectrum_by_id"
              c:identifier="cd_it8_get_spectrum_by_id"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1881">Gets a specific spectrum in an IT8 file.</doc>
        <source-position filename="cd-it8.h" line="161"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="1888">spectrum, or %NULL</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1883">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1884">the spectrum ID value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_title"
              c:identifier="cd_it8_get_title"
              glib:get-property="title"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="328">Gets the file title.</doc>
        <source-position filename="cd-it8.h" line="150"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="334">The title, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="330">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_xyz_for_rgb"
              c:identifier="cd_it8_get_xyz_for_rgb"
              version="1.2.6">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1777">Gets the XYZ value for a specific RGB value.</doc>
        <source-position filename="cd-it8.h" line="165"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="1787">A CdColorXYZ, or %NULL if the sample does not exist.</doc>
          <type name="ColorXYZ" c:type="CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1779">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="R" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1780">the red value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="G" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1781">the green value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="B" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1782">the blue value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="delta" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1783">the smallest difference between colors, e.g. 0.01f</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_option"
              c:identifier="cd_it8_has_option"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="823">Finds an option in the file.</doc>
        <source-position filename="cd-it8.h" line="163"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="830">%TRUE if the option is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="825">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="option" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="826">a option, e.g. "TYPE_CRT"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_from_data"
              c:identifier="cd_it8_load_from_data"
              version="0.1.20"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="852">Loads a it8 file from data.</doc>
        <source-position filename="cd-it8.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="861">%TRUE if a valid it8 file was read.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="854">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="855">text data</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="856">the size of text data</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_from_file"
              c:identifier="cd_it8_load_from_file"
              version="0.1.20"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="983">Loads a it8 file from disk.</doc>
        <source-position filename="cd-it8.h" line="102"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="991">%TRUE if a valid it8 file was read.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="985">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="986">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_to_data"
              c:identifier="cd_it8_save_to_data"
              version="0.1.26"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1392">Saves a it8 file to an area of memory.</doc>
        <source-position filename="cd-it8.h" line="110"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="1401">%TRUE if it8 file was saved.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1394">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1395">a pointer to returned data</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1396">size of @data</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_to_file"
              c:identifier="cd_it8_save_to_file"
              version="0.1.20"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1507">Saves a it8 file to disk</doc>
        <source-position filename="cd-it8.h" line="106"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8.c"
               line="1515">%TRUE if it8 file was saved.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1509">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1510">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enable_created"
              c:identifier="cd_it8_set_enable_created"
              version="0.1.33">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1665">Sets if the 'CREATED' attribute should be written. This is mainly useful
in the self test programs where we want to string compare the output data
with a known reference.</doc>
        <source-position filename="cd-it8.h" line="131"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1667">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="enable_created" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1668">Is 'CREATED' should be written</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_instrument"
              c:identifier="cd_it8_set_instrument"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1627">Sets the measuring instrument that created the .it8 file</doc>
        <source-position filename="cd-it8.h" line="127"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1629">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="instrument" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1630">the instruemnt name, e.g. "huey"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="cd_it8_set_kind"
              glib:set-property="kind"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="251">Set the kind of IT8 file.</doc>
        <source-position filename="cd-it8.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="253">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="254">a #CdIt8Kind, e.g %CD_IT8_KIND_TI3.</doc>
            <type name="It8Kind" c:type="CdIt8Kind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_matrix"
              c:identifier="cd_it8_set_matrix"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="216">Set the calibration matrix in the it8 file.</doc>
        <source-position filename="cd-it8.h" line="138"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="218">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="matrix" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="219">a #CdMat3x3.</doc>
            <type name="Mat3x3" c:type="const CdMat3x3*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_normalized"
              c:identifier="cd_it8_set_normalized"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1555">Sets if normalized data should be written to the .it8 file.</doc>
        <source-position filename="cd-it8.h" line="119"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1557">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="normalized" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1558">If the data is normalized</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_originator"
              c:identifier="cd_it8_set_originator"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1589">Sets the program name that created the .it8 file</doc>
        <source-position filename="cd-it8.h" line="121"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1591">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="originator" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1592">the program name, e.g. "gcm-calibrate"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reference"
              c:identifier="cd_it8_set_reference"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1646">Sets the reference that as used to create the .it8 reference</doc>
        <source-position filename="cd-it8.h" line="129"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1648">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="reference" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1649">the instruemnt name, e.g. "colormunki"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_spectral"
              c:identifier="cd_it8_set_spectral"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1572">Sets if spectral data should be written to the .it8 file.</doc>
        <source-position filename="cd-it8.h" line="125"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1574">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="spectral" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1575">If the data is spectral</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_spectrum_array"
              c:identifier="cd_it8_set_spectrum_array"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1815">Set the spectral data</doc>
        <source-position filename="cd-it8.h" line="140"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1817">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="container">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1818">the spectral data</doc>
            <array name="GLib.PtrArray" c:type="GPtrArray*">
              <type name="Spectrum"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="set_title"
              c:identifier="cd_it8_set_title"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1608">Sets the display name for the file.</doc>
        <source-position filename="cd-it8.h" line="123"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1610">a #CdIt8 instance.</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="title" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8.c"
                 line="1611">the title name, e.g. "Factory calibration"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="utils_calculate_ccmx"
              c:identifier="cd_it8_utils_calculate_ccmx"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8-utils.c"
             line="170">This calculates the colorimeter correction matrix using the Four-Color
Matrix Method by Yoshihiro Ohno and Jonathan E. Hardis, 1997.</doc>
        <source-position filename="cd-it8-utils.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8-utils.c"
               line="180">%TRUE if a correction matrix was found.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8_reference" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="172">The reference data</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="it8_measured" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="173">The measured data</doc>
            <type name="It8" c:type="CdIt8*"/>
          </parameter>
          <parameter name="it8_ccmx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="174">The calculated correction matrix</doc>
            <type name="It8" c:type="CdIt8*"/>
          </parameter>
        </parameters>
      </method>
      <method name="utils_calculate_cri_from_cmf"
              c:identifier="cd_it8_utils_calculate_cri_from_cmf"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8-utils.c"
             line="318">This calculates the CRI for a specific illuminant.</doc>
        <source-position filename="cd-it8-utils.h" line="48"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8-utils.c"
               line="329">%TRUE if a XYZ value was set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="cmf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="320">The color match function</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="tcs" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="321">The CIE TCS test patches</doc>
            <type name="It8" c:type="CdIt8*"/>
          </parameter>
          <parameter name="illuminant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="322">The illuminant</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="323">The CRI result</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="resolution" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="324">The resolution in nm, typically 1.0</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="utils_calculate_gamma"
              c:identifier="cd_it8_utils_calculate_gamma"
              version="0.2.6"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8-utils.c"
             line="468">This estimates the gamma from values obtained from an .ti3 file.</doc>
        <source-position filename="cd-it8-utils.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8-utils.c"
               line="476">%TRUE if a valid value was found.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="it8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="470">The reference data</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="gamma_y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="471">The estimated gamma</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <method name="utils_calculate_xyz_from_cmf"
              c:identifier="cd_it8_utils_calculate_xyz_from_cmf"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-it8-utils.c"
             line="242">This calculates the XYZ from a CMF, illuminant and input spectrum.</doc>
        <source-position filename="cd-it8-utils.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-it8-utils.c"
               line="253">%TRUE if a XYZ value was set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="cmf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="244">The color match function</doc>
            <type name="It8" c:type="CdIt8*"/>
          </instance-parameter>
          <parameter name="illuminant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="245">The illuminant (you can use cd_spectrum_new() for type E)</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </parameter>
          <parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="246">The #CdSpectrum input data</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="247">The #CdColorXYZ result</doc>
            <type name="ColorXYZ" c:type="CdColorXYZ*"/>
          </parameter>
          <parameter name="resolution" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-it8-utils.c"
                 line="248">The resolution in nm, typically 1.0</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <property name="instrument"
                version="0.1.20"
                transfer-ownership="none"
                getter="get_instrument"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="2039">The instrument that created the results, e.g. "huey"</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="kind"
                version="0.1.20"
                writable="1"
                transfer-ownership="none"
                setter="set_kind"
                getter="get_kind"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1983">The kind of IT8 file.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="normalized"
                version="0.1.20"
                transfer-ownership="none"
                getter="get_normalized"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="1997">If the results file is normalized.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="originator"
                version="0.1.20"
                transfer-ownership="none"
                getter="get_originator"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="2011">The framework that created the results, e.g. "cd-self-test"</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="reference"
                version="0.1.20"
                transfer-ownership="none"
                getter="get_reference"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="2053">The reference that created the results, e.g. "colormunki"</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="spectral"
                version="0.1.20"
                transfer-ownership="none"
                getter="get_spectral"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="2067">If the results file is spectral.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="title"
                version="0.1.20"
                transfer-ownership="none"
                getter="get_title"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-it8.c"
             line="2025">The file title, e.g. "Factor calibration".</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="It8Class" c:type="CdIt8Class" glib:is-gtype-struct-for="It8">
      <source-position filename="cd-it8.h" line="57"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_cd_it8_reserved1" introspectable="0">
        <callback name="_cd_it8_reserved1">
          <source-position filename="cd-it8.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_it8_reserved2" introspectable="0">
        <callback name="_cd_it8_reserved2">
          <source-position filename="cd-it8.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_it8_reserved3" introspectable="0">
        <callback name="_cd_it8_reserved3">
          <source-position filename="cd-it8.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_it8_reserved4" introspectable="0">
        <callback name="_cd_it8_reserved4">
          <source-position filename="cd-it8.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_it8_reserved5" introspectable="0">
        <callback name="_cd_it8_reserved5">
          <source-position filename="cd-it8.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_it8_reserved6" introspectable="0">
        <callback name="_cd_it8_reserved6">
          <source-position filename="cd-it8.h" line="54"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_it8_reserved7" introspectable="0">
        <callback name="_cd_it8_reserved7">
          <source-position filename="cd-it8.h" line="55"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_it8_reserved8" introspectable="0">
        <callback name="_cd_it8_reserved8">
          <source-position filename="cd-it8.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="It8Error" c:type="CdIt8Error">
      <doc xml:space="preserve"
           filename="cd-it8.h"
           line="59">Errors that can be thrown</doc>
      <source-position filename="cd-it8.h" line="72"/>
      <member name="failed" value="0" c:identifier="CD_IT8_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="cd-it8.h"
             line="61">the transaction failed for an unknown reason</doc>
      </member>
      <member name="invalid_format"
              value="1"
              c:identifier="CD_IT8_ERROR_INVALID_FORMAT">
      </member>
      <member name="unknown_kind"
              value="2"
              c:identifier="CD_IT8_ERROR_UNKNOWN_KIND">
      </member>
    </enumeration>
    <enumeration name="It8Kind" c:type="CdIt8Kind">
      <doc xml:space="preserve"
           filename="cd-it8.h"
           line="74">The kind of IT8 file.</doc>
      <source-position filename="cd-it8.h" line="90"/>
      <member name="unknown" value="0" c:identifier="CD_IT8_KIND_UNKNOWN">
      </member>
      <member name="ti1" value="1" c:identifier="CD_IT8_KIND_TI1">
      </member>
      <member name="ti3" value="2" c:identifier="CD_IT8_KIND_TI3">
      </member>
      <member name="ccmx" value="3" c:identifier="CD_IT8_KIND_CCMX">
      </member>
      <member name="cal" value="4" c:identifier="CD_IT8_KIND_CAL">
      </member>
      <member name="ccss" value="5" c:identifier="CD_IT8_KIND_CCSS">
      </member>
      <member name="spect" value="6" c:identifier="CD_IT8_KIND_SPECT">
      </member>
      <member name="cmf" value="7" c:identifier="CD_IT8_KIND_CMF">
      </member>
    </enumeration>
    <constant name="MAJOR_VERSION" value="1" c:type="CD_MAJOR_VERSION">
      <doc xml:space="preserve"
           filename="cd-version.h"
           line="39">The compile-time major version</doc>
      <source-position filename="cd-version.h" line="44"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MICRO_VERSION" value="5" c:type="CD_MICRO_VERSION">
      <doc xml:space="preserve"
           filename="cd-version.h"
           line="53">The compile-time micro version</doc>
      <source-position filename="cd-version.h" line="58"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MINOR_VERSION" value="3" c:type="CD_MINOR_VERSION">
      <doc xml:space="preserve"
           filename="cd-version.h"
           line="46">The compile-time minor version</doc>
      <source-position filename="cd-version.h" line="51"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <record name="Mat3x3" c:type="CdMat3x3">
      <source-position filename="cd-math.h" line="32"/>
      <field name="m00" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m01" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m02" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m10" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m11" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m12" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m20" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m21" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
      <field name="m22" writable="1">
        <type name="gdouble" c:type="gdouble"/>
      </field>
    </record>
    <enumeration name="ObjectScope" c:type="CdObjectScope">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="67">The options type.</doc>
      <source-position filename="cd-enum.h" line="79"/>
      <member name="unknown" value="0" c:identifier="CD_OBJECT_SCOPE_UNKNOWN">
      </member>
      <member name="normal" value="1" c:identifier="CD_OBJECT_SCOPE_NORMAL">
      </member>
      <member name="temp" value="2" c:identifier="CD_OBJECT_SCOPE_TEMP">
      </member>
      <member name="disk" value="3" c:identifier="CD_OBJECT_SCOPE_DISK">
      </member>
    </enumeration>
    <constant name="PIXEL_FORMAT_ARGB32"
              value="278681"
              c:type="CD_PIXEL_FORMAT_ARGB32">
      <source-position filename="cd-enum.h" line="110"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PIXEL_FORMAT_BGRA32"
              value="279705"
              c:type="CD_PIXEL_FORMAT_BGRA32">
      <source-position filename="cd-enum.h" line="113"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PIXEL_FORMAT_CMYK32"
              value="393249"
              c:type="CD_PIXEL_FORMAT_CMYK32">
      <source-position filename="cd-enum.h" line="112"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PIXEL_FORMAT_RGB24"
              value="262169"
              c:type="CD_PIXEL_FORMAT_RGB24">
      <source-position filename="cd-enum.h" line="111"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PIXEL_FORMAT_RGBA32"
              value="262297"
              c:type="CD_PIXEL_FORMAT_RGBA32">
      <source-position filename="cd-enum.h" line="114"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PIXEL_FORMAT_UNKNOWN"
              value="0"
              c:type="CD_PIXEL_FORMAT_UNKNOWN">
      <source-position filename="cd-enum.h" line="109"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="PROFILE_METADATA_ACCURACY_DE76_AVG"
              value="ACCURACY_dE76_avg"
              c:type="CD_PROFILE_METADATA_ACCURACY_DE76_AVG">
      <source-position filename="cd-enum.h" line="451"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_ACCURACY_DE76_MAX"
              value="ACCURACY_dE76_max"
              c:type="CD_PROFILE_METADATA_ACCURACY_DE76_MAX">
      <source-position filename="cd-enum.h" line="452"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_ACCURACY_DE76_RMS"
              value="ACCURACY_dE76_rms"
              c:type="CD_PROFILE_METADATA_ACCURACY_DE76_RMS">
      <source-position filename="cd-enum.h" line="453"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CMF_BINARY"
              value="CMF_binary"
              c:type="CD_PROFILE_METADATA_CMF_BINARY">
      <source-position filename="cd-enum.h" line="441"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CMF_PRODUCT"
              value="CMF_product"
              c:type="CD_PROFILE_METADATA_CMF_PRODUCT">
      <source-position filename="cd-enum.h" line="440"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CMF_VERSION"
              value="CMF_version"
              c:type="CD_PROFILE_METADATA_CMF_VERSION">
      <source-position filename="cd-enum.h" line="442"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CONNECTION_TYPE"
              value="CONNECTION_type"
              c:type="CD_PROFILE_METADATA_CONNECTION_TYPE">
      <source-position filename="cd-enum.h" line="459"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CONNECTION_TYPE_DISPLAYPORT"
              value="displayport"
              c:type="CD_PROFILE_METADATA_CONNECTION_TYPE_DISPLAYPORT">
      <source-position filename="cd-enum.h" line="464"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CONNECTION_TYPE_DVI"
              value="dvi"
              c:type="CD_PROFILE_METADATA_CONNECTION_TYPE_DVI">
      <source-position filename="cd-enum.h" line="462"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CONNECTION_TYPE_HDMI"
              value="hdmi"
              c:type="CD_PROFILE_METADATA_CONNECTION_TYPE_HDMI">
      <source-position filename="cd-enum.h" line="463"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CONNECTION_TYPE_INTERNAL"
              value="internal"
              c:type="CD_PROFILE_METADATA_CONNECTION_TYPE_INTERNAL">
      <source-position filename="cd-enum.h" line="460"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_CONNECTION_TYPE_VGA"
              value="vga"
              c:type="CD_PROFILE_METADATA_CONNECTION_TYPE_VGA">
      <source-position filename="cd-enum.h" line="461"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_DATA_SOURCE"
              value="DATA_source"
              c:type="CD_PROFILE_METADATA_DATA_SOURCE">
      <source-position filename="cd-enum.h" line="443"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_DATA_SOURCE_CALIB"
              value="calib"
              c:type="CD_PROFILE_METADATA_DATA_SOURCE_CALIB">
      <source-position filename="cd-enum.h" line="445"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_DATA_SOURCE_EDID"
              value="edid"
              c:type="CD_PROFILE_METADATA_DATA_SOURCE_EDID">
      <source-position filename="cd-enum.h" line="444"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_DATA_SOURCE_STANDARD"
              value="standard"
              c:type="CD_PROFILE_METADATA_DATA_SOURCE_STANDARD">
      <source-position filename="cd-enum.h" line="446"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_DATA_SOURCE_TEST"
              value="test"
              c:type="CD_PROFILE_METADATA_DATA_SOURCE_TEST">
      <source-position filename="cd-enum.h" line="447"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_EDID_MD5"
              value="EDID_md5"
              c:type="CD_PROFILE_METADATA_EDID_MD5">
      <source-position filename="cd-enum.h" line="434"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_EDID_MNFT"
              value="EDID_mnft"
              c:type="CD_PROFILE_METADATA_EDID_MNFT">
      <source-position filename="cd-enum.h" line="437"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_EDID_MODEL"
              value="EDID_model"
              c:type="CD_PROFILE_METADATA_EDID_MODEL">
      <source-position filename="cd-enum.h" line="435"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_EDID_SERIAL"
              value="EDID_serial"
              c:type="CD_PROFILE_METADATA_EDID_SERIAL">
      <source-position filename="cd-enum.h" line="436"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_EDID_VENDOR"
              value="EDID_manufacturer"
              c:type="CD_PROFILE_METADATA_EDID_VENDOR">
      <source-position filename="cd-enum.h" line="438"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_FILE_CHECKSUM"
              value="FILE_checksum"
              c:type="CD_PROFILE_METADATA_FILE_CHECKSUM">
      <source-position filename="cd-enum.h" line="439"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_LICENSE"
              value="License"
              c:type="CD_PROFILE_METADATA_LICENSE">
      <source-position filename="cd-enum.h" line="465"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_MAPPING_DEVICE_ID"
              value="MAPPING_device_id"
              c:type="CD_PROFILE_METADATA_MAPPING_DEVICE_ID">
      <source-position filename="cd-enum.h" line="450"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_MAPPING_FORMAT"
              value="MAPPING_format"
              c:type="CD_PROFILE_METADATA_MAPPING_FORMAT">
      <source-position filename="cd-enum.h" line="448"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_MAPPING_QUALIFIER"
              value="MAPPING_qualifier"
              c:type="CD_PROFILE_METADATA_MAPPING_QUALIFIER">
      <source-position filename="cd-enum.h" line="449"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_MEASUREMENT_DEVICE"
              value="MEASUREMENT_device"
              c:type="CD_PROFILE_METADATA_MEASUREMENT_DEVICE">
      <source-position filename="cd-enum.h" line="454"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_QUALITY"
              value="Quality"
              c:type="CD_PROFILE_METADATA_QUALITY">
      <source-position filename="cd-enum.h" line="466"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_QUALITY_HIGH"
              value="high"
              c:type="CD_PROFILE_METADATA_QUALITY_HIGH">
      <source-position filename="cd-enum.h" line="469"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_QUALITY_LOW"
              value="low"
              c:type="CD_PROFILE_METADATA_QUALITY_LOW">
      <source-position filename="cd-enum.h" line="467"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_QUALITY_MEDIUM"
              value="medium"
              c:type="CD_PROFILE_METADATA_QUALITY_MEDIUM">
      <source-position filename="cd-enum.h" line="468"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_SCREEN_BRIGHTNESS"
              value="SCREEN_brightness"
              c:type="CD_PROFILE_METADATA_SCREEN_BRIGHTNESS">
      <source-position filename="cd-enum.h" line="458"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_SCREEN_SURFACE"
              value="SCREEN_surface"
              c:type="CD_PROFILE_METADATA_SCREEN_SURFACE">
      <source-position filename="cd-enum.h" line="455"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_SCREEN_SURFACE_GLOSSY"
              value="glossy"
              c:type="CD_PROFILE_METADATA_SCREEN_SURFACE_GLOSSY">
      <source-position filename="cd-enum.h" line="457"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_SCREEN_SURFACE_MATTE"
              value="matte"
              c:type="CD_PROFILE_METADATA_SCREEN_SURFACE_MATTE">
      <source-position filename="cd-enum.h" line="456"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_METADATA_STANDARD_SPACE"
              value="STANDARD_space"
              c:type="CD_PROFILE_METADATA_STANDARD_SPACE">
      <source-position filename="cd-enum.h" line="433"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_COLORSPACE"
              value="Colorspace"
              c:type="CD_PROFILE_PROPERTY_COLORSPACE">
      <source-position filename="cd-enum.h" line="475"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_CREATED"
              value="Created"
              c:type="CD_PROFILE_PROPERTY_CREATED">
      <source-position filename="cd-enum.h" line="478"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_FILENAME"
              value="Filename"
              c:type="CD_PROFILE_PROPERTY_FILENAME">
      <source-position filename="cd-enum.h" line="472"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_FORMAT"
              value="Format"
              c:type="CD_PROFILE_PROPERTY_FORMAT">
      <source-position filename="cd-enum.h" line="474"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_HAS_VCGT"
              value="HasVcgt"
              c:type="CD_PROFILE_PROPERTY_HAS_VCGT">
      <source-position filename="cd-enum.h" line="479"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_ID"
              value="ProfileId"
              c:type="CD_PROFILE_PROPERTY_ID">
      <source-position filename="cd-enum.h" line="482"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_IS_SYSTEM_WIDE"
              value="IsSystemWide"
              c:type="CD_PROFILE_PROPERTY_IS_SYSTEM_WIDE">
      <source-position filename="cd-enum.h" line="480"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_KIND"
              value="Kind"
              c:type="CD_PROFILE_PROPERTY_KIND">
      <source-position filename="cd-enum.h" line="477"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_METADATA"
              value="Metadata"
              c:type="CD_PROFILE_PROPERTY_METADATA">
      <source-position filename="cd-enum.h" line="481"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_OWNER"
              value="Owner"
              c:type="CD_PROFILE_PROPERTY_OWNER">
      <source-position filename="cd-enum.h" line="484"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_QUALIFIER"
              value="Qualifier"
              c:type="CD_PROFILE_PROPERTY_QUALIFIER">
      <source-position filename="cd-enum.h" line="473"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_SCOPE"
              value="Scope"
              c:type="CD_PROFILE_PROPERTY_SCOPE">
      <source-position filename="cd-enum.h" line="483"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_TITLE"
              value="Title"
              c:type="CD_PROFILE_PROPERTY_TITLE">
      <source-position filename="cd-enum.h" line="476"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="PROFILE_PROPERTY_WARNINGS"
              value="Warnings"
              c:type="CD_PROFILE_PROPERTY_WARNINGS">
      <source-position filename="cd-enum.h" line="485"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="Profile"
           c:symbol-prefix="profile"
           c:type="CdProfile"
           parent="GObject.Object"
           glib:type-name="CdProfile"
           glib:get-type="cd_profile_get_type"
           glib:type-struct="ProfileClass">
      <source-position filename="cd-profile.h" line="57"/>
      <constructor name="new" c:identifier="cd_profile_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1498">Creates a new #CdProfile object.</doc>
        <source-position filename="cd-profile.h" line="60"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="1503">a new CdProfile object.</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
      </constructor>
      <constructor name="new_with_object_path"
                   c:identifier="cd_profile_new_with_object_path"
                   version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1515">Creates a new #CdProfile object with a known object path.</doc>
        <source-position filename="cd-profile.h" line="61"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="1521">a new profile object.</doc>
          <type name="Profile" c:type="CdProfile*"/>
        </return-value>
        <parameters>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1517">The colord object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="error_from_string"
                c:identifier="cd_profile_error_from_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="746">Converts a string to a #CdProfileError.</doc>
        <source-position filename="cd-enum.h" line="575"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="751">enumerated value</doc>
          <type name="ProfileError" c:type="CdProfileError"/>
        </return-value>
        <parameters>
          <parameter name="error_desc" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="error_quark"
                c:identifier="cd_profile_error_quark"
                version="0.1.0">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="108">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="error_to_string"
                c:identifier="cd_profile_error_to_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="715">Converts a #CdProfileError to a string.</doc>
        <source-position filename="cd-enum.h" line="574"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="720">identifier string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="error_enum" transfer-ownership="none">
            <type name="ProfileError" c:type="CdProfileError"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_from_string"
                c:identifier="cd_profile_kind_from_string"
                version="2.91.1">
        <source-position filename="cd-enum.h" line="545"/>
        <return-value transfer-ownership="none">
          <type name="ProfileKind" c:type="CdProfileKind"/>
        </return-value>
        <parameters>
          <parameter name="profile_kind" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="cd_profile_kind_to_string"
                version="2.91.1">
        <source-position filename="cd-enum.h" line="544"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="profile_kind" transfer-ownership="none">
            <type name="ProfileKind" c:type="CdProfileKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="quality_from_string"
                c:identifier="cd_profile_quality_from_string"
                version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="591">Converts a string to a #CdProfileQuality.</doc>
        <source-position filename="cd-enum.h" line="569"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="596">enumerated value</doc>
          <type name="ProfileQuality" c:type="CdProfileQuality"/>
        </return-value>
        <parameters>
          <parameter name="quality" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="quality_to_string"
                c:identifier="cd_profile_quality_to_string"
                version="0.1.27">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="576">Converts a #CdProfileQuality to a string.</doc>
        <source-position filename="cd-enum.h" line="568"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="581">identifier string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="quality_enum" transfer-ownership="none">
            <type name="ProfileQuality" c:type="CdProfileQuality"/>
          </parameter>
        </parameters>
      </function>
      <function name="warning_from_string"
                c:identifier="cd_profile_warning_from_string"
                version="0.1.25">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="561">Converts a string to a #CdProfileWarning.</doc>
        <source-position filename="cd-enum.h" line="567"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="566">enumerated value</doc>
          <type name="ProfileWarning" c:type="CdProfileWarning"/>
        </return-value>
        <parameters>
          <parameter name="type" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="warning_to_string"
                c:identifier="cd_profile_warning_to_string"
                version="0.1.25">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="546">Converts a #CdProfileWarning to a string.</doc>
        <source-position filename="cd-enum.h" line="566"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="551">identifier string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind_enum" transfer-ownership="none">
            <type name="ProfileWarning" c:type="CdProfileWarning"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="changed">
        <source-position filename="cd-profile.h" line="46"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="connect"
              c:identifier="cd_profile_connect"
              version="0.1.8"
              glib:finish-func="connect_finish"
              glib:sync-func="connect_sync">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="797">Connects to the object and fills up initial properties.</doc>
        <source-position filename="cd-profile.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="799">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="800">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="801">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="802">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_finish"
              c:identifier="cd_profile_connect_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="608">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-profile.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="616">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="610">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="611">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_sync"
              c:identifier="cd_profile_connect_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="connect">
        <doc xml:space="preserve"
             filename="cd-profile-sync.c"
             line="60">Connects to the object and fills up initial properties.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-profile-sync.h" line="33"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile-sync.c"
               line="71">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="62">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="63">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="cd_profile_equal" version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1074">Tests two profiles for equality.</doc>
        <source-position filename="cd-profile.h" line="117"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="1081">%TRUE if the profiles are the same device</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1076">one #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="profile2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1077">another #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_age" c:identifier="cd_profile_get_age" version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="355">Gets the profile age in seconds relative to the current time.</doc>
        <source-position filename="cd-profile.h" line="104"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="361">A UNIX time, or 0 if the profile has no creation date</doc>
          <type name="gint64" c:type="gint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="357">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_colorspace"
              c:identifier="cd_profile_get_colorspace"
              glib:get-property="colorspace"
              version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="378">Gets the profile colorspace.</doc>
        <source-position filename="cd-profile.h" line="99"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="384">A #CdColorspace, e.g. %CD_COLORSPACE_RGB</doc>
          <type name="Colorspace" c:type="CdColorspace"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="380">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_connected"
              c:identifier="cd_profile_get_connected"
              glib:get-property="connected"
              version="0.1.9">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1031">Gets if the profile has been connected.</doc>
        <source-position filename="cd-profile.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="1037">%TRUE if properties are valid</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1033">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_created"
              c:identifier="cd_profile_get_created"
              glib:get-property="created"
              version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="336">Gets the profile created date and time.</doc>
        <source-position filename="cd-profile.h" line="103"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="342">A UNIX time, or 0 if the profile has no creation date</doc>
          <type name="gint64" c:type="gint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="338">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_filename"
              c:identifier="cd_profile_get_filename"
              glib:get-property="filename"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="158">Gets the profile filename.</doc>
        <source-position filename="cd-profile.h" line="93"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="164">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="160">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_format"
              c:identifier="cd_profile_get_format"
              glib:get-property="format"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="222">Gets the profile format.</doc>
        <source-position filename="cd-profile.h" line="95"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="228">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="224">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_has_vcgt"
              c:identifier="cd_profile_get_has_vcgt"
              glib:get-property="has-vcgt"
              version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="397">Returns if the profile has a VCGT table.</doc>
        <source-position filename="cd-profile.h" line="105"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="403">%TRUE if VCGT is valid.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="399">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id"
              c:identifier="cd_profile_get_id"
              glib:get-property="id"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="139">Gets the profile ID.</doc>
        <source-position filename="cd-profile.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="145">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="141">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_is_system_wide"
              c:identifier="cd_profile_get_is_system_wide"
              glib:get-property="is-system-wide"
              version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="416">Returns if the profile is installed system wide and available for all
users.</doc>
        <source-position filename="cd-profile.h" line="106"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="423">%TRUE if system wide.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="418">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="cd_profile_get_kind"
              glib:get-property="kind"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="260">Gets the profile kind.</doc>
        <source-position filename="cd-profile.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="266">A #CdProfileKind, e.g. %CD_PROFILE_KIND_DISPLAY_DEVICE</doc>
          <type name="ProfileKind" c:type="CdProfileKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="262">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata"
              c:identifier="cd_profile_get_metadata"
              version="0.1.2">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="436">Returns the profile metadata.</doc>
        <source-position filename="cd-profile.h" line="107"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="442">a
              #GHashTable.</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="utf8"/>
            <type name="utf8"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="438">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata_item"
              c:identifier="cd_profile_get_metadata_item"
              version="0.1.5">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="456">Returns the profile metadata for a specific key.</doc>
        <source-position filename="cd-profile.h" line="109"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="463">the metadata value, or %NULL if not set.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="458">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="459">a key for the metadata dictionary</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_object_path"
              c:identifier="cd_profile_get_object_path"
              glib:get-property="object-path"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1013">Gets the object path for the profile.</doc>
        <source-position filename="cd-profile.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="1019">the object path, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1015">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_owner"
              c:identifier="cd_profile_get_owner"
              glib:get-property="owner"
              version="0.1.13">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="298">Gets the profile owner.</doc>
        <source-position filename="cd-profile.h" line="101"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="304">The UID of the user that created the device</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="300">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_qualifier"
              c:identifier="cd_profile_get_qualifier"
              glib:get-property="qualifier"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="203">Gets the profile qualifier.</doc>
        <source-position filename="cd-profile.h" line="94"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="209">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="205">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scope"
              c:identifier="cd_profile_get_scope"
              glib:get-property="scope"
              version="0.1.10">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="279">Gets the profile scope.</doc>
        <source-position filename="cd-profile.h" line="100"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="285">A #CdObjectScope, e.g. %CD_OBJECT_SCOPE_UNKNOWN</doc>
          <type name="ObjectScope" c:type="CdObjectScope"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="281">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_title"
              c:identifier="cd_profile_get_title"
              glib:get-property="title"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="241">Gets the profile title.</doc>
        <source-position filename="cd-profile.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="247">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="243">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_warnings"
              c:identifier="cd_profile_get_warnings"
              glib:get-property="warnings"
              version="0.1.25">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="317">Gets the profile warnings as a string array.</doc>
        <source-position filename="cd-profile.h" line="102"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="323">Any profile warnings, e.g. "vcgt-non-monotonic"</doc>
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="319">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_access"
              c:identifier="cd_profile_has_access"
              version="0.1.13">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="177">Gets if the current user has access permissions to the profile.</doc>
        <source-position filename="cd-profile.h" line="119"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="183">A string, or %NULL for invalid</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="179">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="install_system_wide"
              c:identifier="cd_profile_install_system_wide"
              version="0.1.8"
              glib:finish-func="install_system_wide_finish"
              glib:sync-func="install_system_wide_sync">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="976">Sets the profile system wide.</doc>
        <source-position filename="cd-profile.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="978">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="979">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="980">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="981">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="install_system_wide_finish"
              c:identifier="cd_profile_install_system_wide_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="932">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-profile.h" line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="940">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="934">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="935">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="install_system_wide_sync"
              c:identifier="cd_profile_install_system_wide_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="install_system_wide">
        <doc xml:space="preserve"
             filename="cd-profile-sync.c"
             line="168">Sets the profile system wide.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-profile-sync.h" line="43"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile-sync.c"
               line="179">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="170">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="171">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_icc"
              c:identifier="cd_profile_load_icc"
              version="0.1.32"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1097">Loads a local ICC object from the abstract profile.</doc>
        <source-position filename="cd-profile.h" line="120"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="1106">A new #CdIcc object, or %NULL for error</doc>
          <type name="Icc" c:type="CdIcc*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1099">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1100">options for loading the profile</doc>
            <type name="IccLoadFlags" c:type="CdIccLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1101">A #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_object_path"
              c:identifier="cd_profile_set_object_path"
              glib:set-property="object-path"
              version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="121">Sets the object path of the profile.</doc>
        <source-position filename="cd-profile.h" line="113"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="123">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="124">The colord object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property"
              c:identifier="cd_profile_set_property"
              version="0.1.8"
              glib:finish-func="set_property_finish"
              glib:sync-func="set_property_sync">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="887">Deletes a color device.</doc>
        <source-position filename="cd-profile.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="889">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="890">a key name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="891">a key value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="892">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="893">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="894">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property_finish"
              c:identifier="cd_profile_set_property_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="841">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-profile.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="849">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="843">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="844">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_property_sync"
              c:identifier="cd_profile_set_property_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="set_property">
        <doc xml:space="preserve"
             filename="cd-profile-sync.c"
             line="112">Sets properties on an object

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-profile-sync.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-profile-sync.c"
               line="125">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="114">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="115">The key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="116">The value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-profile-sync.c"
                 line="117">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string"
              c:identifier="cd_profile_to_string"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1049">Converts the profile to a string description.</doc>
        <source-position filename="cd-profile.h" line="116"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-profile.c"
               line="1055">text representation of #CdProfile</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-profile.c"
                 line="1051">a #CdProfile instance.</doc>
            <type name="Profile" c:type="CdProfile*"/>
          </instance-parameter>
        </parameters>
      </method>
      <property name="colorspace"
                version="0.1.2"
                transfer-ownership="none"
                getter="get_colorspace"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1356">The profile colorspace.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="connected"
                version="0.1.9"
                transfer-ownership="none"
                getter="get_connected"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1262">The if the object path has been connected as is valid for use.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="created"
                version="0.1.8"
                transfer-ownership="none"
                getter="get_created"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1370">When the profile was created.</doc>
        <type name="gint64" c:type="gint64"/>
      </property>
      <property name="filename"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_filename"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1288">The profile filename.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="format"
                version="0.1.4"
                transfer-ownership="none"
                getter="get_format"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1315">The profile format.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="has-vcgt"
                version="0.1.2"
                transfer-ownership="none"
                getter="get_has_vcgt"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1385">If the profile has a VCGT table.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="id"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_id"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1275">The profile ID.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="is-system-wide"
                version="0.1.2"
                transfer-ownership="none"
                getter="get_is_system_wide"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1399">If the profile is installed system wide for all users.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="kind"
                version="0.1.1"
                transfer-ownership="none"
                getter="get_kind"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1342">The profile kind.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="object-path"
                version="0.1.8"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_object_path"
                getter="get_object_path"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1249">The object path of the remote object</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="owner"
                version="0.1.13"
                transfer-ownership="none"
                getter="get_owner"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1429">The profile owner, e.g. %500.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="qualifier"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_qualifier"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1301">The profile qualifier.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="scope"
                version="0.1.10"
                transfer-ownership="none"
                getter="get_scope"
                default-value="0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1413">The profile scope, e.g. %CD_OBJECT_SCOPE_TEMP.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="title"
                version="0.1.0"
                transfer-ownership="none"
                getter="get_title"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1329">The profile title.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="warnings"
                version="0.1.25"
                transfer-ownership="none"
                getter="get_warnings">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1445">The profile warnings, e.g. "vcgt-non-monotonic".</doc>
        <array>
          <type name="utf8"/>
        </array>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="changed" when="last" version="0.1.0">
        <doc xml:space="preserve"
             filename="cd-profile.c"
             line="1234">The ::changed signal is emitted when the profile data has changed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="ProfileClass"
            c:type="CdProfileClass"
            glib:is-gtype-struct-for="Profile">
      <source-position filename="cd-profile.h" line="57"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="changed">
        <callback name="changed">
          <source-position filename="cd-profile.h" line="46"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="profile" transfer-ownership="none">
              <type name="Profile" c:type="CdProfile*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_cd_profile_reserved1" introspectable="0">
        <callback name="_cd_profile_reserved1">
          <source-position filename="cd-profile.h" line="49"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_profile_reserved2" introspectable="0">
        <callback name="_cd_profile_reserved2">
          <source-position filename="cd-profile.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_profile_reserved3" introspectable="0">
        <callback name="_cd_profile_reserved3">
          <source-position filename="cd-profile.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_profile_reserved4" introspectable="0">
        <callback name="_cd_profile_reserved4">
          <source-position filename="cd-profile.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_profile_reserved5" introspectable="0">
        <callback name="_cd_profile_reserved5">
          <source-position filename="cd-profile.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_profile_reserved6" introspectable="0">
        <callback name="_cd_profile_reserved6">
          <source-position filename="cd-profile.h" line="54"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_profile_reserved7" introspectable="0">
        <callback name="_cd_profile_reserved7">
          <source-position filename="cd-profile.h" line="55"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_profile_reserved8" introspectable="0">
        <callback name="_cd_profile_reserved8">
          <source-position filename="cd-profile.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ProfileError" c:type="CdProfileError">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="347">Errors that can be thrown</doc>
      <source-position filename="cd-enum.h" line="372"/>
      <member name="internal"
              value="0"
              c:identifier="CD_PROFILE_ERROR_INTERNAL">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="349">An internal error occurred</doc>
      </member>
      <member name="already_installed"
              value="1"
              c:identifier="CD_PROFILE_ERROR_ALREADY_INSTALLED">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="350">The profile is already installed</doc>
      </member>
      <member name="failed_to_write"
              value="2"
              c:identifier="CD_PROFILE_ERROR_FAILED_TO_WRITE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="351">The profile could not be written</doc>
      </member>
      <member name="failed_to_parse"
              value="3"
              c:identifier="CD_PROFILE_ERROR_FAILED_TO_PARSE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="352">The profile could not be parsed</doc>
      </member>
      <member name="failed_to_read"
              value="4"
              c:identifier="CD_PROFILE_ERROR_FAILED_TO_READ">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="353">The profile could not be read</doc>
      </member>
      <member name="failed_to_authenticate"
              value="5"
              c:identifier="CD_PROFILE_ERROR_FAILED_TO_AUTHENTICATE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="354">Authentication failed</doc>
      </member>
      <member name="property_invalid"
              value="6"
              c:identifier="CD_PROFILE_ERROR_PROPERTY_INVALID">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="355">One or more of the properties was invalid</doc>
      </member>
      <member name="failed_to_get_uid"
              value="7"
              c:identifier="CD_PROFILE_ERROR_FAILED_TO_GET_UID">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="356">Failed to get UID for sender</doc>
      </member>
    </enumeration>
    <enumeration name="ProfileKind" c:type="CdProfileKind">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="49">The profile type.</doc>
      <source-position filename="cd-enum.h" line="65"/>
      <member name="unknown" value="0" c:identifier="CD_PROFILE_KIND_UNKNOWN">
      </member>
      <member name="input_device"
              value="1"
              c:identifier="CD_PROFILE_KIND_INPUT_DEVICE">
      </member>
      <member name="display_device"
              value="2"
              c:identifier="CD_PROFILE_KIND_DISPLAY_DEVICE">
      </member>
      <member name="output_device"
              value="3"
              c:identifier="CD_PROFILE_KIND_OUTPUT_DEVICE">
      </member>
      <member name="devicelink"
              value="4"
              c:identifier="CD_PROFILE_KIND_DEVICELINK">
      </member>
      <member name="colorspace_conversion"
              value="5"
              c:identifier="CD_PROFILE_KIND_COLORSPACE_CONVERSION">
      </member>
      <member name="abstract"
              value="6"
              c:identifier="CD_PROFILE_KIND_ABSTRACT">
      </member>
      <member name="named_color"
              value="7"
              c:identifier="CD_PROFILE_KIND_NAMED_COLOR">
      </member>
    </enumeration>
    <enumeration name="ProfileQuality" c:type="CdProfileQuality">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="296">The quality of the profile produced through calibration.</doc>
      <source-position filename="cd-enum.h" line="311"/>
      <member name="low" value="0" c:identifier="CD_PROFILE_QUALITY_LOW">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="298">Low quality profile, fast</doc>
      </member>
      <member name="medium" value="1" c:identifier="CD_PROFILE_QUALITY_MEDIUM">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="299">Medium quality profile</doc>
      </member>
      <member name="high" value="2" c:identifier="CD_PROFILE_QUALITY_HIGH">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="300">High quality profile, slow</doc>
      </member>
    </enumeration>
    <enumeration name="ProfileWarning" c:type="CdProfileWarning">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="260">The warning about the profile. Profiles with warnings can still be
used, but may be of limited use.</doc>
      <source-position filename="cd-enum.h" line="294"/>
      <member name="none" value="0" c:identifier="CD_PROFILE_WARNING_NONE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="262">No error is found</doc>
      </member>
      <member name="description_missing"
              value="1"
              c:identifier="CD_PROFILE_WARNING_DESCRIPTION_MISSING">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="263">The description is missing or of zero length</doc>
      </member>
      <member name="copyright_missing"
              value="2"
              c:identifier="CD_PROFILE_WARNING_COPYRIGHT_MISSING">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="264">The copyright is missing or of zero length</doc>
      </member>
      <member name="vcgt_non_monotonic"
              value="3"
              c:identifier="CD_PROFILE_WARNING_VCGT_NON_MONOTONIC">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="265">The video card gamma table is not monotonic</doc>
      </member>
      <member name="scum_dot"
              value="4"
              c:identifier="CD_PROFILE_WARNING_SCUM_DOT">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="266">Lab 100, 0, 0 does not map to RGB 255,255,255</doc>
      </member>
      <member name="gray_axis_invalid"
              value="5"
              c:identifier="CD_PROFILE_WARNING_GRAY_AXIS_INVALID">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="267">There is significant a/b for gray</doc>
      </member>
      <member name="gray_axis_non_monotonic"
              value="6"
              c:identifier="CD_PROFILE_WARNING_GRAY_AXIS_NON_MONOTONIC">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="268">The gray ramp is not monotonic</doc>
      </member>
      <member name="primaries_invalid"
              value="7"
              c:identifier="CD_PROFILE_WARNING_PRIMARIES_INVALID">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="269">One or more of the primaries are invalid</doc>
      </member>
      <member name="primaries_non_additive"
              value="8"
              c:identifier="CD_PROFILE_WARNING_PRIMARIES_NON_ADDITIVE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="270">The primaries to not add to give D50 white</doc>
      </member>
      <member name="primaries_unlikely"
              value="9"
              c:identifier="CD_PROFILE_WARNING_PRIMARIES_UNLIKELY">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="271">One or more of the primaries are outside of ROMM RGB</doc>
      </member>
      <member name="whitepoint_invalid"
              value="10"
              c:identifier="CD_PROFILE_WARNING_WHITEPOINT_INVALID">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="272">RGB 255,255,255 does not return D50</doc>
      </member>
      <member name="whitepoint_unlikely"
              value="11"
              c:identifier="CD_PROFILE_WARNING_WHITEPOINT_UNLIKELY">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="273">Whitepoint is outside of usual range</doc>
      </member>
    </enumeration>
    <enumeration name="RenderingIntent" c:type="CdRenderingIntent">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="81">The rendering intent.</doc>
      <source-position filename="cd-enum.h" line="99"/>
      <member name="unknown"
              value="0"
              c:identifier="CD_RENDERING_INTENT_UNKNOWN">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="83">Unknown rendering intent</doc>
      </member>
      <member name="perceptual"
              value="1"
              c:identifier="CD_RENDERING_INTENT_PERCEPTUAL">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="84">Used for photos as it maintains contrast</doc>
      </member>
      <member name="relative_colorimetric"
              value="2"
              c:identifier="CD_RENDERING_INTENT_RELATIVE_COLORIMETRIC">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="85">Used for graphic design and named colors</doc>
      </member>
      <member name="saturation"
              value="3"
              c:identifier="CD_RENDERING_INTENT_SATURATION">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="86">Used for business charts as it maintains saturation without dithering</doc>
      </member>
      <member name="absolute_colorimetric"
              value="4"
              c:identifier="CD_RENDERING_INTENT_ABSOLUTE_COLORIMETRIC">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="87">Used when a specific color is required</doc>
      </member>
    </enumeration>
    <constant name="SENSOR_METADATA_IMAGE_ATTACH"
              value="ImageAttach"
              c:type="CD_SENSOR_METADATA_IMAGE_ATTACH">
      <source-position filename="cd-enum.h" line="531"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_METADATA_IMAGE_CALIBRATE"
              value="ImageCalibrate"
              c:type="CD_SENSOR_METADATA_IMAGE_CALIBRATE">
      <source-position filename="cd-enum.h" line="532"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_METADATA_IMAGE_SCREEN"
              value="ImageScreen"
              c:type="CD_SENSOR_METADATA_IMAGE_SCREEN">
      <source-position filename="cd-enum.h" line="533"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_CAPABILITIES"
              value="Capabilities"
              c:type="CD_SENSOR_PROPERTY_CAPABILITIES">
      <source-position filename="cd-enum.h" line="525"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_EMBEDDED"
              value="Embedded"
              c:type="CD_SENSOR_PROPERTY_EMBEDDED">
      <source-position filename="cd-enum.h" line="527"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_ID"
              value="SensorId"
              c:type="CD_SENSOR_PROPERTY_ID">
      <source-position filename="cd-enum.h" line="516"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_KIND"
              value="Kind"
              c:type="CD_SENSOR_PROPERTY_KIND">
      <source-position filename="cd-enum.h" line="517"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_LOCKED"
              value="Locked"
              c:type="CD_SENSOR_PROPERTY_LOCKED">
      <source-position filename="cd-enum.h" line="524"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_METADATA"
              value="Metadata"
              c:type="CD_SENSOR_PROPERTY_METADATA">
      <source-position filename="cd-enum.h" line="528"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_MODE"
              value="Mode"
              c:type="CD_SENSOR_PROPERTY_MODE">
      <source-position filename="cd-enum.h" line="519"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_MODEL"
              value="Model"
              c:type="CD_SENSOR_PROPERTY_MODEL">
      <source-position filename="cd-enum.h" line="521"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_NATIVE"
              value="Native"
              c:type="CD_SENSOR_PROPERTY_NATIVE">
      <source-position filename="cd-enum.h" line="523"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_OPTIONS"
              value="Options"
              c:type="CD_SENSOR_PROPERTY_OPTIONS">
      <source-position filename="cd-enum.h" line="526"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_SERIAL"
              value="Serial"
              c:type="CD_SENSOR_PROPERTY_SERIAL">
      <source-position filename="cd-enum.h" line="520"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_STATE"
              value="State"
              c:type="CD_SENSOR_PROPERTY_STATE">
      <source-position filename="cd-enum.h" line="518"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="SENSOR_PROPERTY_VENDOR"
              value="Vendor"
              c:type="CD_SENSOR_PROPERTY_VENDOR">
      <source-position filename="cd-enum.h" line="522"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <class name="Sensor"
           c:symbol-prefix="sensor"
           c:type="CdSensor"
           parent="GObject.Object"
           glib:type-name="CdSensor"
           glib:get-type="cd_sensor_get_type"
           glib:type-struct="SensorClass">
      <source-position filename="cd-sensor.h" line="58"/>
      <constructor name="new" c:identifier="cd_sensor_new" version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1631">Creates a new #CdSensor object.</doc>
        <source-position filename="cd-sensor.h" line="61"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1636">a new CdSensor object.</doc>
          <type name="Sensor" c:type="CdSensor*"/>
        </return-value>
      </constructor>
      <constructor name="new_with_object_path"
                   c:identifier="cd_sensor_new_with_object_path"
                   version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1648">Creates a new #CdSensor object with a known object path.</doc>
        <source-position filename="cd-sensor.h" line="62"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1654">a new sensor object.</doc>
          <type name="Sensor" c:type="CdSensor*"/>
        </return-value>
        <parameters>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1650">The colord object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="cap_from_string"
                c:identifier="cd_sensor_cap_from_string">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="504">Gets the sensor capability as a enumerated value.</doc>
        <source-position filename="cd-enum.h" line="563"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="510">a #CdSensorCap</doc>
          <type name="SensorCap" c:type="CdSensorCap"/>
        </return-value>
        <parameters>
          <parameter name="sensor_cap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-enum.c"
                 line="506">the sensor capability, e.g. 'projector'.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="cap_to_string" c:identifier="cd_sensor_cap_to_string">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="490">Gets the sensor capability as a string.</doc>
        <source-position filename="cd-enum.h" line="562"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="496">the sensor capability, e.g. 'projector'.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="sensor_cap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-enum.c"
                 line="492">a #CdSensorCap</doc>
            <type name="SensorCap" c:type="CdSensorCap"/>
          </parameter>
        </parameters>
      </function>
      <function name="error_from_string"
                c:identifier="cd_sensor_error_from_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="676">Converts a string to a #CdSensorError.</doc>
        <source-position filename="cd-enum.h" line="573"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="681">enumerated value</doc>
          <type name="SensorError" c:type="CdSensorError"/>
        </return-value>
        <parameters>
          <parameter name="error_desc" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="error_quark"
                c:identifier="cd_sensor_error_quark"
                version="0.1.6">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="103">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="error_to_string"
                c:identifier="cd_sensor_error_to_string"
                version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="639">Converts a #CdSensorError to a string.</doc>
        <source-position filename="cd-enum.h" line="572"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="644">identifier string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="error_enum" transfer-ownership="none">
            <type name="SensorError" c:type="CdSensorError"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_from_string"
                c:identifier="cd_sensor_kind_from_string">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="448">Gets the sensor kind as a enumerated value.</doc>
        <source-position filename="cd-enum.h" line="559"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="454">a #CdSensorKind</doc>
          <type name="SensorKind" c:type="CdSensorKind"/>
        </return-value>
        <parameters>
          <parameter name="sensor_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-enum.c"
                 line="450">the sensor kind, e.g. 'huey'.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string" c:identifier="cd_sensor_kind_to_string">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="434">Gets the sensor kind as a string.</doc>
        <source-position filename="cd-enum.h" line="558"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="440">the sensor kind, e.g. 'huey'.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="sensor_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-enum.c"
                 line="436">a #CdSensorKind</doc>
            <type name="SensorKind" c:type="CdSensorKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="state_from_string"
                c:identifier="cd_sensor_state_from_string">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="476">Gets the sensor stateability as a enumerated value.</doc>
        <source-position filename="cd-enum.h" line="561"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="482">a #CdSensorState</doc>
          <type name="SensorState" c:type="CdSensorState"/>
        </return-value>
        <parameters>
          <parameter name="sensor_state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-enum.c"
                 line="478">the sensor stateability, e.g. 'measuring'.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="state_to_string"
                c:identifier="cd_sensor_state_to_string">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="462">Gets the sensor stateability as a string.</doc>
        <source-position filename="cd-enum.h" line="560"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="468">the sensor stateability, e.g. 'measuring'.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="sensor_state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-enum.c"
                 line="464">a #CdSensorState</doc>
            <type name="SensorState" c:type="CdSensorState"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="button_pressed">
        <source-position filename="cd-sensor.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="connect"
              c:identifier="cd_sensor_connect"
              version="0.1.8"
              glib:finish-func="connect_finish"
              glib:sync-func="connect_sync">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="634">Connects to the sensor.</doc>
        <source-position filename="cd-sensor.h" line="65"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="636">a #CdSensor instance</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="637">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="638">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="639">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_finish"
              c:identifier="cd_sensor_connect_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="678">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-sensor.h" line="69"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="686">%TRUE if we could connect to to the sensor</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="680">a #CdSensor instance</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="681">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="connect_sync"
              c:identifier="cd_sensor_connect_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="connect">
        <doc xml:space="preserve"
             filename="cd-sensor-sync.c"
             line="61">Connects to the object and fills up initial properties.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-sensor-sync.h" line="35"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor-sync.c"
               line="72">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="63">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="64">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="cd_sensor_equal" version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1307">Tests two sensors for equality.</doc>
        <source-position filename="cd-sensor.h" line="143"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1314">%TRUE if the sensors are the same device</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1309">one #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="sensor2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1310">another #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_caps"
              c:identifier="cd_sensor_get_caps"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="305">Returns the sensor metadata.</doc>
        <source-position filename="cd-sensor.h" line="130"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="311">The sensor capability bitfield.</doc>
          <type name="guint64" c:type="guint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="307">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_connected"
              c:identifier="cd_sensor_get_connected"
              glib:get-property="connected"
              version="0.1.9">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1211">Gets if the sensor has been connected.</doc>
        <source-position filename="cd-sensor.h" line="120"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1217">%TRUE if properties are valid</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1213">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_embedded"
              c:identifier="cd_sensor_get_embedded"
              glib:get-property="embedded"
              version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="267">Returns if the sensor is embedded into the computer.</doc>
        <source-position filename="cd-sensor.h" line="128"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="273">%TRUE if embedded.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="269">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id"
              c:identifier="cd_sensor_get_id"
              glib:get-property="id"
              version="0.1.26">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1193">Gets the object ID for the sensor.</doc>
        <source-position filename="cd-sensor.h" line="119"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1199">the object ID, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1195">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="cd_sensor_get_kind"
              glib:get-property="kind"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="134">Gets the sensor kind.</doc>
        <source-position filename="cd-sensor.h" line="121"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="140">A #CdSensorKind, e.g. %CD_SENSOR_KIND_HUEY</doc>
          <type name="SensorKind" c:type="CdSensorKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="136">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_locked"
              c:identifier="cd_sensor_get_locked"
              glib:get-property="locked"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="286">Returns if the sensor is locked.</doc>
        <source-position filename="cd-sensor.h" line="129"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="292">%TRUE if VCGT is valid.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="288">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata"
              c:identifier="cd_sensor_get_metadata"
              version="0.1.28">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1267">Returns the sensor metadata.</doc>
        <source-position filename="cd-sensor.h" line="136"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1273">a
              #GHashTable.</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="utf8"/>
            <type name="utf8"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1269">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata_item"
              c:identifier="cd_sensor_get_metadata_item"
              version="0.1.28">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1287">Returns the sensor metadata for a specific key.</doc>
        <source-position filename="cd-sensor.h" line="137"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1294">the metadata value, or %NULL if not set.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1289">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1290">a key for the metadata dictionary</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_mode"
              c:identifier="cd_sensor_get_mode"
              glib:get-property="mode"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="172">Gets the sensor operating mode.</doc>
        <source-position filename="cd-sensor.h" line="123"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="178">A #CdSensorCap, e.g. %CD_SENSOR_CAP_AMBIENT</doc>
          <type name="SensorCap" c:type="CdSensorCap"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="174">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_model"
              c:identifier="cd_sensor_get_model"
              glib:get-property="model"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="210">Gets the sensor model.</doc>
        <source-position filename="cd-sensor.h" line="125"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="216">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="212">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_native"
              c:identifier="cd_sensor_get_native"
              glib:get-property="native"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="248">Returns if the sensor has a native driver.</doc>
        <source-position filename="cd-sensor.h" line="127"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="254">%TRUE if VCGT is valid.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="250">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_object_path"
              c:identifier="cd_sensor_get_object_path"
              glib:get-property="object-path"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1175">Gets the object path for the sensor.</doc>
        <source-position filename="cd-sensor.h" line="118"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1181">the object path, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1177">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_option"
              c:identifier="cd_sensor_get_option"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1248">Gets a specific sensor option.</doc>
        <source-position filename="cd-sensor.h" line="134"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1255">A const string, or %NULL of not found.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1250">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1251">a key to search for.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_options"
              c:identifier="cd_sensor_get_options"
              version="0.1.20">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1229">Gets any sensor options.</doc>
        <source-position filename="cd-sensor.h" line="133"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1235">A
              refcounted #GHashTable of (string, GVariant).</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="utf8"/>
            <type name="GLib.Variant"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1231">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sample"
              c:identifier="cd_sensor_get_sample"
              version="0.1.8"
              glib:finish-func="get_sample_finish"
              glib:sync-func="get_sample_sync">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1034">Gets a color sample from a sensor</doc>
        <source-position filename="cd-sensor.h" line="98"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1036">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1037">a #CdSensorCap</doc>
            <type name="SensorCap" c:type="CdSensorCap"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1038">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1039">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1040">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_sample_finish"
              c:identifier="cd_sensor_get_sample_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="982">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-sensor.h" line="103"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="990">the XYZ reading, or %NULL</doc>
          <type name="ColorXYZ" c:type="CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="984">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="985">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_sample_sync"
              c:identifier="cd_sensor_get_sample_sync"
              version="0.1.8"
              throws="1"
              glib:async-func="get_sample">
        <doc xml:space="preserve"
             filename="cd-sensor-sync.c"
             line="271">Gets a sample from the sensor.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-sensor-sync.h" line="52"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-sensor-sync.c"
               line="283">the XYZ reading, with ambient levels in Lux encoded in X, or %NULL for error.</doc>
          <type name="ColorXYZ" c:type="CdColorXYZ*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="273">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="274">The device capability, e.g. %CD_SENSOR_CAP_AMBIENT.</doc>
            <type name="SensorCap" c:type="CdSensorCap"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="275">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_serial"
              c:identifier="cd_sensor_get_serial"
              glib:get-property="serial"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="191">Gets the sensor serial number.</doc>
        <source-position filename="cd-sensor.h" line="124"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="197">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="193">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_spectrum"
              c:identifier="cd_sensor_get_spectrum"
              version="1.3.1"
              glib:finish-func="get_spectrum_finish"
              glib:sync-func="get_spectrum_sync">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1135">Gets a color spectrum from a sensor</doc>
        <source-position filename="cd-sensor.h" line="107"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1137">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1138">a #CdSensorCap</doc>
            <type name="SensorCap" c:type="CdSensorCap"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1139">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1140">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1141">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_spectrum_finish"
              c:identifier="cd_sensor_get_spectrum_finish"
              version="1.3.1"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1074">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-sensor.h" line="112"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="1082">the XYZ reading, or %NULL</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1076">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="1077">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_spectrum_sync"
              c:identifier="cd_sensor_get_spectrum_sync"
              version="1.3.1"
              throws="1"
              glib:async-func="get_spectrum">
        <doc xml:space="preserve"
             filename="cd-sensor-sync.c"
             line="325">Gets a spectrum from the sensor.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-sensor-sync.h" line="57"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-sensor-sync.c"
               line="337">the XYZ reading, with ambient levels in Lux encoded in X, or %NULL for error.</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="327">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="328">The device capability, e.g. %CD_SENSOR_CAP_AMBIENT.</doc>
            <type name="SensorCap" c:type="CdSensorCap"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="329">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_state"
              c:identifier="cd_sensor_get_state"
              glib:get-property="state"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="153">Gets the sensor state.</doc>
        <source-position filename="cd-sensor.h" line="122"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="159">A #CdSensorState, e.g. %CD_SENSOR_STATE_IDLE</doc>
          <type name="SensorState" c:type="CdSensorState"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="155">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vendor"
              c:identifier="cd_sensor_get_vendor"
              glib:get-property="vendor"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="229">Gets the sensor vendor.</doc>
        <source-position filename="cd-sensor.h" line="126"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="235">A string, or %NULL for invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="231">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_cap" c:identifier="cd_sensor_has_cap" version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="324">Returns the sensor metadata for a specific key.</doc>
        <source-position filename="cd-sensor.h" line="131"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="331">%TRUE if the sensor has the specified capability</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="326">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="327">a specified capability, e.g. %CD_SENSOR_CAP_LCD</doc>
            <type name="SensorCap" c:type="CdSensorCap"/>
          </parameter>
        </parameters>
      </method>
      <method name="lock"
              c:identifier="cd_sensor_lock"
              version="0.1.8"
              glib:finish-func="lock_finish"
              glib:sync-func="lock_sync">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="766">Locks the device so we can use it.</doc>
        <source-position filename="cd-sensor.h" line="73"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="768">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="769">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="770">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="771">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="lock_finish"
              c:identifier="cd_sensor_lock_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="701">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-sensor.h" line="77"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="709">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="703">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="704">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="lock_sync"
              c:identifier="cd_sensor_lock_sync"
              version="0.1.6"
              throws="1"
              glib:async-func="lock">
        <doc xml:space="preserve"
             filename="cd-sensor-sync.c"
             line="113">Locks the device so we can use it.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-sensor-sync.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor-sync.c"
               line="124">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="115">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="116">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_object_path"
              c:identifier="cd_sensor_set_object_path"
              glib:set-property="object-path"
              version="0.1.8">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="116">Sets the object path of the sensor.</doc>
        <source-position filename="cd-sensor.h" line="141"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="118">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="119">The colord object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_options"
              c:identifier="cd_sensor_set_options"
              version="0.1.20"
              glib:finish-func="set_options_finish"
              glib:sync-func="set_options_sync">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="928">Sets options on the sensor device.</doc>
        <source-position filename="cd-sensor.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="930">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="values" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="931">the options</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="utf8"/>
              <type name="GLib.Variant"/>
            </type>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="932">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="933">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="934">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_options_finish"
              c:identifier="cd_sensor_set_options_finish"
              version="0.1.20"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="884">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-sensor.h" line="94"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="892">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="886">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="887">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_options_sync"
              c:identifier="cd_sensor_set_options_sync"
              version="0.1.20"
              throws="1"
              glib:async-func="set_options">
        <doc xml:space="preserve"
             filename="cd-sensor-sync.c"
             line="217">Sets options on the sensor device.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-sensor-sync.h" line="47"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor-sync.c"
               line="229">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="219">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="values" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="220">the options</doc>
            <type name="GLib.HashTable" c:type="GHashTable*">
              <type name="utf8"/>
              <type name="GLib.Variant"/>
            </type>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="221">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string" c:identifier="cd_sensor_to_string">
        <source-position filename="cd-sensor.h" line="145"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unlock"
              c:identifier="cd_sensor_unlock"
              version="0.1.8"
              glib:finish-func="unlock_finish"
              glib:sync-func="unlock_sync">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="847">Unlocks the sensor for use by other programs.</doc>
        <source-position filename="cd-sensor.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="849">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="850">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="851">the function to run on completion</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="852">the data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="unlock_finish"
              c:identifier="cd_sensor_unlock_finish"
              version="0.1.8"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="803">Gets the result from the asynchronous function.</doc>
        <source-position filename="cd-sensor.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor.c"
               line="811">success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="805">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor.c"
                 line="806">the #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="unlock_sync"
              c:identifier="cd_sensor_unlock_sync"
              version="0.1.6"
              throws="1"
              glib:async-func="unlock">
        <doc xml:space="preserve"
             filename="cd-sensor-sync.c"
             line="165">Unlocks the device for use by other programs.

WARNING: This function is synchronous, and may block.
Do not use it in GUI applications.</doc>
        <source-position filename="cd-sensor-sync.h" line="43"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-sensor-sync.c"
               line="176">%TRUE for success, else %FALSE.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="sensor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="167">a #CdSensor instance.</doc>
            <type name="Sensor" c:type="CdSensor*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-sensor-sync.c"
                 line="168">a #GCancellable or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <property name="connected"
                version="0.1.9"
                transfer-ownership="none"
                getter="get_connected"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1452">The if the object path has been connected as is valid for use.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="embedded"
                version="0.1.26"
                transfer-ownership="none"
                getter="get_embedded"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1561">If the sensor has a native driver.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="id"
                version="0.1.26"
                transfer-ownership="none"
                getter="get_id"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1439">The object ID of the remote object</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="kind"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_kind"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1465">The sensor kind.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="locked"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_locked"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1575">If the sensor is locked.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="mode"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_mode"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1493">The sensor mode.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="model"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_model"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1520">The sensor model.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="native"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_native"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1547">If the sensor has a native driver.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="object-path"
                version="0.1.8"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_object_path"
                getter="get_object_path"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1426">The object path of the remote object</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="serial"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_serial"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1507">The sensor ID.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="state"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_state"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1479">The sensor state.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="vendor"
                version="0.1.6"
                transfer-ownership="none"
                getter="get_vendor"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1533">The sensor vendor.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="button-pressed" when="last" version="0.1.6">
        <doc xml:space="preserve"
             filename="cd-sensor.c"
             line="1411">The ::button-pressed signal is emitted when the button has been pressed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <enumeration name="SensorCap" c:type="CdSensorCap">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="203">The sensor capabilities, i.e. things the sensor can do.</doc>
      <source-position filename="cd-enum.h" line="229"/>
      <member name="unknown" value="0" c:identifier="CD_SENSOR_CAP_UNKNOWN">
      </member>
      <member name="lcd" value="1" c:identifier="CD_SENSOR_CAP_LCD">
      </member>
      <member name="crt" value="2" c:identifier="CD_SENSOR_CAP_CRT">
      </member>
      <member name="printer" value="3" c:identifier="CD_SENSOR_CAP_PRINTER">
      </member>
      <member name="spot" value="4" c:identifier="CD_SENSOR_CAP_SPOT">
      </member>
      <member name="projector"
              value="5"
              c:identifier="CD_SENSOR_CAP_PROJECTOR">
      </member>
      <member name="ambient" value="6" c:identifier="CD_SENSOR_CAP_AMBIENT">
      </member>
      <member name="calibration"
              value="7"
              c:identifier="CD_SENSOR_CAP_CALIBRATION">
      </member>
      <member name="led" value="8" c:identifier="CD_SENSOR_CAP_LED">
      </member>
      <member name="plasma" value="9" c:identifier="CD_SENSOR_CAP_PLASMA">
      </member>
      <member name="lcd_ccfl" value="10" c:identifier="CD_SENSOR_CAP_LCD_CCFL">
      </member>
      <member name="lcd_rgb_led"
              value="11"
              c:identifier="CD_SENSOR_CAP_LCD_RGB_LED">
      </member>
      <member name="lcd_white_led"
              value="12"
              c:identifier="CD_SENSOR_CAP_LCD_WHITE_LED">
      </member>
      <member name="wide_gamut_lcd_ccfl"
              value="13"
              c:identifier="CD_SENSOR_CAP_WIDE_GAMUT_LCD_CCFL">
      </member>
      <member name="wide_gamut_lcd_rgb_led"
              value="14"
              c:identifier="CD_SENSOR_CAP_WIDE_GAMUT_LCD_RGB_LED">
      </member>
      <member name="spectral" value="15" c:identifier="CD_SENSOR_CAP_SPECTRAL">
      </member>
      <member name="calibration_dark"
              value="16"
              c:identifier="CD_SENSOR_CAP_CALIBRATION_DARK">
      </member>
      <member name="calibration_irradiance"
              value="17"
              c:identifier="CD_SENSOR_CAP_CALIBRATION_IRRADIANCE">
      </member>
    </enumeration>
    <record name="SensorClass"
            c:type="CdSensorClass"
            glib:is-gtype-struct-for="Sensor">
      <source-position filename="cd-sensor.h" line="58"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="button_pressed">
        <callback name="button_pressed">
          <source-position filename="cd-sensor.h" line="47"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="sensor" transfer-ownership="none">
              <type name="Sensor" c:type="CdSensor*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_cd_sensor_reserved1" introspectable="0">
        <callback name="_cd_sensor_reserved1">
          <source-position filename="cd-sensor.h" line="50"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_sensor_reserved2" introspectable="0">
        <callback name="_cd_sensor_reserved2">
          <source-position filename="cd-sensor.h" line="51"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_sensor_reserved3" introspectable="0">
        <callback name="_cd_sensor_reserved3">
          <source-position filename="cd-sensor.h" line="52"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_sensor_reserved4" introspectable="0">
        <callback name="_cd_sensor_reserved4">
          <source-position filename="cd-sensor.h" line="53"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_sensor_reserved5" introspectable="0">
        <callback name="_cd_sensor_reserved5">
          <source-position filename="cd-sensor.h" line="54"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_sensor_reserved6" introspectable="0">
        <callback name="_cd_sensor_reserved6">
          <source-position filename="cd-sensor.h" line="55"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_sensor_reserved7" introspectable="0">
        <callback name="_cd_sensor_reserved7">
          <source-position filename="cd-sensor.h" line="56"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_sensor_reserved8" introspectable="0">
        <callback name="_cd_sensor_reserved8">
          <source-position filename="cd-sensor.h" line="57"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="SensorError" version="0.1.26" c:type="CdSensorError">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="313">The sensor error code.</doc>
      <source-position filename="cd-enum.h" line="345"/>
      <member name="no_support"
              value="0"
              c:identifier="CD_SENSOR_ERROR_NO_SUPPORT">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="315">This action is unsupported on this hardware</doc>
      </member>
      <member name="no_data" value="1" c:identifier="CD_SENSOR_ERROR_NO_DATA">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="316">The sensor provided no data</doc>
      </member>
      <member name="internal"
              value="2"
              c:identifier="CD_SENSOR_ERROR_INTERNAL">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="317">An internal error occurred</doc>
      </member>
      <member name="already_locked"
              value="3"
              c:identifier="CD_SENSOR_ERROR_ALREADY_LOCKED">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="318">The sensor is already locked</doc>
      </member>
      <member name="not_locked"
              value="4"
              c:identifier="CD_SENSOR_ERROR_NOT_LOCKED">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="319">The sensor is not locked</doc>
      </member>
      <member name="in_use" value="5" c:identifier="CD_SENSOR_ERROR_IN_USE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="320">The sensor is already in use</doc>
      </member>
      <member name="failed_to_authenticate"
              value="6"
              c:identifier="CD_SENSOR_ERROR_FAILED_TO_AUTHENTICATE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="321">Authentication failed</doc>
      </member>
      <member name="required_position_calibrate"
              value="7"
              c:identifier="CD_SENSOR_ERROR_REQUIRED_POSITION_CALIBRATE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="322">The sensor needs to be in the calibrate position</doc>
      </member>
      <member name="required_position_surface"
              value="8"
              c:identifier="CD_SENSOR_ERROR_REQUIRED_POSITION_SURFACE">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="323">The sensor needs to be in the surface position</doc>
      </member>
      <member name="required_dark_calibration"
              value="9"
              c:identifier="CD_SENSOR_ERROR_REQUIRED_DARK_CALIBRATION">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="324">The sensor needs dark calibration</doc>
      </member>
      <member name="required_irradiance_calibration"
              value="10"
              c:identifier="CD_SENSOR_ERROR_REQUIRED_IRRADIANCE_CALIBRATION">
        <doc xml:space="preserve"
             filename="cd-enum.h"
             line="325">The sensor needs irradiance calibration</doc>
      </member>
    </enumeration>
    <enumeration name="SensorKind" c:type="CdSensorKind">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="163">The sensor type.</doc>
      <source-position filename="cd-enum.h" line="198"/>
      <member name="unknown" value="0" c:identifier="CD_SENSOR_KIND_UNKNOWN">
      </member>
      <member name="dummy" value="1" c:identifier="CD_SENSOR_KIND_DUMMY">
      </member>
      <member name="huey" value="2" c:identifier="CD_SENSOR_KIND_HUEY">
      </member>
      <member name="color_munki_photo"
              value="3"
              c:identifier="CD_SENSOR_KIND_COLOR_MUNKI_PHOTO">
      </member>
      <member name="spyder" value="4" c:identifier="CD_SENSOR_KIND_SPYDER">
      </member>
      <member name="dtp20" value="5" c:identifier="CD_SENSOR_KIND_DTP20">
      </member>
      <member name="dtp22" value="6" c:identifier="CD_SENSOR_KIND_DTP22">
      </member>
      <member name="dtp41" value="7" c:identifier="CD_SENSOR_KIND_DTP41">
      </member>
      <member name="dtp51" value="8" c:identifier="CD_SENSOR_KIND_DTP51">
      </member>
      <member name="dtp94" value="9" c:identifier="CD_SENSOR_KIND_DTP94">
      </member>
      <member name="spectro_scan"
              value="10"
              c:identifier="CD_SENSOR_KIND_SPECTRO_SCAN">
      </member>
      <member name="i1_pro" value="11" c:identifier="CD_SENSOR_KIND_I1_PRO">
      </member>
      <member name="colorimtre_hcfr"
              value="12"
              c:identifier="CD_SENSOR_KIND_COLORIMTRE_HCFR">
      </member>
      <member name="i1_display3"
              value="13"
              c:identifier="CD_SENSOR_KIND_I1_DISPLAY3">
      </member>
      <member name="colorhug"
              value="14"
              c:identifier="CD_SENSOR_KIND_COLORHUG">
      </member>
      <member name="spyder2" value="15" c:identifier="CD_SENSOR_KIND_SPYDER2">
      </member>
      <member name="spyder3" value="16" c:identifier="CD_SENSOR_KIND_SPYDER3">
      </member>
      <member name="colorhug_plus"
              value="17"
              c:identifier="CD_SENSOR_KIND_COLORHUG_PLUS">
      </member>
      <member name="i1_display1"
              value="18"
              c:identifier="CD_SENSOR_KIND_I1_DISPLAY1">
      </member>
      <member name="i1_display2"
              value="19"
              c:identifier="CD_SENSOR_KIND_I1_DISPLAY2">
      </member>
      <member name="dtp92" value="20" c:identifier="CD_SENSOR_KIND_DTP92">
      </member>
      <member name="i1_monitor"
              value="21"
              c:identifier="CD_SENSOR_KIND_I1_MONITOR">
      </member>
      <member name="spyder4" value="22" c:identifier="CD_SENSOR_KIND_SPYDER4">
      </member>
      <member name="color_munki_smile"
              value="23"
              c:identifier="CD_SENSOR_KIND_COLOR_MUNKI_SMILE">
      </member>
      <member name="colorhug2"
              value="24"
              c:identifier="CD_SENSOR_KIND_COLORHUG2">
      </member>
      <member name="spyder5" value="25" c:identifier="CD_SENSOR_KIND_SPYDER5">
      </member>
      <member name="spark" value="26" c:identifier="CD_SENSOR_KIND_SPARK">
      </member>
    </enumeration>
    <enumeration name="SensorState" c:type="CdSensorState">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="231">The state of the sensor.</doc>
      <source-position filename="cd-enum.h" line="244"/>
      <member name="unknown" value="0" c:identifier="CD_SENSOR_STATE_UNKNOWN">
      </member>
      <member name="starting"
              value="1"
              c:identifier="CD_SENSOR_STATE_STARTING">
      </member>
      <member name="idle" value="2" c:identifier="CD_SENSOR_STATE_IDLE">
      </member>
      <member name="measuring"
              value="3"
              c:identifier="CD_SENSOR_STATE_MEASURING">
      </member>
      <member name="busy" value="4" c:identifier="CD_SENSOR_STATE_BUSY">
      </member>
    </enumeration>
    <record name="Spectrum"
            c:type="CdSpectrum"
            opaque="1"
            glib:type-name="CdSpectrum"
            glib:get-type="cd_spectrum_get_type"
            c:symbol-prefix="spectrum">
      <source-position filename="cd-spectrum.h" line="33"/>
      <constructor name="new" c:identifier="cd_spectrum_new" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="349">Allocates a spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="354">A newly allocated #CdSpectrum object</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
      </constructor>
      <constructor name="planckian_new"
                   c:identifier="cd_spectrum_planckian_new"
                   version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="439">Allocates a Planckian spectrum at a specific temperature.</doc>
        <source-position filename="cd-spectrum.h" line="40"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="445">A newly allocated #CdSpectrum object</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <parameter name="temperature" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="441">the temperature in Kelvin</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="planckian_new_full"
                   c:identifier="cd_spectrum_planckian_new_full"
                   version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="391">Allocates a Planckian spectrum at a specific temperature.</doc>
        <source-position filename="cd-spectrum.h" line="41"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="400">A newly allocated #CdSpectrum object</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <parameter name="temperature" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="393">the temperature in Kelvin</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="start" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="394">the new spectrum start</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="end" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="395">the new spectrum end</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="resolution" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="396">the resolution to use when resampling</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="sized_new"
                   c:identifier="cd_spectrum_sized_new"
                   version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="369">Allocates a spectrum with a preallocated size.</doc>
        <source-position filename="cd-spectrum.h" line="39"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="375">A newly allocated #CdSpectrum object</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <parameter name="reserved_size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="371">the future size of the spectrum</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="add_value"
              c:identifier="cd_spectrum_add_value"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="455">Adds a value in nm to the spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="94"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="457">the spectrum</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup" c:identifier="cd_spectrum_dup" version="1.1.6">
        <source-position filename="cd-spectrum.h" line="46"/>
        <return-value transfer-ownership="full">
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="51">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="cd_spectrum_free" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="470">Deallocates a color spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="45"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="472">the spectrum</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_data"
              c:identifier="cd_spectrum_get_data"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="242">Gets the spectral data.
NOTE: This is not normalized</doc>
        <source-position filename="cd-spectrum.h" line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="249">spectral data</doc>
          <array name="GLib.Array" c:type="GArray*">
            <type name="gdouble"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="244">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_end"
              c:identifier="cd_spectrum_get_end"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="277">Gets the end value of the spectral data.</doc>
        <source-position filename="cd-spectrum.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="283">the value in nm</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="279">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id" c:identifier="cd_spectrum_get_id" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="78">Gets the spectral data.</doc>
        <source-position filename="cd-spectrum.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="84">the textual ID of the sample</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="80">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_norm"
              c:identifier="cd_spectrum_get_norm"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="294">Gets the normalization value of the spectral data.
NOTE: This affects every value in the spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="301">the value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="296">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_resolution"
              c:identifier="cd_spectrum_get_resolution"
              version="1.2.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="312">Gets the divisor of the spectra, for instance a .</doc>
        <source-position filename="cd-spectrum.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="318">the value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="314">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_size"
              c:identifier="cd_spectrum_get_size"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="225">Gets the size of the spectrum data.</doc>
        <source-position filename="cd-spectrum.h" line="69"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="231">number of data items in this spectrum</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="227">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_start"
              c:identifier="cd_spectrum_get_start"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="260">Gets the start value of the spectral data.</doc>
        <source-position filename="cd-spectrum.h" line="65"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="266">the value in nm</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="262">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="cd_spectrum_get_value"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="95">Gets the spectrum data at a specified index.</doc>
        <source-position filename="cd-spectrum.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="102">spectral data value, or -1 for invalid</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="97">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
          <parameter name="idx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="98">an index into the data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_value_for_nm"
              c:identifier="cd_spectrum_get_value_for_nm"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="586">Gets the value from the spectral data for a given wavelength.</doc>
        <source-position filename="cd-spectrum.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="593">the value for the wavelength</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="588">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
          <parameter name="wavelength" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="589">the wavelength in nm</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_value_max"
              c:identifier="cd_spectrum_get_value_max"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="114">Gets the largest normalised value in the spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="116">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value_min"
              c:identifier="cd_spectrum_get_value_min"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="132">Gets the smallest normalised value in the spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="134">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value_raw"
              c:identifier="cd_spectrum_get_value_raw"
              version="1.2.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="168">Gets the spectrum data at a specified index, without any normalization
applied. Most people should use cd_spectrum_get_value() instead.</doc>
        <source-position filename="cd-spectrum.h" line="74"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="176">spectral data value, or -1 for invalid</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="170">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
          <parameter name="idx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="171">an index into the data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_wavelength"
              c:identifier="cd_spectrum_get_wavelength"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="188">Gets the wavelenth that corresponds to the specified index.</doc>
        <source-position filename="cd-spectrum.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="195">wavelenth value in nm, or -1 for invalid</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="190">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="const CdSpectrum*"/>
          </instance-parameter>
          <parameter name="idx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="191">an index into the data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_wavelength_cal"
              c:identifier="cd_spectrum_get_wavelength_cal"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="918">Gets the calibration coefficients used to map pixel indexes to
wavelengths.</doc>
        <source-position filename="cd-spectrum.h" line="100"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="920">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="c1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="921">the 1st coefficient</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="c2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="922">the 2nd coefficient</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
          <parameter name="c3" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="923">the 3rd coefficient</doc>
            <type name="gdouble" c:type="gdouble*"/>
          </parameter>
        </parameters>
      </method>
      <method name="limit_max"
              c:identifier="cd_spectrum_limit_max"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="651">Ensures no values in the spectrum fall above a set limit. If they
are found, set them to @value.</doc>
        <source-position filename="cd-spectrum.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="653">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="654">the threshold value to limit the spectrum</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="limit_min"
              c:identifier="cd_spectrum_limit_min"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="629">Ensures no values in the spectrum fall below a set limit. If they
are found, set them to @value.</doc>
        <source-position filename="cd-spectrum.h" line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="631">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="632">the threshold value to limit the spectrum</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="multiply"
              c:identifier="cd_spectrum_multiply"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="716">Multiplies two spectra together.</doc>
        <source-position filename="cd-spectrum.h" line="104"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="724">a #CdSpectrum instance</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="s1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="718">a #CdSpectrum instance, possibly an illuminant.</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="s2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="719">a #CdSpectrum instance, possibly an absorption spectrum.</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </parameter>
          <parameter name="resolution" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="720">the step size in nm</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="multiply_scalar"
              c:identifier="cd_spectrum_multiply_scalar"
              version="1.3.5">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="745">Multiplies a spectra with a scalar value.</doc>
        <source-position filename="cd-spectrum.h" line="107"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="752">a #CdSpectrum instance</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="747">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="748">a scalar value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="normalize"
              c:identifier="cd_spectrum_normalize"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="673">Normalizes a spectrum to a specific value at a specific wavelength.</doc>
        <source-position filename="cd-spectrum.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="675">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="wavelength" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="676">the wavelength in nm</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="677">the value to normalize to</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="normalize_max"
              c:identifier="cd_spectrum_normalize_max"
              version="1.2.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="691">Normalizes a spectrum to a specific value at its maximum value.</doc>
        <source-position filename="cd-spectrum.h" line="54"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="693">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="694">the value to normalize to</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="resample"
              c:identifier="cd_spectrum_resample"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="942">Resample a new spectrum with linear index to wavelength coefficients.</doc>
        <source-position filename="cd-spectrum.h" line="109"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="951">a #CdSpectrum instance</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="944">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="start" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="945">the new spectrum start</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="end" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="946">the new spectrum end</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="resolution" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="947">the resolution to use when resampling</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="resample_to_size"
              c:identifier="cd_spectrum_resample_to_size"
              version="1.3.4">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="975">Resample a new spectrum with the desired number of points.</doc>
        <source-position filename="cd-spectrum.h" line="113"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="982">a #CdSpectrum instance</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="977">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="978">the output spectrum size</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_data"
              c:identifier="cd_spectrum_set_data"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="506">Sets the spectrum data.</doc>
        <source-position filename="cd-spectrum.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="508">the destination spectrum</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="509">component value</doc>
            <array name="GLib.Array" c:type="GArray*">
              <type name="gdouble"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="set_end"
              c:identifier="cd_spectrum_set_end"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="540">Set the end value of the spectal data in nm.

If there is already spectral data, the wavelength calibration will
also be set automatically.</doc>
        <source-position filename="cd-spectrum.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="542">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="end" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="543">the end value of the spectral data</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_id" c:identifier="cd_spectrum_set_id" version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="488">Sets a spectrum id.</doc>
        <source-position filename="cd-spectrum.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="490">the destination spectrum</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="491">component id</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_norm"
              c:identifier="cd_spectrum_set_norm"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="569">Set the normalization value of the spectrum.
NOTE: This affects every value in the spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="571">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="norm" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="572">the end value of the spectral data</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_start"
              c:identifier="cd_spectrum_set_start"
              version="1.1.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="524">Set the start value of the spectal data in nm.</doc>
        <source-position filename="cd-spectrum.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="526">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="start" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="527">the start value of the spectral data</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value"
              c:identifier="cd_spectrum_set_value"
              version="1.2.6">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="150">Overwrites the spectrum data at a specified index.</doc>
        <source-position filename="cd-spectrum.h" line="91"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="152">a #CdSpectrum instance.</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="idx" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="153">an index into the data</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="154">a data value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_wavelength_cal"
              c:identifier="cd_spectrum_set_wavelength_cal"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="890">Sets the calibration coefficients used to map pixel indexes to
wavelengths.

This function will set the 'end' wavelength automatically,
potentially overwriting the value set by cd_spectrum_set_end().</doc>
        <source-position filename="cd-spectrum.h" line="96"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="892">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="c1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="893">the 1st coefficient</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="c2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="894">the 2nd coefficient</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="c3" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="895">the 3rd coefficient</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="subtract"
              c:identifier="cd_spectrum_subtract"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="765">Subtracts one spectral plot from another. If the spectra have the same start,
end and the same number of data points they are not resampled.</doc>
        <source-position filename="cd-spectrum.h" line="56"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="774">a #CdSpectrum instance</doc>
          <type name="Spectrum" c:type="CdSpectrum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="s1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="767">a #CdSpectrum instance, e.g. a sample</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="s2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="768">a #CdSpectrum instance, e.g. a dark calibration</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </parameter>
          <parameter name="resolution" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="769">the resolution to use when resampling</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string"
              c:identifier="cd_spectrum_to_string"
              version="1.3.1">
        <doc xml:space="preserve"
             filename="cd-spectrum.c"
             line="824">Returns a graphical representation of the spectrum.</doc>
        <source-position filename="cd-spectrum.h" line="59"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-spectrum.c"
               line="832">a printable ASCII string</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="spectrum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="826">a #CdSpectrum instance</doc>
            <type name="Spectrum" c:type="CdSpectrum*"/>
          </instance-parameter>
          <parameter name="max_width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="827">the terminal width</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="max_height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-spectrum.c"
                 line="828">the terminal height</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
    </record>
    <enumeration name="StandardSpace" c:type="CdStandardSpace">
      <doc xml:space="preserve"
           filename="cd-enum.h"
           line="246">A standard colorspace</doc>
      <source-position filename="cd-enum.h" line="258"/>
      <member name="unknown"
              value="0"
              c:identifier="CD_STANDARD_SPACE_UNKNOWN">
      </member>
      <member name="srgb" value="1" c:identifier="CD_STANDARD_SPACE_SRGB">
      </member>
      <member name="adobe_rgb"
              value="2"
              c:identifier="CD_STANDARD_SPACE_ADOBE_RGB">
      </member>
      <member name="prophoto_rgb"
              value="3"
              c:identifier="CD_STANDARD_SPACE_PROPHOTO_RGB">
      </member>
    </enumeration>
    <class name="Transform"
           c:symbol-prefix="transform"
           c:type="CdTransform"
           parent="GObject.Object"
           glib:type-name="CdTransform"
           glib:get-type="cd_transform_get_type"
           glib:type-struct="TransformClass">
      <source-position filename="cd-transform.h" line="71"/>
      <constructor name="new" c:identifier="cd_transform_new" version="0.1.34">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="952">Creates a new #CdTransform object.</doc>
        <source-position filename="cd-transform.h" line="74"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="957">a new CdTransform object.</doc>
          <type name="Transform" c:type="CdTransform*"/>
        </return-value>
      </constructor>
      <function name="error_quark"
                c:identifier="cd_transform_error_quark"
                version="0.1.34">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="86">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <method name="get_abstract_icc"
              c:identifier="cd_transform_get_abstract_icc"
              glib:get-property="abstract-icc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="232">Gets the abstract profile to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="92"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="238">The abstract profile</doc>
          <type name="Icc" c:type="CdIcc*"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="234">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_bpc"
              c:identifier="cd_transform_get_bpc"
              glib:get-property="bpc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="387">Gets the rendering bpc to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="393">If black point compensation should be used for the transform.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="389">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_input_icc"
              c:identifier="cd_transform_get_input_icc"
              glib:get-property="input-icc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="139">Gets the input profile to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="80"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="145">The input profile</doc>
          <type name="Icc" c:type="CdIcc*"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="141">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_input_pixel_format"
              c:identifier="cd_transform_get_input_pixel_format"
              glib:get-property="input-pixel-format"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="271">Gets the pixel format to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="81"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="277">the pixel format, e.g. %CD_PIXEL_FORMAT_RGBA_8</doc>
          <type name="PixelFormat" c:type="CdPixelFormat"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="273">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_max_threads"
              c:identifier="cd_transform_get_max_threads"
              version="1.1.1">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="422">Gets the maximum number of threads to be used for the transform.</doc>
        <source-position filename="cd-transform.h" line="101"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="428">number of threads</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="424">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_output_icc"
              c:identifier="cd_transform_get_output_icc"
              glib:get-property="output-icc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="185">Gets the input profile to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="87"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="191">The output profile</doc>
          <type name="Icc" c:type="CdIcc*"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="187">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_output_pixel_format"
              c:identifier="cd_transform_get_output_pixel_format"
              glib:get-property="output-pixel-format"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="310">Gets the pixel format to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="88"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="316">the pixel format, e.g. %CD_PIXEL_FORMAT_RGBA_8</doc>
          <type name="PixelFormat" c:type="CdPixelFormat"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="312">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rendering_intent"
              c:identifier="cd_transform_get_rendering_intent"
              glib:get-property="rendering-intent"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="349">Gets the rendering intent to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="95"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="355">The rendering intent, e.g. %CD_RENDERING_INTENT_PERCEPTUAL</doc>
          <type name="RenderingIntent" c:type="CdRenderingIntent"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="351">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="process"
              c:identifier="cd_transform_process"
              version="0.1.34"
              throws="1">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="643">Processes a block of data through the transform.
Once the transform has been setup it is cached and only re-created if any
of the formats, input, output or abstract profiles are changed.</doc>
        <source-position filename="cd-transform.h" line="102"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-transform.c"
               line="658">%TRUE if the pixels were successfully transformed.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="645">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="data_in"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="646">the data buffer to convert</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="data_out"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="647">the data buffer to return, which can be the same as @data_in</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="648">the width of @data_in</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="649">the height of @data_in</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="rowstride" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="650">the rowstride of @data_in, typically the same as @width</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="651">A %GError, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_abstract_icc"
              c:identifier="cd_transform_set_abstract_icc"
              glib:set-property="abstract-icc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="203">Sets the abstract profile to use for the transform.
This is typically only needed for soft-proofing.</doc>
        <source-position filename="cd-transform.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="205">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="206">a #CdIcc instance or %NULL.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_bpc"
              c:identifier="cd_transform_set_bpc"
              glib:set-property="bpc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="367">Sets if black point compensation should be used for the transform.</doc>
        <source-position filename="cd-transform.h" line="96"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="369">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="bpc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="370">black point compensation</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_input_icc"
              c:identifier="cd_transform_set_input_icc"
              glib:set-property="input-icc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="111">Sets the input profile to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="113">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="114">a #CdIcc instance or %NULL.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_input_pixel_format"
              c:identifier="cd_transform_set_input_pixel_format"
              glib:set-property="input-pixel-format"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="250">Sets the pixel format to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="252">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="pixel_format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="253">The pixel format, e.g. %CD_PIXEL_FORMAT_RGBA_8</doc>
            <type name="PixelFormat" c:type="CdPixelFormat"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_max_threads"
              c:identifier="cd_transform_set_max_threads"
              version="1.1.1">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="405">Sets the maximum number of threads to be used for the transform.</doc>
        <source-position filename="cd-transform.h" line="99"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="407">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="max_threads" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="408">number of threads, or 0 for the number of cores on the CPU</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_output_icc"
              c:identifier="cd_transform_set_output_icc"
              glib:set-property="output-icc"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="157">Sets the output profile to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="159">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="icc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="160">a #CdIcc instance or %NULL.</doc>
            <type name="Icc" c:type="CdIcc*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_output_pixel_format"
              c:identifier="cd_transform_set_output_pixel_format"
              glib:set-property="output-pixel-format"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="289">Sets the pixel format to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="291">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="pixel_format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="292">The pixel format, e.g. %CD_PIXEL_FORMAT_RGBA_8</doc>
            <type name="PixelFormat" c:type="CdPixelFormat"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rendering_intent"
              c:identifier="cd_transform_set_rendering_intent"
              glib:set-property="rendering-intent"
              version="1.0.0">
        <doc xml:space="preserve"
             filename="cd-transform.c"
             line="328">Sets the rendering intent to use for the transform.</doc>
        <source-position filename="cd-transform.h" line="93"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="transform" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="330">a #CdTransform instance.</doc>
            <type name="Transform" c:type="CdTransform*"/>
          </instance-parameter>
          <parameter name="rendering_intent" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-transform.c"
                 line="331">the rendering intent, e.g. %CD_RENDERING_INTENT_PERCEPTUAL</doc>
            <type name="RenderingIntent" c:type="CdRenderingIntent"/>
          </parameter>
        </parameters>
      </method>
      <property name="abstract-icc"
                writable="1"
                transfer-ownership="none"
                setter="set_abstract_icc"
                getter="get_abstract_icc">
        <type name="Icc"/>
      </property>
      <property name="bpc"
                writable="1"
                transfer-ownership="none"
                setter="set_bpc"
                getter="get_bpc"
                default-value="FALSE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="input-icc"
                writable="1"
                transfer-ownership="none"
                setter="set_input_icc"
                getter="get_input_icc">
        <type name="Icc"/>
      </property>
      <property name="input-pixel-format"
                writable="1"
                transfer-ownership="none"
                setter="set_input_pixel_format"
                getter="get_input_pixel_format"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="output-icc"
                writable="1"
                transfer-ownership="none"
                setter="set_output_icc"
                getter="get_output_icc">
        <type name="Icc"/>
      </property>
      <property name="output-pixel-format"
                writable="1"
                transfer-ownership="none"
                setter="set_output_pixel_format"
                getter="get_output_pixel_format"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <property name="rendering-intent"
                writable="1"
                transfer-ownership="none"
                setter="set_rendering_intent"
                getter="get_rendering_intent"
                default-value="0">
        <type name="guint" c:type="guint"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="TransformClass"
            c:type="CdTransformClass"
            glib:is-gtype-struct-for="Transform">
      <source-position filename="cd-transform.h" line="71"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_cd_transform_reserved1" introspectable="0">
        <callback name="_cd_transform_reserved1">
          <source-position filename="cd-transform.h" line="63"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_transform_reserved2" introspectable="0">
        <callback name="_cd_transform_reserved2">
          <source-position filename="cd-transform.h" line="64"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_transform_reserved3" introspectable="0">
        <callback name="_cd_transform_reserved3">
          <source-position filename="cd-transform.h" line="65"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_transform_reserved4" introspectable="0">
        <callback name="_cd_transform_reserved4">
          <source-position filename="cd-transform.h" line="66"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_transform_reserved5" introspectable="0">
        <callback name="_cd_transform_reserved5">
          <source-position filename="cd-transform.h" line="67"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_transform_reserved6" introspectable="0">
        <callback name="_cd_transform_reserved6">
          <source-position filename="cd-transform.h" line="68"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_transform_reserved7" introspectable="0">
        <callback name="_cd_transform_reserved7">
          <source-position filename="cd-transform.h" line="69"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_cd_transform_reserved8" introspectable="0">
        <callback name="_cd_transform_reserved8">
          <source-position filename="cd-transform.h" line="70"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="TransformError"
                 version="0.1.34"
                 c:type="CdTransformError">
      <doc xml:space="preserve"
           filename="cd-transform.h"
           line="43">The transform error code.</doc>
      <source-position filename="cd-transform.h" line="56"/>
      <member name="failed_to_setup_transform"
              value="0"
              c:identifier="CD_TRANSFORM_ERROR_FAILED_TO_SETUP_TRANSFORM">
        <doc xml:space="preserve"
             filename="cd-transform.h"
             line="45">Failed to setup transform</doc>
      </member>
      <member name="invalid_colorspace"
              value="1"
              c:identifier="CD_TRANSFORM_ERROR_INVALID_COLORSPACE">
        <doc xml:space="preserve"
             filename="cd-transform.h"
             line="46">Invalid colorspace</doc>
      </member>
      <member name="last" value="2" c:identifier="CD_TRANSFORM_ERROR_LAST">
      </member>
    </enumeration>
    <record name="Vec3" c:type="CdVec3">
      <source-position filename="cd-math.h" line="37"/>
      <field name="v0" writable="1">
        <type name="gdouble" c:type="double"/>
      </field>
      <field name="v1" writable="1">
        <type name="gdouble" c:type="double"/>
      </field>
      <field name="v2" writable="1">
        <type name="gdouble" c:type="double"/>
      </field>
      <method name="add" c:identifier="cd_vec3_add">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="102">Adds two vector quantaties
The arguments @src and @dest can be the same value.</doc>
        <source-position filename="cd-math.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="104">the source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </instance-parameter>
          <parameter name="src2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="105">the other source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="106">the destination</doc>
            <type name="Vec3" c:type="CdVec3*"/>
          </parameter>
        </parameters>
      </method>
      <method name="clear" c:identifier="cd_vec3_clear">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="37">Clears a vector, setting all it's values to zero.</doc>
        <source-position filename="cd-math.h" line="39"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="39">the source vector</doc>
            <type name="Vec3" c:type="CdVec3*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="copy" c:identifier="cd_vec3_copy">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="87">Copies the vector into another vector.
The arguments @src and @dest cannot be the same value.</doc>
        <source-position filename="cd-math.h" line="49"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="89">the source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </instance-parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="90">the destination</doc>
            <type name="Vec3" c:type="CdVec3*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_data" c:identifier="cd_vec3_get_data">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="153">Gets the raw data for the vector.</doc>
        <source-position filename="cd-math.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="159">the pointer to the data segment.</doc>
          <type name="gdouble" c:type="gdouble*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="155">the vector source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="init" c:identifier="cd_vec3_init">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="51">Initialises a vector.</doc>
        <source-position filename="cd-math.h" line="56"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="53">the destination vector</doc>
            <type name="Vec3" c:type="CdVec3*"/>
          </instance-parameter>
          <parameter name="v0" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="54">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="55">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="56">component value</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="scalar_multiply" c:identifier="cd_vec3_scalar_multiply">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="70">Multiplies a vector with a scalar.
The arguments @src and @dest can be the same value.</doc>
        <source-position filename="cd-math.h" line="46"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="72">the source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="73">the scalar multiplier</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="74">the destination</doc>
            <type name="Vec3" c:type="CdVec3*"/>
          </parameter>
        </parameters>
      </method>
      <method name="squared_error" c:identifier="cd_vec3_squared_error">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="167">Gets the mean squared error for a pair of vectors</doc>
        <source-position filename="cd-math.h" line="51"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="174">the floating point MSE.</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="src1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="169">the vector source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </instance-parameter>
          <parameter name="src2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="170">another vector source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </parameter>
        </parameters>
      </method>
      <method name="subtract" c:identifier="cd_vec3_subtract">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="119">Subtracts one vector quantaty from another
The arguments @src and @dest can be the same value.</doc>
        <source-position filename="cd-math.h" line="43"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="src1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="121">the source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </instance-parameter>
          <parameter name="src2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="122">the other source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </parameter>
          <parameter name="dest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="123">the destination</doc>
            <type name="Vec3" c:type="CdVec3*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string" c:identifier="cd_vec3_to_string">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="136">Obtains a string representaton of a vector.</doc>
        <source-position filename="cd-math.h" line="54"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="142">the string. Free with g_free()</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="src" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="cd-math.c"
                 line="138">the source</doc>
            <type name="Vec3" c:type="const CdVec3*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <function-macro name="bitfield_add"
                    c:identifier="cd_bitfield_add"
                    introspectable="0">
      <source-position filename="cd-enum.h" line="536"/>
      <parameters>
        <parameter name="bitfield">
        </parameter>
        <parameter name="tmp">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="bitfield_contain"
                    c:identifier="cd_bitfield_contain"
                    introspectable="0">
      <source-position filename="cd-enum.h" line="538"/>
      <parameters>
        <parameter name="bitfield">
        </parameter>
        <parameter name="tmp">
        </parameter>
      </parameters>
    </function-macro>
    <function name="bitfield_from_enums"
              c:identifier="cd_bitfield_from_enums"
              version="0.1.26"
              introspectable="0">
      <source-position filename="cd-enum.h" line="541"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="909">The return bitfield, or 0 if invalid</doc>
        <type name="guint64" c:type="guint64"/>
      </return-value>
      <parameters>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="907">the values we want to add to the bitfield</doc>
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="..." transfer-ownership="none">
          <varargs/>
        </parameter>
      </parameters>
    </function>
    <function-macro name="bitfield_remove"
                    c:identifier="cd_bitfield_remove"
                    introspectable="0">
      <source-position filename="cd-enum.h" line="537"/>
      <parameters>
        <parameter name="bitfield">
        </parameter>
        <parameter name="tmp">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="bitfield_value"
                    c:identifier="cd_bitfield_value"
                    introspectable="0">
      <source-position filename="cd-enum.h" line="539"/>
      <parameters>
        <parameter name="tmp">
        </parameter>
      </parameters>
    </function-macro>
    <function name="buffer_debug" c:identifier="cd_buffer_debug">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="167">Prints some debugging of the request to the console.</doc>
      <source-position filename="cd-buffer.h" line="39"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="buffer_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="169">the debug mode, e.g %CD_BUFFER_KIND_REQUEST</doc>
          <type name="BufferKind" c:type="CdBufferKind"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="170">the data of size @length</doc>
          <type name="guint8" c:type="const guint8*"/>
        </parameter>
        <parameter name="length" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="171">the size of data</doc>
          <type name="gsize" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_read_uint16_be"
              c:identifier="cd_buffer_read_uint16_be">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="67">Reads a native endian value from a big endian data buffer.
NOTE: No validation is done on the buffer to ensure it's valid.</doc>
      <source-position filename="cd-buffer.h" line="42"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-buffer.c"
             line="74">the value to read.</doc>
        <type name="guint16" c:type="guint16"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="69">the writable data buffer</doc>
          <type name="guint8" c:type="const guint8*"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_read_uint16_le"
              c:identifier="cd_buffer_read_uint16_le">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="84">Reads a native endian value from a big endian data buffer.
NOTE: No validation is done on the buffer to ensure it's valid.</doc>
      <source-position filename="cd-buffer.h" line="43"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-buffer.c"
             line="91">the value to read.</doc>
        <type name="guint16" c:type="guint16"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="86">the writable data buffer</doc>
          <type name="guint8" c:type="const guint8*"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_read_uint32_be"
              c:identifier="cd_buffer_read_uint32_be">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="133">Reads a native endian value from a big endian data buffer.
NOTE: No validation is done on the buffer to ensure it's valid.</doc>
      <source-position filename="cd-buffer.h" line="48"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-buffer.c"
             line="140">the value to read.</doc>
        <type name="guint32" c:type="guint32"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="135">the writable data buffer</doc>
          <type name="guint8" c:type="const guint8*"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_read_uint32_le"
              c:identifier="cd_buffer_read_uint32_le">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="150">Reads a native endian value from a big endian data buffer.
NOTE: No validation is done on the buffer to ensure it's valid.</doc>
      <source-position filename="cd-buffer.h" line="49"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-buffer.c"
             line="157">the value to read.</doc>
        <type name="guint32" c:type="guint32"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="152">the writable data buffer</doc>
          <type name="guint8" c:type="const guint8*"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_write_uint16_be"
              c:identifier="cd_buffer_write_uint16_be">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="35">Writes a native endian value into a big endian data buffer.
NOTE: No validation is done on the buffer to ensure it's big enough.</doc>
      <source-position filename="cd-buffer.h" line="44"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="37">the writable data buffer</doc>
          <type name="guint8" c:type="guint8*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="38">the value to write</doc>
          <type name="guint16" c:type="guint16"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_write_uint16_le"
              c:identifier="cd_buffer_write_uint16_le">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="51">Writes a native endian value into a little endian data buffer.
NOTE: No validation is done on the buffer to ensure it's big enough.</doc>
      <source-position filename="cd-buffer.h" line="46"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="53">the writable data buffer</doc>
          <type name="guint8" c:type="guint8*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="54">the value to write</doc>
          <type name="guint16" c:type="guint16"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_write_uint32_be"
              c:identifier="cd_buffer_write_uint32_be">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="101">Writes a native endian value into a big endian data buffer.
NOTE: No validation is done on the buffer to ensure it's big enough.</doc>
      <source-position filename="cd-buffer.h" line="50"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="103">the writable data buffer</doc>
          <type name="guint8" c:type="guint8*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="104">the value to write</doc>
          <type name="guint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <function name="buffer_write_uint32_le"
              c:identifier="cd_buffer_write_uint32_le">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="117">Writes a native endian value into a little endian data buffer.
NOTE: No validation is done on the buffer to ensure it's big enough.</doc>
      <source-position filename="cd-buffer.h" line="52"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="buffer" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="119">the writable data buffer</doc>
          <type name="guint8" c:type="guint8*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-buffer.c"
               line="120">the value to write</doc>
          <type name="guint32" c:type="guint32"/>
        </parameter>
      </parameters>
    </function>
    <docsection name="cd-buffer">
      <doc xml:space="preserve"
           filename="cd-buffer.c"
           line="22">Functions to manipulate a raw data buffer.</doc>
    </docsection>
    <docsection name="cd-client">
      <doc xml:space="preserve"
           filename="cd-client.c"
           line="22">A helper GObject to use for accessing colord information, and to be notified
when it is changed.

See also: #CdDevice</doc>
    </docsection>
    <docsection name="cd-client-sync">
      <doc xml:space="preserve"
           filename="cd-client-sync.c"
           line="22">These helper functions provide a simple way to use the async functions
in command line tools.

See also: #CdClient</doc>
    </docsection>
    <docsection name="cd-color">
      <doc xml:space="preserve"
           filename="cd-color.c"
           line="22">Functions to manipulate color values.</doc>
    </docsection>
    <docsection name="cd-device">
      <doc xml:space="preserve"
           filename="cd-device.c"
           line="22">A helper GObject to use for accessing colord devices, and to be notified
when it is changed.

See also: #CdClient</doc>
    </docsection>
    <docsection name="cd-device-sync">
      <doc xml:space="preserve"
           filename="cd-device-sync.c"
           line="22">These helper functions provide a simple way to use the async functions
in command line tools.

See also: #CdDevice</doc>
    </docsection>
    <docsection name="cd-icc-utils">
      <doc xml:space="preserve"
           filename="cd-icc-utils.c"
           line="22">Functions to do unusual things with profiles.</doc>
    </docsection>
    <docsection name="cd-interp">
      <doc xml:space="preserve"
           filename="cd-interp.c"
           line="22">This object is a superclass of different interpolation methods.</doc>
    </docsection>
    <docsection name="cd-interp-akima">
      <doc xml:space="preserve"
           filename="cd-interp-akima.c"
           line="22">This object implements Akima interpolation of 2D ordered data.</doc>
    </docsection>
    <docsection name="cd-interp-linear">
      <doc xml:space="preserve"
           filename="cd-interp-linear.c"
           line="22">This object implements linear interpolation of 2D ordered data.</doc>
    </docsection>
    <docsection name="cd-it8">
      <doc xml:space="preserve"
           filename="cd-it8.c"
           line="22">This object represents .ti1 and .ti3 files which can contain raw
or normalized sample data.</doc>
    </docsection>
    <docsection name="cd-it8-utils">
      <doc xml:space="preserve"
           filename="cd-it8-utils.c"
           line="22">Functions to do cool things with sets of reference and measurements.</doc>
    </docsection>
    <docsection name="cd-math">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="22">A GObject to use for common maths functionality like vectors and matrices.</doc>
    </docsection>
    <docsection name="cd-profile">
      <doc xml:space="preserve"
           filename="cd-profile.c"
           line="22">A helper GObject to use for accessing colord profiles, and to be notified
when it is changed.

See also: #CdClient</doc>
    </docsection>
    <docsection name="cd-profile-sync">
      <doc xml:space="preserve"
           filename="cd-profile-sync.c"
           line="22">These helper functions provide a simple way to use the async functions
in command line tools.

See also: #CdProfile</doc>
    </docsection>
    <docsection name="cd-sensor">
      <doc xml:space="preserve"
           filename="cd-sensor.c"
           line="22">A helper GObject to use for accessing colord sensors, and to be notified
when it is changed.

See also: #CdClient</doc>
    </docsection>
    <docsection name="cd-sensor-sync">
      <doc xml:space="preserve"
           filename="cd-sensor-sync.c"
           line="22">These helper functions provide a simple way to use the async functions
in command line tools.

See also: #CdSensor</doc>
    </docsection>
    <docsection name="cd-spectrum">
      <doc xml:space="preserve"
           filename="cd-spectrum.c"
           line="22">Functions to manipulate spectral values.</doc>
    </docsection>
    <docsection name="cd-transform">
      <doc xml:space="preserve"
           filename="cd-transform.c"
           line="22">This object is a simple ICC transform that allows mapping of simple RGB
spaces to other simple RGB spaces using one, two or three ICC profiles.

This object is not supposed to re-implement LCMS, and if you need anything more
complicated then you are better off using lcms2 directly.</doc>
    </docsection>
    <docsection name="cd-types">
      <doc xml:space="preserve"
           filename="cd-enum.c"
           line="22">These helper functions provide a way to marshal enumerated values to
text and back again.

See also: #CdClient, #CdDevice</doc>
    </docsection>
    <docsection name="cd-version">
      <doc xml:space="preserve"
           filename="cd-version.h"
           line="22">These compile time macros allow the user to enable parts of client code
depending on the version of libcolord installed.

See also: #CdClient, #CdDevice</doc>
    </docsection>
    <function name="color_get_blackbody_rgb"
              c:identifier="cd_color_get_blackbody_rgb"
              version="0.1.26">
      <doc xml:space="preserve"
           filename="cd-color.c"
           line="1480">Get the blackbody color for a specific temperature. If the temperature
range is outside 1000K to 10000K then the result is clipped.</doc>
      <source-position filename="cd-color.h" line="188"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1488">TRUE if @temp was in range and the result accurate</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="temp" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1482">the temperature in Kelvin</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
        <parameter name="result" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1483">the destination color</doc>
          <type name="ColorRGB" c:type="CdColorRGB*"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_get_blackbody_rgb_full"
              c:identifier="cd_color_get_blackbody_rgb_full"
              version="1.3.5">
      <doc xml:space="preserve"
           filename="cd-color.c"
           line="1431">Get the blackbody color for a specific temperature. If the temperature
range is outside 1000K to 10000K then the result is clipped.</doc>
      <source-position filename="cd-color.h" line="190"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1440">TRUE if @temp was in range and the result accurate</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="temp" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1433">the temperature in Kelvin</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="result" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1434">the destination color</doc>
          <type name="ColorRGB" c:type="CdColorRGB*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1435">some #CdColorBlackbodyFlags, e.g. %CD_COLOR_BLACKBODY_FLAG_USE_PLANCKIAN</doc>
          <type name="ColorBlackbodyFlags" c:type="CdColorBlackbodyFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_rgb8_to_rgb"
              c:identifier="cd_color_rgb8_to_rgb"
              version="0.1.27">
      <doc xml:space="preserve"
           filename="cd-color.c"
           line="743">Convert from one color format to another.</doc>
      <source-position filename="cd-color.h" line="171"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="745">the source color</doc>
          <type name="ColorRGB8" c:type="const CdColorRGB8*"/>
        </parameter>
        <parameter name="dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="746">the destination color</doc>
          <type name="ColorRGB" c:type="CdColorRGB*"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_rgb_array_interpolate"
              c:identifier="cd_color_rgb_array_interpolate"
              moved-to="ColorRGB.array_interpolate"
              version="0.1.31">
      <doc xml:space="preserve"
           filename="cd-color.c"
           line="1342">Interpolate the RGB array to a different size.
This uses the Akima interpolation algorithm unless the array would become
non-monotonic, in which case it falls back to linear interpolation.</doc>
      <source-position filename="cd-color.h" line="206"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1351">An array of size @new_length or %NULL</doc>
        <array name="GLib.PtrArray" c:type="GPtrArray*">
          <type name="ColorRGB"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1344">Input array</doc>
          <array name="GLib.PtrArray" c:type="const GPtrArray*">
            <type name="ColorRGB"/>
          </array>
        </parameter>
        <parameter name="new_length" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1345">the target length of the return array</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="color_rgb_array_is_monotonic"
              c:identifier="cd_color_rgb_array_is_monotonic"
              moved-to="ColorRGB.array_is_monotonic"
              version="0.1.31">
      <doc xml:space="preserve"
           filename="cd-color.c"
           line="1293">Checks the array for monotonicity.</doc>
      <source-position filename="cd-color.h" line="205"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1299">%TRUE if the array is monotonic</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="array" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-color.c"
               line="1295">Input array</doc>
          <array name="GLib.PtrArray" c:type="const GPtrArray*">
            <type name="ColorRGB"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="color_rgb_array_new"
              c:identifier="cd_color_rgb_array_new"
              moved-to="ColorRGB.array_new"
              version="0.1.31">
      <doc xml:space="preserve"
           filename="cd-color.c"
           line="1327">Creates a new RGB array.</doc>
      <source-position filename="cd-color.h" line="204"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="cd-color.c"
             line="1332">New array</doc>
        <array name="GLib.PtrArray" c:type="GPtrArray*">
          <type name="ColorRGB"/>
        </array>
      </return-value>
    </function>
    <function name="colorspace_from_string"
              c:identifier="cd_colorspace_from_string">
      <source-position filename="cd-enum.h" line="551"/>
      <return-value transfer-ownership="none">
        <type name="Colorspace" c:type="CdColorspace"/>
      </return-value>
      <parameters>
        <parameter name="colorspace" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="colorspace_to_string"
              c:identifier="cd_colorspace_to_string">
      <source-position filename="cd-enum.h" line="550"/>
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="colorspace" transfer-ownership="none">
          <type name="Colorspace" c:type="CdColorspace"/>
        </parameter>
      </parameters>
    </function>
    <function name="context_lcms_error_check"
              c:identifier="cd_context_lcms_error_check"
              throws="1">
      <source-position filename="cd-context-lcms.h" line="35"/>
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="ctx"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="context_lcms_error_clear"
              c:identifier="cd_context_lcms_error_clear">
      <source-position filename="cd-context-lcms.h" line="34"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="ctx"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="context_lcms_free" c:identifier="cd_context_lcms_free">
      <source-position filename="cd-context-lcms.h" line="33"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="ctx"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </function>
    <function name="context_lcms_new" c:identifier="cd_context_lcms_new">
      <source-position filename="cd-context-lcms.h" line="32"/>
      <return-value transfer-ownership="full" nullable="1">
        <doc xml:space="preserve"
             filename="cd-context-lcms.c"
             line="147">A new LCMS context</doc>
        <type name="gpointer" c:type="gpointer"/>
      </return-value>
    </function>
    <function name="mat33_clear" c:identifier="cd_mat33_clear">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="220">Clears a matrix value, setting all it's values to zero.</doc>
      <source-position filename="cd-math.h" line="70"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="222">the source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_copy" c:identifier="cd_mat33_copy">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="442">Copies the matrix.
The arguments @src and @dest cannot be the same value.</doc>
      <source-position filename="cd-math.h" line="89"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="444">the source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
        <parameter name="dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="445">the destination</doc>
          <type name="Mat3x3" c:type="CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_determinant" c:identifier="cd_mat33_determinant">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="283">Gets the determinant of the matrix.</doc>
      <source-position filename="cd-math.h" line="85"/>
      <return-value transfer-ownership="none">
        <type name="gdouble" c:type="gdouble"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="285">the source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_get_data" c:identifier="cd_mat33_get_data">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="254">Gets the raw data for the matrix.</doc>
      <source-position filename="cd-math.h" line="72"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="260">the pointer to the data segment.</doc>
        <type name="gdouble" c:type="gdouble*"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="256">the matrix source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_init" c:identifier="cd_mat33_init">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="186">Initialises a matrix.</doc>
      <source-position filename="cd-math.h" line="60"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="188">the destination matrix</doc>
          <type name="Mat3x3" c:type="CdMat3x3*"/>
        </parameter>
        <parameter name="m00" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="189">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m01" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="190">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m02" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="191">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m10" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="192">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m11" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="193">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m12" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="194">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m20" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="195">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m21" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="196">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="m22" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="197">component value</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_matrix_multiply"
              c:identifier="cd_mat33_matrix_multiply">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="372">Multiply (convolve) one matrix with another.
The arguments @mat_src1 cannot be the same as @mat_dest, and
@mat_src2 cannot be the same as @mat_dest.</doc>
      <source-position filename="cd-math.h" line="80"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mat_src1" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="374">the matrix source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
        <parameter name="mat_src2" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="375">the other matrix source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
        <parameter name="mat_dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="376">the destination</doc>
          <type name="Mat3x3" c:type="CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_normalize" c:identifier="cd_mat33_normalize">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="300">Normalizes a matrix

The arguments @src and @dest can be the same value.</doc>
      <source-position filename="cd-math.h" line="87"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="302">the source matrix</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
        <parameter name="dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="303">the destination matrix</doc>
          <type name="Mat3x3" c:type="CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_reciprocal" c:identifier="cd_mat33_reciprocal">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="402">Inverts the matrix.
The arguments @src and @dest cannot be the same value.</doc>
      <source-position filename="cd-math.h" line="83"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="410">%FALSE if det is zero (singular).</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="404">the source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
        <parameter name="dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="405">the destination</doc>
          <type name="Mat3x3" c:type="CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_scalar_multiply"
              c:identifier="cd_mat33_scalar_multiply">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="349">Multiplies a matrix with a scalar.
The arguments @vec_src and @vec_dest can be the same value.</doc>
      <source-position filename="cd-math.h" line="74"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mat_src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="351">the source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="352">the scalar</doc>
          <type name="gdouble" c:type="gdouble"/>
        </parameter>
        <parameter name="mat_dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="353">the destination</doc>
          <type name="Mat3x3" c:type="CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_set_identity" c:identifier="cd_mat33_set_identity">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="268">Sets the matrix to an identity value.</doc>
      <source-position filename="cd-math.h" line="73"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="270">the source</doc>
          <type name="Mat3x3" c:type="CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_to_string" c:identifier="cd_mat33_to_string">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="235">Obtains a string representaton of a matrix.</doc>
      <source-position filename="cd-math.h" line="71"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="cd-math.c"
             line="241">the string. Free with g_free()</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="237">the source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="mat33_vector_multiply"
              c:identifier="cd_mat33_vector_multiply">
      <doc xml:space="preserve"
           filename="cd-math.c"
           line="325">Multiplies a matrix with a vector.
The arguments @vec_src and @vec_dest cannot be the same value.</doc>
      <source-position filename="cd-math.h" line="77"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="mat_src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="327">the matrix source</doc>
          <type name="Mat3x3" c:type="const CdMat3x3*"/>
        </parameter>
        <parameter name="vec_src" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="328">the vector source</doc>
          <type name="Vec3" c:type="const CdVec3*"/>
        </parameter>
        <parameter name="vec_dest" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-math.c"
               line="329">the destination vector</doc>
          <type name="Vec3" c:type="CdVec3*"/>
        </parameter>
      </parameters>
    </function>
    <function name="object_scope_from_string"
              c:identifier="cd_object_scope_from_string">
      <source-position filename="cd-enum.h" line="557"/>
      <return-value transfer-ownership="none">
        <type name="ObjectScope" c:type="CdObjectScope"/>
      </return-value>
      <parameters>
        <parameter name="object_scope" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="object_scope_to_string"
              c:identifier="cd_object_scope_to_string">
      <source-position filename="cd-enum.h" line="556"/>
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="object_scope" transfer-ownership="none">
          <type name="ObjectScope" c:type="CdObjectScope"/>
        </parameter>
      </parameters>
    </function>
    <function name="pixel_format_from_string"
              c:identifier="cd_pixel_format_from_string">
      <source-position filename="cd-enum.h" line="548"/>
      <return-value transfer-ownership="none">
        <type name="PixelFormat" c:type="CdPixelFormat"/>
      </return-value>
      <parameters>
        <parameter name="pixel_format" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pixel_format_to_string"
              c:identifier="cd_pixel_format_to_string">
      <source-position filename="cd-enum.h" line="549"/>
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="pixel_format" transfer-ownership="none">
          <type name="PixelFormat" c:type="CdPixelFormat"/>
        </parameter>
      </parameters>
    </function>
    <function name="quirk_vendor_name" c:identifier="cd_quirk_vendor_name">
      <doc xml:space="preserve"
           filename="cd-quirk.c"
           line="34">Correct and quirk vendor names.</doc>
      <source-position filename="cd-quirk.h" line="33"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="cd-quirk.c"
             line="40">the repaired vendor name</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="vendor" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-quirk.c"
               line="36">The vendor name</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rendering_intent_from_string"
              c:identifier="cd_rendering_intent_from_string">
      <source-position filename="cd-enum.h" line="546"/>
      <return-value transfer-ownership="none">
        <type name="RenderingIntent" c:type="CdRenderingIntent"/>
      </return-value>
      <parameters>
        <parameter name="rendering_intent" transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="rendering_intent_to_string"
              c:identifier="cd_rendering_intent_to_string">
      <source-position filename="cd-enum.h" line="547"/>
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="rendering_intent" transfer-ownership="none">
          <type name="RenderingIntent" c:type="CdRenderingIntent"/>
        </parameter>
      </parameters>
    </function>
    <function name="standard_space_from_string"
              c:identifier="cd_standard_space_from_string">
      <doc xml:space="preserve"
           filename="cd-enum.c"
           line="532">Gets the standard colorspace as a enumerated value.</doc>
      <source-position filename="cd-enum.h" line="565"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="538">a #CdStandardSpace</doc>
        <type name="StandardSpace" c:type="CdStandardSpace"/>
      </return-value>
      <parameters>
        <parameter name="standard_space" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="534">the standard colorspace, e.g. 'srgb'.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="standard_space_to_string"
              c:identifier="cd_standard_space_to_string">
      <doc xml:space="preserve"
           filename="cd-enum.c"
           line="518">Gets the standard colorspace as a string.</doc>
      <source-position filename="cd-enum.h" line="564"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="cd-enum.c"
             line="524">the standard colorspace, e.g. 'srgb'.</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="standard_space" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="cd-enum.c"
               line="520">a #CdStandardSpace</doc>
          <type name="StandardSpace" c:type="CdStandardSpace"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
