1description: >
2    Implement to provide warning class sensor thresholds.  Objects implementing
3    Sensor.Threshold.Warning must be instantiated in the correct hierarchy
4    within the sensors namespace.  The following sensor hierarchies are
5    recognized:
6      airflow
7      altitude
8      current
9      energy
10      fan_tach
11      humidity
12      liquidflow
13      power
14      pressure
15      temperature
16      utilization
17      voltage
18
19    Additionally, any object implementing Sensor.Threshold.Warning must also
20    implement Sensor.Value.
21
22properties:
23    - name: WarningHigh
24      type: double
25      default: NaN
26      description: >
27          The upper bound of the warning threshold.  A value of 'NaN' is used to
28          indicate there is no threshold of this type.
29    - name: WarningLow
30      type: double
31      default: NaN
32      description: >
33          The lower bound of the warning threshold.  A value of 'NaN' is used to
34          indicate there is no threshold of this type.
35    - name: WarningAlarmHigh
36      type: boolean
37      description: >
38          True if the sensor value has exceeded the defined bound. False if the
39          sensor value has not exceeded the defined bound.
40
41          WarningAlarmHigh may be set to False to clear an alarm condition. The
42          behavior of setting WarningAlarmHigh to True is undefined.
43    - name: WarningAlarmLow
44      type: boolean
45      description: >
46          True if the sensor value has exceeded the defined bound. False if the
47          sensor value has not exceeded the defined bound.
48
49          WarningAlarmLow may be set to False to clear an alarm condition. The
50          behavior of setting WarningAlarmLow to True is undefined.
51signals:
52    - name: WarningHighAlarmAsserted
53      description: >
54          The high threshold alarm asserted.
55      properties:
56          - name: SensorValue
57            type: double
58            description: >
59                The sensor value that triggered the alarm change.
60    - name: WarningHighAlarmDeasserted
61      description: >
62          The high threshold alarm deasserted.
63      properties:
64          - name: SensorValue
65            type: double
66            description: >
67                The sensor value that triggered the alarm change.
68    - name: WarningLowAlarmAsserted
69      description: >
70          The low threshold alarm asserted.
71      properties:
72          - name: SensorValue
73            type: double
74            description: >
75                The sensor value that triggered the alarm change.
76    - name: WarningLowAlarmDeasserted
77      description: >
78          The low threshold alarm deasserted.
79      properties:
80          - name: SensorValue
81            type: double
82            description: >
83                The sensor value that triggered the alarm change.
84