]> git.lizzy.rs Git - mt_rudp.git/blobdiff - src/common.rs
Implement sending splits
[mt_rudp.git] / src / common.rs
index bdae6d2d28489bf112a7c1be9e087402db0fb28c..9d99cb9e7b689780b6e411256d48ed025b0ca1b6 100644 (file)
@@ -52,3 +52,17 @@ pub struct Pkt<'a> {
     pub chan: u8,
     pub data: Cow<'a, [u8]>,
 }
+
+impl<'a> Pkt<'a> {
+    pub fn size(&self) -> usize {
+        self.header_size() + self.body_size()
+    }
+
+    pub fn body_size(&self) -> usize {
+        self.data.len()
+    }
+
+    pub fn header_size(&self) -> usize {
+        4 + 2 + 1 + if self.unrel { 0 } else { 1 + 2 } + 1
+    }
+}