LTTng control library C API
Loading...
Searching...
No Matches
group.h
1/*
2 * Copyright (C) 2023 Philippe Proulx <eepp@efficios.com>
3 * Copyright (C) 2023 Jérémie Galarneau <jeremie.galarneau@efficios.com>
4 *
5 * SPDX-License-Identifier: LGPL-2.1-only
6 *
7 */
8
9#ifndef LTTNG_MAP_GROUP_H
10#define LTTNG_MAP_GROUP_H
11
12#include <lttng/lttng-export.h>
13#include <lttng/map/group-type.h>
14#include <lttng/map/value-type.h>
15#include <lttng/map/values-set.h>
16
17#include <stdint.h>
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
34struct lttng_map_group;
35
50
94LTTNG_EXPORT extern enum lttng_map_group_status
96
133LTTNG_EXPORT extern enum lttng_map_group_status
134lttng_map_group_user_get_owner_id(const struct lttng_map_group *group, uint64_t *owner_id);
135
185LTTNG_EXPORT extern enum lttng_map_group_status
186lttng_map_group_user_get_owner_name(const struct lttng_map_group *group, const char **owner_name);
187
230LTTNG_EXPORT extern enum lttng_map_group_status
232 enum lttng_map_value_type *value_type);
233
293LTTNG_EXPORT extern enum lttng_map_group_status
295 struct lttng_map_values_set **values_set);
296
317LTTNG_EXPORT extern void lttng_map_group_destroy(struct lttng_map_group *group);
318
320
321#ifdef __cplusplus
322}
323#endif
324
325#endif /* LTTNG_MAP_GROUP_H */
enum lttng_map_group_status lttng_map_group_get_values(const struct lttng_map_group *group, struct lttng_map_values_set **values_set)
Sets *values_set to the current map values object of group.
void lttng_map_group_destroy(struct lttng_map_group *group)
Destroys the map group group.
lttng_map_group_type
Type of a map group.
Definition group-type.h:27
enum lttng_map_group_status lttng_map_group_user_get_owner_id(const struct lttng_map_group *group, uint64_t *owner_id)
Sets *owner_id to the owner ID of the user space map group group.
enum lttng_map_group_status lttng_map_group_get_effective_value_type(const struct lttng_map_group *group, enum lttng_map_value_type *value_type)
Sets *value_type to the effective value type of group.
enum lttng_map_group_status lttng_map_group_get_type(const struct lttng_map_group *group, enum lttng_map_group_type *type)
Sets *type to the type of group.
enum lttng_map_group_status lttng_map_group_user_get_owner_name(const struct lttng_map_group *group, const char **owner_name)
Sets *owner_name to the owner name of the user space map group group.
lttng_map_group_status
Status code for map group functions.
Definition group.h:40
@ LTTNG_MAP_GROUP_STATUS_ERROR
Other error.
Definition group.h:48
@ LTTNG_MAP_GROUP_STATUS_INVALID_PARAMETER
Unsatisfied precondition.
Definition group.h:45
@ LTTNG_MAP_GROUP_STATUS_OK
Success.
Definition group.h:42
lttng_map_value_type
Type of the values of a map.
Definition value-type.h:25
Map group (opaque type).
Set of per-partition map values objects (opaque type).