Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
scale_object.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2018-2022 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
9
10#ifndef __SCHEMAS_AUDIO_SCALE_OBJECT_H__
11#define __SCHEMAS_AUDIO_SCALE_OBJECT_H__
12
13#include <cstdint>
14
17#include "utils/yaml.h"
18
19typedef struct ScaleObject_v1
20{
22 int index;
23 MusicalScale_v2 * scale;
25
26static const cyaml_schema_field_t scale_object_fields_schema_v1[] = {
27 YAML_FIELD_MAPPING_EMBEDDED (
29 base,
30 arranger_object_fields_schema_v1),
31 YAML_FIELD_INT (ScaleObject_v1, index),
32 YAML_FIELD_MAPPING_PTR (ScaleObject_v1, scale, musical_scale_fields_schema_v2),
33 YAML_FIELD_IGNORE_OPT ("schema_version"),
34
35 CYAML_FIELD_END
36};
37
38static const cyaml_schema_value_t scale_object_schema_v1 = {
39 YAML_VALUE_PTR (ScaleObject_v1, scale_object_fields_schema_v1),
40};
41
42#endif
Arranger object schema.
Musical scale schema.
YAML utils.