sst-filters
Filters submodule for the Surge Synthesizer
Enumerations | Functions
sst::filters::K35Filter Namespace Reference

This namespace contains an adaptation of the filter from https://github.com/TheWaveWarden/odin2/blob/master/Source/audio/Filters/Korg35Filter.cpp. More...

Enumerations

enum  k35_coeffs {
  k35_G = 0, k35_lb, k35_hb, k35_k,
  k35_alpha, k35_saturation, k35_saturation_blend, k35_saturation_blend_inv
}
 
enum  k35_state { k35_lz, k35_hz, k35_2z }
 

Functions

template<typename TuningProvider >
void makeCoefficients (FilterCoefficientMaker< TuningProvider > *cm, float freq, float reso, bool is_lowpass, float saturation, float sampleRate, float sampleRateInv, TuningProvider *provider)
 
void processCoeffs (QuadFilterUnitState *__restrict f)
 
__m128 process_lp (QuadFilterUnitState *__restrict f, __m128 input)
 
__m128 process_hp (QuadFilterUnitState *__restrict f, __m128 input)
 

Detailed Description

This namespace contains an adaptation of the filter from https://github.com/TheWaveWarden/odin2/blob/master/Source/audio/Filters/Korg35Filter.cpp.

Enumeration Type Documentation

◆ k35_coeffs

enum k35_coeffs
Enumerator
k35_G 
k35_lb 
k35_hb 
k35_k 
k35_alpha 
k35_saturation 
k35_saturation_blend 
k35_saturation_blend_inv 

◆ k35_state

enum k35_state
Enumerator
k35_lz 
k35_hz 
k35_2z 

Function Documentation

◆ makeCoefficients()

void sst::filters::K35Filter::makeCoefficients ( FilterCoefficientMaker< TuningProvider > *  cm,
float  freq,
float  reso,
bool  is_lowpass,
float  saturation,
float  sampleRate,
float  sampleRateInv,
TuningProvider *  provider 
)

◆ processCoeffs()

void sst::filters::K35Filter::processCoeffs ( QuadFilterUnitState *__restrict  f)

References A, and sst::filters::n_cm_coeffs.

Referenced by process_hp(), and process_lp().

◆ process_lp()

__m128 sst::filters::K35Filter::process_lp ( QuadFilterUnitState *__restrict  f,
__m128  input 
)

◆ process_hp()

__m128 sst::filters::K35Filter::process_hp ( QuadFilterUnitState *__restrict  f,
__m128  input 
)