Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
track.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2023 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __IO_TRACK_H__
11#define __IO_TRACK_H__
12
13#include "utils/types.h"
14
15#include <glib.h>
16
17#include <yyjson.h>
18
19TYPEDEF_STRUCT (ModulatorMacroProcessor);
20TYPEDEF_STRUCT (Track);
21TYPEDEF_STRUCT (TrackProcessor);
22TYPEDEF_STRUCT (AutomationTrack);
23
24bool
25modulator_macro_processor_serialize_to_json (
26 yyjson_mut_doc * doc,
27 yyjson_mut_val * mmp_obj,
28 const ModulatorMacroProcessor * mmp,
29 GError ** error);
30
31bool
32track_processor_serialize_to_json (
33 yyjson_mut_doc * doc,
34 yyjson_mut_val * tp_obj,
35 const TrackProcessor * tp,
36 GError ** error);
37
38bool
39automation_track_serialize_to_json (
40 yyjson_mut_doc * doc,
41 yyjson_mut_val * at_obj,
42 const AutomationTrack * at,
43 GError ** error);
44
45bool
46track_serialize_to_json (
47 yyjson_mut_doc * doc,
48 yyjson_mut_val * track_obj,
49 const Track * track,
50 GError ** error);
51
52bool
53modulator_macro_processor_deserialize_from_json (
54 yyjson_doc * doc,
55 yyjson_val * mmp_obj,
57 GError ** error);
58
59bool
60track_processor_deserialize_from_json (
61 yyjson_doc * doc,
62 yyjson_val * tp_obj,
63 TrackProcessor * tp,
64 GError ** error);
65
66bool
67automation_track_deserialize_from_json (
68 yyjson_doc * doc,
69 yyjson_val * at_obj,
70 AutomationTrack * at,
71 GError ** error);
72
73bool
74track_deserialize_from_json (
75 yyjson_doc * doc,
76 yyjson_val * track_obj,
77 Track * track,
78 GError ** error);
79
80#endif // __IO_TRACK_H__
Modulator macro button processor.
A TrackProcessor is a processor that is used as the first entry point when processing a track.
Track to be inserted into the Project's Tracklist.
Definition track.h:177
Custom types.