Tracepoint API namespacing '__tp_stringify'
[lttng-ust.git] / include / lttng / tracepoint-event.h
1 /*
2 * SPDX-License-Identifier: MIT
3 *
4 * Copyright (C) 2011 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
5 */
6
7 #include <lttng/ust-api-compat.h>
8
9
10 #if LTTNG_UST_COMPAT_API(0)
11 # if defined(TRACEPOINT_CREATE_PROBES) && !defined(LTTNG_UST_TRACEPOINT_CREATE_PROBES)
12 # define LTTNG_UST_TRACEPOINT_CREATE_PROBES
13 # endif
14 #endif /* #if LTTNG_UST_COMPAT_API(0) */
15
16 #ifdef LTTNG_UST_TRACEPOINT_CREATE_PROBES
17
18 #define lttng_ust__tp_stringify1(x) #x
19 #define lttng_ust__tp_stringify(x) lttng_ust__tp_stringify1(x)
20
21 #undef LTTNG_UST_TRACEPOINT_EVENT_INSTANCE
22 #define LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(_provider, _template, _name, _args)
23
24 #undef LTTNG_UST_TRACEPOINT_EVENT
25 #define LTTNG_UST_TRACEPOINT_EVENT(_provider, _name, _args, _fields) \
26 LTTNG_UST_TRACEPOINT_EVENT_CLASS(_provider, _name, LTTNG_UST__TP_PARAMS(_args), \
27 LTTNG_UST__TP_PARAMS(_fields)) \
28 LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(_provider, _name, _name, \
29 LTTNG_UST__TP_PARAMS(_args))
30
31
32 #undef LTTNG_UST_TRACEPOINT_CREATE_PROBES
33 #if LTTNG_UST_COMPAT_API(0)
34 #undef TRACEPOINT_CREATE_PROBES
35 #endif
36
37 #define LTTNG_UST_TRACEPOINT_HEADER_MULTI_READ
38 #if LTTNG_UST_COMPAT_API(0)
39 #define TRACEPOINT_HEADER_MULTI_READ
40 #endif
41
42 #if LTTNG_UST_COMPAT_API(0)
43 # if defined(TRACEPOINT_INCLUDE) && !defined(LTTNG_UST_TRACEPOINT_INCLUDE)
44 # define LTTNG_UST_TRACEPOINT_INCLUDE TRACEPOINT_INCLUDE
45 # endif
46 #endif /* #if LTTNG_UST_COMPAT_API(0) */
47
48 #if LTTNG_UST_COMPAT_API(0)
49 # if defined(TRACEPOINT_PROVIDER) && !defined(LTTNG_UST_TRACEPOINT_PROVIDER)
50 # define LTTNG_UST_TRACEPOINT_PROVIDER TRACEPOINT_PROVIDER
51 # endif
52 #endif /* #if LTTNG_UST_COMPAT_API(0) */
53
54 #include LTTNG_UST_TRACEPOINT_INCLUDE
55
56 #include <lttng/ust-tracepoint-event.h>
57
58 #undef LTTNG_UST_TRACEPOINT_HEADER_MULTI_READ
59 #if LTTNG_UST_COMPAT_API(0)
60 #undef TRACEPOINT_HEADER_MULTI_READ
61 #endif
62
63 #undef LTTNG_UST_TRACEPOINT_INCLUDE
64 #if LTTNG_UST_COMPAT_API(0)
65 # undef TRACEPOINT_INCLUDE
66 #endif
67
68 #define LTTNG_UST_TRACEPOINT_CREATE_PROBES
69
70 /*
71 * Put back definitions to the state they were when defined by
72 * tracepoint.h.
73 */
74 #undef LTTNG_UST_TP_ARGS
75 #define LTTNG_UST_TP_ARGS(...) __VA_ARGS__
76
77 #undef LTTNG_UST_TRACEPOINT_EVENT
78 #define LTTNG_UST_TRACEPOINT_EVENT(provider, name, args, fields) \
79 LTTNG_UST__DECLARE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args)) \
80 LTTNG_UST__DEFINE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args))
81
82 #undef LTTNG_UST_TRACEPOINT_EVENT_CLASS
83 #define LTTNG_UST_TRACEPOINT_EVENT_CLASS(provider, name, args, fields)
84
85 #undef LTTNG_UST_TRACEPOINT_EVENT_INSTANCE
86 #define LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(provider, _template, name, args) \
87 LTTNG_UST__DECLARE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args)) \
88 LTTNG_UST__DEFINE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args))
89
90 #undef LTTNG_UST_TRACEPOINT_LOGLEVEL
91 #define LTTNG_UST_TRACEPOINT_LOGLEVEL(provider, name, loglevel)
92
93 #undef LTTNG_UST_TRACEPOINT_MODEL_EMF_URI
94 #define LTTNG_UST_TRACEPOINT_MODEL_EMF_URI(provider, name, uri)
95
96 #endif /* LTTNG_UST_TRACEPOINT_CREATE_PROBES */
This page took 0.030546 seconds and 4 git commands to generate.