synthesizer-llvm-0.2.0.1: Efficient signal processing using runtime compilation

Synthesizer.LLVM.Filter.Allpass

Synopsis

Documentation

causalP :: (C a, C (T a) (T v), IsFirstClass a, IsSized a as, IsConst a, IsFirstClass v, IsSized v vs, IsConst v, IsArithmetic a) => T p (Parameter (Value a), Value v) (Value v)Source

cascadeP :: (C a, C (T a) (T v), IsFirstClass a, IsSized a as, IsConst a, IsFirstClass v, IsSized v vs, IsConst v, IsArithmetic a, Nat n) => T p (CascadeParameter n (Value a), Value v) (Value v)Source

phaserP :: (C a, C (T a) (T v), IsFirstClass a, IsSized a as, IsConst a, IsFirstClass v, IsSized v vs, IsConst v, IsFloating a, IsArithmetic v, Nat n) => T p (CascadeParameter n (Value a), Value v) (Value v)Source

cascadePipelineP :: (C a, IsFirstClass a, IsSized a as, Mul n as vas, Pos vas, IsPowerOf2 n, IsArithmetic a, IsPrimitive a, IsConst a) => T p (CascadeParameter n (Value a), Value a) (Value a)Source

Fast implementation of cascadeP using vector instructions. However, we are currently limited to powers of two, primitive element types and we get a delay by the number of pipeline stages.