Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
group_target_track.h File Reference

Common logic for tracks that can be group targets. More...

#include <stdbool.h>
Include dependency graph for group_target_track.h:

Go to the source code of this file.

Macros

#define TRACK_CAN_BE_GROUP_TARGET(tr)
 

Functions

void group_target_track_init_loaded (Track *self)
 
void group_target_track_init (Track *track)
 
void group_target_track_remove_child (Track *self, unsigned int child_name_hash, bool disconnect, bool recalc_graph, bool pub_events)
 Removes a child track from the list of children.
 
void group_target_track_remove_all_children (Track *self, bool disconnect, bool recalc_graph, bool pub_events)
 Remove all known children.
 
void group_target_track_add_child (Track *self, unsigned int child_name_hash, bool connect, bool recalc_graph, bool pub_events)
 Adds a child track to the list of children.
 
bool group_target_track_validate (Track *self)
 
void group_target_track_add_children (Track *self, unsigned int *children, int num_children, bool connect, bool recalc_graph, bool pub_events)
 
NONNULL PURE int group_target_track_find_child (Track *self, unsigned int track_name_hash)
 Returns the index of the child matching the given hash.
 

Detailed Description

Common logic for tracks that can be group targets.

Definition in file group_target_track.h.

Macro Definition Documentation

◆ TRACK_CAN_BE_GROUP_TARGET

#define TRACK_CAN_BE_GROUP_TARGET (   tr)
Value:
(IS_TRACK (tr) \
&& (tr->type == TRACK_TYPE_AUDIO_GROUP || tr->type == TRACK_TYPE_MIDI_GROUP || tr->type == TRACK_TYPE_INSTRUMENT || tr->type == TRACK_TYPE_MASTER))
@ TRACK_TYPE_INSTRUMENT
Instrument tracks must have an Instrument plugin at the first slot and they produce audio output.
Definition track.h:90
@ TRACK_TYPE_AUDIO_GROUP
Group Tracks are used for grouping audio signals, for example routing multiple drum tracks to a "Drum...
Definition track.h:145
@ TRACK_TYPE_MASTER
The master track is a special type of group track.
Definition track.h:103
@ TRACK_TYPE_MIDI_GROUP
Same with audio group but for MIDI signals.
Definition track.h:158

Definition at line 17 of file group_target_track.h.

Function Documentation

◆ group_target_track_add_child()

void group_target_track_add_child ( Track self,
unsigned int  child_name_hash,
bool  connect,
bool  recalc_graph,
bool  pub_events 
)

Adds a child track to the list of children.

Parameters
connectConnect the child to the group track.

◆ group_target_track_remove_all_children()

void group_target_track_remove_all_children ( Track self,
bool  disconnect,
bool  recalc_graph,
bool  pub_events 
)

Remove all known children.

Parameters
disconnectAlso route the children to "None".