42 PacketFramer(
const std::vector<uint8_t>& start_pattern,
const std::vector<uint8_t>& end_pattern,
size_t max_length);
48 void reset()
override;
56 std::vector<uint8_t> start_pattern_;
57 std::vector<uint8_t> end_pattern_;
61 std::vector<uint8_t> buffer_;
62 MessageCallback on_message_;
66 size_t scanned_idx_ = 0;
Abstract base class for message framing strategies.
std::function< void(memory::ConstByteSpan)> MessageCallback
Register a callback to be invoked when a complete message is extracted.
Framer for binary packet protocols.
~PacketFramer() override=default
A C++17 compatible span-like class for safe array access.