rt-vamp-plugin-sdk 0.3.1
Real-time Vamp plugin SDK for C++20
Loading...
Searching...
No Matches
PluginKey.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4#include <string_view>
5
6namespace rtvamp::hostsdk {
7
17class PluginKey {
18public:
19 // NOLINTBEGIN(*explicit-conversions)
20 PluginKey(const char* key);
21 PluginKey(std::string key);
22 PluginKey(std::string_view key);
23 // NOLINTEND(*explicit-conversions)
24
25 PluginKey(std::string_view library, std::string_view identifier);
26
27 std::string_view get() const noexcept { return key_; }
28 std::string_view getLibrary() const noexcept;
29 std::string_view getIdentifier() const noexcept;
30
31 auto operator<=>(const PluginKey&) const = default;
32
33private:
34 std::string key_;
35 size_t pos_;
36};
37
38} // namespace rtvamp::hostsdk
Identifier for a plugin uniquely within the scope of the current system.
Definition PluginKey.hpp:17
PluginKey(const char *key)
PluginKey(std::string_view library, std::string_view identifier)
PluginKey(std::string_view key)
std::string_view get() const noexcept
Definition PluginKey.hpp:27
PluginKey(std::string key)
std::string_view getLibrary() const noexcept
std::string_view getIdentifier() const noexcept
Definition hostsdk.hpp:12