Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
marker_track.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2019-2020 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __AUDIO_MARKER_TRACK_H__
11#define __AUDIO_MARKER_TRACK_H__
12
13#include <cstdint>
14
15#include "dsp/track.h"
16
23#define P_MARKER_TRACK (TRACKLIST->marker_track)
24
25typedef struct Marker Marker;
26typedef struct _MarkerTrackWidget MarkerTrackWidget;
27
29typedef struct Track MarkerTrack;
30
34MarkerTrack *
35marker_track_default (int track_pos);
36
40void
42
46void
47marker_track_insert_marker (MarkerTrack * self, Marker * marker, int pos);
48
52void
53marker_track_add_marker (MarkerTrack * self, Marker * marker);
54
60void
61marker_track_clear (MarkerTrack * self);
62
66void
67marker_track_remove_marker (MarkerTrack * self, Marker * marker, int free);
68
69bool
70marker_track_validate (MarkerTrack * self);
71
75Marker *
77
81Marker *
83
88#endif
The backend for a timeline track.
void marker_track_clear(MarkerTrack *self)
Removes all objects from the marker track.
void marker_track_add_marker(MarkerTrack *self, Marker *marker)
Adds a marker to the track.
Marker * marker_track_get_start_marker(const Track *track)
Returns the start marker.
void marker_track_remove_marker(MarkerTrack *self, Marker *marker, int free)
Removes a marker, optionally freeing it.
MarkerTrack * marker_track_default(int track_pos)
Creates the default marker track.
Marker * marker_track_get_end_marker(const Track *track)
Returns the end marker.
void marker_track_init(Track *track)
Inits the marker track.
void marker_track_insert_marker(MarkerTrack *self, Marker *marker, int pos)
Inserts a marker to the track.
Marker for the MarkerTrack.
Definition marker.h:50
Track to be inserted into the Project's Tracklist.
Definition track.h:177
int pos
Position in the Tracklist.
Definition track.h:184