Expand description
Named BACnet bit-string types (ASHRAE 135-2020 Clause 21).
Several properties carry a BitString whose bits have a fixed, named
meaning defined by the standard. This module models those BACnetXxx BIT
STRING productions so a decoded crate::primitives::PropertyValue::BitString
can be promoted from raw (unused_bits, data) bytes to named flags, the same
way crate::enums::ResolvedEnum promotes an Enumerated.
§Bit order
BACnet bit strings are transmitted most-significant-bit-first: bit 0 of the
string is the top bit (0x80) of the first content byte, bit 8 is the top
bit of the second byte, and so on. Every type here reads bit N of the
string as “feature N”, matching how the device object packs these fields
(see bacnet-objects’s compute_object_types_supported).
crate::primitives::StatusFlags predates this module and keeps its own
right-aligned representation; it is re-exported and mapped by the resolver as
well.
Re-exports§
pub use crate::primitives::StatusFlags;
Structs§
- Audit
Operation Flags BACnetAuditOperationFlags— a bit string selecting audit operations (Clause 21).- BACnet
Priority Filter BACnetPriorityFilter— one bit for each command priority from 1 through 16.- Days
OfWeek BACnetDaysOfWeek— 7-bit string with one bit per weekday, Monday first (Clause 21). ABACnetDestinationuses it asvalid-days.- Event
Transition Bits BACnetEventTransitionBits— 3-bit string forevent-enable,acked-transitions, andack-required(Clause 21).- Limit
Enable BACnetLimitEnable— 2-bit string for thelimit-enableproperty (Clause 21).- LogStatus
BACnetLogStatus— the 3-bit string a log object records when its own status or operation changes (Clause 21).- Object
Types Supported BACnetObjectTypesSupported— theprotocol-object-types-supportedbit string, one bit per object type (Clause 21).- Services
Supported BACnetServicesSupported— theprotocol-services-supportedbit string, one bit per protocol service (Clause 21).
Functions§
- status_
flags_ from_ bacnet - Decode a
BACnetStatusFlagsbit-string payload (MSB-first) intoStatusFlags, which keeps its right-aligned in-memory layout.