1description: >
2    Implement to provide sensor readings.  Objects implementing
3    Sensor.Value must be instantiated in the correct
4    hierarchy within the sensors namespace.  The following sensor
5    hierarchies are recognized:
6      airflow
7      altitude
8      current
9      energy
10      fan_tach
11      power
12      pressure
13      temperature
14      utilization
15      voltage
16
17    Any service implementing Sensor.Value on one or more objects must
18    implement org.freedesktop.DBus.ObjectManager on the sensors namespace root.
19
20    All Sensor.Value properties are read-only.
21
22properties:
23    - name: Value
24      type: double
25      description: >
26          The sensor reading.
27    - name: MaxValue
28      type: double
29      default: infinity
30      description: >
31          The Maximum supported sensor reading.
32    - name: MinValue
33      type: double
34      default: -infinity
35      description: >
36          The Minimum supported sensor reading.
37    - name: Unit
38      type: enum[self.Unit]
39      description: >
40          The unit of the reading.  Immutable once set for a sensor.
41          For objects in the airflow namespace, Unit must be "CFM"
42          For objects in the altitude namespace, Unit must be "Meters".
43          For objects in the current namespace, Unit must be "Amperes".
44          For objects in the energy namespace, Unit must be "Joules".
45          For objects in the fan_tach namespace, Unit must be "RPMS".
46          For objects in the power namespace, Unit must be "Watts".
47          For objects in the pressure namespace, Unit must be "Pascals"
48          For objects in the temperature namespace, Unit must be "DegreesC".
49          For objects in the utilization namespace, Unit must be "Percent"
50          For objects in the voltage namespace, Unit must be "Volts".
51
52enumerations:
53    - name: Unit
54      description: >
55        A sensor reading unit.
56      values:
57        - name: Amperes
58          description: >
59            Electrical charge flow rate as Amperes.
60        - name: CFM
61          description: >
62            To calculate Air Flow in Cubic Feet per Minute
63        - name: DegreesC
64          description: >
65            Temperature as degrees Celsius.
66        - name: Joules
67          description: >
68            Energy transfer as Joules.
69        - name: Meters
70          description: >
71            Length as meters.
72        - name: Percent
73          description: >
74            Resource utilization as a percentage.
75        - name: Pascals
76          description: >
77            Pressure as pascals.
78        - name: RPMS
79          description: >
80            Frequency of rotation as revolutions per minute.
81        - name: Volts
82          description: >
83            Electomotive force as volts.
84        - name: Watts
85          description: >
86            Rate of energy transfer as Watts.
87