X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=include%2Fpacket.h;h=f6d907a541456151a21c75634c003b477550fdce;hb=87cd81502f23b63c980bbce93b6159379299c782;hp=8f9189107289a69327b63706106653674703715c;hpb=c9783d8ea8b85d810483559e50dbf2297109e349;p=com%2Fgs-lite.git diff --git a/include/packet.h b/include/packet.h index 8f91891..f6d907a 100644 --- a/include/packet.h +++ b/include/packet.h @@ -27,6 +27,7 @@ struct ipv6_str{ #define PTYPE_CSV 1 #define PTYPE_GDAT 2 +#define PTYPE_STRUCT 3 #define CSVELEMENTS 1000 #define GDATELEMENTS 1000 @@ -34,13 +35,7 @@ struct ipv6_str{ struct csv { gs_uint32_t numberfields; gs_sp_t fields[CSVELEMENTS]; -}; - -struct csv2 { // SSE accelerated CSV processor - gs_uint32_t numberfields; - gs_sp_t fields[CSVELEMENTS]; - gs_uint32_t field_lens[CSVELEMENTS]; - gs_uint8_t parsed[CSVELEMENTS]; + gs_uint32_t field_lens[CSVELEMENTS]; }; struct gdat { @@ -50,13 +45,19 @@ struct gdat { gs_uint8_t data[MAXTUPLESZ]; }; +struct packed { + void *values; + gs_sp_t *existence_bitmap; +}; + struct packet { gs_uint32_t systemTime; gs_uint32_t ptype; /* type of record e.g. PTYPE_CSV */ + gs_schemahandle_t schema; union { struct csv csv; /* content of CSV record being processed */ - struct csv2 csv2; struct gdat gdat; + struct packed packed; } record; };