Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
General

Uncategorized. More...

Data Structures

class  zrythm::Zrythm
 To be used throughout the program. More...
struct  ZrythmAppUiMessage
 UI message for the message queue. More...
class  ZrythmApp
 The Zrythm GTK application. More...

Macros

#define MAX_RECENT_PROJECTS   20
#define DEBUGGING   (Q_UNLIKELY (gZrythm && gZrythm->debug_))
#define ZRYTHM_BENCHMARKING   (gZrythm && gZrythm->benchmarking_)
#define ZRYTHM_GENERATING_PROJECT   (gZrythm->generating_project_)
#define ZRYTHM_HAVE_UI   (gZrythm && gZrythm->have_ui_)
#define ZRYTHM_BREAK_ON_ERROR   (gZrythm && gZrythm->break_on_error_)
#define ZRYTHM_USE_OPTIMIZED_DSP   (Q_LIKELY (gZrythm->use_optimized_dsp_))

Functions

void zrythm::Zrythm::pre_init (std::optional< std::filesystem::path > exe_path, bool have_ui, bool optimized_dsp)
 Called before init().
void zrythm::Zrythm::init ()
QString zrythm::Zrythm::getVersion () const
static utils::Utf8String zrythm::Zrythm::get_version (bool with_v)
 Returns the version string.
static utils::Version zrythm::Zrythm::get_app_version ()
 Returns the application version as a Version struct.
static bool zrythm::Zrythm::is_release (bool official)
 Returns whether the current Zrythm version is a release version.
static void zrythm::Zrythm::fetch_latest_release_ver_async (networking::URL::GetContentsAsyncCallback callback)
static bool zrythm::Zrythm::is_latest_release (const char *remote_latest_release)
 Returns whether the given release string is the latest release.
static void zrythm::Zrythm::get_version_with_capabilities (char *buf, bool include_system_info)
 Returns the version and the capabilities.
static utils::Utf8String zrythm::Zrythm::get_system_info ()
 Returns system info (mainly used for bug reports).
void zrythm::Zrythm::init_user_dirs_and_files ()
 Initializes/creates the default dirs/files in the user directory.

Variables

std::filesystem::path zrythm::Zrythm::exe_path_
 argv[0].
std::unique_ptr< Settingszrythm::Zrythm::settings_
 Application settings.
bool zrythm::Zrythm::opening_template_ = false
 Whether the open file is a template to be used to create a new project from.
bool zrythm::Zrythm::creating_project_ = false
 Whether creating a new project, either from a template or blank.
std::filesystem::path zrythm::Zrythm::create_project_path_
 Path to create a project in, including its title.
std::filesystem::path zrythm::Zrythm::open_filename_
 Filename to open passed through the command line.
Symap zrythm::Zrythm::symap_
 String interner for internal things.
bool zrythm::Zrythm::debug_ = false
 In debug mode or not (determined by GSetting).
bool zrythm::Zrythm::break_on_error_ = false
 Whether to abort() on an error log message.
bool zrythm::Zrythm::generating_project_ = false
 Whether this is a dummy instance used when generating projects.
bool zrythm::Zrythm::have_ui_ = false
 1 if Zrythm has a UI, 0 if headless (eg, when unit-testing).
bool zrythm::Zrythm::use_optimized_dsp_ = false
 Whether to use optimized DSP when available.
int zrythm::Zrythm::undo_stack_len_ = 0
 Undo stack length, used during tests.
bool zrythm::Zrythm::open_newer_backup_ = false
 Whether to open a newer backup if found.
bool zrythm::Zrythm::use_pipewire_in_tests_ = false
 Whether to use pipewire in tests.
ProcessId zrythm::Zrythm::pipewire_pid_ = 0
 Process ID for pipewire (used in tests).
std::unique_ptr< ChordPresetPackManagerzrythm::Zrythm::chord_preset_pack_manager_
 Chord preset pack manager.
std::unique_ptr< DspContextRAIIzrythm::Zrythm::lsp_dsp_context_
 LSP DSP context for the main thread.
bool zrythm::Zrythm::benchmarking_ = false
 Whether currently running under the benchmarker.
Glib::RefPtr< ZrythmAppzrythm_app
 Global variable, should be available to all files.

Properties

QML_ELEMENT QString zrythm::Zrythm::version

Detailed Description

Uncategorized.

Macro Definition Documentation

◆ DEBUGGING

#define DEBUGGING   (Q_UNLIKELY (gZrythm && gZrythm->debug_))

Definition at line 32 of file zrythm.h.

◆ MAX_RECENT_PROJECTS

#define MAX_RECENT_PROJECTS   20

Definition at line 31 of file zrythm.h.

◆ ZRYTHM_BENCHMARKING

#define ZRYTHM_BENCHMARKING   (gZrythm && gZrythm->benchmarking_)

Definition at line 33 of file zrythm.h.

◆ ZRYTHM_BREAK_ON_ERROR

#define ZRYTHM_BREAK_ON_ERROR   (gZrythm && gZrythm->break_on_error_)

Definition at line 36 of file zrythm.h.

◆ ZRYTHM_GENERATING_PROJECT

#define ZRYTHM_GENERATING_PROJECT   (gZrythm->generating_project_)

Definition at line 34 of file zrythm.h.

◆ ZRYTHM_HAVE_UI

#define ZRYTHM_HAVE_UI   (gZrythm && gZrythm->have_ui_)

Definition at line 35 of file zrythm.h.

◆ ZRYTHM_USE_OPTIMIZED_DSP

#define ZRYTHM_USE_OPTIMIZED_DSP   (Q_LIKELY (gZrythm->use_optimized_dsp_))

Definition at line 38 of file zrythm.h.

Function Documentation

◆ fetch_latest_release_ver_async()

void zrythm::Zrythm::fetch_latest_release_ver_async ( networking::URL::GetContentsAsyncCallback callback)
static
Parameters
callbackA GAsyncReadyCallback to call when the request is satisfied.
callback_dataData to pass to callback.

◆ get_version()

utils::Utf8String zrythm::Zrythm::get_version ( bool with_v)
static

Returns the version string.

Parameters
with_vInclude a starting "v".

◆ get_version_with_capabilities()

void zrythm::Zrythm::get_version_with_capabilities ( char * buf,
bool include_system_info )
static

Returns the version and the capabilities.

Parameters
bufBuffer to write the string to.
include_system_infoWhether to include additional system info (for bug reports).

◆ getVersion()

QString zrythm::Zrythm::getVersion ( ) const
inline

Definition at line 69 of file zrythm.h.

◆ init_user_dirs_and_files()

void zrythm::Zrythm::init_user_dirs_and_files ( )

Initializes/creates the default dirs/files in the user directory.

Exceptions
ZrythmExceptionIf an error occured.

◆ is_release()

bool zrythm::Zrythm::is_release ( bool official)
static

Returns whether the current Zrythm version is a release version.

Note
This only does regex checking.

◆ pre_init()

void zrythm::Zrythm::pre_init ( std::optional< std::filesystem::path > exe_path,
bool have_ui,
bool optimized_dsp )

Called before init().

TODO: check if can be merged into init().

Parameters
have_uiWhether Zrythm is instantiated with a UI (false if headless).
testingWhether this is a unit test.

Variable Documentation

◆ benchmarking_

bool zrythm::Zrythm::benchmarking_ = false

Whether currently running under the benchmarker.

Definition at line 214 of file zrythm.h.

◆ break_on_error_

bool zrythm::Zrythm::break_on_error_ = false

Whether to abort() on an error log message.

Definition at line 167 of file zrythm.h.

◆ chord_preset_pack_manager_

std::unique_ptr<ChordPresetPackManager> zrythm::Zrythm::chord_preset_pack_manager_

Chord preset pack manager.

Definition at line 204 of file zrythm.h.

◆ create_project_path_

std::filesystem::path zrythm::Zrythm::create_project_path_

Path to create a project in, including its title.

Definition at line 147 of file zrythm.h.

◆ creating_project_

bool zrythm::Zrythm::creating_project_ = false

Whether creating a new project, either from a template or blank.

Definition at line 144 of file zrythm.h.

◆ debug_

bool zrythm::Zrythm::debug_ = false

In debug mode or not (determined by GSetting).

Definition at line 164 of file zrythm.h.

◆ exe_path_

std::filesystem::path zrythm::Zrythm::exe_path_

argv[0].

Definition at line 132 of file zrythm.h.

◆ generating_project_

bool zrythm::Zrythm::generating_project_ = false

Whether this is a dummy instance used when generating projects.

Definition at line 171 of file zrythm.h.

◆ have_ui_

bool zrythm::Zrythm::have_ui_ = false

1 if Zrythm has a UI, 0 if headless (eg, when unit-testing).

Definition at line 175 of file zrythm.h.

◆ lsp_dsp_context_

std::unique_ptr<DspContextRAII> zrythm::Zrythm::lsp_dsp_context_

LSP DSP context for the main thread.

Definition at line 209 of file zrythm.h.

◆ open_filename_

std::filesystem::path zrythm::Zrythm::open_filename_

Filename to open passed through the command line.

Used only when a filename is passed, eg, zrytm myproject.zpj

Definition at line 154 of file zrythm.h.

◆ open_newer_backup_

bool zrythm::Zrythm::open_newer_backup_ = false

Whether to open a newer backup if found.

This is only used during tests where there is no UI to choose.

Definition at line 188 of file zrythm.h.

◆ opening_template_

bool zrythm::Zrythm::opening_template_ = false

Whether the open file is a template to be used to create a new project from.

Definition at line 141 of file zrythm.h.

◆ pipewire_pid_

ProcessId zrythm::Zrythm::pipewire_pid_ = 0

Process ID for pipewire (used in tests).

Definition at line 201 of file zrythm.h.

◆ settings_

std::unique_ptr<Settings> zrythm::Zrythm::settings_

Application settings.

Definition at line 137 of file zrythm.h.

◆ symap_

Symap zrythm::Zrythm::symap_

String interner for internal things.

Definition at line 159 of file zrythm.h.

◆ undo_stack_len_

int zrythm::Zrythm::undo_stack_len_ = 0

Undo stack length, used during tests.

Definition at line 181 of file zrythm.h.

◆ use_optimized_dsp_

bool zrythm::Zrythm::use_optimized_dsp_ = false

Whether to use optimized DSP when available.

Definition at line 178 of file zrythm.h.

◆ use_pipewire_in_tests_

bool zrythm::Zrythm::use_pipewire_in_tests_ = false

Whether to use pipewire in tests.

If this is false, the dummy engine will be used.

Some tests do sample rate changes so it's more convenient to use the dummy engine instead.

Definition at line 198 of file zrythm.h.

Properties

◆ version

QML_ELEMENT QString zrythm::Zrythm::version
read

Definition at line 49 of file zrythm.h.