struct Attributes
Attributes for the WindowCoveringTrait
.
-
A list of the attribute IDs of the attributes supported by the cluster instance. Nullable: false.
Declaration
Swift
@TraitAttribute var attributeList: [UInt32]? { get }
-
Nullable: false.
Declaration
Swift
@TraitAttribute var type: Matter.WindowCoveringTrait.WindowCoveringType? { get }
-
The maximum possible encoder position for setting the height of the window covering, in centimeters. Nullable: false.
Declaration
Swift
@TraitAttribute var physicalClosedLimitLift: UInt16? { get }
-
The maximum possible encoder position for setting the angle of the window covering. Nullable: false.
Declaration
Swift
@TraitAttribute var physicalClosedLimitTilt: UInt16? { get }
-
The distance of the window covering from the fully-open position, in centimeters. Nullable: true.
Declaration
Swift
@TraitAttribute var currentPositionLift: UInt16? { get }
-
The current tilt position of the window covering, in degrees. Nullable: true.
Declaration
Swift
@TraitAttribute var currentPositionTilt: UInt16? { get }
-
The total number of lift or slide actuations applied to the window covering since it was installed. Nullable: false.
Declaration
Swift
@TraitAttribute var numberOfActuationsLift: UInt16? { get }
-
The total number of tilt actuations applied to the window covering since it was installed. Nullable: false.
Declaration
Swift
@TraitAttribute var numberOfActuationsTilt: UInt16? { get }
-
Nullable: false.
Declaration
Swift
@TraitAttribute var configStatus: Matter.WindowCoveringTrait.ConfigStatus? { get }
-
The position of the window covering as a percentage with a 1% default step. This attribute is equivalent to [currentPositionLiftPercent100ths][WindowCoveringTrait.Attributes.currentPositionLiftPercent100ths] attribute divided by 100. Nullable: true.
Declaration
Swift
@TraitAttribute var currentPositionLiftPercentage: UInt8? { get }
-
The position of the window covering as a percentage with a 1% default step. This attribute is equivalent to [currentPositionTiltPercent100ths][WindowCoveringTrait.Attributes.currentPositionTiltPercent100ths] attribute divided by 100. Nullable: true.
Declaration
Swift
@TraitAttribute var currentPositionTiltPercentage: UInt8? { get }
-
Nullable: false.
Declaration
Swift
@TraitAttribute var operationalStatus: Matter.WindowCoveringTrait.OperationalStatus? { get }
-
The lift position which the window covering is moving to, as a percentage. Nullable: true.
Declaration
Swift
@TraitAttribute var targetPositionLiftPercent100ths: UInt16? { get }
-
The tilt position which the window covering is moving to, as a percentage. Nullable: true.
Declaration
Swift
@TraitAttribute var targetPositionTiltPercent100ths: UInt16? { get }
-
Nullable: false.
Declaration
Swift
@TraitAttribute var endProductType: Matter.WindowCoveringTrait.EndProductType? { get }
-
The position of the window covering as a percentage with a minimum step of 0.01%. For example, 10000 equals 100.00%. Nullable: true.
Declaration
Swift
@TraitAttribute var currentPositionLiftPercent100ths: UInt16? { get }
-
The position of the window covering as a percentage with a minimal step of 0.01%. For example, 10000 equals 100.00%. Nullable: true.
Declaration
Swift
@TraitAttribute var currentPositionTiltPercent100ths: UInt16? { get }
-
The open limit for lifting the window covering, in centimeters. Nullable: false.
Declaration
Swift
@TraitAttribute var installedOpenLimitLift: UInt16? { get }
-
The closed limit when tilting the window covering, in tenths of a degree. Nullable: false.
Declaration
Swift
@TraitAttribute var installedClosedLimitLift: UInt16? { get }
-
The open limit for tilting the window covering, in tenths of a degree. Nullable: false.
Declaration
Swift
@TraitAttribute var installedOpenLimitTilt: UInt16? { get }
-
The closed limit when lifting the window covering, in tenths of a degree. Nullable: false.
Declaration
Swift
@TraitAttribute var installedClosedLimitTilt: UInt16? { get }
-
Nullable: false.
Declaration
Swift
@TraitAttribute var mode: Matter.WindowCoveringTrait.Mode? { get }
-
Nullable: false.
Declaration
Swift
@TraitAttribute var safetyStatus: Matter.WindowCoveringTrait.SafetyStatus? { get }
-
A list of server-generated commands (server to client) which are supported by this cluster server instance. Nullable: false.
Declaration
Swift
@TraitAttribute var generatedCommandList: [UInt32]? { get }
-
A list of client-generated commands which are supported by this cluster server instance.
Nullable: false.
Declaration
Swift
@TraitAttribute var acceptedCommandList: [UInt32]? { get }
-
Whether the server supports zero or more optional cluster features. A cluster feature is a set of cluster elements that are mandatory or optional for a defined feature of the cluster. If a cluster feature is supported by the cluster instance, then the corresponding bit is set to 1, otherwise the bit is set to 0 (zero). Nullable: false.
Declaration
Swift
@TraitAttribute var featureMap: Matter.WindowCoveringTrait.Feature? { get }
-
The revision of the server cluster specification supported by the cluster instance. Nullable: false.
Declaration
Swift
@TraitAttribute var clusterRevision: UInt16? { get }
-
The trait identifier.
Declaration
Swift
static var identifier: String { get }
-
Writes this object to the given
TraitEncoder
. ThrowsHomeError.encodingFailed
if the data could not be encoded.Declaration
Swift
func encode(with encoder: TraitEncoder) throws
-
Returns a Boolean value indicating whether two values are equal.
Equality is the inverse of inequality. For any values
a
andb
,a == b
implies thata != b
isfalse
.Declaration
Swift
static func == (lhs: Matter.WindowCoveringTrait.Attributes, rhs: Matter.WindowCoveringTrait.Attributes) -> Bool
Parameters
lhs
A value to compare.
rhs
Another value to compare.
-
Hashes the essential components of this value by feeding them into the given hasher.
Implement this method to conform to the
Hashable
protocol. The components used for hashing must be the same as the components compared in your type’s==
operator implementation. Callhasher.combine(_:)
with each of these components.Important
In your implementation of
hash(into:)
, don’t callfinalize()
on thehasher
instance provided, or replace it with a different instance. Doing so may become a compile-time error in the future.Declaration
Swift
func hash(into hasher: inout Hasher)