7#ifndef DATA_FORWARDER_PROTOCOL_H_
8#define DATA_FORWARDER_PROTOCOL_H_
32 int (*
send)(
const uint8_t *buf,
size_t len,
void *
ctx);
int proto_send_samples(const proto_value_t *values, uint8_t count)
Enqueue sensor samples for transmission.
float proto_value_t
Definition protocol_types.h:21
int proto_start_session(const struct proto_session_config *cfg)
Start a new streaming session.
int proto_init(const struct proto_transport *transport)
Initialize the data forwarder protocol layer.
uint32_t proto_get_session_id(void)
Get the ID of the current or most recently started session.
int proto_stop_session(void)
Stop the current session.
const char *const * channel_names
Definition protocol.h:53
uint8_t sensor_type
Definition protocol.h:51
uint16_t rate_hz
Definition protocol.h:47
const char * device_name
Definition protocol.h:55
uint8_t channels
Definition protocol.h:49
Session metadata included in periodic session-info messages.
Definition protocol.h:45
void * ctx
Definition protocol.h:34
bool has_message_boundaries
Definition protocol.h:39
int(* send)(const uint8_t *buf, size_t len, void *ctx)
Definition protocol.h:32
Transport callbacks used to send framed protocol messages.
Definition protocol.h:30