projects
/
lttv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add tracecontrol
[lttv.git]
/
ltt
/
branches
/
poly
/
ltt
/
event.h
diff --git
a/ltt/branches/poly/ltt/event.h
b/ltt/branches/poly/ltt/event.h
index 4cee97133a0106767817540f0b8791657c6c83e5..a7408b4d3a863934e8a7c7bdf91f17f709113be4 100644
(file)
--- a/
ltt/branches/poly/ltt/event.h
+++ b/
ltt/branches/poly/ltt/event.h
@@
-19,25
+19,31
@@
#ifndef EVENT_H
#define EVENT_H
#ifndef EVENT_H
#define EVENT_H
+#include <glib.h>
#include <ltt/ltt.h>
#include <ltt/ltt.h>
+#include <sys/types.h>
+
+LttEvent *ltt_event_new();
+
+void ltt_event_destroy(LttEvent *event);
/* Events and their content, including the raw data, are only valid
until reading another event from the same tracefile.
Indeed, since event reading is critical to the performance,
the memory associated with an event may be reused at each read. */
/* Events and their content, including the raw data, are only valid
until reading another event from the same tracefile.
Indeed, since event reading is critical to the performance,
the memory associated with an event may be reused at each read. */
-
/* Obtain the trace unique integer id associated with the type of
this event */
/* Obtain the trace unique integer id associated with the type of
this event */
-unsigned ltt_event_eventtype_id(LttEvent *e);
+unsigned ltt_event_eventtype_id(
const
LttEvent *e);
+unsigned ltt_event_facility_id(const LttEvent *e);
/* Facility and type for the event */
/* Facility and type for the event */
-LttFacility *ltt_event_facility(LttEvent *e);
+LttFacility *ltt_event_facility(
const
LttEvent *e);
-LttEventType *ltt_event_eventtype(LttEvent *e);
+LttEventType *ltt_event_eventtype(
const
LttEvent *e);
/* Root field for the event */
/* Root field for the event */
@@
-47,9
+53,9
@@
LttField *ltt_event_field(LttEvent *e);
/* Time and cycle count for the event */
/* Time and cycle count for the event */
-LttTime ltt_event_time(LttEvent *e);
+LttTime ltt_event_time(
const
LttEvent *e);
-LttCycleCount ltt_event_cycle_count(LttEvent *e);
+LttCycleCount ltt_event_cycle_count(
const
LttEvent *e);
/* Obtain the position of the event within the tracefile. This
/* Obtain the position of the event within the tracefile. This
@@
-63,12
+69,16
@@
void ltt_event_position(LttEvent *e, LttEventPosition *ep);
LttEventPosition * ltt_event_position_new();
LttEventPosition * ltt_event_position_new();
-void ltt_event_position_get(LttEventPosition *ep,
- unsigned *block_number, unsigned *index_in_block, LttTracefile ** tf);
+void ltt_event_position_get(LttEventPosition *ep, LttTracefile **tf,
+ guint *block, guint *offset, guint64 *tsc);
+
+gint ltt_event_position_compare(const LttEventPosition *ep1,
+ const LttEventPosition *ep2);
-void ltt_event_position_
set(LttEventPosition *ep
,
-
unsigned block_number, unsigned index_in_block
);
+void ltt_event_position_
copy(LttEventPosition *dest
,
+
const LttEventPosition *src
);
+LttTracefile *ltt_event_position_tracefile(LttEventPosition *ep);
/* CPU id of the event */
/* CPU id of the event */
@@
-85,7
+95,7
@@
void *ltt_event_data(LttEvent *e);
instance. This function returns the number of elements for an array or
sequence field in an event. */
instance. This function returns the number of elements for an array or
sequence field in an event. */
-
unsigned
ltt_event_field_element_number(LttEvent *e, LttField *f);
+
guint64
ltt_event_field_element_number(LttEvent *e, LttField *f);
/* Set the currently selected element for a sequence or array field. */
/* Set the currently selected element for a sequence or array field. */
@@
-103,13
+113,13
@@
unsigned ltt_event_field_union_member(LttEvent *e, LttField *f);
/* These functions extract data from an event after architecture specific
conversions. */
/* These functions extract data from an event after architecture specific
conversions. */
-
unsigned
ltt_event_get_unsigned(LttEvent *e, LttField *f);
+
guint32
ltt_event_get_unsigned(LttEvent *e, LttField *f);
-
int
ltt_event_get_int(LttEvent *e, LttField *f);
+
gint32
ltt_event_get_int(LttEvent *e, LttField *f);
-
unsigned long
ltt_event_get_long_unsigned(LttEvent *e, LttField *f);
+
guint64
ltt_event_get_long_unsigned(LttEvent *e, LttField *f);
-
long int
ltt_event_get_long_int(LttEvent *e, LttField *f);
+
gint64
ltt_event_get_long_int(LttEvent *e, LttField *f);
float ltt_event_get_float(LttEvent *e, LttField *f);
float ltt_event_get_float(LttEvent *e, LttField *f);
@@
-119,6
+129,13
@@
double ltt_event_get_double(LttEvent *e, LttField *f);
/* The string obtained is only valid until the next read from
the same tracefile. */
/* The string obtained is only valid until the next read from
the same tracefile. */
-char *ltt_event_get_string(LttEvent *e, LttField *f);
+gchar *ltt_event_get_string(LttEvent *e, LttField *f);
+
+size_t get_field_type_size(LttTracefile *tf,
+ LttEventType *event_type,
+ off_t offset_root, off_t offset_parent,
+ LttField *field, void *data);
+
+
#endif // EVENT_H
#endif // EVENT_H
This page took
0.023811 seconds
and
4
git commands to generate.