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

The transport. More...

#include <dsp/transport.h>

Collaboration diagram for Transport:

Data Fields

int schema_version
 
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.
 
Position range_2
 
int has_range
 Whether range should be displayed or not.
 
int ticks_per_beat
 
int ticks_per_bar
 
int sixteenths_per_beat
 
int sixteenths_per_bar
 
nframes_t position
 Transport position in frames.
 
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.
 
signed_frame_t preroll_frames_remaining
 Recording preroll frames remaining.
 
signed_frame_t countin_frames_remaining
 Metronome countin frames remaining.
 
bool start_playback_on_midi_input
 Whether to start playback on MIDI input.
 
TransportRecordingMode recording_mode
 
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.
 
Portroll
 Roll/play MIDI port.
 
Portstop
 Stop MIDI port.
 
Portbackward
 Backward MIDI port.
 
Portforward
 Forward MIDI port.
 
Portloop_toggle
 Loop toggle MIDI port.
 
Portrec_toggle
 Rec toggle MIDI port.
 
PlayState play_state
 Play state.
 
gint64 last_manual_playhead_change
 Last timestamp the playhead position was changed manually.
 
AudioEngineaudio_engine
 Pointer to owner audio engine, if any.
 

Detailed Description

The transport.

Definition at line 191 of file transport.h.

Field Documentation

◆ audio_engine

AudioEngine* Transport::audio_engine

Pointer to owner audio engine, if any.

Definition at line 323 of file transport.h.

◆ backward

Port* Transport::backward

Backward MIDI port.

Definition at line 304 of file transport.h.

◆ countin_frames_remaining

signed_frame_t Transport::countin_frames_remaining

Metronome countin frames remaining.

Definition at line 263 of file transport.h.

◆ cue_pos

Position Transport::cue_pos

Cue point position.

Definition at line 202 of file transport.h.

◆ forward

Port* Transport::forward

Forward MIDI port.

Definition at line 307 of file transport.h.

◆ has_range

int Transport::has_range

Whether range should be displayed or not.

Definition at line 230 of file transport.h.

◆ last_manual_playhead_change

gint64 Transport::last_manual_playhead_change

Last timestamp the playhead position was changed manually.

Definition at line 320 of file transport.h.

◆ loop

bool Transport::loop

Looping or not.

Definition at line 247 of file transport.h.

◆ loop_end_pos

Position Transport::loop_end_pos

Loop end position.

Definition at line 208 of file transport.h.

◆ loop_start_pos

Position Transport::loop_start_pos

Loop start position.

Definition at line 205 of file transport.h.

◆ loop_toggle

Port* Transport::loop_toggle

Loop toggle MIDI port.

Definition at line 310 of file transport.h.

◆ metronome_enabled

bool Transport::metronome_enabled

Metronome enabled or not.

Definition at line 257 of file transport.h.

◆ paused

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 the audio engine post process. Paused signal from process thread.

Definition at line 280 of file transport.h.

◆ play_state

PlayState Transport::play_state

Play state.

Definition at line 316 of file transport.h.

◆ playhead_before_pause

Position Transport::playhead_before_pause

Position of the playhead before pausing.

Used by UndoableAction.

Definition at line 287 of file transport.h.

◆ playhead_pos

Position Transport::playhead_pos

Playhead position.

Definition at line 199 of file transport.h.

◆ position

nframes_t Transport::position

Transport position in frames.

FIXME is this used?

Definition at line 244 of file transport.h.

◆ preroll_frames_remaining

signed_frame_t Transport::preroll_frames_remaining

Recording preroll frames remaining.

Definition at line 260 of file transport.h.

◆ punch_in_pos

Position Transport::punch_in_pos

Punch in position.

Definition at line 211 of file transport.h.

◆ punch_mode

bool Transport::punch_mode

Whether punch in/out mode is enabled.

Definition at line 250 of file transport.h.

◆ punch_out_pos

Position Transport::punch_out_pos

Punch out position.

Definition at line 214 of file transport.h.

◆ range_1

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.

Definition at line 226 of file transport.h.

◆ range_2

Position Transport::range_2

Definition at line 227 of file transport.h.

◆ rec_toggle

Port* Transport::rec_toggle

Rec toggle MIDI port.

Definition at line 313 of file transport.h.

◆ recording

bool Transport::recording

Whether MIDI/audio recording is enabled (recording toggle in transport bar).

Definition at line 254 of file transport.h.

◆ recording_mode

TransportRecordingMode Transport::recording_mode

Definition at line 268 of file transport.h.

◆ roll

Port* Transport::roll

Roll/play MIDI port.

Any event received on this port will request a roll.

Definition at line 294 of file transport.h.

◆ schema_version

int Transport::schema_version

Definition at line 193 of file transport.h.

◆ sixteenths_per_bar

int Transport::sixteenths_per_bar

Definition at line 238 of file transport.h.

◆ sixteenths_per_beat

int Transport::sixteenths_per_beat

Definition at line 237 of file transport.h.

◆ start_playback_on_midi_input

bool Transport::start_playback_on_midi_input

Whether to start playback on MIDI input.

Definition at line 266 of file transport.h.

◆ stop

Port* Transport::stop

Stop MIDI port.

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

Definition at line 301 of file transport.h.

◆ ticks_per_bar

int Transport::ticks_per_bar

Definition at line 236 of file transport.h.

◆ ticks_per_beat

int Transport::ticks_per_beat

Definition at line 235 of file transport.h.

◆ total_bars

int Transport::total_bars

Total bars in the song.

Definition at line 196 of file transport.h.


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