2 * Marker support header.
4 * Mathieu Desnoyers, Auguest 2007
9 #include <ltt/compiler.h>
14 unsigned long size
; /* size if known statically, else 0 */
18 MARKER_ID_SET_MARKER_ID
= 0, /* Static IDs available (range 0-7) */
19 MARKER_ID_SET_MARKER_FORMAT
,
20 MARKER_ID_HEARTBEAT_32
,
21 MARKER_ID_HEARTBEAT_64
,
22 MARKER_ID_COMPACT
, /* Compact IDs (range: 8-127) */
23 MARKER_ID_DYNAMIC
, /* Dynamic IDs (range: 128-65535) */
26 static inline uint16_t marker_get_id_from_info(LttTrace
*trace
,
27 struct marker_info
*info
)
29 return ((unsigned long)info
- (unsigned long)trace
->markers
->data
)
30 / sizeof(struct marker_info
);
33 static inline struct marker_info
*marker_get_info_from_id(LttTrace
*trace
,
36 if (unlikely(trace
->markers
->len
< id
))
38 return &g_array_index(trace
->markers
, struct marker_info
, id
);
41 int marker_format_event(LttTrace
*trace
, const char *name
, const char *format
);
42 int marker_id_event(LttTrace
*trace
, const char *name
, uint16_t id
);
43 int allocate_marker_data(LttTrace
*trace
);
44 int destroy_marker_data(LttTrace
*trace
);