Add new udafs and RMR support to gsprintconsole_ves
[com/gs-lite.git] / include / packet.h
index 8f91891..f6d907a 100644 (file)
@@ -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;
     
 };