When a trace is closed, all the associated facilities, types and fields
are released as well. */
-LttTrace *ltt_trace_open(char *pathname);
+LttTrace *ltt_trace_open(const char *pathname);
+
+/* copy reopens a trace */
+LttTrace *ltt_trace_copy(LttTrace *self);
void ltt_trace_close(LttTrace *t);
LttTracefile *ltt_trace_per_cpu_tracefile_get(LttTrace *t, unsigned i);
+/* Get the start time and end time of the trace */
+
+void ltt_trace_time_span_get(LttTrace *t, LttTime *start, LttTime *end);
+
+
/* Get the name of a tracefile */
char *ltt_tracefile_name(LttTracefile *tf);
+/* Get the number of blocks in the tracefile */
+
+unsigned ltt_tracefile_block_number(LttTracefile *tf);
+
+
/* Seek to the first event of the trace with time larger or equal to time */
void ltt_tracefile_seek_time(LttTracefile *t, LttTime time);
+/* Seek to the first event with position equal or larger to ep */
+
+void ltt_tracefile_seek_position(LttTracefile *t,
+ LttEventPosition *ep);
/* Read the next event */