3#include <serial/serial.h>
11 template <
typename Message>
16 serial::Serial& serial;
18 std::vector<uint8_t> buffer;
32 if (not serial.isOpen())
36 if (serial.available() >=
static_cast<int>(Size))
38 std::vector<uint8_t> buf;
39 serial.read(buf, Size);
40 buffer = std::move(buf);
67 for (
int i = 0; i < buffer.size(); i++)
69 std::cout << static_cast<int>(buffer[i]) <<
" ";
71 std::cout << std::endl;
オプショナル型
Definition Optional.hpp:62
ROS2からSerial通信を受信するクラス
Definition Ros2SerialReader.hpp:13
Udon::Optional< Message > getMessage() const
メッセージの取得
Definition Ros2SerialReader.hpp:46
void show() const
メッセージの表示
Definition Ros2SerialReader.hpp:52
Ros2SerialReader(serial::Serial &bus)
コンストラクタ
Definition Ros2SerialReader.hpp:23
void update()
更新
Definition Ros2SerialReader.hpp:30
void showRaw() const
受信バッファを表示
Definition Ros2SerialReader.hpp:65
Udon::Optional< T > Deserialize(ArrayView< const uint8_t > buffer)
バイト列からオブジェクトに逆シリアル化します
Definition Serializer.hpp:87
void Show(Args &&... args)
区切り文字ありで出力する
Definition Show.hpp:339
constexpr size_t SerializedSize() noexcept
Tをシリアライズした際のバイト列の要素数を取得する
Definition Serializer.hpp:22