Cargo Features
[dependencies]
hid-io-core = { version = "0.1.4", default-features = false, features = ["api", "dev-capture", "displayserver", "hidapi-devices", "vhid"] }
- default = api, dev-capture, displayserver, hidapi-devices, vhid
-
These default features are set whenever
hid-io-core
is added without
somewhere in the dependency tree.default-features = false - api default = capnp, capnp-rpc, capnpc, futures, futures-util, glob, nanoid, rcgen, rustls, tempfile, tokio-rustls, tokio-stream, tokio-util
-
api handles socket interfaces for HID-IO
e.g. capnproto interface
Disabling will reduce compile timesAffects
capnp::initialize
,api::supported_ids
,api::initialize
,hid-io-core::common_capnp
,hid-io-core::daemon_capnp
,hid-io-core::hidio_capnp
,hid-io-core::keyboard_capnp
… - dev-capture default = evdev-rs, libc, nanoid, udev
-
dev_capture handles any HID event capturing for standard input devices Disabling will reduce compile times
- displayserver default = core-foundation, core-graphics, memmap2, tempfile, wayland-client, wayland-protocols-misc, winapi, winreg, x11, xkbcommon
-
displayserver interacts with the OS display server (e.g. winapi, quartz, x11, wayland)
Disabling will reduce compile times - hidapi-devices default = hidapi, regex, tokio-stream
-
hidapi_devices allows for communication directly with hid-io supported devices This should be enabled in most scenarios unless you know what you are doing.
Disabling will reduce compile times - vhid default = libc, nanoid, udev, uhid-virt
-
vhid (virtual hid) allows for the creation of virtual hid devices.
This is needed to support virtual devices such as virtual joysticks, mice and keyboards Disabling will reduce compile times
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- capnp api
-
Enables capnp ^0.14
- capnp-rpc api
-
Enables capnp-rpc ^0.14
- futures api
- futures-util api
- glob api
- hidapi hidapi-devices
- libc dev-capture vhid
- nanoid api dev-capture vhid
- rcgen api
-
Enables rcgen ^0.11
- regex hidapi-devices
- rustls api
-
Enables rustls ^0.21
- tempfile api displayserver
- tokio-rustls api
-
Enables tokio-rustls ^0.23
- tokio-stream api hidapi-devices
- tokio-util api
- capnpc build api
-
Enables capnpc ^0.14
- core-foundation mac displayserver
-
Enables core-foundation ^0.9
- core-graphics mac displayserver
-
Enables core-graphics ^0.22
- evdev-rs linux dev-capture
-
Enables evdev-rs ^0.5
- memmap2 linux displayserver
-
Enables memmap2 ^0.5
- uhid-virt linux vhid
-
Enables uhid-virt ^0.0.6
- wayland-client linux displayserver
-
Enables wayland-client ^0.30.0-beta.13
- wayland-protocols-misc linux displayserver
- winapi win displayserver
- winreg win displayserver
-
Enables winreg ^0.10
- x11 linux displayserver
- xkbcommon linux displayserver
-
Enables xkbcommon ^0.5.0-beta
- udev linux dev-capture vhid
-
Enables udev ^0.6