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

Automation track. More...

#include "zrythm-config.h"
#include <stdbool.h>
#include "dsp/automation_point.h"
#include "dsp/port.h"
#include "dsp/position.h"
#include "dsp/region.h"
Include dependency graph for automation_track.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  AutomationTrack
 

Macros

#define MAX_AUTOMATION_POINTS   1200
 
#define AUTOMATION_RECORDING_TOUCH_REL_MS   800
 Release time in ms when in touch record mode.
 

Typedefs

typedef struct _AutomationTrackWidget AutomationTrackWidget
 

Enumerations

enum  AutomationMode { AUTOMATION_MODE_READ , AUTOMATION_MODE_RECORD , AUTOMATION_MODE_OFF , NUM_AUTOMATION_MODES }
 
enum  AutomationRecordMode { AUTOMATION_RECORD_MODE_TOUCH , AUTOMATION_RECORD_MODE_LATCH , NUM_AUTOMATION_RECORD_MODES }
 

Functions

COLD NONNULL_ARGS (1) void automation_tracklist_init_loaded(AutomationTracklist *self
 Inits a loaded AutomationTracklist.
 
NONNULL AutomationTrackautomation_track_new (Port *port)
 Creates an automation track for the given Port.
 
NONNULL bool automation_track_validate (AutomationTrack *self)
 
void automation_mode_get_localized (AutomationMode mode, char *buf)
 Gets the automation mode as a localized string.
 
void automation_record_mode_get_localized (AutomationRecordMode mode, char *buf)
 Gets the automation mode as a localized string.
 
NONNULL AutomationTrackautomation_track_find_from_port_id (PortIdentifier *id, bool basic_search)
 
HOT AutomationTrackautomation_track_find_from_port (Port *port, Track *track, bool basic_search)
 Finds the AutomationTrack associated with port.
 
void automation_track_set_automation_mode (AutomationTrack *self, AutomationMode mode, bool fire_events)
 
NONNULL AutomationTracklistautomation_track_get_automation_tracklist (AutomationTrack *self)
 
HOT NONNULL bool automation_track_should_read_automation (AutomationTrack *at, gint64 cur_time)
 Returns whether the automation in the automation track should be read.
 
HOT NONNULL bool automation_track_should_be_recording (const AutomationTrack *const at, const gint64 cur_time, const bool record_aps)
 Returns if the automation track should currently be recording data.
 
NONNULL void automation_track_add_region (AutomationTrack *self, ZRegion *region)
 Adds an automation ZRegion to the AutomationTrack.
 
NONNULL void automation_track_insert_region (AutomationTrack *self, ZRegion *region, int idx)
 Inserts an automation ZRegion to the AutomationTrack at the given index.
 
NONNULL void automation_track_update_positions (AutomationTrack *self, bool from_ticks, bool bpm_change)
 Returns the visible y offset from the top of the track widget.
 
NONNULL void automation_track_set_index (AutomationTrack *self, int index)
 Sets the index of the AutomationTrack in the AutomationTracklist.
 
NONNULL AutomationTrackautomation_track_clone (AutomationTrack *src)
 Clones the AutomationTrack.
 
NONNULL Trackautomation_track_get_track (AutomationTrack *self)
 
NONNULL AutomationPointautomation_track_get_ap_before_pos (const AutomationTrack *self, const Position *pos, bool ends_after, bool use_snapshots)
 Returns the automation point before the Position on the timeline.
 
ZRegionautomation_track_get_region_before_pos (const AutomationTrack *self, const Position *pos, bool ends_after, bool use_snapshots)
 Returns the ZRegion that starts before given Position, if any.
 
NONNULL void automation_track_unselect_all (AutomationTrack *self)
 Unselects all arranger objects.
 
NONNULL void automation_track_remove_region (AutomationTrack *self, ZRegion *region)
 Removes a region from the automation track.
 
NONNULL void automation_track_clear (AutomationTrack *self)
 Removes and frees all arranger objects recursively.
 
NONNULL float automation_track_get_val_at_pos (AutomationTrack *self, Position *pos, bool normalized, bool ends_after, bool use_snapshots)
 Returns the actual parameter value at the given position.
 
NONNULL int automation_track_get_y_px_from_normalized_val (AutomationTrack *self, float normalized_val)
 Returns the y pixels from the value based on the allocation of the automation track.
 
NONNULL ZRegionautomation_track_get_last_region (AutomationTrack *self)
 Gets the last ZRegion in the AutomationTrack.
 
NONNULL void automation_track_set_caches (AutomationTrack *self, CacheTypes types)
 
NONNULL bool automation_track_contains_automation (const AutomationTrack *self)
 
NONNULL bool automation_track_verify (AutomationTrack *self)
 
NONNULL void automation_track_free (AutomationTrack *at)
 Frees the automation track.
 

Variables

COLD AutomationTracklistatl
 

Detailed Description

Automation track.

Definition in file automation_track.h.

Typedef Documentation

◆ AutomationTrackWidget

typedef struct _AutomationTrackWidget AutomationTrackWidget

Definition at line 23 of file automation_track.h.