description: >
    Implement to provide an object that contains a history of maximum values.
    The values are the maximum values within a time period.  The object this
    interface is placed on should provide information about the time period.

properties:
    - name: Scale
      type: int64
      description: >
          The reading scaling factor N, where the actual reading is value *
          10^N. This is immutable once set.

    - name: Unit
      type: enum[self.Unit]
      description: >
          The unit of the reading.  Immutable once set for a sensor. For objects
          in the temperature namespace, Unit must be "DegreesC". For objects in
          the fan_tach namespace, Unit must be "RPMS". For objects in the
          voltage namespace, Unit must be "Volts". For objects in the altitude
          namespace, Unit must be "Meters". For objects in the current
          namespace, Unit must be "Amperes". For objects in the power namespace,
          Unit must be "Watts". For objects in the energy namespace, Unit must
          be "Joules".

    - name: Values
      type: array[struct[uint64,int64]]
      description: >
          An array of timestamp, maximum value tuples.  The timestamp is the
          number of milliseconds since 1970.  The entries in the array will
          always be ordered from newest to oldest.

enumerations:
    - name: Unit
      description: >
          A sensor reading unit.
      values:
          - name: DegreesC
            description: >
                Temperature as degrees Celsius.
          - name: RPMS
            description: >
                Frequency of rotation as revolutions per minute.
          - name: Volts
            description: >
                Electromotive force as volts.
          - name: Meters
            description: >
                Length as meters.
          - name: Amperes
            description: >
                Electrical charge flow rate as Amperes.
          - name: Watts
            description: >
                Rate of energy transfer as Watts.
          - name: Joules
            description: >
                Energy transfer as Joules.
