Skip to main content

cimstructs/
GeneratorControlSource.rs

1/// The source of controls for a generating unit.
2#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
3pub enum GeneratorControlSource {
4    /// Not available.
5    unavailable,
6    /// Off of automatic generation control (AGC).
7    offAGC,
8    /// On automatic generation control (AGC).
9    onAGC,
10    /// Plant is controlling.
11    plantControl,
12}
13
14impl GeneratorControlSource {
15    pub fn uri(&self) -> &'static str {
16        match self {
17            GeneratorControlSource::unavailable => "http://iec.ch/TC57/CIM100#GeneratorControlSource.unavailable",
18            GeneratorControlSource::offAGC => "http://iec.ch/TC57/CIM100#GeneratorControlSource.offAGC",
19            GeneratorControlSource::onAGC => "http://iec.ch/TC57/CIM100#GeneratorControlSource.onAGC",
20            GeneratorControlSource::plantControl => "http://iec.ch/TC57/CIM100#GeneratorControlSource.plantControl",
21        }
22    }
23}