X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=include%2Fbabeltrace%2Fctf%2Fmetadata.h;h=e985ee5f034ebae3d7e6fc149c0fcd6e4bf74e50;hp=622ed7b63356a5695c6755c0dae261994fd54979;hb=01c76b246be85b5d9c8e99813950fb194c9f714f;hpb=c054553dac076f91196b372fa19efaf2adc4e4f9 diff --git a/include/babeltrace/ctf/metadata.h b/include/babeltrace/ctf/metadata.h index 622ed7b6..e985ee5f 100644 --- a/include/babeltrace/ctf/metadata.h +++ b/include/babeltrace/ctf/metadata.h @@ -20,26 +20,36 @@ */ #include +#include +#include +#include +#include +#include +#include +#include #include -struct ctf_trace; -struct ctf_stream; -struct ctf_event; +#define CTF_MAGIC 0xC1FC1FC1 +#define TSDL_MAGIC 0x75D11D57 -struct ctf_trace { - struct declaration_scope *scope; +struct ctf_file_stream { + struct ctf_stream parent; + struct ctf_stream_pos pos; /* current stream position */ }; -struct ctf_stream { - struct declaration_scope *scope; - GArray *events_by_id; /* Array of struct ctf_event indexed by id */ - GHashTable *event_quark_to_id; /* GQuark to numeric id */ -}; - - -struct ctf_event { - struct declaration_scope *scope; - GQuark qname; +#define HEADER_END char end_field +#define header_sizeof(type) offsetof(typeof(type), end_field) + +struct metadata_packet_header { + uint32_t magic; /* 0x75D11D57 */ + uint8_t uuid[16]; /* Unique Universal Identifier */ + uint32_t checksum; /* 0 if unused */ + uint32_t content_size; /* in bits */ + uint32_t packet_size; /* in bits */ + uint8_t compression_scheme; /* 0 if unused */ + uint8_t encryption_scheme; /* 0 if unused */ + uint8_t checksum_scheme; /* 0 if unused */ + HEADER_END; }; #endif /* _BABELTRACE_CTF_METADATA_H */