lib: compile liblttng-ctl as C++
[lttng-tools.git] / include / lttng / action / action.h
CommitLineData
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
13struct lttng_action;
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19enum 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
29enum 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 42LTTNG_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 48LTTNG_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 */
This page took 0.03328 seconds and 4 git commands to generate.