Trait xmz_server::sensor::Sensor [−][src]
pub trait Sensor: Debug + Display { fn update(&self); fn get_id(&self) -> u32; fn get_sensor_type(&self) -> SensorType; fn get_messzellen(&self) -> Vec<Arc<RwLock<BoxedMesszelle>>>; fn get_messzelle(&self, num: usize) -> Option<&Arc<RwLock<BoxedMesszelle>>>; }
Trait das die Eigenschaften aller Sensoren beschreibt.
Jeder Sensor kann meherer Messzellen besitzen. So verfügt beispielsweise der "CO/NO2 Kombisensor mit Modbus Interface" der Firma RA-GAS GmbH über 2 Messzellen, je eine für CO (Kohlenmonoxid) und NO2 (Stickstoffdioxid).
Required Methods
fn update(&self)
In der Update Funktion werden die Sensoren ausgelesen
In dieser Funktion sollten auch die Werte (values
) der Messzellen aktualisiert werden.
fn get_id(&self) -> u32
Gibt die Sensor ID wieder
Die Sensor ID wird u.a. in der Konfigurationsdatei verwendet um die Messzellen den Sensoren zuzuordnen.
fn get_sensor_type(&self) -> SensorType
Gibt den Sensor Type wieder
fn get_messzellen(&self) -> Vec<Arc<RwLock<BoxedMesszelle>>>
Liefert eine Referenz auf den Vector der Messzellen
fn get_messzelle(&self, num: usize) -> Option<&Arc<RwLock<BoxedMesszelle>>>
Liefert Optional eine Messzelle (wenn vorhanden)
Gibt None
zurück wenn der Sensor keine Messzelle an Position num
besizt.
Implementors
impl Sensor for MetzConnectCI4
impl Sensor for RaGasCONO2Mod
impl Sensor for TestSensor