Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
region_link_group.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2020-2021 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __AUDIO_REGION_LINK_GROUP_H__
11#define __AUDIO_REGION_LINK_GROUP_H__
12
14
15typedef struct Region Region;
16
23#define REGION_LINK_GROUP_MAGIC 1222013
24#define IS_REGION_LINK_GROUP(x) \
25 (((RegionLinkGroup *) (x))->magic == REGION_LINK_GROUP_MAGIC)
26
30typedef struct RegionLinkGroup
31{
34 int num_ids;
35 size_t ids_size;
36
37 int magic;
38
42
43NONNULL void
44region_link_group_init_loaded (RegionLinkGroup * self);
45
47region_link_group_new (int idx);
48
49NONNULL void
50region_link_group_add_region (RegionLinkGroup * self, Region * region);
51
59NONNULL void
61 RegionLinkGroup * self,
62 Region * region,
63 bool autoremove_last_region_and_group,
64 bool update_identifier);
65
66NONNULL bool
67region_link_group_contains_region (RegionLinkGroup * self, Region * region);
68
69NONNULL void
70region_link_group_print (RegionLinkGroup * self);
71
78NONNULL void
80
81NONNULL bool
82region_link_group_validate (RegionLinkGroup * self);
83
85region_link_group_clone (const RegionLinkGroup * src);
86
87void
88region_link_group_free (RegionLinkGroup * self);
89
94#endif
NONNULL void region_link_group_remove_region(RegionLinkGroup *self, Region *region, bool autoremove_last_region_and_group, bool update_identifier)
Remove the region from the link group.
NONNULL void region_link_group_update(RegionLinkGroup *self, Region *region)
Updates all other regions in the link group.
Region identifier.
Index/identifier for a Region, so we can get Region objects quickly with it without searching by name...
A group of linked regions.
int group_idx
Group index.
RegionIdentifier * ids
Identifiers for regions in this link group.
A region (clip) is an object on the timeline that contains either MidiNote's or AudioClip's.
Definition region.h:72