GKD.RoboCtrl
载入中...
搜索中...
未找到
controlpad.h
1#pragma once
2#include <string_view>
3
4#include "base.hpp"
5#include "core/logger.h"
6
7namespace roboctrl::device{
8
13class control_pad:public device_base,public logable<control_pad>{
14public:
15 struct info_type{
16 std::string_view serial_name;
17
18 using key_type = std::string_view;
19 using owner_type = control_pad;
20
21 inline std::string_view key()const{return serial_name;}
22 };
23
24 inline std::string desc()const{
25 return std::format("Control pad on serial:{}",info_.serial_name);
26 }
27
28 control_pad(const info_type& info);
29private:
30 info_type info_;
31};
32
33static_assert(device<control_pad>);
34
35}
遥控器设备,负责解析上报的报文并设置机器人的速度等状态
Definition controlpad.h:13
用于提供日志功能的辅助基类 通过CRTP模式实现,要求派生类实现desc()方法以提供描述信息,在继承时传入派生类自身类型作为模板参数。 继承这个类后,派生类可以方便地使用log_debug、log_i...
Definition logger.h:178
IO的基础组件。
用于日志输出的组件。
asio::awaitable< T > awaitable
协程任务类型。
Definition async.hpp:42
设备模块
Definition base.hpp:25
设备基础类,提供判断设备离线的基础功能
Definition base.hpp:38