Zrythm
a highly automated and intuitive digital audio workstation
|
Uncategorized. More...
Data Structures | |
struct | Zrythm |
To be used throughout the program. More... | |
struct | ZrythmAppUiMessage |
UI message for the message queue. More... | |
struct | ZrythmApp |
The global struct. More... | |
Macros | |
#define | ZRYTHM (zrythm) |
#define | ZRYTHM_PROJECTS_DIR "projects" |
#define | MAX_RECENT_PROJECTS 20 |
#define | DEBUGGING (G_UNLIKELY (ZRYTHM && ZRYTHM->debug)) |
#define | ZRYTHM_TESTING (G_UNLIKELY (ZRYTHM && ZRYTHM->testing)) |
#define | ZRYTHM_GENERATING_PROJECT (ZRYTHM->generating_project) |
#define | ZRYTHM_HAVE_UI (ZRYTHM && ZRYTHM->have_ui) |
#define | ZRYTHM_USE_OPTIMIZED_DSP false |
Functions | |
void | zrythm_add_to_recent_projects (Zrythm *self, const char *filepath) |
void | zrythm_remove_recent_project (char *filepath) |
MALLOC char * | zrythm_get_version (bool with_v) |
Returns the version string. | |
bool | zrythm_is_release (bool official) |
Returns whether the current Zrythm version is a release version. | |
char * | zrythm_fetch_latest_release_ver_finish (GAsyncResult *result, GError **error) |
void | zrythm_fetch_latest_release_ver_async (GAsyncReadyCallback callback, gpointer callback_data) |
bool | zrythm_is_latest_release (const char *remote_latest_release) |
Returns whether the given release string is the latest release. | |
void | zrythm_get_version_with_capabilities (char *buf, bool include_system_info) |
Returns the version and the capabilities. | |
char * | zrythm_get_system_info (void) |
Returns system info (mainly used for bug reports). | |
char * | zrythm_get_default_user_dir (void) |
Returns the default user "zrythm" dir. | |
char * | zrythm_get_dir (ZrythmDirType type) |
Returns a Zrythm directory specified by type. | |
char * | zrythm_get_prefix (void) |
Returns the prefix or in the case of windows the root dir (C/program files/zrythm) or in the case of macos the bundle path. | |
char * | zrythm_get_user_dir (bool force_default) |
Gets the zrythm directory, either from the settings if non-empty, or the default ($XDG_DATA_DIR/zrythm). | |
NONNULL bool | zrythm_init_user_dirs_and_files (Zrythm *self, GError **error) |
Initializes/creates the default dirs/files in the user directory. | |
NONNULL void | zrythm_init_templates (Zrythm *self) |
Initializes the array of project templates. | |
Zrythm * | zrythm_new (const char *exe_path, bool have_ui, bool testing, bool optimized_dsp) |
Creates a new Zrythm instance. | |
void | zrythm_free (Zrythm *self) |
Frees the instance and any unfreed members. | |
ZrythmAppUiMessage * | zrythm_app_ui_message_new (GtkMessageType type, const char *msg) |
void | zrythm_app_ui_message_free (ZrythmAppUiMessage *self) |
ZrythmApp * | zrythm_app_new (int argc, const char **argv) |
Creates the Zrythm GApplication. | |
void | zrythm_app_set_progress_status (ZrythmApp *self, const char *text, const double perc) |
Sets the current status and progress percentage during loading. | |
void | zrythm_app_set_font_scale (ZrythmApp *self, double font_scale) |
void | zrythm_app_check_for_updates (ZrythmApp *self) |
Handles the logic for checking for updates on startup. | |
int | zrythm_app_prompt_for_project_func (ZrythmApp *self) |
Unlike the init thread, this will run in the main GTK thread. | |
ZrythmApp ** | zrythm_app_get (void) |
Returns a pointer to the global zrythm_app. | |
bool | zrythm_app_check_and_show_trial_limit_error (ZrythmApp *self) |
Shows the trial limitation error message. | |
Variables | |
Zrythm * | zrythm |
Global variable, should be available to all files. | |
ZrythmApp * | zrythm_app |
Global variable, should be available to all files. | |
Uncategorized.
#define ZRYTHM_GENERATING_PROJECT (ZRYTHM->generating_project) |
#define ZRYTHM_TESTING (G_UNLIKELY (ZRYTHM && ZRYTHM->testing)) |
enum ZrythmDirType |
Type of Zrythm directory.
Enumerator | |
---|---|
ZRYTHM_DIR_SYSTEM_PREFIX | The prefix, or in the case of windows installer the root dir (C/program files/zrythm), or in the case of macos installer the bundle path. In all cases, "share" is expected to be found in this dir. |
ZRYTHM_DIR_SYSTEM_BINDIR | "bin" under ZRYTHM_DIR_SYSTEM_PREFIX. |
ZRYTHM_DIR_SYSTEM_PARENT_DATADIR | "share" under ZRYTHM_DIR_SYSTEM_PREFIX. |
ZRYTHM_DIR_SYSTEM_PARENT_LIBDIR | libdir name under ZRYTHM_DIR_SYSTEM_PREFIX. |
ZRYTHM_DIR_SYSTEM_ZRYTHM_LIBDIR | libdir/zrythm |
ZRYTHM_DIR_SYSTEM_BUNDLED_PLUGINSDIR | libdir/zrythm/lv2 |
ZRYTHM_DIR_SYSTEM_LOCALEDIR | Localization under "share". |
ZRYTHM_DIR_SYSTEM_SOURCEVIEW_LANGUAGE_SPECS_DIR | "gtksourceview-5/language-specs" under "share". |
ZRYTHM_DIR_SYSTEM_BUNDLED_SOURCEVIEW_LANGUAGE_SPECS_DIR | "gtksourceview-5/language-specs" under "share/zrythm". |
ZRYTHM_DIR_SYSTEM_ZRYTHM_DATADIR | share/zrythm |
ZRYTHM_DIR_SYSTEM_SAMPLESDIR | Samples. |
ZRYTHM_DIR_SYSTEM_SCRIPTSDIR | Scripts. |
ZRYTHM_DIR_SYSTEM_THEMESDIR | Themes. |
ZRYTHM_DIR_SYSTEM_THEMES_CSS_DIR | CSS themes. |
ZRYTHM_DIR_SYSTEM_THEMES_ICONS_DIR | Icon themes. |
ZRYTHM_DIR_SYSTEM_SPECIAL_LV2_PLUGINS_DIR | Special external Zrythm plugins path (not part of the Zrythm source code). Used for ZLFO and other plugins. |
ZRYTHM_DIR_SYSTEM_FONTSDIR | The directory fonts/zrythm under datadir. |
ZRYTHM_DIR_SYSTEM_TEMPLATES | Project templates. |
ZRYTHM_DIR_USER_TOP | Main zrythm directory from gsettings. |
ZRYTHM_DIR_USER_PROJECTS | Subdirs of ZRYTHM_DIR_USER_TOP. |
ZRYTHM_DIR_USER_THEMES_CSS | User CSS themes. |
ZRYTHM_DIR_USER_THEMES_ICONS | User icon themes. |
ZRYTHM_DIR_USER_SCRIPTS | User scripts. |
ZRYTHM_DIR_USER_LOG | Log files. |
ZRYTHM_DIR_USER_PROFILING | Profiling files. |
ZRYTHM_DIR_USER_GDB | Gdb backtrace files. |
ZRYTHM_DIR_USER_BACKTRACE | Backtraces. |
bool zrythm_app_check_and_show_trial_limit_error | ( | ZrythmApp * | self | ) |
Shows the trial limitation error message.
ZrythmApp * zrythm_app_new | ( | int | argc, |
const char ** | argv | ||
) |
int zrythm_app_prompt_for_project_func | ( | ZrythmApp * | self | ) |
Unlike the init thread, this will run in the main GTK thread.
Do not put expensive logic here.
This should be ran after the expensive initialization has finished.
void zrythm_app_set_progress_status | ( | ZrythmApp * | self, |
const char * | text, | ||
const double | perc | ||
) |
Sets the current status and progress percentage during loading.
The splash screen then reads these values from the Zrythm struct.
void zrythm_fetch_latest_release_ver_async | ( | GAsyncReadyCallback | callback, |
gpointer | callback_data | ||
) |
callback | A GAsyncReadyCallback to call when the request is satisfied. |
callback_data | Data to pass to callback . |
char * zrythm_get_default_user_dir | ( | void | ) |
Returns the default user "zrythm" dir.
This is used when resetting or when the dir is not selected by the user yet.
char * zrythm_get_dir | ( | ZrythmDirType | type | ) |
Returns a Zrythm directory specified by type.
char * zrythm_get_prefix | ( | void | ) |
Returns the prefix or in the case of windows the root dir (C/program files/zrythm) or in the case of macos the bundle path.
In all cases, "share" is expected to be found in this dir.
char * zrythm_get_user_dir | ( | bool | force_default | ) |
Gets the zrythm directory, either from the settings if non-empty, or the default ($XDG_DATA_DIR/zrythm).
force_default | Ignore the settings and get the default dir. |
Must be free'd by caller.
MALLOC char * zrythm_get_version | ( | bool | with_v | ) |
Returns the version string.
Must be g_free()'d.
with_v | Include a starting "v". |
void zrythm_get_version_with_capabilities | ( | char * | buf, |
bool | include_system_info | ||
) |
Returns the version and the capabilities.
buf | Buffer to write the string to. |
include_system_info | Whether to include additional system info (for bug reports). |
NONNULL bool zrythm_init_user_dirs_and_files | ( | Zrythm * | self, |
GError ** | error | ||
) |
Initializes/creates the default dirs/files in the user directory.
bool zrythm_is_release | ( | bool | official | ) |
Returns whether the current Zrythm version is a release version.