Sound Byte Libs 0.5.1-121-g3358a44
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
Loading...
Searching...
No Matches
sbl::dsp::primitives::SlewLimiter Class Reference

Detailed Description

Definition at line 23 of file slew_limiter.hpp.

#include <slew_limiter.hpp>

Public Member Functions

void set_rise_rate (float rate)
 Set maximum increase per sample.
 
void set_fall_rate (float rate)
 Set maximum decrease per sample.
 
void set_rate (float rate)
 Set both rise and fall rates to the same value.
 
float process (float target)
 Process one sample toward target with rate limiting.
 
float value () const
 Current output value.
 
float delta () const
 Distance from current state to last processed target (absolute)
 
void reset ()
 Reset to zero.
 
void reset (float initial)
 Reset to a specific value.
 

Member Function Documentation

◆ set_rise_rate()

void sbl::dsp::primitives::SlewLimiter::set_rise_rate ( float  rate)
inline

Set maximum increase per sample.

Note
All public methods are ISR-safe — bounded computation, no I/O.

Definition at line 28 of file slew_limiter.hpp.

◆ set_fall_rate()

void sbl::dsp::primitives::SlewLimiter::set_fall_rate ( float  rate)
inline

Set maximum decrease per sample.

Definition at line 31 of file slew_limiter.hpp.

◆ set_rate()

void sbl::dsp::primitives::SlewLimiter::set_rate ( float  rate)
inline

Set both rise and fall rates to the same value.

Definition at line 34 of file slew_limiter.hpp.

Referenced by sbl::dsp::modules::TapeDelay::process().

◆ process()

float sbl::dsp::primitives::SlewLimiter::process ( float  target)
inline

Process one sample toward target with rate limiting.

Parameters
targetTarget value
Returns
Rate-limited output

Definition at line 41 of file slew_limiter.hpp.

Referenced by sbl::dsp::modules::TapeDelay::process().

◆ value()

float sbl::dsp::primitives::SlewLimiter::value ( ) const
inline

Current output value.

Definition at line 65 of file slew_limiter.hpp.

Referenced by sbl::dsp::modules::TapeDelay::process().

◆ delta()

float sbl::dsp::primitives::SlewLimiter::delta ( ) const
inline

Distance from current state to last processed target (absolute)

Definition at line 68 of file slew_limiter.hpp.

Referenced by sbl::dsp::modules::TapeDelay::process().

◆ reset() [1/2]

void sbl::dsp::primitives::SlewLimiter::reset ( )
inline

Reset to zero.

Definition at line 71 of file slew_limiter.hpp.

Referenced by sbl::dsp::modules::TapeDelay::process().

◆ reset() [2/2]

void sbl::dsp::primitives::SlewLimiter::reset ( float  initial)
inline

Reset to a specific value.

Definition at line 74 of file slew_limiter.hpp.


The documentation for this class was generated from the following file: