Prefix public header include guards with LTTNG_UST_
[lttng-ust.git] / include / lttng / tracepoint-types.h
... / ...
CommitLineData
1/*
2 * SPDX-License-Identifier: MIT
3 *
4 * Copyright (C) 2011-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
5 */
6
7#ifndef _LTTNG_UST_TRACEPOINT_TYPES_H
8#define _LTTNG_UST_TRACEPOINT_TYPES_H
9
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
21struct lttng_ust_tracepoint_probe {
22 void (*func)(void);
23 void *data;
24};
25
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
38struct lttng_ust_tracepoint {
39 uint32_t struct_size;
40
41 const char *provider_name;
42 const char *event_name;
43 int state;
44 struct lttng_ust_tracepoint_probe *probes;
45 int *tracepoint_provider_ref;
46 const char *signature;
47
48 /* End of base ABI. Fields below should be used after checking struct_size. */
49};
50
51#endif /* _LTTNG_UST_TRACEPOINT_TYPES_H */
This page took 0.022452 seconds and 4 git commands to generate.