Commit | Line | Data |
---|---|---|
a58c490f | 1 | /* |
ab5be9fa | 2 | * Copyright (C) 2017 Jérémie Galarneau <jeremie.galarneau@efficios.com> |
a58c490f | 3 | * |
ab5be9fa | 4 | * SPDX-License-Identifier: LGPL-2.1-only |
a58c490f | 5 | * |
a58c490f JG |
6 | */ |
7 | ||
8 | #ifndef LTTNG_ACTION_H | |
9 | #define LTTNG_ACTION_H | |
10 | ||
4bd69c5f SM |
11 | #include <lttng/lttng-export.h> |
12 | ||
a58c490f JG |
13 | struct lttng_action; |
14 | ||
15 | #ifdef __cplusplus | |
16 | extern "C" { | |
17 | #endif | |
18 | ||
19 | enum lttng_action_type { | |
20 | LTTNG_ACTION_TYPE_UNKNOWN = -1, | |
21 | LTTNG_ACTION_TYPE_NOTIFY = 0, | |
58397d0d | 22 | LTTNG_ACTION_TYPE_START_SESSION = 1, |
931bdbaa | 23 | LTTNG_ACTION_TYPE_STOP_SESSION = 2, |
bfb2ec6a | 24 | LTTNG_ACTION_TYPE_ROTATE_SESSION = 3, |
757c48a2 | 25 | LTTNG_ACTION_TYPE_SNAPSHOT_SESSION = 4, |
7c2fae7c | 26 | LTTNG_ACTION_TYPE_LIST = 5, |
58397d0d SM |
27 | }; |
28 | ||
29 | enum lttng_action_status { | |
30 | LTTNG_ACTION_STATUS_OK = 0, | |
31 | LTTNG_ACTION_STATUS_ERROR = -1, | |
32 | LTTNG_ACTION_STATUS_UNKNOWN = -2, | |
33 | LTTNG_ACTION_STATUS_INVALID = -3, | |
34 | LTTNG_ACTION_STATUS_UNSET = -4, | |
a58c490f JG |
35 | }; |
36 | ||
e6de708a JG |
37 | /* |
38 | * Get the type of an action. | |
39 | * | |
40 | * Returns the type of an action on success, LTTNG_ACTION_TYPE_UNKNOWN on error. | |
41 | */ | |
4bd69c5f | 42 | LTTNG_EXPORT extern enum lttng_action_type lttng_action_get_type( |
17182cfd | 43 | const struct lttng_action *action); |
a58c490f | 44 | |
e6de708a JG |
45 | /* |
46 | * Destroy (frees) an action object. | |
47 | */ | |
4bd69c5f | 48 | LTTNG_EXPORT extern void lttng_action_destroy(struct lttng_action *action); |
a58c490f JG |
49 | |
50 | #ifdef __cplusplus | |
51 | } | |
52 | #endif | |
53 | ||
54 | #endif /* LTTNG_ACTION_H */ |