Prefix public header include guards with LTTNG_UST_
[lttng-ust.git] / include / lttng / tracepoint-types.h
CommitLineData
b728d87e 1/*
c0c0989a 2 * SPDX-License-Identifier: MIT
b728d87e 3 *
c0c0989a 4 * Copyright (C) 2011-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
b728d87e
MD
5 */
6
9b14815a
MD
7#ifndef _LTTNG_UST_TRACEPOINT_TYPES_H
8#define _LTTNG_UST_TRACEPOINT_TYPES_H
c0c0989a 9
f641d544
MD
10#include <stdint.h>
11
12/*
13 * Tracepoint probe definition
14 *
15 * IMPORTANT: this structure is part of the ABI between instrumented
16 * applications and UST. This structure is fixed-size because it is part
17 * of a public array of structures. Rather than extending this
18 * structure, struct lttng_ust_tracepoint should be extended instead.
19 */
20
1a206094 21struct lttng_ust_tracepoint_probe {
fbdeb5ec 22 void (*func)(void);
23c8854a 23 void *data;
b728d87e
MD
24};
25
f641d544
MD
26/*
27 * Tracepoint definition
28 *
29 * IMPORTANT: this structure is part of the ABI between instrumented
30 * applications and UST. Fields need to be only added at the end, never
31 * reordered, never removed.
32 *
33 * The field @struct_size should be used to determine the size of the
34 * structure. It should be queried before using additional fields added
35 * at the end of the structure.
36 */
37
1a206094 38struct lttng_ust_tracepoint {
f641d544
MD
39 uint32_t struct_size;
40
34f7f142
MD
41 const char *provider_name;
42 const char *event_name;
b728d87e 43 int state;
1a206094 44 struct lttng_ust_tracepoint_probe *probes;
628e1d81 45 int *tracepoint_provider_ref;
b4f3bc52 46 const char *signature;
f641d544
MD
47
48 /* End of base ABI. Fields below should be used after checking struct_size. */
b728d87e
MD
49};
50
9b14815a 51#endif /* _LTTNG_UST_TRACEPOINT_TYPES_H */
This page took 0.031906 seconds and 4 git commands to generate.