Skip to main content

Module event_parameter

Module event_parameter 

Source
Expand description

BACnetEventParameter full ASN.1 framing.

BACnetEventParameter (ASHRAE 135-2020 Clause 21) selects one event algorithm by context tag and carries that algorithm’s settings. Each alternative that BACnetEventParameter models is a constructed value under its own tag, holding context-tagged members that are all required:

TagAlternativeMember tagMemberType
[0]change-of-bitstring[0]time-delayUnsigned
[1]bitmaskbit string
[2]list-of-bitstring-valueslist of bit strings
[1]change-of-state[0]time-delayUnsigned
[1]list-of-valueslist of BACnetPropertyStates
[2]change-of-value[0]time-delayUnsigned
[1]cov-criteria[0] bit string or [1] REAL, see below
[4]floating-limit[0]time-delayUnsigned
[1]setpoint-referenceBACnetDeviceObjectPropertyReference
[2]low-diff-limitREAL
[3]high-diff-limitREAL
[4]deadbandREAL
[5]out-of-range[0]time-delayUnsigned
[1]low-limitREAL
[2]high-limitREAL
[3]deadbandREAL
[9]extended[0]vendor-idUnsigned16
[1]extended-event-typeUnsigned
[2]parameterslist of extended values, see below

cov-criteria is either [0] bitmask (a bit string) or [1] referenced-property-increment (a REAL). Each extended parameters entry is an application-tagged primitive or a [0]-framed BACnetDeviceObjectPropertyReference.

Four tags carry no alternative here. Tag 6 is skipped because it would mirror the proprietary complex-event-type notification alternative, and tag 19 is skipped because change-of-reliability has no event parameters. Tag 7 is deprecated and tag 12 is reserved.

Alternatives with no Rust model (command-failure [3], change-of-life-safety [8], buffer-ready [10], unsigned-range [11], access-event [13], *-out-of-range [14..=16], change-of-characterstring [17], change-of-status-flags [18], none [20] NULL, change-of-discrete-value [21], change-of-timer [22], vendor tags) are preserved byte-for-byte through BACnetEventParameter::Opaque. The omitted/deprecated/reserved slots 6, 7, 12 and 19 are rejected on decode.

Functions§

decode_event_parameter
Decode one framed BACnetEventParameter CHOICE alternative at offset.
encode_event_parameter
Encode a BACnetEventParameter as its full CHOICE framing.