Skip to main content

NotificationParameters

Enum NotificationParameters 

Source
pub enum NotificationParameters {
Show 20 variants ChangeOfBitstring { referenced_bitstring: (u8, Vec<u8>), status_flags: StatusFlags, }, ChangeOfState { new_state: BACnetPropertyStates, status_flags: StatusFlags, }, ChangeOfValue { new_value: ChangeOfValueChoice, status_flags: StatusFlags, }, CommandFailure { command_value: Vec<u8>, status_flags: StatusFlags, feedback_value: Vec<u8>, }, FloatingLimit { reference_value: f32, status_flags: StatusFlags, setpoint_value: f32, error_limit: f32, }, OutOfRange { exceeding_value: f32, status_flags: StatusFlags, deadband: f32, exceeded_limit: f32, }, ComplexEventType { property_values: Vec<BACnetPropertyValue>, }, ChangeOfLifeSafety { new_state: LifeSafetyState, new_mode: LifeSafetyMode, status_flags: StatusFlags, operation_expected: LifeSafetyOperation, }, Extended { vendor_id: u16, extended_event_type: u32, parameters: Vec<u8>, }, BufferReady { buffer_property: BACnetDeviceObjectPropertyReference, previous_notification: u32, current_notification: u32, }, UnsignedRange { exceeding_value: u64, status_flags: StatusFlags, exceeded_limit: u64, }, AccessEvent { access_event: AccessEvent, status_flags: StatusFlags, access_event_tag: u32, access_event_time: (Date, Time), access_credential: BACnetDeviceObjectReference, authentication_factor: Option<Vec<u8>>, }, DoubleOutOfRange { exceeding_value: f64, status_flags: StatusFlags, deadband: f64, exceeded_limit: f64, }, SignedOutOfRange { exceeding_value: i32, status_flags: StatusFlags, deadband: u64, exceeded_limit: i32, }, UnsignedOutOfRange { exceeding_value: u64, status_flags: StatusFlags, deadband: u64, exceeded_limit: u64, }, ChangeOfCharacterstring { changed_value: String, status_flags: StatusFlags, alarm_value: String, }, ChangeOfStatusFlags { present_value: Option<Vec<u8>>, referenced_flags: StatusFlags, }, ChangeOfReliability { reliability: Reliability, status_flags: StatusFlags, property_values: Vec<u8>, }, ChangeOfDiscreteValue { new_value: Vec<u8>, status_flags: StatusFlags, }, ChangeOfTimer { new_state: TimerState, status_flags: StatusFlags, update_time: (Date, Time), last_state_change: Option<TimerTransition>, initial_timeout: Option<u32>, expiration_time: Option<(Date, Time)>, },
}
Expand description

Notification parameter variants for eventValues.

Variants§

§

ChangeOfBitstring

[0] Change of bitstring.

Fields

§referenced_bitstring: (u8, Vec<u8>)

Monitored bitstring value as (unused_bits, data).

§status_flags: StatusFlags

Status flags of the monitored object.

§

ChangeOfState

[1] Change of state.

Fields

§new_state: BACnetPropertyStates

New BACnetPropertyStates value that triggered the notification.

§status_flags: StatusFlags

Status flags of the monitored object.

§

ChangeOfValue

[2] Change of value.

Fields

§new_value: ChangeOfValueChoice

New value (changed bits or a REAL) that triggered the notification.

§status_flags: StatusFlags

Status flags of the monitored object.

§

CommandFailure

[3] Command failure. Value byte vectors contain encoded BACnet TLVs.

Fields

§command_value: Vec<u8>

Commanded value as encoded BACnet bytes.

§status_flags: StatusFlags

Status flags of the monitored object.

§feedback_value: Vec<u8>

Feedback value that disagreed with the command, as encoded BACnet bytes.

§

FloatingLimit

[4] Floating limit.

Fields

§reference_value: f32

Current value of the monitored property (not the setpoint reference).

§status_flags: StatusFlags

Status flags of the monitored object.

§setpoint_value: f32

Setpoint the reference value is tracked against.

§error_limit: f32

Differential limit (distance from the setpoint) that was exceeded.

§

OutOfRange

[5] Out of range.

Fields

§exceeding_value: f32

Monitored value that crossed a limit.

§status_flags: StatusFlags

Status flags of the monitored object.

§deadband: f32

Deadband applied to the limit comparison, in the monitored value’s units.

§exceeded_limit: f32

The limit that was exceeded, in the monitored value’s units.

§

ComplexEventType

[6] Complex event type.

Fields

§property_values: Vec<BACnetPropertyValue>

Reported property values; each holds encoded BACnet bytes and an optional priority.

§

ChangeOfLifeSafety

[8] Change of life safety.

Fields

§new_state: LifeSafetyState

Life safety state the object entered.

§new_mode: LifeSafetyMode

Life safety mode in effect.

§status_flags: StatusFlags

Status flags of the monitored object.

§operation_expected: LifeSafetyOperation

Operation the object expects from an operator.

§

Extended

[9] Extended (vendor-defined). parameters contains encoded BACnet TLVs.

Fields

§vendor_id: u16

Vendor identifier that defines the extended event type.

§extended_event_type: u32

Vendor-specific extended event type number.

§parameters: Vec<u8>

Vendor-defined parameters as encoded BACnet bytes.

§

BufferReady

[10] Buffer ready.

Fields

§buffer_property: BACnetDeviceObjectPropertyReference

Reference to the log buffer property that has records ready.

§previous_notification: u32

Total record count at the previous notification for this buffer.

§current_notification: u32

Total record count now.

§

UnsignedRange

[11] Unsigned range.

Fields

§exceeding_value: u64

Monitored value that crossed a limit.

§status_flags: StatusFlags

Status flags of the monitored object.

§exceeded_limit: u64

The limit that was exceeded.

§

AccessEvent

[13] Access event. Authentication-factor bytes contain its three inner context fields.

Fields

§access_event: AccessEvent

Access event describing what happened.

§status_flags: StatusFlags

Status flags of the monitored object.

§access_event_tag: u32

Counter distinguishing access events, carried as the access-event-tag field.

§access_event_time: (Date, Time)

Time of the access event; a BACnetTimeStamp on the wire, of which only the date-time choice is accepted.

§access_credential: BACnetDeviceObjectReference

Credential object (with optional device) that was presented.

§authentication_factor: Option<Vec<u8>>

Optional authentication factor as encoded BACnet bytes; None when absent.

§

DoubleOutOfRange

[14] Double out of range.

Fields

§exceeding_value: f64

Monitored value that crossed a limit.

§status_flags: StatusFlags

Status flags of the monitored object.

§deadband: f64

Deadband applied to the limit comparison, in the monitored value’s units.

§exceeded_limit: f64

The limit that was exceeded, in the monitored value’s units.

§

SignedOutOfRange

[15] Signed out of range.

Fields

§exceeding_value: i32

Monitored value that crossed a limit.

§status_flags: StatusFlags

Status flags of the monitored object.

§deadband: u64

Deadband applied to the limit comparison (unsigned).

§exceeded_limit: i32

The limit that was exceeded.

§

UnsignedOutOfRange

[16] Unsigned out of range.

Fields

§exceeding_value: u64

Monitored value that crossed a limit.

§status_flags: StatusFlags

Status flags of the monitored object.

§deadband: u64

Deadband applied to the limit comparison.

§exceeded_limit: u64

The limit that was exceeded.

§

ChangeOfCharacterstring

[17] Change of characterstring.

Fields

§changed_value: String

New value of the monitored character string.

§status_flags: StatusFlags

Status flags of the monitored object.

§alarm_value: String

The configured alarm string that the new value matched.

§

ChangeOfStatusFlags

[18] Change of status flags. present_value preserves absent and present-empty context [0].

Fields

§present_value: Option<Vec<u8>>

Present value as encoded BACnet bytes; None when the field is absent.

§referenced_flags: StatusFlags

Status flags of the referenced object.

§

ChangeOfReliability

[19] Change of reliability. property_values contains encoded BACnet TLVs.

Fields

§reliability: Reliability

Reliability value that triggered the notification.

§status_flags: StatusFlags

Status flags of the monitored object.

§property_values: Vec<u8>

Properties relevant to the reliability change, as encoded BACnet bytes.

§

ChangeOfDiscreteValue

[21] Change of discrete value. new_value contains encoded BACnet TLVs.

Fields

§new_value: Vec<u8>

New discrete value as encoded BACnet bytes.

§status_flags: StatusFlags

Status flags of the monitored object.

§

ChangeOfTimer

[22] Change of timer.

Fields

§new_state: TimerState

State the timer entered.

§status_flags: StatusFlags

Status flags of the monitored object.

§update_time: (Date, Time)

Date and time of the timer update.

§last_state_change: Option<TimerTransition>

Transition of the last state change; None when absent.

§initial_timeout: Option<u32>

Initial timeout configured for the timer; None when absent.

§expiration_time: Option<(Date, Time)>

Date and time when the timer expires; None when absent.

Trait Implementations§

Source§

impl Clone for NotificationParameters

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for NotificationParameters

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for NotificationParameters

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for NotificationParameters

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.