Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
plugin_protocol_paths.h
1// SPDX-FileCopyrightText: © 2024-2025 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
4#pragma once
5
6#include "plugins/plugin_protocol.h"
7#include "utils/file_path_list.h"
8
9namespace zrythm::plugins
10{
11
12class PluginProtocolPaths
13{
14public:
15 explicit PluginProtocolPaths (utils::AppSettings &app_settings);
16
17 std::unique_ptr<utils::FilePathList>
18 get_for_protocol (Protocol::ProtocolType protocol);
19
21 get_for_protocol_separated (Protocol::ProtocolType protocol);
22
23 std::unique_ptr<utils::FilePathList> get_lv2_paths ();
24 std::unique_ptr<utils::FilePathList> get_vst2_paths ();
25 std::unique_ptr<utils::FilePathList> get_vst3_paths ();
26 std::unique_ptr<utils::FilePathList> get_sf_paths (bool sf2);
27 std::unique_ptr<utils::FilePathList> get_dssi_paths ();
28 std::unique_ptr<utils::FilePathList> get_ladspa_paths ();
29 std::unique_ptr<utils::FilePathList> get_clap_paths ();
30 std::unique_ptr<utils::FilePathList> get_jsfx_paths ();
31 std::unique_ptr<utils::FilePathList> get_au_paths ();
32
33private:
34 utils::AppSettings &app_settings_;
35};
36
37} // namespace zrythm::plugins
Lightweight UTF-8 string wrapper with safe conversions.
Definition utf8_string.h:38