modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h
asxeem/openaliro
Module

aliro_uwb_msg_builder.h

big-endian TLV message builder.

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h1 documented symbols

Overview

big-endian TLV message builder.

depends on aliro_uwb_msg_spec.h aliro_uwb_session.h  ·  used by aliro_uwb_msg.c aliro_uwb_msg_builder.c

API

Cstruct aliro_uwb_msg_builder

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:19

Accumulates bytes into a heap-allocated Aliro UWB message.

message
Aliro UWB message under construction, holding encoded M1-M4 attributes and payload.
capacity
Capacity of the message buffer.

Fbool aliro_uwb_msg_builder_init(struct aliro_uwb_msg_builder *builder, uint16_t payload_len)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:29

Allocate a message with room for payload_len payload bytes plus header.

Fvoid aliro_uwb_msg_builder_header(struct aliro_uwb_msg_builder *builder, uint8_t protocol, uint8_t id, uint16_t payload_length)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:32

Append the 4-byte header (protocol, id, big-endian payload length).

Fbool aliro_uwb_msg_builder_add_u8(struct aliro_uwb_msg_builder *builder, uint8_t id, uint8_t value)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:36

Append a 1-byte-value attribute.

Fbool aliro_uwb_msg_builder_add_u16(struct aliro_uwb_msg_builder *builder, uint8_t id, uint16_t value)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:39

Append a 2-byte big-endian attribute.

Fbool aliro_uwb_msg_builder_add_u32(struct aliro_uwb_msg_builder *builder, uint8_t id, uint32_t value)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:43

Append a 4-byte big-endian attribute.

Fbool aliro_uwb_msg_builder_add_u64(struct aliro_uwb_msg_builder *builder, uint8_t id, uint64_t value)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:47

Append a 8-byte big-endian attribute.

Fbool aliro_uwb_msg_builder_add_u16_array(struct aliro_uwb_msg_builder *builder, uint8_t id, size_t count, const uint16_t *values)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:51

Append an attribute whose value is count big-endian 16-bit words.

Fbool aliro_uwb_msg_builder_add_bytes(struct aliro_uwb_msg_builder *builder, uint8_t id, size_t count, const uint8_t *values)

modules/woz_uwb/src/aliro/aliro_uwb_msg_builder.h:57

Append an attribute whose value is count raw bytes.