moqtap_codec/draft08/
types.rs1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
5#[repr(u8)]
6pub enum Role {
7 Publisher = 1,
9 Subscriber = 2,
11 PubSub = 3,
13}
14
15impl Role {
16 pub fn from_u8(v: u8) -> Option<Self> {
18 match v {
19 1 => Some(Role::Publisher),
20 2 => Some(Role::Subscriber),
21 3 => Some(Role::PubSub),
22 _ => None,
23 }
24 }
25}
26
27#[derive(Debug, Clone, Copy, PartialEq, Eq)]
29#[repr(u8)]
30pub enum ObjectStatus {
31 Normal = 0,
33 ObjectDoesNotExist = 1,
35 EndOfGroup = 3,
37 EndOfTrackAndGroup = 4,
39 EndOfTrack = 5,
41}
42
43impl ObjectStatus {
44 pub fn from_u64(v: u64) -> Option<Self> {
46 match v {
47 0 => Some(ObjectStatus::Normal),
48 1 => Some(ObjectStatus::ObjectDoesNotExist),
49 3 => Some(ObjectStatus::EndOfGroup),
50 4 => Some(ObjectStatus::EndOfTrackAndGroup),
51 5 => Some(ObjectStatus::EndOfTrack),
52 _ => None,
53 }
54 }
55}