mirror of
https://github.com/RGBCube/serenity
synced 2025-06-01 12:08:14 +00:00
LibDSP: Improve const correctness
This commit is contained in:
parent
4a6ebb8beb
commit
bcb331b862
8 changed files with 23 additions and 22 deletions
|
@ -66,7 +66,7 @@ Signal Classic::process_impl(Signal const& input_signal)
|
|||
}
|
||||
|
||||
// Linear ADSR envelope with no peak adjustment.
|
||||
double Classic::volume_from_envelope(Envelope const& envelope)
|
||||
double Classic::volume_from_envelope(Envelope const& envelope) const
|
||||
{
|
||||
switch (static_cast<EnvelopeState>(envelope)) {
|
||||
case EnvelopeState::Off:
|
||||
|
@ -102,12 +102,12 @@ double Classic::wave_position(u8 note)
|
|||
VERIFY_NOT_REACHED();
|
||||
}
|
||||
|
||||
double Classic::samples_per_cycle(u8 note)
|
||||
double Classic::samples_per_cycle(u8 note) const
|
||||
{
|
||||
return m_transport->sample_rate() / note_frequencies[note];
|
||||
}
|
||||
|
||||
double Classic::sin_position(u8 note)
|
||||
double Classic::sin_position(u8 note) const
|
||||
{
|
||||
double spc = samples_per_cycle(note);
|
||||
double cycle_pos = m_transport->time() / spc;
|
||||
|
@ -115,14 +115,14 @@ double Classic::sin_position(u8 note)
|
|||
}
|
||||
|
||||
// Absolute value of the saw wave "flips" the negative portion into the positive, creating a ramp up and down.
|
||||
double Classic::triangle_position(u8 note)
|
||||
double Classic::triangle_position(u8 note) const
|
||||
{
|
||||
double saw = saw_position(note);
|
||||
return AK::fabs(saw) * 2 - 1;
|
||||
}
|
||||
|
||||
// The first half of the cycle period is 1, the other half -1.
|
||||
double Classic::square_position(u8 note)
|
||||
double Classic::square_position(u8 note) const
|
||||
{
|
||||
double spc = samples_per_cycle(note);
|
||||
double progress = AK::fmod(static_cast<double>(m_transport->time()), spc) / spc;
|
||||
|
@ -130,7 +130,7 @@ double Classic::square_position(u8 note)
|
|||
}
|
||||
|
||||
// Modulus creates inverse saw, which we need to flip and scale.
|
||||
double Classic::saw_position(u8 note)
|
||||
double Classic::saw_position(u8 note) const
|
||||
{
|
||||
double spc = samples_per_cycle(note);
|
||||
double unscaled = spc - AK::fmod(static_cast<double>(m_transport->time()), spc);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue