21#ifndef PROTOCORE_WAVE_H
22#define PROTOCORE_WAVE_H
26#if PROTOCORE_ENABLE_WAVE
31#define WSMP_VERSION 0x03
32#define WAVE_16092_VERSION 0x03
33#define WAVE_16092_UNSECURED 0x00
34#define WAVE_16092_SIGNED 0x01
36#define WAVE_PSID_BSM 0x20
37#define WAVE_PSID_SPAT 0x8002
38#define WAVE_PSID_MAP 0x8003
47size_t protocore_wave_encode_psid(uint32_t psid, uint8_t *out,
size_t cap);
50size_t protocore_wave_decode_psid(
const uint8_t *in,
size_t len, uint32_t *psid);
59size_t protocore_wsmp_build(uint32_t psid,
const uint8_t *payload,
size_t payload_len, uint8_t *out,
size_t cap);
65 const uint8_t *payload;
70proto_bool protocore_wsmp_parse(
const uint8_t *frame,
size_t len, WsmpFrame *out);
77size_t protocore_wave_1609dot2_wrap(uint8_t content_type,
const uint8_t *payload,
size_t payload_len, uint8_t *out,
#define PROTOCORE_BEGIN_DECLS
Give a header's declarations C linkage, so their symbol names carry no parameter types.
_Bool proto_bool
The truth value.
#define PROTOCORE_END_DECLS