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/app_settings.h"
8#include "utils/file_path_list.h"
9
10namespace zrythm::plugins
11{
12
13class PluginProtocolPaths
14{
15public:
16 explicit PluginProtocolPaths (utils::AppSettings &app_settings);
17
18 std::unique_ptr<utils::FilePathList>
19 get_for_protocol (Protocol::ProtocolType protocol);
20
22 get_for_protocol_separated (Protocol::ProtocolType protocol);
23
24 std::unique_ptr<utils::FilePathList> get_lv2_paths ();
25 std::unique_ptr<utils::FilePathList> get_vst2_paths ();
26 std::unique_ptr<utils::FilePathList> get_vst3_paths ();
27 std::unique_ptr<utils::FilePathList> get_sf_paths (bool sf2);
28 std::unique_ptr<utils::FilePathList> get_dssi_paths ();
29 std::unique_ptr<utils::FilePathList> get_ladspa_paths ();
30 std::unique_ptr<utils::FilePathList> get_clap_paths ();
31 std::unique_ptr<utils::FilePathList> get_jsfx_paths ();
32 std::unique_ptr<utils::FilePathList> get_au_paths ();
33
34private:
35 utils::AppSettings &app_settings_;
36};
37
38} // namespace zrythm::plugins
Lightweight UTF-8 string wrapper with safe conversions.
Definition utf8_string.h:37