LttvHooks *event_hooks;
struct bt_ctf_iter *iter;
GPtrArray *state_trace_handle_index;
+ gboolean has_precomputed_states;
+ TimeInterval time_span;
+ char *common_path;
};
+#define TRACE_NAME_SIZE 100
+
struct _LttvTrace {
// Trace id for babeltrace
LttvTraceset *traceset; /* container traceset */
LttvAttribute *a;
guint ref_count;
LttvTraceState *state;
+ char short_name[TRACE_NAME_SIZE];
+ char *full_path;
};
/* In babeltrace, the position concept is an iterator. */
struct _LttvTracesetPosition {
struct bt_ctf_iter *iter;
struct bt_iter_pos *bt_pos;
+ guint64 timestamp;
+ int cpu_id;
};
/* Tracesets may be added to, removed from and their content listed. */
void lttv_traceset_destroy(LttvTraceset *s);
+LttvHooks *lttv_traceset_get_hooks(LttvTraceset *s);
void lttv_traceset_add(LttvTraceset *s, LttvTrace *t);
void lttv_traceset_remove(LttvTraceset *s, unsigned i);
+int lttv_traceset_get_trace_index_from_event(LttvEvent *event);
+
+int lttv_traceset_get_trace_index_from_handle_id(LttvTraceset *ts, int handle_id);
+
/* An attributes table is attached to the set and to each trace in the set. */
LttvAttribute *lttv_traceset_attribute(LttvTraceset *s);
LttTime lttv_traceset_position_get_time(const LttvTracesetPosition *pos);
+LttTime lttv_traceset_get_current_time(const LttvTraceset *ts);
+
int lttv_traceset_position_compare(const LttvTracesetPosition *pos1, const LttvTracesetPosition *pos2);
+int lttv_traceset_position_time_compare(const LttvTracesetPosition *pos1,
+ const LttvTracesetPosition *pos2);
+int lttv_traceset_position_compare_current(const LttvTraceset *ts,
+ const LttvTracesetPosition *pos);
#endif // TRACESET_H