API 参考
Exo C++ SDK 1.0.0 的函数、类、通道、模型和异常速查。
当前版本 · 1.0.0
API 参考
发现与配置
std::vector<DiscoveredExo> discover_exos()ExoConfig { SerialConnection connection; optional<string> name; bool enabled; }Sdk::exo() -> Exo
DiscoveredExo 包含 port、可选 device_info 和可选 error,成功与失败字段互斥。
Exo
方法:device(name)、start()、update()、run_forever()、run_background()、request_stop()、join()、stop()、health()、close()。
ExoDevice
方法:name()、source_id()、start()、stop()、health()、get_device_info()、telemetry()、status()、haptics()、close()。
通道返回类型分别为 ReadChannel<ExoTelemetry>、ReadChannel<ExoStatus> 和 HapticsState。
设备信息与数据模型
ExoDeviceInfo:协议、产品、固件、序列号、硬件名、能力和组件数量。ExoCapabilities:telemetry、encoders、handsets、imus、haptics、wireless。ExoTelemetry:meta、payload、quality。ExoArmState:8 个编码器计数和 8 个弧度关节角。ExoHandsetState:轴、按键掩码和扳机原始值。ExoImuState:加速度、角速度和 XYZW 四元数。ExoStatus是DeviceStatus的领域别名。
震动与异常
ExoHaptics 包含可选 left、right。HapticsState 提供 latest()、订阅、set() 和 clear()。
通用异常继承 QnBotError。Exo 控制失败为 ExoControlError;无效参数和关闭句柄分别映射为 InvalidArgumentError 与 ClosedHandleError。