Go to the documentation of this file.
70 RTCMFramer(
void* buffer,
size_t capacity_bytes);
90 void SetBuffer(
void* buffer,
size_t capacity_bytes);
126 size_t OnData(
const uint8_t* buffer,
size_t length_bytes);
155 bool warn_on_error_ =
true;
156 bool is_buffer_managed_ =
false;
157 uint8_t* buffer_{
nullptr};
158 uint32_t capacity_bytes_{0};
161 uint32_t next_byte_index_{0};
162 size_t current_message_size_{0};
164 uint32_t error_count_{0};
165 uint32_t decoded_msg_count_{0};
178 int32_t OnByte(
bool quiet);
191 void ClearManagedBuffer();
Library portability helper definitions.
RTCMFramer(size_t capacity_bytes)
Construct a framer instance with an internally allocated buffer.
RTCMFramer & operator=(const RTCMFramer &)=delete
void(*)(uint16_t, const void *, size_t) MessageCallback
Frame and validate incoming RTCM 3 messages.
uint32_t GetNumDecodedMessages() const
Get the number of decoded messages.
GNSS signal and frequency type definitions.
RTCMFramer(const RTCMFramer &)=delete
RTCMFramer()=default
Construct a framer instance with no buffer allocated.
RTCMFramer(RTCMFramer &&)=delete
RTCMFramer & operator=(RTCMFramer &&)=delete
void SetMessageCallback(MessageCallback callback)
Specify a function to be called when a message is framed.
void WarnOnError(bool enabled)
Enable/disable warnings for CRC and "message too large" failures.
uint32_t GetNumErrors() const
Get the number of preamble synchronizations that resulted in errors.