24#define PARSER_BUF_SIZE 180
38 void* (*get_parsers)(void);
40 void* (*get_decoder)(void);
int parser_delete(struct parser *parser)
Parser instance deletion.
int parser_get_payload(struct parser *parser, char *buf, uint8_t buf_size)
Get the payload.
#define PARSER_BUF_SIZE
Definition: parser.h:24
int(* parser_module)(struct parser *parser, uint8_t *buf)
Definition: parser.h:29
int parser_get_header(struct parser *parser, void *header)
Get the header.
int parser_process_str(struct parser *parser, const char *data)
Parse ASCII formatted hexadecimal string.
int parser_create(struct parser *parser, struct parser_api *api)
Parser instance creation.
int(* get_header)(struct parser *parser, void *header)
Function type for getting header information.
Definition: parser.h:44
uint32_t(* data_size)(void)
Function type for getting data size.
Definition: parser.h:36
int(* get_parser_count)(void)
Function type for getting number of sub parsers.
Definition: parser.h:42
Set of parser functions needed for parser framework to operate.
Definition: parser.h:34
void * data
Data structure to hold the parsed information.
Definition: parser.h:71
uint8_t payload_buf_size
Payload output buffer size.
Definition: parser.h:66
uint8_t buf[180]
Parser data buffer that is processed.
Definition: parser.h:59
struct parser_api * api
Functions defining the functionality of this specific parser.
Definition: parser.h:74
uint8_t payload_pos
Index to the start of the payload within buf.
Definition: parser.h:68
uint8_t * payload
Payload output buffer that is processed.
Definition: parser.h:64
uint16_t buf_size
Size of the actual data in buf.
Definition: parser.h:61
uint8_t buf_pos
Iterator type of state information on where the parsing is proceeding.
Definition: parser.h:57
Set of parser variables needed for parser framework to operate.
Definition: parser.h:55