Zrythm
v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
project_path_provider.h
1
// SPDX-FileCopyrightText: © 2025 Alexandros Theodotou <alex@zrythm.org>
2
// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
4
#pragma once
5
6
#include <filesystem>
7
#include <string_view>
8
9
namespace
zrythm::structure::project
10
{
11
using namespace
std::string_view_literals;
12
13
class
ProjectPathProvider
14
{
15
static
constexpr
auto
PROJECT_FILE =
"project.zpj"
sv;
16
static
constexpr
auto
PROJECT_BACKUPS_DIR =
"backups"
sv;
17
static
constexpr
auto
PROJECT_EXPORTS_DIR =
"exports"
sv;
18
static
constexpr
auto
PROJECT_STEMS_DIR =
"stems"
sv;
19
static
constexpr
auto
PROJECT_POOL_DIR =
"pool"
sv;
20
21
public
:
22
enum class
ProjectPath
23
{
27
ProjectFile
,
28
29
BackupsDir,
30
31
ExportsDir,
32
33
/* EXPORTS / "stems". */
34
ExportStemsDir,
35
36
AudioFilePoolDir,
37
};
38
42
static
std::filesystem::path
get_path
(
ProjectPath
path);
43
};
44
}
zrythm::structure::project::ProjectPathProvider
Definition
project_path_provider.h:14
zrythm::structure::project::ProjectPathProvider::get_path
static std::filesystem::path get_path(ProjectPath path)
Returns the path of the given type relative to a project's directory.
zrythm::structure::project::ProjectPathProvider::ProjectPath
ProjectPath
Definition
project_path_provider.h:23
zrythm::structure::project::ProjectPathProvider::ProjectPath::ProjectFile
@ ProjectFile
The project .zpj file.
Definition
project_path_provider.h:27
src
structure
project
project_path_provider.h
Generated by
1.16.1