Skip to main content

cimstructs/
OperationalLimitDirectionKind.rs

1/// The direction attribute describes the side of a limit that is a violation.
2#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
3pub enum OperationalLimitDirectionKind {
4    /// High means that a monitored value above the limit value is a violation. If applied to a terminal flow, the positive direction is into the terminal.
5    high,
6    /// Low means a monitored value below the limit is a violation. If applied to a terminal flow, the positive direction is into the terminal.
7    low,
8    /// An absoluteValue limit means that a monitored absolute value above the limit value is a violation.
9    absoluteValue,
10}
11
12impl OperationalLimitDirectionKind {
13    pub fn uri(&self) -> &'static str {
14        match self {
15            OperationalLimitDirectionKind::high => "http://iec.ch/TC57/CIM100#OperationalLimitDirectionKind.high",
16            OperationalLimitDirectionKind::low => "http://iec.ch/TC57/CIM100#OperationalLimitDirectionKind.low",
17            OperationalLimitDirectionKind::absoluteValue => "http://iec.ch/TC57/CIM100#OperationalLimitDirectionKind.absoluteValue",
18        }
19    }
20}