virtio_input_decoder/lib.rs
1//! # VirtIO 输入设备解码器
2//! 仅包含部分键盘按键、鼠标的按键解码(virtio)
3//! 解码需要传入 event_type、code、value 三个值
4//! 鼠标滚轮会同时以 1、2 编码 even_type,为了避免出错,解码器只处理编号 2
5//! # VirtIO Input Decoder
6//! Only support part of keyboard and mouse input.
7//! You should provide event_type, code and value to the deocder
8//! MouseScroll has event_type both 1 and 2, in case of resulting error, decoder will only deal
9//! with the event_type 2 for mouse scroll
10//! ## Example
11//! ```rust
12//! use virtio_input_decoder::{
13//! Decoder, Mouse, DecodeType
14//! };
15//! let mouse = Decoder::decode(2, 8, 1).unwrap();
16//! assert_eq!(mouse, DecodeType::Mouse(Mouse::ScrollUp));
17//! ```
18//!
19//! 2021年4月15日 zg
20
21#![no_std]
22
23mod key;
24mod mouse;
25mod decoder;
26use key::KeyDecoder;
27use mouse::MouseDecoder;
28
29pub use decoder::{Decoder, DecodeType};
30pub use key::{Key, KeyType};
31pub use mouse::Mouse;
32
33