Commit | Line | Data |
---|---|---|
a8c3ad3e | 1 | /* |
ab5be9fa | 2 | * Copyright (C) 2018 Mathieu Desnoyers <mathieu.desnoyers@efficios.com> |
159b042f | 3 | * Copyright (C) 2020 Jérémie Galarneau <jeremie.galarneau@efficios.com> |
a8c3ad3e | 4 | * |
ab5be9fa | 5 | * SPDX-License-Identifier: GPL-2.0-only |
a8c3ad3e | 6 | * |
a8c3ad3e MD |
7 | */ |
8 | ||
ab5be9fa MJ |
9 | #ifndef _LTT_TRACKER_H |
10 | #define _LTT_TRACKER_H | |
11 | ||
159b042f | 12 | #include <common/tracker.h> |
2d97a006 | 13 | #include <lttng/tracker.h> |
a8c3ad3e | 14 | |
159b042f | 15 | struct process_attr_tracker; |
a8c3ad3e | 16 | |
159b042f JG |
17 | enum process_attr_tracker_status { |
18 | PROCESS_ATTR_TRACKER_STATUS_OK, | |
19 | PROCESS_ATTR_TRACKER_STATUS_ERROR, | |
20 | PROCESS_ATTR_TRACKER_STATUS_EXISTS, | |
21 | PROCESS_ATTR_TRACKER_STATUS_MISSING, | |
22 | PROCESS_ATTR_TRACKER_STATUS_INVALID_TRACKING_POLICY, | |
a8c3ad3e MD |
23 | }; |
24 | ||
159b042f JG |
25 | struct process_attr_tracker *process_attr_tracker_create(void); |
26 | void process_attr_tracker_destroy(struct process_attr_tracker *tracker); | |
27 | ||
28 | enum lttng_tracking_policy process_attr_tracker_get_tracking_policy( | |
29 | const struct process_attr_tracker *tracker); | |
30 | int process_attr_tracker_set_tracking_policy( | |
31 | struct process_attr_tracker *tracker, | |
32 | enum lttng_tracking_policy tracking_policy); | |
33 | ||
34 | enum process_attr_tracker_status process_attr_tracker_inclusion_set_add_value( | |
35 | struct process_attr_tracker *tracker, | |
36 | const struct process_attr_value *value); | |
37 | enum process_attr_tracker_status | |
38 | process_attr_tracker_inclusion_set_remove_value( | |
39 | struct process_attr_tracker *tracker, | |
40 | const struct process_attr_value *value); | |
41 | ||
42 | enum process_attr_tracker_status process_attr_tracker_get_inclusion_set( | |
43 | const struct process_attr_tracker *tracker, | |
44 | struct lttng_process_attr_values **values); | |
a8c3ad3e MD |
45 | |
46 | #endif /* _LTT_TRACKER_H */ |