2 * Copyright (C) 2019 Simon Marchi <simon.marchi@efficios.com>
4 * SPDX-License-Identifier: LGPL-2.1-only
8 #ifndef LTTNG_ACTION_LIST_INTERNAL_H
9 #define LTTNG_ACTION_LIST_INTERNAL_H
11 #include <sys/types.h>
13 #include <common/macros.h>
16 struct lttng_payload_view
;
18 struct mi_lttng_error_query_callbacks
;
19 struct lttng_dynamic_array
;
23 * Create an action list from a payload view.
25 * On success, return the number of bytes consumed from `view`, and the created
26 * list in `*list`. On failure, return -1.
28 extern ssize_t
lttng_action_list_create_from_payload(
29 struct lttng_payload_view
*view
,
30 struct lttng_action
**list
);
32 extern struct lttng_action
*lttng_action_list_borrow_mutable_at_index(
33 const struct lttng_action
*list
, unsigned int index
);
35 enum lttng_error_code
lttng_action_list_mi_serialize(const struct lttng_trigger
*trigger
,
36 const struct lttng_action
*action
,
37 struct mi_writer
*writer
,
38 const struct mi_lttng_error_query_callbacks
39 *error_query_callbacks
,
40 struct lttng_dynamic_array
*action_path_indexes
);
42 #endif /* LTTNG_ACTION_LIST_INTERNAL_H */