MIP_SDK
v3.0.0-343-g605b467
MicroStrain Communications Library for embedded systems
|
Go to the documentation of this file.
64 void* _callback_object;
66 #ifdef MIP_ENABLE_DIAGNOSTICS
67 uint32_t _diag_bytes_read;
68 uint32_t _diag_bytes_skipped;
69 uint32_t _diag_packet_bytes;
70 uint32_t _diag_valid_packets;
71 uint32_t _diag_invalid_packets;
72 uint32_t _diag_timeouts;
73 #endif // MIP_ENABLE_DIAGNOSTICS
75 uint16_t _buffered_length;
82 #define MIP_PARSER_DEFAULT_TIMEOUT_MS 100
111 #ifdef MIP_ENABLE_DIAGNOSTICS
113 uint32_t mip_parser_diagnostic_bytes_read(
const mip_parser* parser);
114 uint32_t mip_parser_diagnostic_bytes_skipped(
const mip_parser* parser);
115 uint32_t mip_parser_diagnostic_packet_bytes(
const mip_parser* parser);
117 uint32_t mip_parser_diagnostic_valid_packets(
const mip_parser* parser);
118 uint32_t mip_parser_diagnostic_invalid_packets(
const mip_parser* parser);
119 uint32_t mip_parser_diagnostic_timeouts(
const mip_parser* parser);
121 #endif // MIP_ENABLE_DIAGNOSTICS
@ MIP_PACKET_LENGTH_MAX
Definition: mip_offsets.h:28
size_t mip_parser_parse(mip_parser *parser, const uint8_t *input_buffer, size_t input_length, mip_timestamp timestamp)
Parse packets from a buffer.
Definition: mip_parser.c:187
A collection of C++ classes and functions covering the full mip api.
Definition: commands_3dm.c:11
void mip_parser_set_callback(mip_parser *parser, mip_packet_callback callback, void *callback_object)
mip_parser_set_callback
Definition: mip_parser.c:464
mip_timeout mip_parser_timeout(const mip_parser *parser)
Returns the packet timeout of the parser.
Definition: mip_parser.c:440
void * mip_parser_callback_object(const mip_parser *parser)
mip_parser_callback
Definition: mip_parser.c:490
void mip_parser_set_timeout(mip_parser *parser, mip_timeout timeout)
Changes the timeout of the MIP parser.
Definition: mip_parser.c:452
mip_timestamp mip_parser_current_timestamp(const mip_parser *parser)
Gets the timestamp of the last parsed packet.
Definition: mip_parser.c:513
Structure representing a MIP Packet.
Definition: mip_packet.h:50
microstrain::C::microstrain_embedded_timestamp mip_timeout
Definition: mip_types.h:16
bool(* mip_packet_callback)(void *user, const mip_packet_view *packet, mip_timestamp timestamp)
Callback function which receives parsed MIP packets.
Definition: mip_parser.h:48
void mip_parser_flush(mip_parser *parser)
Processes all previously buffered data.
Definition: mip_parser.c:394
MIP Parser state.
Definition: mip_parser.h:58
mip_packet_callback mip_parser_callback(const mip_parser *parser)
mip_parser_callback
Definition: mip_parser.c:477
void mip_parser_init(mip_parser *parser, mip_packet_callback callback, void *callback_object, mip_timeout timeout)
Initializes the MIP parser.
Definition: mip_parser.c:32
uint_least16_t mip_parser_get_write_ptr(mip_parser *parser, uint8_t **ptr_out)
Gets a pointer into which a small amount of data may be written for parsing.
Definition: mip_parser.c:427
void mip_parser_reset(mip_parser *parser)
Resets the MIP parser.
Definition: mip_parser.c:51
mip_timeout mip_timeout_from_baudrate(uint32_t baudrate)
Computes an appropriate packet timeout for a given serial baud rate.
Definition: mip_parser.c:604
microstrain::C::microstrain_embedded_timestamp mip_timestamp
Definition: mip_types.h:15
struct mip::C::mip_parser mip_parser
MIP Parser state.