PebbleOS
Loading...
Searching...
No Matches
Data Structures | Functions
Encoding helpers

nanopb encode callbacks used to build payloads. More...

Data Structures

struct  PLogPackedVarintsEncoderArg
 Argument of protobuf_log_util_encode_packed_varints(). More...
 
struct  PLogTypesEncoderArg
 Argument of protobuf_log_util_encode_measurement_types(). More...
 
struct  PLogBufferEncoderArg
 Argument of protobuf_log_util_encode_buffer(). More...
 

Functions

bool protobuf_log_util_encode_uuid (pb_ostream_t *stream, const pb_field_t *field, void *const *arg)
 Encode a UUID as a bytes field.
 
bool protobuf_log_util_encode_string (pb_ostream_t *stream, const pb_field_t *field, void *const *arg)
 Encode a NUL-terminated string.
 
bool protobuf_log_util_encode_packed_varints (pb_ostream_t *stream, const pb_field_t *field, void *const *arg)
 Encode a packed array of varints.
 
bool protobuf_log_util_encode_measurement_types (pb_ostream_t *stream, const pb_field_t *field, void *const *arg)
 Encode measurement types as a repeated field.
 
bool protobuf_log_util_encode_buffer (pb_ostream_t *stream, const pb_field_t *field, void *const *arg)
 Encode an already encoded buffer, such as a measurement set, as a bytes field.
 

Detailed Description

nanopb encode callbacks used to build payloads.

Each callback encodes a field from the value arg points to, and returns false on encoding errors.


Data Structure Documentation

◆ PLogPackedVarintsEncoderArg

struct PLogPackedVarintsEncoderArg
Data Fields
uint16_t num_values Number of values.
uint32_t * values Values.

◆ PLogTypesEncoderArg

struct PLogTypesEncoderArg
Data Fields
uint16_t num_types Number of types.
ProtobufLogMeasurementType * types Types.

◆ PLogBufferEncoderArg

struct PLogBufferEncoderArg
Data Fields
uint8_t * buffer Data.
uint16_t len Length of buffer in bytes.

Function Documentation

◆ protobuf_log_util_encode_buffer()

bool protobuf_log_util_encode_buffer ( pb_ostream_t *  stream,
const pb_field_t *  field,
void *const *  arg 
)

Encode an already encoded buffer, such as a measurement set, as a bytes field.

Parameters
streamOutput stream.
fieldField.
argPointer to a PLogBufferEncoderArg pointer.
Returns
true on success.

◆ protobuf_log_util_encode_measurement_types()

bool protobuf_log_util_encode_measurement_types ( pb_ostream_t *  stream,
const pb_field_t *  field,
void *const *  arg 
)

Encode measurement types as a repeated field.

Parameters
streamOutput stream.
fieldField.
argPointer to a PLogTypesEncoderArg pointer.
Returns
true on success.

◆ protobuf_log_util_encode_packed_varints()

bool protobuf_log_util_encode_packed_varints ( pb_ostream_t *  stream,
const pb_field_t *  field,
void *const *  arg 
)

Encode a packed array of varints.

Parameters
streamOutput stream.
fieldField.
argPointer to a PLogPackedVarintsEncoderArg pointer.
Returns
true on success.

◆ protobuf_log_util_encode_string()

bool protobuf_log_util_encode_string ( pb_ostream_t *  stream,
const pb_field_t *  field,
void *const *  arg 
)

Encode a NUL-terminated string.

Parameters
streamOutput stream.
fieldField.
argPointer to a string pointer.
Returns
true on success.

◆ protobuf_log_util_encode_uuid()

bool protobuf_log_util_encode_uuid ( pb_ostream_t *  stream,
const pb_field_t *  field,
void *const *  arg 
)

Encode a UUID as a bytes field.

Parameters
streamOutput stream.
fieldField.
argPointer to a Uuid pointer.
Returns
true on success.