X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fltt%2Ftrace.h;h=e9b0ec7cfb17be00df7331aca2b98753c5f7a51f;hb=3865ea0940b718a7832b813a790f287140233efc;hp=80258a78725c3c41fab886db1a665c88129e3e49;hpb=3aee1200b100fe8063661fd2d8eaa5fbbfc1977f;p=lttv.git diff --git a/ltt/branches/poly/ltt/trace.h b/ltt/branches/poly/ltt/trace.h index 80258a78..e9b0ec7c 100644 --- a/ltt/branches/poly/ltt/trace.h +++ b/ltt/branches/poly/ltt/trace.h @@ -21,7 +21,6 @@ #include - extern GQuark LTT_FACILITY_NAME_HEARTBEAT, LTT_EVENT_NAME_HEARTBEAT; @@ -63,14 +62,8 @@ LttFacility *ltt_trace_facility_get(LttTrace *t, unsigned i); LttFacility * ltt_trace_facility_by_id(LttTrace * trace, guint8 id); -/* Look for a facility by name. It returns the number of facilities found - and sets the position argument to the first found. Returning 0, the named - facility is unknown, returning 1, the named facility is at the specified - position, returning n, the facilities are from position to - position + n - 1. */ - -unsigned ltt_trace_facility_find(LttTrace *t, gchar *name, unsigned *position); - +/* Returns an array of indexes (guint) that matches the facility name */ +GArray *ltt_trace_facility_get_by_name(LttTrace *t, GQuark name); /* Functions to discover all the event types in the trace */ @@ -112,6 +105,9 @@ int ltt_tracefile_read_seek(LttTracefile *t); int ltt_tracefile_read_update_event(LttTracefile *t); int ltt_tracefile_read_op(LttTracefile *t); +/* Get the current event of the tracefile : valid until the next read */ +LttEvent *ltt_tracefile_get_event(LttTracefile *tf); + /* open tracefile */ gint ltt_tracefile_open(LttTrace *t, gchar * fileName, LttTracefile *tf); @@ -149,6 +145,25 @@ void ltt_tracefile_copy(LttTracefile *dest, const LttTracefile *src); void get_absolute_pathname(const gchar *pathname, gchar * abs_pathname); +GData **ltt_trace_get_tracefiles_groups(LttTrace *trace); + +typedef void (*ForEachTraceFileFunc)(LttTracefile *tf, gpointer func_args); + +struct compute_tracefile_group_args { + ForEachTraceFileFunc func; + gpointer func_args; +}; + + +void compute_tracefile_group(GQuark key_id, + GArray *group, + struct compute_tracefile_group_args *args); + +LttFacility *ltt_trace_get_facility_by_num(LttTrace *t, guint num); + +gint check_fields_compatibility(LttEventType *event_type1, + LttEventType *event_type2, + LttField *field1, LttField *field2); #endif // TRACE_H