X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fltt%2Ftrace.h;h=f6f20ab667f51e763ecb0784cd1c232cf28ecc3e;hb=cc544c4d0506c9149185cedccc7a857034b5ac29;hp=85dfe866506c4aa00688b4f9dbfbfa948b3fa340;hpb=dd3a6d3981f13150b4262a418f5ee00c715eda71;p=lttv.git diff --git a/ltt/branches/poly/ltt/trace.h b/ltt/branches/poly/ltt/trace.h index 85dfe866..f6f20ab6 100644 --- a/ltt/branches/poly/ltt/trace.h +++ b/ltt/branches/poly/ltt/trace.h @@ -21,6 +21,36 @@ #define TRACE_H #include +#include +#include + +struct LttTrace { + GQuark pathname; //the pathname of the trace + //LttSystemDescription * system_description;//system description + + guint num_cpu; + + guint32 arch_type; + guint32 arch_variant; + guint8 arch_size; + guint8 ltt_major_version; + guint8 ltt_minor_version; + guint8 flight_recorder; + guint32 freq_scale; + uint64_t start_freq; + uint64_t start_tsc; + uint64_t start_monotonic; + LttTime start_time; + LttTime start_time_from_tsc; + + GData *tracefiles; //tracefiles groups + /* Support for markers */ + GArray *markers; //indexed by marker ID + GHashTable *markers_hash; //indexed by name hash + GHashTable *markers_format_hash; //indexed by name hash +}; + + extern GQuark LTT_FACILITY_NAME_HEARTBEAT, LTT_EVENT_NAME_HEARTBEAT, @@ -59,18 +89,18 @@ LttSystemDescription *ltt_trace_system_description(LttTrace *t); versions of a facility (same name, different checksum) have consecutive positions. */ -unsigned ltt_trace_facility_number(LttTrace *t); +//unsigned ltt_trace_facility_number(LttTrace *t); -LttFacility * ltt_trace_facility_by_id(LttTrace * trace, guint8 id); +//LttFacility * ltt_trace_facility_by_id(LttTrace * trace, guint8 id); /* Returns an array of indexes (guint) that matches the facility name */ -GArray *ltt_trace_facility_get_by_name(LttTrace *t, GQuark name); +//GArray *ltt_trace_facility_get_by_name(LttTrace *t, GQuark name); /* Functions to discover all the event types in the trace */ -unsigned ltt_trace_eventtype_number(LttTrace *t); +//unsigned ltt_trace_eventtype_number(LttTrace *t); -LttEventType *ltt_trace_eventtype_get(LttTrace *t, unsigned i); +//LttEventType *ltt_trace_eventtype_get(LttTrace *t, unsigned i); /* Get the start time and end time of the trace */ @@ -177,12 +207,12 @@ 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); +//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); +//gint check_fields_compatibility(LttEventType *event_type1, +// LttEventType *event_type2, +// LttField *field1, LttField *field2); gint64 ltt_get_int(gboolean reverse_byte_order, gint size, void *data); @@ -190,4 +220,7 @@ guint64 ltt_get_uint(gboolean reverse_byte_order, gint size, void *data); LttTime ltt_interpolate_time_from_tsc(LttTracefile *tf, guint64 tsc); +/* Set to enable event debugging output */ +void ltt_event_debug(int state); + #endif // TRACE_H