sctp_proto/association/
stats.rs1#[derive(Default, Debug, Copy, Clone)]
3pub struct AssociationStats {
4 n_datas: u64,
5 n_sacks: u64,
6 n_t3timeouts: u64,
7 n_ack_timeouts: u64,
8 n_fast_retrans: u64,
9}
10
11impl AssociationStats {
12 pub fn inc_datas(&mut self) {
13 self.n_datas += 1;
14 }
15
16 pub fn get_num_datas(&mut self) -> u64 {
17 self.n_datas
18 }
19
20 pub fn inc_sacks(&mut self) {
21 self.n_sacks += 1;
22 }
23
24 pub fn get_num_sacks(&mut self) -> u64 {
25 self.n_sacks
26 }
27
28 pub fn inc_t3timeouts(&mut self) {
29 self.n_t3timeouts += 1;
30 }
31
32 pub fn get_num_t3timeouts(&mut self) -> u64 {
33 self.n_t3timeouts
34 }
35
36 pub fn inc_ack_timeouts(&mut self) {
37 self.n_ack_timeouts += 1;
38 }
39
40 pub fn get_num_ack_timeouts(&mut self) -> u64 {
41 self.n_ack_timeouts
42 }
43
44 pub fn inc_fast_retrans(&mut self) {
45 self.n_fast_retrans += 1;
46 }
47
48 pub fn get_num_fast_retrans(&mut self) -> u64 {
49 self.n_fast_retrans
50 }
51
52 pub fn reset(&mut self) {
53 self.n_datas = 0;
54 self.n_sacks = 0;
55 self.n_t3timeouts = 0;
56 self.n_ack_timeouts = 0;
57 self.n_fast_retrans = 0;
58 }
59}