SDKC++ SDK

数据通道与读取方式

通过 latest、subscribe 和 next 读取 Exo 遥测、状态、手柄与可选 IMU。

当前版本 · 1.0.0

数据通道与读取方式

通道

auto telemetry = device.telemetry(); // ReadChannel<ExoTelemetry>
auto status = device.status();       // ReadChannel<ExoStatus>

if (const auto latest = telemetry.latest()) {
    std::cout << latest->sequence << '\n';
}
const auto subscription = telemetry.subscribe(
    [](const qnbot::Sample<qnbot::ExoTelemetry>& sample) { /* 短回调 */ });

第一帧前 latest() 返回空 std::optional。订阅回调在 SDK 运行线程执行,不应阻塞。需要 coroutine 时使用 Core 提供的 next() 适配。

ExoTelemetryPayload 包含左右臂各 8 个编码器和关节角、左右手柄,以及可空的躯干/扩展 IMU。展示可选载荷前检查 ExoDeviceInfo.capabilities。