4 #include <lttv/event.h>
6 #include <babeltrace/ctf/events.h>
8 LttTime
lttv_event_get_timestamp(LttvEvent
*event
)
10 return ltt_time_from_uint64(bt_ctf_get_timestamp(event
->bt_event
));
13 //TODO ybrosseau find a way to return an error code
14 unsigned long lttv_event_get_long_unsigned(LttvEvent
*event
, const char* field
)
16 const struct definition
*scope
;
17 unsigned long timestamp
;
19 struct bt_ctf_event
*ctf_event
= event
->bt_event
;
21 timestamp
= bt_ctf_get_timestamp(ctf_event
);
22 if (timestamp
== -1ULL) {
25 //scope = bt_ctf_get_top_level_scope(ctf_event, BT_STREAM_PACKET_CONTEXT);
26 scope
= bt_ctf_get_top_level_scope(ctf_event
, BT_EVENT_FIELDS
);
27 if (bt_ctf_field_get_error()) {
30 data
= bt_ctf_get_uint64(bt_ctf_get_field(ctf_event
, scope
, field
));
31 if (bt_ctf_field_get_error()) {
39 char* lttv_event_get_string(LttvEvent
*event
, const char* field
)
41 const struct definition
*scope
;
42 unsigned long timestamp
;
44 struct bt_ctf_event
*ctf_event
= event
->bt_event
;
46 timestamp
= bt_ctf_get_timestamp(ctf_event
);
47 if (timestamp
== -1ULL) {
48 printf("ERROR: lttv_event_get_string - cannot read timestamps");
51 //scope = bt_ctf_get_top_level_scope(ctf_event, BT_STREAM_PACKET_CONTEXT);
52 scope
= bt_ctf_get_top_level_scope(ctf_event
, BT_EVENT_FIELDS
);
53 if (bt_ctf_field_get_error()) {
54 printf("ERROR: lttv_event_get_string - cannot get field scope");
57 data
= bt_ctf_get_char_array(bt_ctf_get_field(ctf_event
, scope
, field
));
58 if (bt_ctf_field_get_error()) {
59 // Try get_string if we fail on char_array
60 // TODO ybrosseau: properly detect right type
61 data
= bt_ctf_get_string(bt_ctf_get_field(ctf_event
, scope
, field
));
62 if (bt_ctf_field_get_error()) {
65 printf("ERROR: lttv_event_get_string - cannot get field data %s", field
);
76 long lttv_event_get_long(LttvEvent
*event
, const char* field
)
78 const struct definition
*scope
;
79 unsigned long timestamp
;
81 struct bt_ctf_event
*ctf_event
= event
->bt_event
;
83 timestamp
= bt_ctf_get_timestamp(ctf_event
);
84 if (timestamp
== -1ULL) {
87 scope
= bt_ctf_get_top_level_scope(ctf_event
, BT_EVENT_FIELDS
);
88 if (bt_ctf_field_get_error()) {
91 data
= bt_ctf_get_int64(bt_ctf_get_field(ctf_event
, scope
, field
));
92 if (bt_ctf_field_get_error()) {
99 unsigned int lttv_event_get_int_unsigned(LttvEvent *event, const char* field)
101 struct definition *scope;
102 unsigned long timestamp;
104 struct bt_ctf_event *ctf_event = event->bt_event;
106 timestamp = bt_ctf_get_timestamp(ctf_event);
107 if (timestamp == -1ULL) {
110 scope = bt_ctf_get_top_level_scope(ctf_event, BT_STREAM_PACKET_CONTEXT);
111 if (bt_ctf_field_get_error()) {
114 data = bt_ctf_get_char_array(bt_ctf_get_field(ctf_event, scope, field));
115 if (bt_ctf_field_get_error()) {
121 int lttv_event_get_int(LttvEvent *event, const char* field)
123 struct definition *scope;
124 unsigned long timestamp;
126 struct bt_ctf_event *ctf_event = event->bt_event;
128 timestamp = bt_ctf_get_timestamp(ctf_event);
129 if (timestamp == -1ULL) {
132 scope = bt_ctf_get_top_level_scope(ctf_event, BT_STREAM_PACKET_CONTEXT);
133 if (bt_ctf_field_get_error()) {
136 data = bt_ctf_get_char_array(bt_ctf_get_field(ctf_event, scope, field));
137 if (bt_ctf_field_get_error()) {
This page took 0.032777 seconds and 4 git commands to generate.