struct ctf_fs_ds_index_entry
{
- explicit ctf_fs_ds_index_entry(const bt2c::DataLen offsetParam,
- const bt2c::DataLen packetSizeParam) noexcept :
- offset(offsetParam),
- packetSize(packetSizeParam)
+ ctf_fs_ds_index_entry(const bt2c::CStringView pathParam, const bt2c::DataLen offsetParam,
+ const bt2c::DataLen packetSizeParam) noexcept :
+ path {pathParam},
+ offset {offsetParam}, packetSize {packetSizeParam}
{
}
/* Weak, belongs to ctf_fs_ds_file_info. */
- const char *path = nullptr;
+ const char *path;
/* Position of the packet from the beginning of the file. */
bt2c::DataLen offset;
{
using UP = std::unique_ptr<ctf_fs_ds_file_group>;
+ explicit ctf_fs_ds_file_group(struct ctf_fs_trace * const trace,
+ ctf_stream_class * const scParam, const uint64_t streamInstanceId,
+ ctf_fs_ds_index indexParam) noexcept :
+
+ sc {scParam},
+ stream_id(streamInstanceId), ctf_fs_trace {trace}, index {std::move(indexParam)}
+
+ {
+ }
+
+ /*
+ * Insert ds_file_info in the list of ds_file_infos at the right
+ * place to keep it sorted.
+ */
+ void insert_ds_file_info_sorted(ctf_fs_ds_file_info::UP ds_file_info);
+
/*
* This is an _ordered_ array of data stream file infos which
* belong to this group (a single stream instance).
ctf_fs_ds_file_info::UP ctf_fs_ds_file_info_create(const char *path, int64_t begin_ns);
-ctf_fs_ds_file_group::UP ctf_fs_ds_file_group_create(struct ctf_fs_trace *ctf_fs_trace,
- struct ctf_stream_class *sc,
- uint64_t stream_instance_id,
- ctf_fs_ds_index index);
-
/*
* Medium operations to iterate on a single ctf_fs_ds_file.
*