GamepadCodec Arduino 库 1.0.1
载入中...
搜索中...
未找到
gamepad_codec_encoder.cpp
浏览该文件的文档.
2
3#include <string.h>
4
5/**
6 * @file gamepad_codec_encoder.cpp
7 */
8
9namespace gamepad::codec {
10ByteBuffer Encode(const gamepad::input::State &state) noexcept {
11 uint8_t data[kGamepadInputStatePayloadSize] = {0};
12 data[0] = static_cast<uint8_t>(DataType::kGamepadInputState);
13 memcpy(&data[1], &state, sizeof(state));
14
15 return robust_frame::Serialize(data, sizeof(data));
16}
17
18void Encode(const gamepad::input::State &state, Stream &stream) noexcept {
19 uint8_t data[kGamepadInputStatePayloadSize] = {0};
20 data[0] = static_cast<uint8_t>(DataType::kGamepadInputState);
21 memcpy(&data[1], &state, sizeof(state));
22
23 robust_frame::Serialize(data, sizeof(data), stream);
24}
25
26} // namespace gamepad::codec
@ kGamepadInputState
手柄输入状态(按钮 + 摇杆)。
ByteBuffer Encode(const gamepad::input::State &state) noexcept
将 gamepad::input::State 编码为 RobustFrame 帧。