use bacnet_objects::database::ObjectDatabase;
use bacnet_objects::event::EventStateChange;
use bacnet_types::enums::EventType;
use bacnet_types::primitives::ObjectIdentifier;
use super::{EventEnrollmentEvaluationReport, evaluate_event_enrollments_for_delivery};
#[derive(Debug, Clone, PartialEq)]
pub struct EventEnrollmentTransition {
pub enrollment_oid: ObjectIdentifier,
pub monitored_oid: ObjectIdentifier,
pub change: EventStateChange,
pub event_type: EventType,
pub distribute: bool,
}
pub fn evaluate_event_enrollments(
db: &mut ObjectDatabase,
interval_secs: u64,
) -> Vec<EventEnrollmentTransition> {
evaluate_event_enrollments_report(db, interval_secs).transitions
}
pub fn evaluate_event_enrollments_report(
db: &mut ObjectDatabase,
interval_secs: u64,
) -> EventEnrollmentEvaluationReport {
evaluate_event_enrollments_for_delivery(db, interval_secs).report
}