From: Simon Marchi Date: Fri, 16 Feb 2024 19:31:12 +0000 (-0500) Subject: cpp-common/bt2: move `ConstPluginSet` to `plugin-set.hpp` X-Git-Url: https://git.efficios.com/?p=babeltrace.git;a=commitdiff_plain;h=4993dc419ac787ef47379645b0372ba09799f3ba cpp-common/bt2: move `ConstPluginSet` to `plugin-set.hpp` A subsequent patch will introduce `bt2::ConstPlugin`. It makes more sense to have `bt2::ConstPluginSet` in `plugin-set.hpp`. Change-Id: I84996f34aec325eb2336335a73fdb5e857253c96 Signed-off-by: Simon Marchi Reviewed-on: https://review.lttng.org/c/babeltrace/+/11820 Reviewed-by: Philippe Proulx Tested-by: jenkins --- diff --git a/src/Makefile.am b/src/Makefile.am index f9b2b3c3..873ccf85 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -135,6 +135,7 @@ cpp_common_libcpp_common_la_SOURCES = \ cpp-common/bt2/message.hpp \ cpp-common/bt2/optional-borrowed-object.hpp \ cpp-common/bt2/plugin-dev.hpp \ + cpp-common/bt2/plugin-set.hpp \ cpp-common/bt2/plugin.hpp \ cpp-common/bt2/private-query-executor.hpp \ cpp-common/bt2/query-executor.hpp \ diff --git a/src/cpp-common/bt2/plugin-set.hpp b/src/cpp-common/bt2/plugin-set.hpp new file mode 100644 index 00000000..57ce92e5 --- /dev/null +++ b/src/cpp-common/bt2/plugin-set.hpp @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2024 EfficiOS, Inc. + * + * SPDX-License-Identifier: MIT + */ + +#ifndef BABELTRACE_CPP_COMMON_BT2_PLUGIN_SET_HPP +#define BABELTRACE_CPP_COMMON_BT2_PLUGIN_SET_HPP + +#include + +#include + +#include "borrowed-object.hpp" +#include "shared-object.hpp" + +namespace bt2 { +namespace internal { + +struct PluginSetRefFuncs +{ + static void get(const bt_plugin_set * const libObjPtr) noexcept + { + bt_plugin_set_get_ref(libObjPtr); + } + + static void put(const bt_plugin_set * const libObjPtr) noexcept + { + bt_plugin_set_put_ref(libObjPtr); + } +}; + +} /* namespace internal */ + +class ConstPluginSet final : public BorrowedObject +{ +public: + using Shared = SharedObject; + + explicit ConstPluginSet(const bt_plugin_set * const plugin_set) : + _ThisBorrowedObject {plugin_set} + { + } + + std::uint64_t length() const noexcept + { + return bt_plugin_set_get_plugin_count(this->libObjPtr()); + } +}; + +} /* namespace bt2 */ + +#endif /* BABELTRACE_CPP_COMMON_BT2_PLUGIN_SET_HPP */ diff --git a/src/cpp-common/bt2/plugin.hpp b/src/cpp-common/bt2/plugin.hpp index 0a1c1c46..6d1a71a6 100644 --- a/src/cpp-common/bt2/plugin.hpp +++ b/src/cpp-common/bt2/plugin.hpp @@ -10,44 +10,12 @@ #include #include "common/common.h" -#include "cpp-common/bt2/borrowed-object.hpp" -#include "cpp-common/bt2/exc.hpp" -#include "cpp-common/bt2/shared-object.hpp" #include "cpp-common/bt2c/c-string-view.hpp" -namespace bt2 { -namespace internal { - -struct PluginSetRefFuncs -{ - static void get(const bt_plugin_set * const libObjPtr) noexcept - { - bt_plugin_set_get_ref(libObjPtr); - } - - static void put(const bt_plugin_set * const libObjPtr) noexcept - { - bt_plugin_set_put_ref(libObjPtr); - } -}; - -} /* namespace internal */ +#include "exc.hpp" +#include "plugin-set.hpp" -class ConstPluginSet final : public BorrowedObject -{ -public: - using Shared = SharedObject; - - explicit ConstPluginSet(const bt_plugin_set * const plugin_set) : - _ThisBorrowedObject {plugin_set} - { - } - - std::uint64_t length() const noexcept - { - return bt_plugin_set_get_plugin_count(this->libObjPtr()); - } -}; +namespace bt2 { inline ConstPluginSet::Shared findAllPluginsFromDir(const bt2c::CStringView path, const bool recurse, const bool failOnLoadError) diff --git a/tests/lib/test-plugin-init-fail.cpp b/tests/lib/test-plugin-init-fail.cpp index 8d8fd411..8a0fde62 100644 --- a/tests/lib/test-plugin-init-fail.cpp +++ b/tests/lib/test-plugin-init-fail.cpp @@ -4,13 +4,13 @@ * Copyright (C) 2024 EfficiOS, Inc. */ -#include - -#include - #include +#include "common/common.h" +#include "cpp-common/bt2/exc.hpp" +#include "cpp-common/bt2/plugin.hpp" #include "cpp-common/bt2c/c-string-view.hpp" +#include "cpp-common/vendor/fmt/core.h" #include "tap/tap.h"