para_graph/model/
device.rs

1#[derive(Debug, Copy, Clone)]
2pub struct Device {
3    pub number_of_cores: u32,
4    /// In Ghz
5    pub cpu_frequency: f64,
6}
7
8impl Device {
9    pub fn new(number_of_cores: u32, cpu_frequency: f64) -> Self {
10        Self {
11            number_of_cores,
12            cpu_frequency,
13        }
14    }
15}
16
17impl std::fmt::Display for Device {
18    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
19        f.write_fmt(format_args!("{:?}", self))
20    }
21}
22
23#[derive(Debug, Copy, Clone)]
24pub struct Transmission {
25    /// In Gbps
26    pub transmission_rate: f64,
27}
28
29impl Transmission {
30    pub fn new(transmission_rate: f64) -> Self {
31        Self { transmission_rate }
32    }
33}
34
35impl std::fmt::Display for Transmission {
36    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
37        f.write_fmt(format_args!("{}gbps", self.transmission_rate))
38    }
39}