SlotStruct

struct SlotStruct

Indicates a specific stage of an ESA’s operation.

  • The minimum time, in seconds, that the appliance is expected to be in its slot.

    Declaration

    Swift

    let minDuration: UInt32
  • The maximum time, in seconds, that the appliance is expected to be in its slot.

    Declaration

    Swift

    let maxDuration: UInt32
  • The time, in seconds, that the appliance is expected to be in its slot.

    Declaration

    Swift

    let defaultDuration: UInt32
  • The time, in seconds, that has already elapsed with the appliance in its slot.

    Declaration

    Swift

    let elapsedSlotTime: UInt32
  • The remaining time, in seconds, that the appliance is expected to be in its slot.

    Declaration

    Swift

    let remainingSlotTime: UInt32
  • The shortest amount of time, in seconds, that the slot can be paused.

    Declaration

    Swift

    let minPauseDuration: UInt32?
  • The maximum amount of time, in seconds, that the slot can be paused.

    Declaration

    Swift

    let maxPauseDuration: UInt32?
  • Provides a manufacturer-defined value that indicates the state of the ESA.

    Declaration

    Swift

    let manufacturerESAState: UInt16?
  • The expected power that the appliance will use in its current slot.

    Declaration

    Swift

    let nominalPower: Int64?
  • The lowest power, in milliwatts, that the appliance is expected to use in its current slot. Some appliances, such as battery inverters that can charge and discharge, might have a negative value for this field.

    Declaration

    Swift

    let minPower: Int64?
  • The highest power, in milliwatts, that the appliance is expected to use in its current slot. Some appliances, such as battery inverters that can charge and discharge, might have a negative value for this field.

    Declaration

    Swift

    let maxPower: Int64?
  • The amount of energy that the appliance is expected to use or produce in its current slot.

    Declaration

    Swift

    let nominalEnergy: Int64?
  • The current estimated cost of operating the appliance.

    Declaration

  • The minimum power adjustment, in milliwatts, that the ESA can be requested to use.

    Declaration

    Swift

    let minPowerAdjustment: Int64?
  • The maximum power adjustment, in milliwatts, that the ESA can be requested to use.

    Declaration

    Swift

    let maxPowerAdjustment: Int64?
  • The minimum time, in seconds, to which the slot’s usage can be shortened.

    Declaration

    Swift

    let minDurationAdjustment: UInt32?
  • The maximum duration, in seconds, to which the slot’s usage can be extended.

    Declaration

    Swift

    let maxDurationAdjustment: UInt32?
  • Creates a new Struct instance using data read from the given TraitDecoder.

    Throws

    HomeError.parseError when parsing fails.

    Declaration

    Swift

    init(decoder: TraitDecoder) throws

    Parameters

    decoder

    The raw data representing this Struct.

  • Writes this Struct to the given TraitEncoder. Throws HomeError.parseError if the data could not be encoded.

    Declaration

    Swift

    func encode(with encoder: TraitEncoder) throws
  • Returns the field corresponding to the given field ID.

    Declaration

    Swift

    static func structField(id: UInt32) -> (any Field)?