{-# OPTIONS_GHC -threaded #-}
{-# LANGUAGE FlexibleInstances, MultiParamTypeClasses #-}
module DobutokO.Sound.Effects.Classes.SndParamSet where
import DobutokO.Sound.Effects.BassTreble
import DobutokO.Sound.Effects.Bend
import DobutokO.Sound.Effects.Biquad
import DobutokO.Sound.Effects.Chorus
import DobutokO.Sound.Effects.DCShift
import DobutokO.Sound.Effects.Dither
import DobutokO.Sound.Effects.Echo
import DobutokO.Sound.Effects.Fade
import DobutokO.Sound.Effects.FIR
import DobutokO.Sound.Effects.Flanger
import DobutokO.Sound.Effects.Gain
import DobutokO.Sound.Effects.LADSPA
import DobutokO.Sound.Effects.Loudness
import DobutokO.Sound.Effects.MCompand
import DobutokO.Sound.Effects.Noise
import DobutokO.Sound.Effects.Overdrive
import DobutokO.Sound.Effects.Pad
import DobutokO.Sound.Effects.PassReject
import DobutokO.Sound.Effects.Phaser
import DobutokO.Sound.Effects.Pitch
import DobutokO.Sound.Effects.Rate
import DobutokO.Sound.Effects.Remix
import DobutokO.Sound.Effects.Reverb
import DobutokO.Sound.Effects.Silence
import DobutokO.Sound.Effects.Sinc
import DobutokO.Sound.Effects.Spectrogram
import DobutokO.Sound.Effects.Speed
import DobutokO.Sound.Effects.Splice
import DobutokO.Sound.Effects.Stats
import DobutokO.Sound.Effects.Stretch
import DobutokO.Sound.Effects.Tempo
import DobutokO.Sound.Effects.Timespec
import DobutokO.Sound.Effects.Tremolo
import DobutokO.Sound.Effects.Vol
import DobutokO.Sound.One
class SndParamSet a b where
set2 :: a -> b
class SndParamSetM a b where
set2m :: a -> Maybe b
class SndParamSet3 a b where
set23 :: a -> b -> b
class SndParamSet3M a b where
set23m :: a -> b -> Maybe b
class SndParamSetL a b where
set2L :: [a] -> b
class SndParamSetL3 a b where
set23L :: [a] -> b -> b
class SndParamSet3O a b where
set23o :: (One2 a) -> b -> b
instance SndParamSet3 b (FreqWidthS a b) where
set23 = freqWidthSSet2
instance SndParamSet3 b (Bass a b) where
set23 = bassSet2
instance SndParamSet3 b (Treble a b) where
set23 = trebleSet2
instance SndParamSet3 b (BendTrio a b) where
set23 = bendTrioSet2
instance SndParamSet3 b (Bend a b c) where
set23 = bendSet2
instance SndParamSet3 a (Coeffs a) where
set23 = coeffsSet2
instance SndParamSet3 (Coeffs a) (Biquad a) where
set23 = biquadSet2
instance SndParamSet3 a (ChorusTail a b) where
set23 = chorusTailSet1 2
instance SndParamSet3 a (Chorus a b) where
set23 = chorusSet1 2
instance SndParamSet3 b (DCShift a b) where
set23 = dcShiftSet2
instance SndParamSet3 b (Dither a b c) where
set23 = ditherSet2
instance SndParamSet3 a (EchoTail a) where
set23 = echoTailSet1 2
instance SndParamSet3 a (Echo a b) where
set23 = echoSet1 2
instance SndParamSet3 a (Echos a b) where
set23 = echosSet1 2
instance SndParamSetL3 b (Fade2 a b) where
set23L = fadeSet2
instance SndParamSet3 String Fade where
set23 = fadeSet2E 2
instance SndParamSetL b (Fir a b) where
set2L = firSet2
instance SndParamSet3 b (Flanger a b) where
set23 = flangerSet2
instance SndParamSet3 b (Gain1 a b c d) where
set23 = gainSet2
instance SndParamSet3O b (Ladspa1 a b c) where
set23o = ladspaSet2
instance SndParamSet3 a (Loudness a) where
set23 = loudnessSet2
instance SndParamSet3M b (CompandTail a b) where
set23m = compandTailSet2
instance SndParamSet3 a (Pair a) where
set23 = pairSet2
instance SndParamSetL3 a (AtDe a) where
set23L = atDeSet2
instance SndParamSet3 b (Compand a b c d) where
set23 = compandSet2
instance SndParamSet3 b (FreqComp a b) where
set23 = freqCompSet2
instance SndParamSetL3 b (MCompand a b) where
set23L = mCompandSet2
instance SndParamSet3M b (Noisered a b) where
set23m = noiseredSet2
instance SndParamSet3M a (Overdrive a) where
set23m = overdriveSet2
instance SndParamSet3 a (PadSpec a) where
set23 = padSpecSet2
instance SndParamSetL3 b (Pad a b) where
set23L = padSet2
instance SndParamSet3 b (FreqWidth a b) where
set23 = freqWidthSet2
instance SndParamSet3 b (BandPass a b) where
set23 = bandPassSet2
instance SndParamSet3 b (Band a b) where
set23 = bandSet2
instance SndParamSet3 b (HighPass a b) where
set23 = highPassSet2
instance SndParamSet3 b (LowPass a b) where
set23 = lowPassSet2
instance SndParamSet3 b (Equalizer a b) where
set23 = equalizerSet2
instance SndParamSet3 a (Phaser a b) where
set23 = phaserSet1 2
instance SndParamSet3 b (Pitch a b c) where
set23 = pitchSet2
instance SndParamSet3 b (RateL a b) where
set23 = rateLSet2
instance SndParamSet3 b1 (RateH a b1 b2 b3 b4 b5 c) where
set23 = rateHSet21
instance SndParamSet RateHigh Rate where
set2 = rate2Set2
instance SndParamSet3 (Vol3 b) (IChannel a b) where
set23 = ichannelSet2
instance SndParamSetL3 OChanF ReMix where
set23L = remixSet2
instance SndParamSet3 b (Reverb a b c d) where
set23 = reverbSet2
instance SndParamSet3 Float ReverbE where
set23 = reverbSet3E 2
instance SndParamSet3 b (Duration a b) where
set23 = durationSet2d
instance SndParamSet3 b (AboveTSpec1 a b c) where
set23 = aboveTSpecSet2a
instance SndParamSet3 b (BelowTSpec1 a b c) where
set23 = belowTSpecSet2b
instance SndParamSet3 b (Silence a b c) where
set23 = silenceSet2
instance SndParamSet3 b (Sinc a b c d) where
set23 = sincSet2
instance SndParamSetL3 b (Spectrogram3 a b c d e) where
set23L = spectrogramSet32
instance SndParamSet3 b (Speed a b) where
set23 = speedSet2
instance SndParamSetL3 (One3 b) (Splice2 a b) where
set23L = splice2Set2
instance SndParamSetL3 b (Stats2 a b) where
set23L = stats2Set2
instance SndParamSet3 a (StretchP a) where
set23 = stretchSet2
instance SndParamSet3 b (Stretch2 a b) where
set23 = stretch2Set2
instance SndParamSet3 b (Tempo a b c d) where
set23 = tempoSet2
instance SndParamSetL3 b (TimeSpec a b) where
set23L = timeSpecSet2
instance SndParamSet3 a (Tremolo a) where
set23 = tremoloSet2
instance SndParamSet3 b (Vol2 a b) where
set23 = volSet2