Skip to main content

Crate cue_sdk

Crate cue_sdk 

Source
Expand description

A safe, high-level wrapper for the Corsair iCUE SDK v4.

§Quick Start

use std::time::Duration;
use cue_sdk::device::DeviceType;
use cue_sdk::led::LedColor;

let session = cue_sdk::connect().expect("connect failed");
session.wait_for_connection(Duration::from_secs(5)).expect("timeout");

let devices = session.get_devices(DeviceType::ALL).expect("get_devices");
for dev in &devices {
    println!("{} ({})", dev.model, dev.id);
}

§Architecture

Session is the single entry point for all SDK operations. Call connect() to create one; it calls CorsairDisconnect on drop.

Device information is returned as plain data structs (DeviceInfo, LedPosition). Operations that need a device take a [&DeviceId] parameter.

Re-exports§

pub use device::DeviceId;
pub use device::DeviceInfo;
pub use device::DeviceType;
pub use error::Result;
pub use error::SdkError;
pub use event::Event;
pub use event::EventSubscription;
pub use event::MacroKeyId;
pub use led::LedColor;
pub use led::LedPosition;
pub use property::PropertyId;
pub use property::PropertyValue;
pub use session::AccessLevel;
pub use session::Session;
pub use session::SessionDetails;
pub use session::SessionState;
pub use session::Version;

Modules§

device
error
event
led
property
session

Functions§

connect
Connect to the iCUE SDK and return a Session.