Infuse-IoT SDK API 0.0.1
A Scalable Open Source RTOS
|
TDF payload generation. More...
#include <stdint.h>
#include <zephyr/net_buf.h>
Go to the source code of this file.
Data Structures | |
struct | tdf_buffer_state |
struct | tdf_parsed |
Macros | |
#define | TDF_TYPE(tdf_id) |
Get type associated with a given TDF ID. | |
#define | TDF_ADD(state, tdf_id, tdf_num, base_time, period, data) |
Type safe wrapper around tdf_add. | |
Enumerations | |
enum | tdf_data_format { TDF_DATA_FORMAT_SINGLE , TDF_DATA_FORMAT_TIME_ARRAY , TDF_DATA_FORMAT_IDX_ARRAY , TDF_DATA_FORMAT_DIFF_ARRAY_16_8 , TDF_DATA_FORMAT_DIFF_ARRAY_32_8 , TDF_DATA_FORMAT_DIFF_ARRAY_32_16 , TDF_DATA_FORMAT_INVALID , TDF_DATA_FORMAT_DIFF_PRECOMPUTED = 0x80 } |
enum | tdf_flags { TDF_TIMESTAMP_NONE = 0x0000 , TDF_TIMESTAMP_ABSOLUTE = 0x4000 , TDF_TIMESTAMP_RELATIVE = 0x8000 , TDF_TIMESTAMP_EXTENDED_RELATIVE = 0xC000 , TDF_ARRAY_NONE = 0x0000 , TDF_ARRAY_TIME = 0x1000 , TDF_ARRAY_DIFF = 0x2000 , TDF_ARRAY_IDX = 0x3000 , TDF_FLAGS_MASK = 0xF000 , TDF_TIMESTAMP_MASK = 0xC000 , TDF_ARRAY_MASK = 0x3000 , TDF_ID_MASK = 0x0FFF } |
Functions | |
static void | tdf_buffer_state_reset (struct tdf_buffer_state *state) |
Reset a tdf_buffer_state struct. | |
int | tdf_add_core (struct tdf_buffer_state *state, uint16_t tdf_id, uint8_t tdf_len, uint8_t tdf_num, uint64_t time, uint32_t idx_period, const void *data, enum tdf_data_format format) |
Add TDFs to memory buffer with an explicit format. | |
static int | tdf_add (struct tdf_buffer_state *state, uint16_t tdf_id, uint8_t tdf_len, uint8_t tdf_num, uint64_t time, uint32_t period, const void *data) |
Add TDFs to memory buffer. | |
static void | tdf_parse_start (struct tdf_buffer_state *state, void *data, size_t size) |
Initialise TDF parsing state. | |
int | tdf_parse (struct tdf_buffer_state *state, struct tdf_parsed *parsed) |
Parse the next TDF from a memory buffer. | |
static int | tdf_parse_find_in_buf (void *data, size_t size, uint16_t tdf_id, struct tdf_parsed *parsed) |
Find the first instance of a specific TDF in a memory buffer. | |
int | tdf_parse_diff_reconstruct (const struct tdf_parsed *parsed, void *output, uint8_t idx) |
Reconstruct the original TDF from a parsed TDF_ARRAY_DIFF. | |
TDF payload generation.
SPDX-License-Identifier: FSL-1.1-ALv2
Tagged Data Format payload generation. Evolution of the data logging format described in: https://doi.org/10.1007/978-3-319-03071-5_2