Move to kernel style SPDX license identifiers
[lttng-ust.git] / include / lttng / tracelog.h
CommitLineData
0cb03c85 1/*
c0c0989a 2 * SPDX-License-Identifier: MIT
0cb03c85 3 *
c0c0989a 4 * Copyright (C) 2013-2015 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
0cb03c85
MD
5 */
6
c0c0989a
MJ
7#ifndef _LTTNG_UST_TRACELOG_H
8#define _LTTNG_UST_TRACELOG_H
9
0cb03c85
MD
10#include <lttng/lttng-ust-tracelog.h>
11
12#ifdef __cplusplus
13extern "C" {
14#endif
15
49faeca7
MD
16#define TP_TRACELOG_CB_TEMPLATE(level) \
17 extern void _lttng_ust_tracelog_##level(const char *file, \
18 int line, const char *func, const char *fmt, ...); \
19 extern void _lttng_ust_vtracelog_##level(const char *file, \
20 int line, const char *func, const char *fmt, va_list ap);
0cb03c85 21
c4d667ed
MD
22TP_TRACELOG_CB_TEMPLATE(TRACE_EMERG);
23TP_TRACELOG_CB_TEMPLATE(TRACE_ALERT);
24TP_TRACELOG_CB_TEMPLATE(TRACE_CRIT);
25TP_TRACELOG_CB_TEMPLATE(TRACE_ERR);
26TP_TRACELOG_CB_TEMPLATE(TRACE_WARNING);
27TP_TRACELOG_CB_TEMPLATE(TRACE_NOTICE);
28TP_TRACELOG_CB_TEMPLATE(TRACE_INFO);
29TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG_SYSTEM);
30TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG_PROGRAM);
31TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG_PROCESS);
32TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG_MODULE);
33TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG_UNIT);
34TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG_FUNCTION);
35TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG_LINE);
36TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG);
0cb03c85
MD
37
38#undef TP_TRACELOG_CB_TEMPLATE
39
40#define tracelog(level, fmt, ...) \
41 do { \
afeea86f 42 LTTNG_STAP_PROBEV(tracepoint_lttng_ust_tracelog, level, ## __VA_ARGS__); \
c4d667ed 43 if (caa_unlikely(__tracepoint_lttng_ust_tracelog___##level.state)) \
0cb03c85 44 _lttng_ust_tracelog_##level(__FILE__, __LINE__, __func__, \
49faeca7 45 fmt, ## __VA_ARGS__); \
0cb03c85
MD
46 } while (0)
47
bd9bb3c7
MRB
48#define vtracelog(level, fmt, ap) \
49 do { \
50 if (caa_unlikely(__tracepoint_lttng_ust_tracelog___##level.state)) \
49faeca7
MD
51 _lttng_ust_vtracelog_##level(__FILE__, __LINE__, __func__, \
52 fmt, ap); \
bd9bb3c7
MRB
53 } while (0)
54
0cb03c85
MD
55#ifdef __cplusplus
56}
57#endif
58
59#endif /* _LTTNG_UST_TRACELOG_H */
This page took 0.026589 seconds and 4 git commands to generate.