pub enum ProtocolVersion {
V10,
V20 {
protocol_num: u8,
target_sw: u8,
},
}Expand description
Represents the protocol version a device supports.
Variants§
V10
The older HID++1.0 protocol. Mostly used for receivers.
V20
All newer protocols starting from HID+2.0.
Traditionally, the version was split into a major and a minor version, defining the concrete protocol version. These two values were later redefined to serve the purpose of indicating which host software to target.
Fields
protocol_num: u8The protocol number is a field that hints the host software if it should support the device.
protocol_num = 2 : Intended target SW is Logitech SetPoint
protocol_num = 3 : Intended OEM SW described in target_sw field
protocol_num = 4 : Intended target SW described in target_sw
field
target_sw: u8When protocol_num >= 3 this field further hints at which software
should support the device. Otherwise the value is zero.
See https://drive.google.com/file/d/1ULmw9uJL8b8iwwUo5xjSS9F5Zvno-86y/view for more information.
Trait Implementations§
Source§impl Clone for ProtocolVersion
impl Clone for ProtocolVersion
Source§fn clone(&self) -> ProtocolVersion
fn clone(&self) -> ProtocolVersion
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProtocolVersion
impl Debug for ProtocolVersion
Source§impl Hash for ProtocolVersion
impl Hash for ProtocolVersion
Source§impl PartialEq for ProtocolVersion
impl PartialEq for ProtocolVersion
Source§fn eq(&self, other: &ProtocolVersion) -> bool
fn eq(&self, other: &ProtocolVersion) -> bool
self and other values to be equal, and is used by ==.