rt-vamp-plugin-sdk  0.3.1
Real-time Vamp plugin SDK for C++20
hostsdk.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <filesystem>
4 #include <memory>
5 #include <span>
6 #include <vector>
7 
11 
12 namespace rtvamp::hostsdk {
13 
14 using PathList = std::vector<std::filesystem::path>;
15 
21 
25 bool isVampLibrary(const std::filesystem::path& libraryPath);
26 
31 
35 PathList listLibraries(const std::filesystem::path& path);
36 
40 PathList listLibraries(std::span<const std::filesystem::path> paths);
41 
45 PluginLibrary loadLibrary(const std::filesystem::path& libraryPath);
46 
50 std::vector<PluginKey> listPlugins();
51 
55 std::vector<PluginKey> listPlugins(const std::filesystem::path& path);
56 
60 std::vector<PluginKey> listPlugins(std::span<const std::filesystem::path> paths);
61 
65 std::unique_ptr<Plugin> loadPlugin(const PluginKey& key, float inputSampleRate);
66 
71 std::unique_ptr<Plugin> loadPlugin(const PluginKey& key, float inputSampleRate, std::span<const std::filesystem::path> paths);
72 
73 } // namespace rtvamp::hostsdk
rtvamp::hostsdk::loadPlugin
std::unique_ptr< Plugin > loadPlugin(const PluginKey &key, float inputSampleRate)
Load plugin.
PluginLibrary.hpp
PluginKey.hpp
rtvamp::hostsdk::PathList
std::vector< std::filesystem::path > PathList
Definition: hostsdk.hpp:14
Plugin.hpp
rtvamp::hostsdk
Definition: Plugin.hpp:12
rtvamp::hostsdk::listLibraries
PathList listLibraries()
List all plugin libraries in default Vamp search paths.
rtvamp::hostsdk::listPlugins
std::vector< PluginKey > listPlugins()
List plugins in default Vamp search paths.
rtvamp::hostsdk::PluginLibrary
Definition: PluginLibrary.hpp:19
rtvamp::hostsdk::PluginKey
Identifier for a plugin uniquely within the scope of the current system.
Definition: PluginKey.hpp:17
rtvamp::hostsdk::getVampPaths
PathList getVampPaths()
Get default Vamp search paths for plugin libraries.
rtvamp::hostsdk::loadLibrary
PluginLibrary loadLibrary(const std::filesystem::path &libraryPath)
Load plugin library by file path.
rtvamp::hostsdk::isVampLibrary
bool isVampLibrary(const std::filesystem::path &libraryPath)
Check if the library is an existing and valid Vamp library.