Struct resol_vbus::DataSet
source · Expand description
A DataSet
contains a set of unique (non-identical) Data
values.
Examples
use std::io::Read;
use resol_vbus::{DataSet, RecordingReader, Result};
fn print_data_ids<R: Read>(r: R) -> Result<()> {
let mut rr = RecordingReader::new(r);
let mut cumultative_data_set = DataSet::new();
while let Some(data_set) = rr.read_data_set()? {
let timestamp = data_set.timestamp;
cumultative_data_set.add_data_set(data_set);
println!("{}:", timestamp);
for data in cumultative_data_set.iter() {
println!(" - {}", data.id_string());
}
}
Ok(())
}
Fields§
§timestamp: DateTime<Utc>
The timestamp that corresponds to the contained set of Data
values.
Implementations§
source§impl DataSet
impl DataSet
sourcepub fn from_data(timestamp: DateTime<Utc>, set: Vec<Data>) -> DataSet
pub fn from_data(timestamp: DateTime<Utc>, set: Vec<Data>) -> DataSet
Construct a DataSet
from a list of Data
values.
sourcepub fn as_data_slice(&self) -> &[Data]
pub fn as_data_slice(&self) -> &[Data]
Return the Data
values contained in this DataSet
.
sourcepub fn add_data_set(&mut self, data_set: DataSet)
pub fn add_data_set(&mut self, data_set: DataSet)
Add all Data
values from one DataSet
into another.
sourcepub fn remove_all_data(&mut self)
pub fn remove_all_data(&mut self)
Remove all Data
values.
sourcepub fn remove_data_older_than(&mut self, min_timestamp: DateTime<Utc>)
pub fn remove_data_older_than(&mut self, min_timestamp: DateTime<Utc>)
Remove Data
values with timestamps older than min_timestamp
.
sourcepub fn clear_all_packets(&mut self)
pub fn clear_all_packets(&mut self)
Find all Packet
values and set their frame_count
to zero effectively hiding
their frame_data
payload.
sourcepub fn clear_packets_older_than(&mut self, min_timestamp: DateTime<Utc>)
pub fn clear_packets_older_than(&mut self, min_timestamp: DateTime<Utc>)
Find all Packet
values with timestamps older than min_timestamp
and set their
frame_count
to zero effectively hiding their frame_data
payload.
sourcepub fn sort_by<F>(&mut self, f: F)where
F: FnMut(&Data, &Data) -> Ordering,
pub fn sort_by<F>(&mut self, f: F)where
F: FnMut(&Data, &Data) -> Ordering,
Sort the Data
values contained in this DataSet
.
sourcepub fn sort_by_id_slice(&mut self, ids: &[PacketId])
pub fn sort_by_id_slice(&mut self, ids: &[PacketId])
Sort the Data
values contained in this DataSet
by a list of known PacketId
values.