struct ctf_stream_definition {
struct ctf_stream_declaration *stream_class;
- uint64_t timestamp; /* Current timestamp, in ns */
+ uint64_t real_timestamp; /* Current timestamp, in ns */
+ uint64_t cycles_timestamp; /* Current timestamp, in cycles */
uint64_t event_id; /* Current event ID */
int has_timestamp;
uint64_t stream_id;
- int consumed; /* Last packet used by caller */
struct definition_struct *trace_packet_header;
struct definition_struct *stream_packet_context;
struct ctf_clock *current_clock;
/* Event discarded information */
- uint32_t events_discarded;
- uint64_t prev_timestamp; /* Last event */
- uint64_t prev_timestamp_end; /* End-of-packet timestamp */
+ uint64_t events_discarded;
+ uint64_t prev_real_timestamp; /* Start-of-last-packet timestamp in ns */
+ uint64_t prev_real_timestamp_end; /* End-of-last-packet timestamp in ns */
+ uint64_t prev_cycles_timestamp; /* Start-of-last-packet timestamp in cycles */
+ uint64_t prev_cycles_timestamp_end; /* End-of-last-packet timestamp in cycles */
};
struct ctf_event_definition {
/* All strings below: "" if unset. */
char procname[TRACER_ENV_LEN];
+ char hostname[TRACER_ENV_LEN];
char domain[TRACER_ENV_LEN];
char sysname[TRACER_ENV_LEN];
char release[TRACER_ENV_LEN];
GHashTable *clocks;
struct ctf_clock *single_clock; /* currently supports only one clock */
struct trace_collection *collection; /* Container of this trace */
+ GPtrArray *event_declarations; /* Array of all the struct bt_ctf_event_decl */
struct declaration_struct *packet_header_decl;
uint64_t id; /* Numeric identifier within the stream */
uint64_t stream_id;
int loglevel;
+ GQuark model_emf_uri;
enum { /* Fields populated mask */
CTF_EVENT_name = (1 << 0),
CTF_EVENT_id = (1 << 1),
CTF_EVENT_stream_id = (1 << 2),
CTF_EVENT_loglevel = (1 << 4),
+ CTF_EVENT_model_emf_uri = (1 << 5),
} field_mask;
};