Transport struct

The transport.

Contents

Public variables

int total_bars
Total bars in the song.
Position playhead_pos
Playhead position.
Position cue_pos
Cue point position.
Position loop_start_pos
Loop start position.
Position loop_end_pos
Loop end position.
Position punch_in_pos
Punch in position.
Position punch_out_pos
Punch out position.
Position range_1
Selected range.
int has_range
Whether range should be displayed or not.
nframes_t position
Transport position in frames.
int rolling
Transport speed (0=stop, 1=play).
bool loop
Looping or not.
bool punch_mode
Whether punch in/out mode is enabled.
bool recording
Whether MIDI/audio recording is enabled (recording toggle in transport bar).
bool metronome_enabled
Metronome enabled or not.
long preroll_frames_remaining
Preroll frames remaining.
long countin_frames_remaining
Countin frames remaining.
bool start_playback_on_midi_input
Whether to start playback on MIDI input.
ZixSem paused
This is set when record is toggled and is used to check if a new region should be created.
Position playhead_before_pause
Position of the playhead before pausing.
Port* roll
Roll/play MIDI port.
Port* stop
Stop MIDI port.
Port* backward
Backward MIDI port.
Port* forward
Forward MIDI port.
Port* loop_toggle
Loop toggle MIDI port.
Port* rec_toggle
Rec toggle MIDI port.
Play_State play_state
Play state.
gint64 last_manual_playhead_change
Last timestamp the playhead position was changed manually.
AudioEngine* audio_engine
Pointer to owner audio engine, if any.

Variable documentation

Position Transport::range_1

Selected range.

This is 2 points instead of start/end because the 2nd point can be dragged past the 1st point so the order gets swapped.

Should be compared each time to see which one is first.

nframes_t Transport::position

Transport position in frames.

FIXME is this used?

ZixSem Transport::paused

This is set when record is toggled and is used to check if a new region should be created.

It should be set to off after the first cycle it is processed in in the audio engine post process. Paused signal from process thread.

Position Transport::playhead_before_pause

Position of the playhead before pausing.

Used by UndoableAction.

Port* Transport::roll

Roll/play MIDI port.

Any event received on this port will request a roll.

Port* Transport::stop

Stop MIDI port.

Any event received on this port will request a stop/pause.