1
<?xml version="1.0"?><!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
2
<refentry id="ColorManager">
4
<refentrytitle role="top_of_page">org.freedesktop.ColorManager</refentrytitle>
7
<refname>org.freedesktop.ColorManager</refname>
8
<refpurpose>ColorManager interface</refpurpose>
10
<refsynopsisdiv role="synopsis">
11
<title role="synopsis.title">Methods</title>
12
<synopsis><link linkend="ColorManager.GetDevices">GetDevices</link> (out 'ao' devices)
13
<link linkend="ColorManager.GetDevicesByKind">GetDevicesByKind</link> (in 's' kind,
15
<link linkend="ColorManager.FindDeviceById">FindDeviceById</link> (in 's' device_id,
17
<link linkend="ColorManager.FindDeviceByProperty">FindDeviceByProperty</link> (in 's' key,
20
<link linkend="ColorManager.FindProfileById">FindProfileById</link> (in 's' profile_id,
22
<link linkend="ColorManager.FindProfileByFilename">FindProfileByFilename</link> (in 's' filename,
24
<link linkend="ColorManager.GetStandardSpace">GetStandardSpace</link> (in 's' standard-space,
26
<link linkend="ColorManager.GetProfiles">GetProfiles</link> (out 'ao' devices)
27
<link linkend="ColorManager.GetSensors">GetSensors</link> (out 'ao' devices)
28
<link linkend="ColorManager.GetProfilesByKind">GetProfilesByKind</link> (in 's' kind,
30
<link linkend="ColorManager.CreateProfile">CreateProfile</link> (in 's' profile_id,
32
in 'a{ss}' properties,
34
<link linkend="ColorManager.CreateDevice">CreateDevice</link> (in 's' device_id,
36
in 'a{ss}' properties,
38
<link linkend="ColorManager.DeleteDevice">DeleteDevice</link> (in 'o' object_path)
39
<link linkend="ColorManager.DeleteProfile">DeleteProfile</link> (in 'o' object_path)
42
<refsect1 role="signal_proto">
43
<title role="signal_proto.title">Signals</title>
44
<synopsis><link linkend="ColorManager::Changed">Changed</link> ()
45
<link linkend="ColorManager::DeviceAdded">DeviceAdded</link> ('o' object_path)
46
<link linkend="ColorManager::DeviceRemoved">DeviceRemoved</link> ('o' object_path)
47
<link linkend="ColorManager::DeviceChanged">DeviceChanged</link> ('o' object_path)
48
<link linkend="ColorManager::ProfileAdded">ProfileAdded</link> ('o' object_path)
49
<link linkend="ColorManager::ProfileRemoved">ProfileRemoved</link> ('o' object_path)
50
<link linkend="ColorManager::SensorAdded">SensorAdded</link> ('o' object_path)
51
<link linkend="ColorManager::SensorRemoved">SensorRemoved</link> ('o' object_path)
52
<link linkend="ColorManager::ProfileChanged">ProfileChanged</link> ('o' object_path)
55
<refsect1 role="impl_interfaces">
56
<title role="impl_interfaces.title">Implemented Interfaces</title>
58
Objects implementing org.freedesktop.ColorManager also implements
59
org.freedesktop.DBus.Introspectable,
60
org.freedesktop.DBus.Properties
63
<refsect1 role="properties">
64
<title role="properties.title">Properties</title>
65
<synopsis><link linkend="ColorManager:DaemonVersion">'DaemonVersion'</link> read 's'
68
<refsect1 role="desc">
69
<title role="desc.title">Description</title>
73
The interface used for quering color parameters for the system.
78
<refsect1 role="details"><title role="details.title">Details</title><refsect2><title><anchor role="function" id="ColorManager.GetDevices"/>GetDevices ()</title><indexterm><primary>GetDevices</primary><secondary>ColorManager</secondary></indexterm><programlisting>GetDevices (out 'ao' devices)</programlisting></refsect2>
80
Gets a list of all the devices which have assigned color profiles.
82
<variablelist role="params"><varlistentry><term><parameter>devices</parameter>:</term><listitem><simpara>
84
An array of device IDs, e.g. <literal>['/org/freedesktop/ColorManager/device/xrandr_ibm_france_ltn154p2_l05']</literal>.
86
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.GetDevicesByKind"/>GetDevicesByKind ()</title><indexterm><primary>GetDevicesByKind</primary><secondary>ColorManager</secondary></indexterm><programlisting>GetDevicesByKind (in 's' kind,
87
out 'ao' devices)</programlisting></refsect2>
89
Gets a list of all the devices which have assigned color profiles.
91
<variablelist role="params"><varlistentry><term><parameter>kind</parameter>:</term><listitem><simpara>
93
A device kind, e.g. <literal>scanner</literal>, <literal>display</literal>,
94
<literal>printer</literal> or <literal>camera</literal>.
96
</simpara></listitem></varlistentry><varlistentry><term><parameter>devices</parameter>:</term><listitem><simpara>
98
An array of device IDs, e.g. <literal>['/org/freedesktop/ColorManager/device/xrandr_ibm_france_ltn154p2_l05']</literal>.
100
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.FindDeviceById"/>FindDeviceById ()</title><indexterm><primary>FindDeviceById</primary><secondary>ColorManager</secondary></indexterm><programlisting>FindDeviceById (in 's' device_id,
101
out 'o' object_path)</programlisting></refsect2>
103
Gets a device path for the device ID.
104
This method is required as device ID's may have to be mangled
105
to conform with the DBus path specification.
106
For instance, a device ID of "cups$34:dev' would have a object
107
path of "/org/freedesktop/ColorManager/cups_34_dev".
109
<variablelist role="params"><varlistentry><term><parameter>device_id</parameter>:</term><listitem><simpara>
113
</simpara></listitem></varlistentry><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
117
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.FindDeviceByProperty"/>FindDeviceByProperty ()</title><indexterm><primary>FindDeviceByProperty</primary><secondary>ColorManager</secondary></indexterm><programlisting>FindDeviceByProperty (in 's' key,
119
out 'o' object_path)</programlisting></refsect2>
121
Gets a device path for the device with the specified property.
123
<variablelist role="params"><varlistentry><term><parameter>key</parameter>:</term><listitem><simpara>
125
A property key, e.g. <literal>XRANDR_name</literal>.
127
</simpara></listitem></varlistentry><varlistentry><term><parameter>value</parameter>:</term><listitem><simpara>
129
A property value, e.g. <literal>lvds</literal>.
131
</simpara></listitem></varlistentry><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
135
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.FindProfileById"/>FindProfileById ()</title><indexterm><primary>FindProfileById</primary><secondary>ColorManager</secondary></indexterm><programlisting>FindProfileById (in 's' profile_id,
136
out 'o' object_path)</programlisting></refsect2>
138
Gets a profile path for the profile ID.
140
<variablelist role="params"><varlistentry><term><parameter>profile_id</parameter>:</term><listitem><simpara>
144
</simpara></listitem></varlistentry><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
148
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.FindProfileByFilename"/>FindProfileByFilename ()</title><indexterm><primary>FindProfileByFilename</primary><secondary>ColorManager</secondary></indexterm><programlisting>FindProfileByFilename (in 's' filename,
149
out 'o' object_path)</programlisting></refsect2>
151
Gets a profile path for the profile filename.
153
<variablelist role="params"><varlistentry><term><parameter>filename</parameter>:</term><listitem><simpara>
157
</simpara></listitem></varlistentry><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
161
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.GetStandardSpace"/>GetStandardSpace ()</title><indexterm><primary>GetStandardSpace</primary><secondary>ColorManager</secondary></indexterm><programlisting>GetStandardSpace (in 's' standard-space,
162
out 'o' object_path)</programlisting></refsect2>
164
Gets a profile path for a defined profile space.
165
The defined space is set from the profile metadata,
166
specifically in the <literal>STANDARD_space</literal> entry.
167
The <literal>colord.conf</literal> file allows an
168
administrator to manually override profiles if required.
171
NOTE: only system wide profiles are able to define
172
themselves as standard spaces.
174
<variablelist role="params"><varlistentry><term><parameter>standard-space</parameter>:</term><listitem><simpara>
176
A profile space, e.g. <literal>srgb</literal> or
177
<literal>adobe-srgb</literal>.
179
</simpara></listitem></varlistentry><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
183
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.GetProfiles"/>GetProfiles ()</title><indexterm><primary>GetProfiles</primary><secondary>ColorManager</secondary></indexterm><programlisting>GetProfiles (out 'ao' devices)</programlisting></refsect2>
185
Gets a list of all the profiles recognised by the system.
187
<variablelist role="params"><varlistentry><term><parameter>devices</parameter>:</term><listitem><simpara>
189
An array of profile IDs, e.g. <literal>['/org/freedesktop/ColorManager/profile/adobe_rgb']</literal>.
191
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.GetSensors"/>GetSensors ()</title><indexterm><primary>GetSensors</primary><secondary>ColorManager</secondary></indexterm><programlisting>GetSensors (out 'ao' devices)</programlisting></refsect2>
193
Gets a list of all the sensors recognised by the system.
195
<variablelist role="params"><varlistentry><term><parameter>devices</parameter>:</term><listitem><simpara>
197
An array of sensor IDs, e.g. <literal>['/org/freedesktop/ColorManager/sensor/colormunki']</literal>.
199
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.GetProfilesByKind"/>GetProfilesByKind ()</title><indexterm><primary>GetProfilesByKind</primary><secondary>ColorManager</secondary></indexterm><programlisting>GetProfilesByKind (in 's' kind,
200
out 'ao' devices)</programlisting></refsect2>
202
Gets a list of all the profiles of a specified type.
204
<variablelist role="params"><varlistentry><term><parameter>kind</parameter>:</term><listitem><simpara>
206
A profile kind, e.g. <literal>input-device</literal> or
207
<literal>abstract</literal>.
209
</simpara></listitem></varlistentry><varlistentry><term><parameter>devices</parameter>:</term><listitem><simpara>
211
An array of device IDs, e.g. <literal>['/org/freedesktop/ColorManager/device/xrandr_ibm_france_ltn154p2_l05']</literal>.
213
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.CreateProfile"/>CreateProfile ()</title><indexterm><primary>CreateProfile</primary><secondary>ColorManager</secondary></indexterm><programlisting>CreateProfile (in 's' profile_id,
215
in 'a{ss}' properties,
216
out 'o' object_path)</programlisting></refsect2>
221
If the profile has been added to a device in the past, and
222
that device exists already, then the new profile will be
223
automatically added to the device.
224
To prevent this from happening, remove the assignment by
225
doing <literal>RemoveProfile</literal>doc:tt> on the relevant
229
An optional file descriptor can be sent out of band for the
233
Using a file descriptor in addition to the filename allows
234
the daemon to parse the ICC profile without re-opening it,
235
which allows the daemon to read files inside the users
236
home directory in a SELinux environment.
238
<variablelist role="params"><varlistentry><term><parameter>profile_id</parameter>:</term><listitem><simpara>
240
A unique profile ID that is used to map to the profile.
241
This is normally the MD5 hash of the disk profile.
243
</simpara></listitem></varlistentry><varlistentry><term><parameter>scope</parameter>:</term><listitem><simpara>
245
Options for creating the profile. This allows the session
246
color management component to have per-user profiles
247
stored in the home directory that would not be valid if
248
the user logged off, or no users are logged in.
250
</simpara></listitem></varlistentry><varlistentry><term><parameter>properties</parameter>:</term><listitem><simpara>
252
Properties to be used when constructing the profile.
255
This optional value allows the profile to be created with
256
the latency of one bus round-trip, rather than doing
257
a few <literal>SetProperty</literal> methods indervidually.
260
Any properties not interstood by colord will be added as
261
dictionary values to the <literal>Metadata</literal>
264
</simpara></listitem></varlistentry><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
268
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.CreateDevice"/>CreateDevice ()</title><indexterm><primary>CreateDevice</primary><secondary>ColorManager</secondary></indexterm><programlisting>CreateDevice (in 's' device_id,
270
in 'a{ss}' properties,
271
out 'o' object_path)</programlisting></refsect2>
276
If the device has profiles added to it in the past, and
277
that profiles exists already, then the new device will be
278
automatically have profiles added to the device.
279
To prevent this from happening, remove the assignment by
280
doing <literal>RemoveProfile</literal> on the relevant
283
<variablelist role="params"><varlistentry><term><parameter>device_id</parameter>:</term><listitem><simpara>
285
A device ID that is used to map to the device path.
287
</simpara></listitem></varlistentry><varlistentry><term><parameter>scope</parameter>:</term><listitem><simpara>
289
Options for creating the device. This allows the session
290
color management component to have per-session virtual
291
devices cleaned up automatically or devices that are
292
re-created on each boot.
294
</simpara></listitem></varlistentry><varlistentry><term><parameter>properties</parameter>:</term><listitem><simpara>
296
Properties to be used when constructing the device.
299
This optional value allows the device to be created with
300
the latency of one bus round-trip, rather than doing
301
a few <literal>SetProperty</literal> methods indervidually.
304
Any properties not interstood by colord will be added as
305
dictionary values to the <literal>Metadata</literal>
308
</simpara></listitem></varlistentry><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
312
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.DeleteDevice"/>DeleteDevice ()</title><indexterm><primary>DeleteDevice</primary><secondary>ColorManager</secondary></indexterm><programlisting>DeleteDevice (in 'o' object_path)</programlisting></refsect2>
316
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
320
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager.DeleteProfile"/>DeleteProfile ()</title><indexterm><primary>DeleteProfile</primary><secondary>ColorManager</secondary></indexterm><programlisting>DeleteProfile (in 'o' object_path)</programlisting></refsect2>
324
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
328
</simpara></listitem></varlistentry></variablelist></refsect1>
329
<refsect1 role="signals"><title role="signals.title">Signal Details</title><refsect2><title><anchor role="function" id="ColorManager::Changed"/>The Changed signal</title><indexterm><primary>Changed</primary><secondary>ColorManager</secondary></indexterm><programlisting>Changed ()</programlisting></refsect2>
331
Some value on the interface or the number of devices or
332
profiles has changed.
334
<variablelist role="params"/><refsect2><title><anchor role="function" id="ColorManager::DeviceAdded"/>The DeviceAdded signal</title><indexterm><primary>DeviceAdded</primary><secondary>ColorManager</secondary></indexterm><programlisting>DeviceAdded ('o' object_path)</programlisting></refsect2>
336
A device has been added.
338
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
342
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager::DeviceRemoved"/>The DeviceRemoved signal</title><indexterm><primary>DeviceRemoved</primary><secondary>ColorManager</secondary></indexterm><programlisting>DeviceRemoved ('o' object_path)</programlisting></refsect2>
344
A device has been removed.
346
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
350
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager::DeviceChanged"/>The DeviceChanged signal</title><indexterm><primary>DeviceChanged</primary><secondary>ColorManager</secondary></indexterm><programlisting>DeviceChanged ('o' object_path)</programlisting></refsect2>
352
A device has changed.
354
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
358
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager::ProfileAdded"/>The ProfileAdded signal</title><indexterm><primary>ProfileAdded</primary><secondary>ColorManager</secondary></indexterm><programlisting>ProfileAdded ('o' object_path)</programlisting></refsect2>
360
A profile has been added.
362
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
366
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager::ProfileRemoved"/>The ProfileRemoved signal</title><indexterm><primary>ProfileRemoved</primary><secondary>ColorManager</secondary></indexterm><programlisting>ProfileRemoved ('o' object_path)</programlisting></refsect2>
368
A profile has been removed.
370
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
374
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager::SensorAdded"/>The SensorAdded signal</title><indexterm><primary>SensorAdded</primary><secondary>ColorManager</secondary></indexterm><programlisting>SensorAdded ('o' object_path)</programlisting></refsect2>
376
A sensor has been added.
378
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
382
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager::SensorRemoved"/>The SensorRemoved signal</title><indexterm><primary>SensorRemoved</primary><secondary>ColorManager</secondary></indexterm><programlisting>SensorRemoved ('o' object_path)</programlisting></refsect2>
384
A sensor has been removed.
386
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
390
</simpara></listitem></varlistentry></variablelist><refsect2><title><anchor role="function" id="ColorManager::ProfileChanged"/>The ProfileChanged signal</title><indexterm><primary>ProfileChanged</primary><secondary>ColorManager</secondary></indexterm><programlisting>ProfileChanged ('o' object_path)</programlisting></refsect2>
392
A profile has been changed.
394
<variablelist role="params"><varlistentry><term><parameter>object_path</parameter>:</term><listitem><simpara>
398
</simpara></listitem></varlistentry></variablelist></refsect1>
399
<refsect1 role="property_details"><title role="property_details.title">Property Details</title><refsect2><title><anchor role="function" id="ColorManager:DaemonVersion"/>The "DaemonVersion" property</title><indexterm><primary>DaemonVersion</primary><secondary>ColorManager</secondary></indexterm><programlisting>'DaemonVersion' read 's'
400
</programlisting></refsect2>
404
<variablelist role="params"/></refsect1>