2 个版本
0.1.1 | 2023 年 6 月 6 日 |
---|---|
0.1.0 | 2023 年 6 月 6 日 |
#9 in #logitech
50KB
1K SLoC
logitech-led-sdk-rs
Logitech LED 库的 Rust 绑定。它使用 v9.00 版本构建和测试,很可能与 LGS 兼容,并且肯定与 LG HUB 兼容。由于缺少文档,假定 SDK 是单线程的。库将使用内部同步来确保对库的访问是安全的。此绑定的目标是提供一个 SDK 的包装器,而不是提供与 Logitech 设备上的 LED 交互的方法。
文档
版本: https://docs.rs/crate/logitech-led-sdk/latest/logitech_led_sdk/ 主版本: https://nathaniel-daniel.github.io/logitech-led-sdk-rs/logitech_led_sdk/
构建
您需要单独下载 LG SDK。您可以在这里找到它。
将环境变量 LOGITECH_LED_SDK
设置为下载的 zip sdk 中的 LED
文件夹。
示例: LOGITECH_LED_SDK = C:\Users\[username]\Documents\code\LED_SDK_9.00\LED
.
示例
use logitech_led_sdk::Sdk;
use logitech_led_sdk::ColorPercent;
use logitech_led_sdk::TargetDevice;
fn main() {
/// Do not use `expect` in a real application.
/// If this fails, its likely that the user does not have LGS or LG HUB installed.
let sdk = Sdk::new_with_name("Test").expect("failed to initialize SDK");
let version = sdk.get_version().expect("failed to get version");
println!("Version: {:#?}", version);
/// Do not use `assert!` in a real application.
assert!(sdk.set_target(TargetDevice::All));
assert!(sdk.set_lighting(ColorPercent::new_rgb(255, 255, 255)));
}
测试
在运行了 LGS 或 LG HUB 的电脑上,运行
cargo test
许可
许可协议为以下之一
- Apache 许可协议,版本 2.0 (LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可协议 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确说明,否则您有意提交以包含在作品中的任何贡献,根据 Apache-2.0 许可证定义,应按上述方式双许可,而不附加任何额外条款或条件。
依赖项
~105KB