Bitcoin ABC 0.30.5
P2P Digital Currency
trace.h
Go to the documentation of this file.
1// Copyright (c) 2020 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5#ifndef BITCOIN_UTIL_TRACE_H
6#define BITCOIN_UTIL_TRACE_H
7
8#include <config/bitcoin-config.h>
9
10#ifdef ENABLE_TRACING
11
12#include <sys/sdt.h>
13
14#define TRACE(context, event) DTRACE_PROBE(context, event)
15#define TRACE1(context, event, a) DTRACE_PROBE1(context, event, a)
16#define TRACE2(context, event, a, b) DTRACE_PROBE2(context, event, a, b)
17#define TRACE3(context, event, a, b, c) DTRACE_PROBE3(context, event, a, b, c)
18#define TRACE4(context, event, a, b, c, d) \
19 DTRACE_PROBE4(context, event, a, b, c, d)
20#define TRACE5(context, event, a, b, c, d, e) \
21 DTRACE_PROBE5(context, event, a, b, c, d, e)
22#define TRACE6(context, event, a, b, c, d, e, f) \
23 DTRACE_PROBE6(context, event, a, b, c, d, e, f)
24#define TRACE7(context, event, a, b, c, d, e, f, g) \
25 DTRACE_PROBE7(context, event, a, b, c, d, e, f, g)
26#define TRACE8(context, event, a, b, c, d, e, f, g, h) \
27 DTRACE_PROBE8(context, event, a, b, c, d, e, f, g, h)
28#define TRACE9(context, event, a, b, c, d, e, f, g, h, i) \
29 DTRACE_PROBE9(context, event, a, b, c, d, e, f, g, h, i)
30#define TRACE10(context, event, a, b, c, d, e, f, g, h, i, j) \
31 DTRACE_PROBE10(context, event, a, b, c, d, e, f, g, h, i, j)
32#define TRACE11(context, event, a, b, c, d, e, f, g, h, i, j, k) \
33 DTRACE_PROBE11(context, event, a, b, c, d, e, f, g, h, i, j, k)
34#define TRACE12(context, event, a, b, c, d, e, f, g, h, i, j, k, l) \
35 DTRACE_PROBE12(context, event, a, b, c, d, e, f, g, h, i, j, k, l)
36
37#else
38
39#define TRACE(context, event)
40#define TRACE1(context, event, a)
41#define TRACE2(context, event, a, b)
42#define TRACE3(context, event, a, b, c)
43#define TRACE4(context, event, a, b, c, d)
44#define TRACE5(context, event, a, b, c, d, e)
45#define TRACE6(context, event, a, b, c, d, e, f)
46#define TRACE7(context, event, a, b, c, d, e, f, g)
47#define TRACE8(context, event, a, b, c, d, e, f, g, h)
48#define TRACE9(context, event, a, b, c, d, e, f, g, h, i)
49#define TRACE10(context, event, a, b, c, d, e, f, g, h, i, j)
50#define TRACE11(context, event, a, b, c, d, e, f, g, h, i, j, k)
51#define TRACE12(context, event, a, b, c, d, e, f, g, h, i, j, k, l)
52
53#endif
54
55#endif // BITCOIN_UTIL_TRACE_H