add optional modulators to synth/voices

This commit is contained in:
2025-05-16 13:44:15 +02:00
parent 2b077a13a2
commit 8f69b4fcf8
4 changed files with 8 additions and 6 deletions

View File

@@ -1,10 +1,11 @@
#pragma once
#include <span>
namespace trnr {
template <typename t_sample>
struct ivoice {
virtual ~ivoice() = default;
virtual void process_samples(t_sample** _outputs, int _start_index, int _block_size) = 0;
virtual void process_samples(t_sample** _outputs, int _start_index, int _block_size, std::span<std::span<t_sample>> _modulators = {}) = 0;
virtual bool is_busy() = 0;
virtual void set_samplerate(double samplerate) = 0;
virtual void note_on(int _note, float _velocity) = 0;