X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fltt%2Ftrace.h;h=0b63c9378aa6193eb966c44a1db97beb8818bf38;hb=fcc08e1e49ca66dffe10ce9d27216421482663f0;hp=970e291833d5fd8d1a169c9bb770008d5838595c;hpb=d3d34f492bdbd2326ff345d8d1f84998df19f459;p=lttv.git diff --git a/ltt/branches/poly/ltt/trace.h b/ltt/branches/poly/ltt/trace.h index 970e2918..0b63c937 100644 --- a/ltt/branches/poly/ltt/trace.h +++ b/ltt/branches/poly/ltt/trace.h @@ -1,5 +1,6 @@ /* This file is part of the Linux Trace Toolkit trace reading library * Copyright (C) 2003-2004 Michel Dagenais + * 2005 Mathieu Desnoyers * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -43,10 +44,11 @@ LttTrace *ltt_trace_open(const gchar *pathname); */ LttTrace *ltt_trace_copy(LttTrace *self); -GQuark ltt_trace_name(LttTrace *t); +GQuark ltt_trace_name(const LttTrace *t); void ltt_trace_close(LttTrace *t); +guint ltt_trace_get_num_cpu(LttTrace *t); LttSystemDescription *ltt_trace_system_description(LttTrace *t); @@ -79,11 +81,18 @@ void ltt_trace_time_span_get(LttTrace *t, LttTime *start, LttTime *end); /* Get the name of a tracefile */ -GQuark ltt_tracefile_name(LttTracefile *tf); +GQuark ltt_tracefile_name(const LttTracefile *tf); +GQuark ltt_tracefile_long_name(const LttTracefile *tf); /* get the cpu number of the tracefile */ -guint ltt_tracefile_num(LttTracefile *tf); +guint ltt_tracefile_cpu(LttTracefile *tf); + +/* For usertrace */ +guint ltt_tracefile_tid(LttTracefile *tf); +guint ltt_tracefile_pgid(LttTracefile *tf); +guint64 ltt_tracefile_creation(LttTracefile *tf); + LttTrace *ltt_tracefile_get_trace(LttTracefile *tf); @@ -139,9 +148,13 @@ gchar * ltt_trace_system_description_domain_name (LttSystemDescription * s); gchar * ltt_trace_system_description_description (LttSystemDescription * s); -/* get the start time of the trace */ +/* get the NTP start time of the trace */ + +LttTime ltt_trace_start_time(LttTrace *t); + +/* get the monotonic start time of the trace */ -LttTime ltt_trace_system_description_trace_start_time(LttSystemDescription *s); +LttTime ltt_trace_start_time_monotonic(LttTrace *t); /* copy tracefile info over another. Used for sync. */ LttTracefile *ltt_tracefile_new(); @@ -150,6 +163,7 @@ void ltt_tracefile_copy(LttTracefile *dest, const LttTracefile *src); void get_absolute_pathname(const gchar *pathname, gchar * abs_pathname); +/* May return a NULL tracefile group */ GData **ltt_trace_get_tracefiles_groups(LttTrace *trace); typedef void (*ForEachTraceFileFunc)(LttTracefile *tf, gpointer func_args); @@ -171,4 +185,10 @@ 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); + +guint64 ltt_get_uint(gboolean reverse_byte_order, gint size, void *data); + +LttTime ltt_interpolate_time_from_tsc(LttTracefile *tf, guint64 tsc); + #endif // TRACE_H