usb_descriptor_decoder/descriptors/
desc_interface.rs1#[derive(Copy, Clone, Default, Debug)]
2#[repr(C, packed)]
3pub struct Interface {
4 pub len: u8,
5 pub descriptor_type: u8,
6 pub interface_number: u8,
7 pub alternate_setting: u8,
8 pub num_endpoints: u8,
9 pub interface_class: u8,
10 pub interface_subclass: u8,
11 pub interface_protocol: u8,
12 pub interface: u8,
13}
14impl Interface {
15 pub fn ty(&self) -> (u8, u8, u8) {
16 (
17 self.interface_class,
18 self.interface_subclass,
19 self.interface_protocol,
20 )
21 }
22}
23
24#[derive(Copy, Clone, Default, Debug)]
25#[repr(C, packed)]
26pub struct InterfaceAssociation {
27 pub len: u8,
28 pub descriptor_type: u8,
29 pub first_interface: u8,
30 pub interface_count: u8,
31 pub function_class: u8,
32 pub function_subclass: u8,
33 pub function_protocol: u8,
34 pub function: u8,
35}