LTTV 0.8.14
[lttv.git] / genevent-new / parser.h
index 588790989895417e8e483487873a983a24dc4342..5a4c5b02cb1e41fd884be1de3de633508d9a45d6 100644 (file)
@@ -101,25 +101,22 @@ typedef enum _data_type {
   NONE
 } data_type_t;
 
-/* Event type descriptors */
-
 typedef struct _type_descriptor {
   char * type_name; //used for named type
   data_type_t type;
   char *fmt;
-  unsigned long long size;
+  size_t size;
   sequence_t labels; // for enumeration
+  sequence_t labels_values; // for enumeration
        sequence_t labels_description;
        int     already_printed;
-  sequence_t fields; // for structure
-  struct _type_descriptor *nested_type; // for array and sequence 
-       struct _type_descriptor *length_type; // for sequence
-  int alignment;
+  sequence_t fields; // for structure, array and sequence (field_t type)
+  int  custom_write;  /* Should we use a custom write function ? */
 } type_descriptor_t;
 
 
-/* Fields within types */
 
+/* Fields within types or events */
 typedef struct _field{
   char *name;
   char *description;
@@ -141,10 +138,12 @@ typedef struct _event {
 typedef struct _facility {
   char * name;
        char * capname;
+       char * arch;
   char * description;
   sequence_t events;
-  sequence_t unnamed_types;
+  sequence_t unnamed_types; //FIXME : remove
   table_t named_types;
+       unsigned int checksum;
 } facility_t;
 
 int getSizeindex(unsigned int value);
@@ -159,11 +158,13 @@ void parseTypeDefinition(parse_file_t *in,
 type_descriptor_t *parseType(parse_file_t *in,
     type_descriptor_t *t, sequence_t * unnamed_types, table_t * named_types);
 void parseFields(parse_file_t *in, field_t *f,
-    sequence_t * unnamed_types, table_t * named_types);
+    sequence_t * unnamed_types,
+               table_t * named_types,
+               int tag);
 void checkNamedTypesImplemented(table_t * namedTypes);
 type_descriptor_t * find_named_type(char *name, table_t * named_types);
 void generateChecksum(char * facName,
-    unsigned long * checksum, sequence_t * events);
+    unsigned int * checksum, sequence_t * events);
 
 
 /* get attributes */
This page took 0.051989 seconds and 4 git commands to generate.