rsiot/components/cmp_plc/plc/library/event_processing/event/i.rs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
use serde::{Deserialize, Serialize};
use uuid::Uuid;
use super::super::EventSeverity;
/// Входная структура
#[derive(Clone, Debug, Default, Deserialize, PartialEq, Serialize)]
pub struct I {
/// Идентификатор события
pub id: Uuid,
/// Сигнал наступления события
pub signal: bool,
/// Уровень события
pub event_severity: EventSeverity,
/// Текст события
pub text: String,
/// Команда с hmi
pub hmi_command: IHmiCommand,
}
/// Команда с hmi
#[derive(Clone, Copy, Debug, Default, Deserialize, PartialEq, Serialize)]
pub enum IHmiCommand {
/// Нет команды - по-умолчанию
#[default]
NoCommand,
/// Квитирование сообщения из Hmi
Ack(Uuid),
/// Квитирование всех сообщений
AckAll,
}