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