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

Safe HaskellNone
LanguageHaskell98

Synthesizer.LLVM.Filter.Butterworth

Documentation

parameter :: (Positive (n :*: SizeOf (Struct a)), Natural (n :*: UnknownSize), Natural n, C a, C a, RationalConstant a, Transcendental a) => Proxy n -> Passband -> T a -> T a -> CodeGenFunction r (ParameterValue n a) Source #

parameterCausal :: (Positive (n :*: SizeOf (Struct a)), Natural (n :*: UnknownSize), Natural n, C a, C a, RationalConstant a, Transcendental a) => Proxy n -> Passband -> T (T a, T a) (ParameterValue n a) Source #

data ParameterValue n a Source #

Instances
(Natural n, C a, Positive (n :*: UnknownSize)) => C (ParameterValue n a) Source # 
Instance details

Defined in Synthesizer.LLVM.Filter.SecondOrderCascade

Associated Types

type Struct (ParameterValue n a) :: Type

Methods

load :: Value (Ptr (Struct (ParameterValue n a))) -> CodeGenFunction r (ParameterValue n a)

store :: ParameterValue n a -> Value (Ptr (Struct (ParameterValue n a))) -> CodeGenFunction r ()

decompose :: Value (Struct (ParameterValue n a)) -> CodeGenFunction r (ParameterValue n a)

compose :: ParameterValue n a -> CodeGenFunction r (Value (Struct (ParameterValue n a)))

(Natural n, C a) => Phi (ParameterValue n a) Source # 
Instance details

Defined in Synthesizer.LLVM.Filter.SecondOrderCascade

Methods

phi :: BasicBlock -> ParameterValue n a -> CodeGenFunction r (ParameterValue n a)

addPhi :: BasicBlock -> ParameterValue n a -> ParameterValue n a -> CodeGenFunction r ()

(Natural n, C a) => Undefined (ParameterValue n a) Source # 
Instance details

Defined in Synthesizer.LLVM.Filter.SecondOrderCascade

Methods

undef :: ParameterValue n a

(Natural n, C a) => Zero (ParameterValue n a) Source # 
Instance details

Defined in Synthesizer.LLVM.Filter.SecondOrderCascade

Methods

zero :: ParameterValue n a

MakeArguments (ParameterValue n a) Source # 
Instance details

Defined in Synthesizer.LLVM.Filter.SecondOrderCascade

Methods

makeArgs :: Functor f => f (ParameterValue n a) -> Arguments f (ParameterValue n a) Source #

(Write v, Element v ~ T a, C v, PseudoRing v, IntegerConstant v, C a, PseudoRing a, IntegerConstant a, Positive (n :*: UnknownSize), Natural n) => C (ParameterValue n a) v v Source # 
Instance details

Defined in Synthesizer.LLVM.Causal.ControlledPacked

Associated Types

type Output (ParameterValue n a) v :: Type Source #

type Input (ParameterValue n a) v :: Type Source #

Methods

process :: T (ParameterValue n a, v) v Source #

(a ~ Scalar v, PseudoModule v, C a, IntegerConstant a, C v, Natural n, Positive (n :*: UnknownSize), inp ~ T v, out ~ T v) => C (ParameterValue n a) inp out Source # 
Instance details

Defined in Synthesizer.LLVM.Causal.Controlled

Associated Types

type Input (ParameterValue n a) out :: Type Source #

type Output (ParameterValue n a) inp :: Type Source #

Methods

process :: T (ParameterValue n a, inp) out Source #

type Arguments f (ParameterValue n a) Source # 
Instance details

Defined in Synthesizer.LLVM.Filter.SecondOrderCascade

type Arguments f (ParameterValue n a) = f (ParameterValue n a)
type Struct (ParameterValue n a) Source # 
Instance details

Defined in Synthesizer.LLVM.Filter.SecondOrderCascade

type Struct (ParameterValue n a) = ParameterStruct n a
type Output (ParameterValue n a) v Source # 
Instance details

Defined in Synthesizer.LLVM.Causal.ControlledPacked

type Output (ParameterValue n a) v = v
type Input (ParameterValue n a) v Source # 
Instance details

Defined in Synthesizer.LLVM.Causal.ControlledPacked

type Input (ParameterValue n a) v = v
type Input (ParameterValue n a) out Source # 
Instance details

Defined in Synthesizer.LLVM.Causal.Controlled

type Input (ParameterValue n a) out = out
type Output (ParameterValue n a) inp Source # 
Instance details

Defined in Synthesizer.LLVM.Causal.Controlled

type Output (ParameterValue n a) inp = inp

causal :: (PseudoModule v, C v, Scalar v ~ T a, C a, IntegerConstant a, Natural n, Positive (n :*: UnknownSize)) => T (ParameterValue n a, v) v Source #

causalPacked :: (C a, PseudoRing a, IntegerConstant a, Write v, Element v ~ T a, C v, PseudoRing v, IntegerConstant v, Natural n, Positive (n :*: UnknownSize)) => T (ParameterValue n a, v) v Source #

fixSize :: Proxy n -> process (ParameterValue n a, x) y -> process (ParameterValue n a, x) y Source #