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

Safe HaskellNone
LanguageHaskell98

Synthesizer.LLVM.Filter.Allpass

Synopsis

Documentation

data Parameter a :: * -> *

Instances

Functor Parameter 
Applicative Parameter 
Foldable Parameter 
Traversable Parameter 
C a v => C a (Parameter v) 
Show a => Show (Parameter a) 
Storable a => Storable (Parameter a) 
((~) * a (Scalar v), PseudoModule v, RationalConstant a, C a, C v) => C (Parameter a) v v Source 
(C v, (~) * (Element v) a, C a, IntegerConstant a, PseudoRing v, PseudoRing a) => C (Parameter a) v v Source 
type Struct n (Parameter a) = Struct n a 
type Repr f (Parameter a) = Parameter (Repr f a) 
type Struct (Parameter a) = Struct a 
type Size (Parameter v) = Size v 
type Element (Parameter v) = Parameter (Element v) 
type ValueTuple (Parameter a) = Parameter (ValueTuple a) 
type Registers (Parameter a) = Parameter (Registers a) Source 
type Input (Parameter a) v = v Source 
type Output (Parameter a) v = v Source 
type Input (Parameter a) v = v Source 
type Output (Parameter a) v = v Source 

data CascadeParameter n a Source

Instances

C n a => C n (CascadeParameter n a) Source 
Functor (CascadeParameter n) Source 
Applicative (CascadeParameter n) Source 
Foldable (CascadeParameter n) Source 
Traversable (CascadeParameter n) Source 
Storable a => Storable (CascadeParameter n a) Source 
C a => C (CascadeParameter n a) Source 
C a => C (CascadeParameter n a) Source 
C a => C (CascadeParameter n a) Source 
C v => C (CascadeParameter n v) Source 
Simple v => Simple (CascadeParameter n v) Source 
Undefined a => Undefined (CascadeParameter n a) Source 
Zero a => Zero (CascadeParameter n a) Source 
MakeValueTuple a => MakeValueTuple (CascadeParameter n a) Source 
Phi a => Phi (CascadeParameter n a) Source 
Flatten a => Flatten (CascadeParameter n a) Source 
MakeArguments (CascadeParameter n a) Source 
((~) * a (Scalar v), PseudoModule v, RationalConstant a, C a, C v, Natural n) => C (CascadeParameter n a) v v Source 
(Natural n, C v, (~) * (Element v) a, PseudoRing a, IntegerConstant a, C a, PseudoRing v, RationalConstant v) => C (CascadeParameter n a) v v Source 
type Struct n (CascadeParameter n a) = Struct n (Parameter a) Source 
type Repr f (CascadeParameter n a) = Repr f (Parameter a) Source 
type Arguments f (CascadeParameter n a) = f (CascadeParameter n a) Source 
type Struct (CascadeParameter n a) = Struct a Source 
type Size (CascadeParameter n v) = Size v Source 
type Element (CascadeParameter n v) = CascadeParameter n (Element v) Source 
type ValueTuple (CascadeParameter n a) = CascadeParameter n (ValueTuple a) Source 
type Registers (CascadeParameter n a) = CascadeParameter n (Registers a) Source 
type Input (CascadeParameter n a) v = v Source 
type Output (CascadeParameter n a) v = v Source 
type Input (CascadeParameter n a) v = v Source 
type Output (CascadeParameter n a) v = v Source 

causal :: (C process, IntegerConstant a, a ~ Scalar v, PseudoModule v, C v) => process (Parameter a, v) v Source

cascade :: (C process, RationalConstant a, a ~ Scalar v, PseudoModule v, C v, Natural n) => process (CascadeParameter n a, v) v Source

phaser :: (C process, RationalConstant a, RationalConstant v, a ~ Scalar v, PseudoModule v, C v, Natural n) => process (CascadeParameter n a, v) v Source

cascadePipeline :: (C process, Positive n, C a, Repr Value a ~ ar, PseudoRing a, IntegerConstant a, C a, C n a) => process (T (CascadeParameter n a), T a) (T a) Source

Fast implementation of cascade using vector instructions. However, there must be at least one pipeline stage, primitive element types and we get a delay by the number of pipeline stages.

phaserPipeline :: (C process, Positive n, PseudoRing a, RationalConstant a, C a, C n a, Repr Value a ~ Value a) => process (CascadeParameter n (Value a), Value a) (Value a) Source

causalPacked :: (C process, C v, Element v ~ a, C a, IntegerConstant a, PseudoRing v, PseudoRing a) => process (Parameter a, v) v Source

cascadePacked :: (C process, Natural n, C v, Element v ~ a, PseudoRing a, IntegerConstant a, C a, PseudoRing v, RationalConstant v) => process (CascadeParameter n a, v) v Source

phaserPacked :: (C process, Natural n, C v, Element v ~ a, PseudoRing a, IntegerConstant a, C a, PseudoRing v, RationalConstant v) => process (CascadeParameter n a, v) v Source

causalP :: (RationalConstant a, a ~ Scalar v, PseudoModule v, C v) => T p (Parameter a, v) v Source

Deprecated: use causal instead

cascadeP :: (RationalConstant a, a ~ Scalar v, PseudoModule v, C v, Natural n) => T p (CascadeParameter n a, v) v Source

Deprecated: use cascade instead

phaserP :: (RationalConstant a, RationalConstant v, a ~ Scalar v, PseudoModule v, C v, Natural n) => T p (CascadeParameter n a, v) v Source

Deprecated: use phaser instead

causalPackedP :: (C v, Element v ~ a, C a, IntegerConstant a, PseudoRing v, PseudoRing a) => T p (Parameter a, v) v Source

Deprecated: use causalPacked instead

cascadePackedP :: (Natural n, C v, Element v ~ a, PseudoRing a, IntegerConstant a, C a, PseudoRing v, RationalConstant v) => T p (CascadeParameter n a, v) v Source

Deprecated: use cascadePacked instead

phaserPackedP :: (Natural n, C v, Element v ~ a, PseudoRing a, IntegerConstant a, C a, PseudoRing v, RationalConstant v) => T p (CascadeParameter n a, v) v Source

Deprecated: use phaserPacked instead