X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=plugins%2Fctf%2Ffs-src%2Fdata-stream-file.h;h=feeef675257f1f23bc4762b7bbfc1237bd4ac6f8;hb=3fadfbc0c91f82c46bd36e6e0657ea93570c9db1;hp=05c1dc342c6f2b5a22b7e0e25e8c95ebade69501;hpb=416937235b48b55387c6074adc6a0dd59a5c76f4;p=babeltrace.git diff --git a/plugins/ctf/fs-src/data-stream-file.h b/plugins/ctf/fs-src/data-stream-file.h index 05c1dc34..feeef675 100644 --- a/plugins/ctf/fs-src/data-stream-file.h +++ b/plugins/ctf/fs-src/data-stream-file.h @@ -26,8 +26,8 @@ #include #include #include -#include -#include +#include +#include #include "../common/msg-iter/msg-iter.h" #include "lttng-index.h" @@ -37,46 +37,7 @@ struct ctf_fs_file; struct ctf_fs_trace; struct ctf_fs_ds_file; -struct ctf_fs_ds_index_entry { - /* Position, in bytes, of the packet from the beginning of the file. */ - uint64_t offset; - - /* Size of the packet, in bytes. */ - uint64_t packet_size; - - /* - * Extracted from the packet context, relative to the respective fields' - * mapped clock classes (in cycles). - */ - uint64_t timestamp_begin, timestamp_end; - - /* - * Converted from the packet context, relative to the trace's EPOCH - * (in ns since EPOCH). - */ - int64_t timestamp_begin_ns, timestamp_end_ns; -}; - -struct ctf_fs_ds_index { - /* Array of struct ctf_fs_fd_index_entry. */ - GArray *entries; -}; - struct ctf_fs_ds_file_info { - /* - * Owned by this. May be NULL. - * - * A stream cannot be assumed to be indexed as the indexing might have - * been skipped. Moreover, the index's fields may not all be available - * depending on the producer (e.g. timestamp_begin/end are not - * mandatory). - * - * FIXME In such cases (missing fields), the indexing is aborted as - * no the index entries don't have a concept of fields being present - * or not. - */ - struct ctf_fs_ds_index *index; - /* Owned by this. */ GString *path; @@ -136,7 +97,7 @@ BT_HIDDEN void ctf_fs_ds_file_destroy(struct ctf_fs_ds_file *stream); BT_HIDDEN -bt_message_iterator_status ctf_fs_ds_file_next( +bt_self_message_iterator_status ctf_fs_ds_file_next( struct ctf_fs_ds_file *ds_file, bt_message **msg); @@ -144,6 +105,9 @@ BT_HIDDEN struct ctf_fs_ds_index *ctf_fs_ds_file_build_index( struct ctf_fs_ds_file *ds_file); +BT_HIDDEN +struct ctf_fs_ds_index *ctf_fs_ds_index_create(); + BT_HIDDEN void ctf_fs_ds_index_destroy(struct ctf_fs_ds_index *index);