28 template <
typename Interface>
51 std::optional<adsr_envelope> iEnvelope;
float amplitude() const final
audio_sample_rate sample_rate() const final
adsr_envelope const & envelope() const final
void clear_envelope() final
void set_amplitude(float aAmplitude) final
float apply_envelope(audio_sample_index aIndex, audio_sample_count aLength) const
bool has_envelope() const final
void set_envelope(adsr_envelope const &aEnvelope) final
void set_sample_rate(audio_sample_rate aSampleRate) override
std::uint64_t audio_sample_count
std::uint64_t audio_sample_index
std::uint64_t audio_sample_rate