3#ifndef _ROBUST_FRAME_H_
4#define _ROBUST_FRAME_H_
13namespace robust_frame {
114 void Feed(
const uint8_t
byte);
128 const size_t max_payload_size_ = 0;
130 const void *
const user_data_ =
nullptr;
131 uint8_t *
const buffer_ =
nullptr;
132 uint8_t buffer_len_ = 0;
133 State state_ = State::kSyncHeader;
void(*)(const uint8_t *data, void *user_data) FrameCallback
Frame parse callback function type.
~Parser()
Destructor. Frees the internally allocated buffer.
Parser(const size_t max_payload_size, FrameCallback callback, void *user_data)
Constructor. Dynamically allocates the internal buffer based on the maximum payload size.
void Feed(const uint8_t byte)
Core state machine for processing a single byte.