1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 22:37:36 +00:00

Piano: Allow per-track controls (again)

This makes Piano exactly as usable as when I started the large refactor
some years ago, which *sounds* like I'm a terrible person but now it (1)
looks nicer and (2) has a flexible backend that can already deal with
aribtrary kinds of processors on any track.
This commit is contained in:
kleines Filmröllchen 2023-02-27 15:31:43 +01:00 committed by Jelle Raaijmakers
parent d757027638
commit 0ab19dc4cd
9 changed files with 92 additions and 45 deletions

View file

@ -28,11 +28,13 @@ public:
NonnullRefPtr<DSP::NoteTrack> current_track() { return *m_tracks[m_current_track]; }
size_t track_count() { return m_tracks.size(); };
size_t current_track_index() const { return m_current_track; }
void set_current_track(size_t track_index)
{
VERIFY(track_index < track_count());
m_current_track = track_index;
}
Span<NonnullRefPtr<DSP::NoteTrack>> tracks() { return m_tracks.span(); }
NonnullRefPtr<DSP::Transport> transport() const { return m_transport; }
NonnullRefPtr<DSP::Keyboard> keyboard() const { return m_keyboard; }