Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
chord_preset_pack_manager.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2022-2023 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __SETTINGS_CHORD_PRESET_PACK_MANAGERH__
11#define __SETTINGS_CHORD_PRESET_PACK_MANAGERH__
12
13#include "zrythm-config.h"
14
15#include <stdbool.h>
16
18
25#define CHORD_PRESET_PACK_MANAGER \
26 (ZRYTHM->chord_preset_pack_manager)
27
32{
36 GPtrArray * pset_packs;
38
46chord_preset_pack_manager_new (bool scan_for_packs);
47
48int
49chord_preset_pack_manager_get_num_packs (
50 const ChordPresetPackManager * self);
51
53chord_preset_pack_manager_get_pack_at (
54 const ChordPresetPackManager * self,
55 int idx);
56
57NONNULL ChordPresetPack *
58chord_preset_pack_manager_get_pack_for_preset (
60 const ChordPreset * pset);
61
62int
63chord_preset_pack_manager_get_pack_index (
65 ChordPresetPack * pack);
66
70int
73 ChordPreset * pset);
74
78void
81 ChordPresetPack * pack,
82 const ChordPreset * pset,
83 bool serialize);
84
88void
91 const ChordPresetPack * pack,
92 bool serialize);
93
94void
95chord_preset_pack_manager_delete_pack (
97 ChordPresetPack * pack,
98 bool serialize);
99
100void
101chord_preset_pack_manager_delete_preset (
103 ChordPreset * pset,
104 bool serialize);
105
111WARN_UNUSED_RESULT bool
114 GError ** error);
115
116void
117chord_preset_pack_manager_free (
118 const ChordPresetPackManager * self);
119
124#endif
Chord preset pack.
void chord_preset_pack_manager_add_preset(ChordPresetPackManager *self, ChordPresetPack *pack, const ChordPreset *pset, bool serialize)
Add a copy of the given preset.
WARN_UNUSED_RESULT bool chord_preset_pack_manager_serialize(ChordPresetPackManager *self, GError **error)
Serializes the chord presets.
int chord_preset_pack_manager_get_pset_index(ChordPresetPackManager *self, ChordPreset *pset)
Returns the preset index in its pack.
ChordPresetPackManager * chord_preset_pack_manager_new(bool scan_for_packs)
Creates a new chord preset pack manager.
void chord_preset_pack_manager_add_pack(ChordPresetPackManager *self, const ChordPresetPack *pack, bool serialize)
Add a copy of the given pack.
Chord preset pack manager.
GPtrArray * pset_packs
Scanned preset packs.
Chord preset pack.
A preset of chord descriptors.