1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
// use bytes::BytesMut;
// //5.3.1.1
// #[derive(Eq, PartialEq, Debug, Clone)]
// pub struct ChunkBasicHeader {
// pub format: u8,
// pub chunk_stream_id: u32,
// }
// impl ChunkBasicHeader {
// pub fn new(fmt: u8, csid: u32) -> ChunkBasicHeader {
// ChunkBasicHeader {
// format: fmt,
// chunk_stream_id: csid,
// }
// }
// }
// //5.3.1.2
// #[derive(Eq, PartialEq, Debug, Clone)]
// pub struct ChunkMessageHeader {
// pub timestamp: u32,
// pub msg_length: u32,
// pub msg_type_id: u8,
// pub msg_streamd_id: u32,
// pub timestamp_delta: u32,
// pub is_extended_timestamp: bool,
// }
// impl ChunkMessageHeader {
// pub fn new(timestamp: u32, msg_length: u32, msg_type_id: u8, msg_stream_id: u32) -> Self {
// Self {
// timestamp,
// msg_length,
// msg_type_id,
// msg_streamd_id: msg_stream_id,
// timestamp_delta: 0,
// is_extended_timestamp: false,
// }
// }
// }
// pub struct ChunkHeader {
// pub basic_header: ChunkBasicHeader,
// pub message_header: ChunkMessageHeader,
// }
// impl Default for ChunkHeader {
// fn default() -> Self {
// Self::new()
// }
// }
// impl ChunkHeader {
// pub fn new() -> ChunkHeader {
// ChunkHeader {
// basic_header: ChunkBasicHeader::new(0, 0),
// message_header: ChunkMessageHeader::new(0, 0, 0, 0),
// }
// }
// }
// // pub struct Chunk {
// // basic_header: ChunkBasicHeader,
// // message_header: ChunkMessageHeader,
// // raw_data: BytesMut,
// // }
// #[derive(Eq, PartialEq, Debug, Clone)]
// pub struct ChunkInfo {
// pub basic_header: ChunkBasicHeader,
// pub message_header: ChunkMessageHeader,
// pub payload: BytesMut,
// }
// impl Default for ChunkInfo {
// fn default() -> Self {
// Self::new(0, 0, 0, 0, 0, 0, BytesMut::new())
// }
// }
// impl ChunkInfo {
// pub fn new(
// csid: u32,
// format: u8,
// timestamp: u32,
// msg_length: u32,
// msg_type_id: u8,
// msg_stream_id: u32,
// payload: BytesMut,
// ) -> Self {
// Self {
// basic_header: ChunkBasicHeader::new(format, csid),
// message_header: ChunkMessageHeader::new(
// timestamp,
// msg_length,
// msg_type_id,
// msg_stream_id,
// ),
// payload,
// }
// }
// }
// // impl Chunk {
// // pub fn chunk_read(&mut self, bytes: &[u8]) -> Result {
// // self.buffer.extend_from_slice(bytes);
// // }
// // pub fn read_basic_header(&mut self, bytes: &[u8]) -> Result<UnpackResult, ChunkUnpackError> {
// // if self.buffer.len() < 1 {
// // return Ok(UnpackResult::NotEnoughBytes);
// // }
// // }
// // }