## org.freedesktop.ColorManager.Sensor org.freedesktop.ColorManager.Sensor — Sensor interface |

## Methods

    Lock()
    Unlock()
    GetSample(in's'capability,
    out'd'sample_x,
    out'd'sample_y,
    out'd'sample_z)
    SetOptions(in'a{sv}'values)

## Signals

    ButtonPressed()

## Implemented Interfaces

Objects implementing org.freedesktop.ColorManager.Sensor also implements org.freedesktop.DBus.Introspectable, org.freedesktop.DBus.Properties

## Properties

    'SensorId'read's'
    'Kind'read's'
    'State'read's'
    'Mode'read's'
    'Serial'read's'
    'Model'read's'
    'Vendor'read's'
    'Native'read'b'
    'Embedded'read'b'
    'Locked'read'b'
    'Capabilities'read'as'
    'Options'read'a{sv}'
    'Metadata'read'a{ss}'

## Description

The interface used for quering color sensors.

## Details

### Lock ()

    Lock ()

Locks the sensor for use by an application.

If the current holder of the lock quits without calling `Unlock` then it is automatically removed.

### Unlock ()

    Unlock ()

Unlocks the sensor for use by other applications.

### GetSample ()

    GetSample (in's'capability,
    out'd'sample_x,
    out'd'sample_y,
    out'd'sample_z)

Gets a color sample using the sensor.

`capability`: | The capability we are using, e.g. `crt`, `ambient`, `lcd`, `led` or `projector`.
`sample_x`: | The X value, or `-1.0` for an error. For the capability of `ambient` this is the brightness in Lux.
`sample_y`: | The Y value, or `-1.0` for an error.
`sample_z`: | The Z value, or `-1.0` for an error.

### SetOptions ()

    SetOptions (in'a{sv}'values)

Sets one or multiple options on the sensor.

`values`: | A dictionary of property keys and values, e.g. `remote-profile-hash = deadbeef`.

## Signal Details

### The ButtonPressed signal

    ButtonPressed ()

A button on the sensor has been pressed.

## Property Details

### The "SensorId" property

    'SensorId'read's'

The sensor id string.

### The "Kind" property

    'Kind'read's'

The kind of the sensor, e.g. `colormunki`

### The "State" property

    'State'read's'

The state of the sensor, e.g. `starting`, `idle` or `measuring`.

### The "Mode" property

    'Mode'read's'

The operating mode of the sensor, e.g. `ambient`, `printer` or `unknown`.

On some devices, a sensor has to be set to a specific position before a reading can be taken. This property should be set to the current device mode.

### The "Serial" property

    'Serial'read's'

The sensor serial number, e.g. `012345678a`.

### The "Model" property

    'Model'read's'

The sensor model, e.g. `ColorMunki`.

### The "Vendor" property

    'Vendor'read's'

The sensor vendor, e.g. `XRite`.

### The "Native" property

    'Native'read'b'

If the sensor is supported with a native driver, which does not require additional tools such as argyllcms.

### The "Embedded" property

    'Embedded'read'b'

If the sensor is embedded into the laptop hardware, for example the W700 device from Lenovo.

If this property is set then the calibration process should show the color patch fullscreen and should emit an audible alert when completed.

### The "Locked" property

    'Locked'read'b'

If the sensor is locked for use by colord.

### The "Capabilities" property

    'Capabilities'read'as'

The capabilities of the sensor, e.g `['display', 'printer', 'projector', 'spot']`.

### The "Options" property

    'Options'read'a{sv}'

The options currently set on the sensor.

This is a dictionary of property keys and values, e.g. `remote-profile-hash = deadbeef`.

### The "Metadata" property

    'Metadata'read'a{ss}'

The metadata for the sensor, which may include optional keys like `AttachImage`.