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.
29 extern ssize_t
lttng_action_list_create_from_payload(
30 struct lttng_payload_view
*view
,
31 struct lttng_action
**list
);
34 extern struct lttng_action
*lttng_action_list_borrow_mutable_at_index(
35 const struct lttng_action
*list
, unsigned int index
);
38 enum lttng_error_code
lttng_action_list_mi_serialize(const struct lttng_trigger
*trigger
,
39 const struct lttng_action
*action
,
40 struct mi_writer
*writer
,
41 const struct mi_lttng_error_query_callbacks
42 *error_query_callbacks
,
43 struct lttng_dynamic_array
*action_path_indexes
);
45 #endif /* LTTNG_ACTION_LIST_INTERNAL_H */