Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
Tracklist Struct Reference

The Tracklist contains all the tracks in the Project. More...

#include <dsp/tracklist.h>

Collaboration diagram for Tracklist:

Data Fields

Tracktracks [MAX_TRACKS]
 All tracks that exist.
 
int num_tracks
 
Trackchord_track
 The chord track, for convenience.
 
Trackmarker_track
 The marker track, for convenience.
 
Tracktempo_track
 The tempo track, for convenience.
 
Trackmodulator_track
 The modulator track, for convenience.
 
Trackmaster_track
 The master track, for convenience.
 
TracklistWidgetwidget
 Non-pinned TracklistWidget.
 
PinnedTracklistWidgetpinned_widget
 PinnedTracklistWidget.
 
int pinned_tracks_cutoff
 Index starting from which tracks are unpinned.
 
bool swapping_tracks
 When this is true, some tracks may temporarily be moved beyond num_tracks.
 
SampleProcessorsample_processor
 Pointer to owner sample processor, if any.
 
Projectproject
 Pointer to owner project, if any.
 
int width
 Width of track widgets.
 

Detailed Description

The Tracklist contains all the tracks in the Project.

There should be a clear separation between the Tracklist and the Mixer. The Tracklist should be concerned with Tracks in the arranger, and the Mixer should be concerned with Channels, routing and Port connections.

Definition at line 60 of file tracklist.h.

Field Documentation

◆ chord_track

Track* Tracklist::chord_track

The chord track, for convenience.

Definition at line 85 of file tracklist.h.

◆ marker_track

Track* Tracklist::marker_track

The marker track, for convenience.

Definition at line 88 of file tracklist.h.

◆ master_track

Track* Tracklist::master_track

The master track, for convenience.

Definition at line 97 of file tracklist.h.

◆ modulator_track

Track* Tracklist::modulator_track

The modulator track, for convenience.

Definition at line 94 of file tracklist.h.

◆ num_tracks

int Tracklist::num_tracks

Definition at line 82 of file tracklist.h.

◆ pinned_tracks_cutoff

int Tracklist::pinned_tracks_cutoff

Index starting from which tracks are unpinned.

Tracks before this position will be considered as pinned.

Definition at line 110 of file tracklist.h.

◆ pinned_widget

PinnedTracklistWidget* Tracklist::pinned_widget

PinnedTracklistWidget.

Definition at line 103 of file tracklist.h.

◆ project

Project* Tracklist::project

Pointer to owner project, if any.

Definition at line 120 of file tracklist.h.

◆ sample_processor

SampleProcessor* Tracklist::sample_processor

Pointer to owner sample processor, if any.

Definition at line 117 of file tracklist.h.

◆ swapping_tracks

bool Tracklist::swapping_tracks

When this is true, some tracks may temporarily be moved beyond num_tracks.

Definition at line 114 of file tracklist.h.

◆ tempo_track

Track* Tracklist::tempo_track

The tempo track, for convenience.

Definition at line 91 of file tracklist.h.

◆ tracks

Track* Tracklist::tracks[MAX_TRACKS]

All tracks that exist.

These should always be sorted in the same way they should appear in the GUI and include hidden tracks.

Pinned tracks should have lower indices. Ie, the sequence must be: { pinned track, pinned track, pinned track, track, track, track, ... }

Definition at line 80 of file tracklist.h.

◆ widget

TracklistWidget* Tracklist::widget

Non-pinned TracklistWidget.

Definition at line 100 of file tracklist.h.

◆ width

int Tracklist::width

Width of track widgets.

Definition at line 123 of file tracklist.h.


The documentation for this struct was generated from the following file: