HawkTracer  0.9.0
core_events.h
Go to the documentation of this file.
1 #ifndef HAWKTRACER_CORE_EVENTS_H
2 #define HAWKTRACER_CORE_EVENTS_H
3 
5 
7 
8 HT_DECLARE_EVENT_KLASS(HT_EndiannessInfoEvent, HT_Event,
9  (INTEGER, uint8_t, endianness))
10 
11 HT_DECLARE_EVENT_KLASS(HT_EventKlassInfoEvent, HT_Event,
13  (STRING, const char*, event_klass_name),
14  (INTEGER, uint8_t, field_count))
15 HT_DECLARE_EVENT_KLASS(HT_EventKlassFieldInfoEvent, HT_Event,
16  (INTEGER, HT_EventKlassId, info_klass_id),
17  (STRING, const char*, field_type),
18  (STRING, const char*, field_name),
19  (INTEGER, uint64_t, size),
20  (INTEGER, uint8_t, data_type))
21 
23  (INTEGER, HT_DurationNs, duration),
24  (INTEGER, HT_ThreadId, thread_id))
25 #define HT_CALLSTACK_BASE_EVENT(event) ((HT_CallstackBaseEvent*)event)
26 
27 typedef uint64_t HT_CallstackEventLabel;
28 HT_DECLARE_EVENT_KLASS(HT_CallstackIntEvent, HT_CallstackBaseEvent,
29  (INTEGER, HT_CallstackEventLabel, label))
30 
31 HT_DECLARE_EVENT_KLASS(HT_CallstackStringEvent, HT_CallstackBaseEvent,
32  (STRING, const char*, label))
33 
34 HT_DECLARE_EVENT_KLASS(HT_StringMappingEvent, HT_Event,
35  (INTEGER, uint64_t, identifier),
36  (STRING, const char*, label))
37 
38 HT_DECLARE_EVENT_KLASS(HT_SystemInfoEvent, HT_Event,
39  (INTEGER, uint8_t, version_major),
40  (INTEGER, uint8_t, version_minor),
41  (INTEGER, uint8_t, version_patch))
42 
44 
45 #endif /* HAWKTRACER_CORE_EVENTS_H */
HT_DECLS_BEGIN STRING
Definition: core_events.h:11
#define HT_DECLS_END
Defines an end of C linkage block.
Definition: macros.h:17
const char label version_major
Definition: core_events.h:38
HT_DECLS_BEGIN HT_EventKlassId
Definition: core_events.h:11
HT_DECLS_BEGIN const char uint8_t
Definition: core_events.h:11
HT_DECLS_BEGIN info_klass_id
Definition: core_events.h:11
HT_CallstackBaseEvent
Definition: core_events.h:31
uint32_t HT_ThreadId
An unsigned integer used for thread identifiers.
Definition: base_types.h:24
HT_DECLS_BEGIN INTEGER
Definition: core_events.h:11
HT_DECLS_BEGIN const char event_klass_name
Definition: core_events.h:11
#define HT_DECLS_BEGIN
Defines a beginning of C linkage block.
Definition: macros.h:16
const char label version_minor
Definition: core_events.h:38
uint64_t HT_CallstackEventLabel
Definition: core_events.h:27
uint64_t HT_DurationNs
An unsigned integer used for representing duration in nanoseconds.
Definition: base_types.h:18
HT_DECLS_BEGIN HT_Event
Definition: core_events.h:11
HT_DECLS_BEGIN HT_DECLARE_EVENT_KLASS(HT_EndiannessInfoEvent, HT_Event,(INTEGER, uint8_t, endianness)) HT_DECLARE_EVENT_KLASS(HT_EventKlassInfoEvent
HT_DECLS_BEGIN const char field_count duration
Definition: core_events.h:22