#[derive(Clone, Copy, Debug, Eq, PartialEq)]
#[repr(u32)]
pub enum DataStreamResetCode {
InternalError = 0x0,
Cancelled = 0x1,
DeliveryTimeout = 0x2,
SessionClosed = 0x3,
UnknownObjectStatus = 0x4,
MalformedTrack = 0x12,
}
impl From<DataStreamResetCode> for u32 {
fn from(value: DataStreamResetCode) -> Self {
value as u32
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn codes_match_the_registry() {
assert_eq!(u32::from(DataStreamResetCode::InternalError), 0x0);
assert_eq!(u32::from(DataStreamResetCode::Cancelled), 0x1);
assert_eq!(u32::from(DataStreamResetCode::DeliveryTimeout), 0x2);
assert_eq!(u32::from(DataStreamResetCode::SessionClosed), 0x3);
assert_eq!(u32::from(DataStreamResetCode::UnknownObjectStatus), 0x4);
assert_eq!(u32::from(DataStreamResetCode::MalformedTrack), 0x12);
}
}