description: >
    Implement to provide soft shutdown class sensor thresholds.  Objects
    implementing Sensor.Threshold.Shutdown must be instantiated in the correct
    hierarchy within the sensors namespace.  The following sensor hierarchies
    are recognized:
      airflow
      altitude
      current
      energy
      fan_tach
      humidity
      power
      pressure
      temperature
      utilization
      voltage

    Additionally, any object implementing Sensor.Threshold.SoftShutdown must
    also implement Sensor.Value.

properties:
    - name: SoftShutdownHigh
      type: double
      default: NaN
      description: >
          The upper bound of the soft shutdown threshold.  A value of 'NaN' is
          used to indicate there is no threshold of this type.
    - name: SoftShutdownLow
      type: double
      default: NaN
      description: >
          The lower bound of the soft shutdown threshold.  A value of 'NaN' is
          used to indicate there is no threshold of this type.
    - name: SoftShutdownAlarmHigh
      type: boolean
      description: >
          True if the sensor value has exceeded the defined bound. False if the
          sensor value has not exceeded the defined bound.

          SoftShutdownAlarmHigh may be set to False to clear an alarm condition.
          The behavior of setting SoftShutdownAlarmHigh to True is undefined.
    - name: SoftShutdownAlarmLow
      type: boolean
      description: >
          True if the sensor value has exceeded the defined bound. False if the
          sensor value has not exceeded the defined bound.

          SoftShutdownAlarmLow may be set to False to clear an alarm condition.
          The behavior of setting SoftShutdownAlarmLow to True is undefined.

signals:
    - name: SoftShutdownHighAlarmAsserted
      description: >
          The high threshold alarm asserted.
      properties:
          - name: SensorValue
            type: double
            description: >
                The sensor value that triggered the alarm change.
    - name: SoftShutdownHighAlarmDeasserted
      description: >
          The high threshold alarm deasserted.
      properties:
          - name: SensorValue
            type: double
            description: >
                The sensor value that triggered the alarm change.
    - name: SoftShutdownLowAlarmAsserted
      description: >
          The low threshold alarm asserted.
      properties:
          - name: SensorValue
            type: double
            description: >
                The sensor value that triggered the alarm change.
    - name: SoftShutdownLowAlarmDeasserted
      description: >
          The low threshold alarm deasserted.
      properties:
          - name: SensorValue
            type: double
            description: >
                The sensor value that triggered the alarm change.
