X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=genevent-new%2Fparser.h;h=cf90b7a7814e4023a8db48c9a7aae08c27e6d04a;hb=212981b9a599532dc4fc790a654b10387eee9262;hp=e19dc93d528ddbaf267fa5af4974710ee28c8c37;hpb=47299663f9a2f077317b95f7e669e8373052364b;p=lttv.git diff --git a/genevent-new/parser.h b/genevent-new/parser.h index e19dc93d..cf90b7a7 100644 --- a/genevent-new/parser.h +++ b/genevent-new/parser.h @@ -101,24 +101,21 @@ 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_description; int already_printed; - sequence_t fields; // for structure - struct _type_descriptor *nested_type; // for array and sequence + sequence_t fields; // for structure, array and sequence int alignment; } type_descriptor_t; -/* Fields within types */ +/* Fields within types or events */ typedef struct _field{ char *name; char *description; @@ -144,6 +141,7 @@ typedef struct _facility { sequence_t events; sequence_t unnamed_types; table_t named_types; + unsigned int checksum; } facility_t; int getSizeindex(unsigned int value); @@ -158,11 +156,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 */