Refactoring: tracepoint: allow explicit tracepoint instance provider name
[lttng-ust.git] / include / lttng / tracepoint-event.h
index 74957750d11e2c69210c2aa033617ffbfac3ef8f..4c072ca2718754bf1781f766a943ef1d9bc3bb78 100644 (file)
@@ -4,34 +4,81 @@
  * Copyright (C) 2011 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
  */
 
-#ifdef TRACEPOINT_CREATE_PROBES
+#include <lttng/ust-api-compat.h>
 
-#define __tp_stringify1(x)     #x
-#define __tp_stringify(x)      __tp_stringify1(x)
+
+#if LTTNG_UST_COMPAT_API(0)
+# if defined(TRACEPOINT_CREATE_PROBES) && !defined(LTTNG_UST_TRACEPOINT_CREATE_PROBES)
+#  define LTTNG_UST_TRACEPOINT_CREATE_PROBES
+# endif
+#endif /* #if LTTNG_UST_COMPAT_API(0) */
+
+#ifdef LTTNG_UST_TRACEPOINT_CREATE_PROBES
+
+#define lttng_ust__tp_stringify1(x)    #x
+#define lttng_ust__tp_stringify(x)     lttng_ust__tp_stringify1(x)
 
 #undef LTTNG_UST_TRACEPOINT_EVENT_INSTANCE
-#define LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(_provider, _template, _name, _args)
+#define LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(_template_provider, _template_name, \
+       _provider, _name, _args)
 
 #undef LTTNG_UST_TRACEPOINT_EVENT
 #define LTTNG_UST_TRACEPOINT_EVENT(_provider, _name, _args, _fields)           \
-       LTTNG_UST_TRACEPOINT_EVENT_CLASS(_provider, _name, _TP_PARAMS(_args),   \
-                       _TP_PARAMS(_fields))                            \
-       LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(_provider, _name, _name,            \
-                       _TP_PARAMS(_args))
+       LTTNG_UST_TRACEPOINT_EVENT_CLASS(_provider, _name, LTTNG_UST__TP_PARAMS(_args), \
+                       LTTNG_UST__TP_PARAMS(_fields))                          \
+       LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(_provider, _name, _provider, _name, \
+                       LTTNG_UST__TP_PARAMS(_args))
 
 
+#undef LTTNG_UST_TRACEPOINT_CREATE_PROBES
+#if LTTNG_UST_COMPAT_API(0)
 #undef TRACEPOINT_CREATE_PROBES
+#endif
 
+#define LTTNG_UST_TRACEPOINT_HEADER_MULTI_READ
+#if LTTNG_UST_COMPAT_API(0)
 #define TRACEPOINT_HEADER_MULTI_READ
-
-#include TRACEPOINT_INCLUDE
+#endif
+
+#if LTTNG_UST_COMPAT_API(0)
+# if defined(TRACEPOINT_INCLUDE) && !defined(LTTNG_UST_TRACEPOINT_INCLUDE)
+#  define LTTNG_UST_TRACEPOINT_INCLUDE TRACEPOINT_INCLUDE
+# endif
+#endif /* #if LTTNG_UST_COMPAT_API(0) */
+
+#if LTTNG_UST_COMPAT_API(0)
+# if defined(TRACEPOINT_PROVIDER) && !defined(LTTNG_UST_TRACEPOINT_PROVIDER)
+#  define LTTNG_UST_TRACEPOINT_PROVIDER TRACEPOINT_PROVIDER
+# endif
+#endif /* #if LTTNG_UST_COMPAT_API(0) */
+
+#if LTTNG_UST_COMPAT_API(0)
+# if defined(TP_SESSION_CHECK) && !defined(LTTNG_UST_TP_SESSION_CHECK)
+#  define LTTNG_UST_TP_SESSION_CHECK
+# endif
+#endif /* #if LTTNG_UST_COMPAT_API(0) */
+
+#if LTTNG_UST_COMPAT_API(0)
+# if defined(TP_IP_PARAM) && !defined(LTTNG_UST_TP_IP_PARAM)
+#  define LTTNG_UST_TP_IP_PARAM
+# endif
+#endif /* #if LTTNG_UST_COMPAT_API(0) */
+
+#include LTTNG_UST_TRACEPOINT_INCLUDE
 
 #include <lttng/ust-tracepoint-event.h>
 
+#undef LTTNG_UST_TRACEPOINT_HEADER_MULTI_READ
+#if LTTNG_UST_COMPAT_API(0)
 #undef TRACEPOINT_HEADER_MULTI_READ
-#undef TRACEPOINT_INCLUDE
+#endif
+
+#undef LTTNG_UST_TRACEPOINT_INCLUDE
+#if LTTNG_UST_COMPAT_API(0)
+# undef TRACEPOINT_INCLUDE
+#endif
 
-#define TRACEPOINT_CREATE_PROBES
+#define LTTNG_UST_TRACEPOINT_CREATE_PROBES
 
 /*
  * Put back definitions to the state they were when defined by
 
 #undef LTTNG_UST_TRACEPOINT_EVENT
 #define LTTNG_UST_TRACEPOINT_EVENT(provider, name, args, fields)                       \
-       LTTNG_UST__DECLARE_TRACEPOINT(provider, name, _TP_PARAMS(args))         \
-       LTTNG_UST__DEFINE_TRACEPOINT(provider, name, _TP_PARAMS(args))
+       LTTNG_UST__DECLARE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args))               \
+       LTTNG_UST__DEFINE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args))
 
 #undef LTTNG_UST_TRACEPOINT_EVENT_CLASS
 #define LTTNG_UST_TRACEPOINT_EVENT_CLASS(provider, name, args, fields)
 
 #undef LTTNG_UST_TRACEPOINT_EVENT_INSTANCE
-#define LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(provider, _template, name, args)   \
-       LTTNG_UST__DECLARE_TRACEPOINT(provider, name, _TP_PARAMS(args))         \
-       LTTNG_UST__DEFINE_TRACEPOINT(provider, name, _TP_PARAMS(args))
+#define LTTNG_UST_TRACEPOINT_EVENT_INSTANCE(template_provider, template_name, provider, name, args) \
+       LTTNG_UST__DECLARE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args))               \
+       LTTNG_UST__DEFINE_TRACEPOINT(provider, name, LTTNG_UST__TP_PARAMS(args))
 
-#undef TRACEPOINT_LOGLEVEL
-#define TRACEPOINT_LOGLEVEL(provider, name, loglevel)
+#undef LTTNG_UST_TRACEPOINT_LOGLEVEL
+#define LTTNG_UST_TRACEPOINT_LOGLEVEL(provider, name, loglevel)
 
-#undef TRACEPOINT_MODEL_EMF_URI
-#define TRACEPOINT_MODEL_EMF_URI(provider, name, uri)
+#undef LTTNG_UST_TRACEPOINT_MODEL_EMF_URI
+#define LTTNG_UST_TRACEPOINT_MODEL_EMF_URI(provider, name, uri)
 
-#endif /* TRACEPOINT_CREATE_PROBES */
+#endif /* LTTNG_UST_TRACEPOINT_CREATE_PROBES */
This page took 0.024696 seconds and 4 git commands to generate.