{-# LANGUAGE DataKinds #-}
{-# LANGUAGE TypeFamilies, NoMonoLocalBinds #-}
{-# LANGUAGE NoIncoherentInstances #-}
{-# LANGUAGE NoMonomorphismRestriction #-}
{-# LANGUAGE NoUndecidableInstances #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE ExtendedDefaultRules #-}
module Vivid.UGens.UserInteraction (
mouseX
, mouseY
) where
import Vivid.SC.SynthDef.Types (CalculationRate(..))
import Vivid.SynthDef
import Vivid.UGens.Args
import Vivid.SynthDef.FromUA
mouseY :: Args '[] '["min","max","warp","lagSecs"] a => a -> SDBody a Signal
mouseY = mouseGeneral "MouseY"
mouseX :: Args '[] '["min","max","warp","lagSecs"] a => a -> SDBody a Signal
mouseX = mouseGeneral "MouseX"
mouseGeneral :: Args '[] '["min","max","warp","lagSecs"] a => String -> a -> SDBody a Signal
mouseGeneral ugenName = makeUGen
ugenName KR
(Vs::Vs '["min", "max", "warp", "lagSecs"])
(min_ (0::Float), max_ (1::Float), warp_ (0::Float), lagTime_ (0.2::Float))