X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fctf%2Fmetadata.h;h=6c17b4102ad046424490d92e3534ec38841d648b;hb=ab4cf05887a402e53396db43b5958918d0d2d022;hp=5547480922ede2466ea78fac251caad80404797c;hpb=e1151715912eaec959682b3bc10be3ced6abe467;p=babeltrace.git diff --git a/include/babeltrace/ctf/metadata.h b/include/babeltrace/ctf/metadata.h index 55474809..6c17b410 100644 --- a/include/babeltrace/ctf/metadata.h +++ b/include/babeltrace/ctf/metadata.h @@ -46,18 +46,16 @@ struct ctf_event; struct ctf_trace { /* root scope */ - struct type_scope *root_type_scope; - /* root scope */ - struct definition_scope *root_definition_scope; + struct declaration_scope *root_declaration_scope; - struct type_scope *type_scope; - struct definition_scope *definition_scope; + struct declaration_scope *declaration_scope; GPtrArray *streams; /* Array of struct ctf_stream pointers*/ uint64_t major; uint64_t minor; uuid_t uuid; uint64_t word_size; + int byte_order; enum { /* Fields populated mask */ CTF_TRACE_major = (1U << 0), @@ -85,15 +83,21 @@ struct ctf_trace { struct ctf_stream { struct ctf_trace *trace; /* parent is lexical scope conaining the stream scope */ - struct type_scope *type_scope; - /* parent is trace scope */ + struct declaration_scope *declaration_scope; + /* innermost definition scope. to be used as parent of event. */ struct definition_scope *definition_scope; GPtrArray *events_by_id; /* Array of struct ctf_event pointers indexed by id */ GHashTable *event_quark_to_id; /* GQuark to numeric id */ + /* Declarations only used when parsing */ + struct declaration_struct *packet_context_decl; + struct declaration_struct *event_header_decl; + struct declaration_struct *event_context_decl; + + /* Definitions used afterward */ + struct definition_struct *packet_context; struct definition_struct *event_header; struct definition_struct *event_context; - struct definition_struct *packet_context; uint64_t stream_id; @@ -120,9 +124,13 @@ struct ctf_event { /* stream mapped by stream_id */ struct ctf_stream *stream; /* parent is lexical scope conaining the event scope */ - struct type_scope *type_scope; - /* parent is stream scope */ - struct definition_scope *definition_scope; + struct declaration_scope *declaration_scope; + + /* Declarations only used when parsing */ + struct declaration_struct *context_decl; + struct declaration_struct *fields_decl; + + /* Definitions used afterward */ struct definition_struct *context; struct definition_struct *fields;