Clean-up: tests: utils: const_cast
[lttng-tools.git] / tests / utils / bt2_plugins / utils.hpp
CommitLineData
d73aeddd
JG
1/*
2 * Copyright (C) 2024 Jérémie Galarneau <jeremie.galarneau@efficios.com>
3 *
4 * SPDX-License-Identifier: LGPL-2.1-only
5 *
6 */
7
8#ifndef LTTNG_TEST_UTILS_BT2_PLUGIN_UTILS_HPP
9#define LTTNG_TEST_UTILS_BT2_PLUGIN_UTILS_HPP
10
11#include <common/make-unique-wrapper.hpp>
12
13#include <babeltrace2/babeltrace.h>
14
15namespace lttng {
16namespace bt2 {
17namespace internal {
18static inline void bt_value_put_ref(bt_value *value)
19{
751d464e 20 bt_value_put_ref(static_cast<const bt_value *>(value));
d73aeddd
JG
21}
22} /* namespace internal */
23
24using value_ref = std::unique_ptr<
25 bt_value,
26 lttng::memory::create_deleter_class<bt_value, internal::bt_value_put_ref>::deleter>;
27
28using event_class_const_ref = std::unique_ptr<
29 const bt_event_class,
30 lttng::memory::create_deleter_class<const bt_event_class, bt_event_class_put_ref>::deleter>;
31
32static inline value_ref make_value_ref(bt_value *instance)
33{
34 const memory::create_deleter_class<bt_value, internal::bt_value_put_ref> unique_deleter;
35 return unique_deleter(instance);
36}
37
38using message_const_ref = std::unique_ptr<
39 const bt_message,
40 lttng::memory::create_deleter_class<const bt_message, bt_message_put_ref>::deleter>;
41
42using message_iterator_ref =
43 std::unique_ptr<bt_message_iterator,
44 lttng::memory::create_deleter_class<const bt_message_iterator,
45 bt_message_iterator_put_ref>::deleter>;
46} /* namespace bt2 */
47} /* namespace lttng */
48
49#endif /* LTTNG_TEST_UTILS_BT2_PLUGIN_UTILS_HPP */
This page took 0.024199 seconds and 4 git commands to generate.