packages feed

ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/AnalyserNode.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webaudio-1.1 (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.AnalyserNode
       (js_newAnalyserNode, js_getByteFrequencyData, js_getByteTimeDomainData, js_getFloatFrequencyData, js_getFloatTimeDomainData, js_setFftSize, js_getFftSize, js_getFrequencyBinCount, js_setMinDecibels, js_getMinDecibels, js_setMaxDecibels, js_getMaxDecibels, js_setSmoothingTimeConstant, js_getSmoothingTimeConstant, newAnalyserNode, getByteFrequencyData, getByteTimeDomainData, getFloatFrequencyData, getFloatTimeDomainData, setFftSize, getFftSize, getFrequencyBinCount, setMinDecibels, getMinDecibels, setMaxDecibels, getMaxDecibels, setSmoothingTimeConstant, getSmoothingTimeConstant, AnalyserNode(..), gTypeAnalyserNode)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import GHCJS.Types (JSVal, JSString)
import GHCJS.Foreign (jsUndefined, jsNull)
import GHCJS.DOM.Types
import qualified GHCJS.DOM.Types as Types
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import GHCJS.DOM.JSFFI.Generated.Enums

foreign import javascript safe "(($1, $2) => { return new globalThis[\"AnalyserNode\"]($1, $2); })"
        js_newAnalyserNode :: BaseAudioContext -> JSVal -> IO AnalyserNode
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/AnalyserNode MDN AnalyserNode. documentation>
newAnalyserNode :: (MonadDOM m, IsBaseAudioContext context) => context -> Maybe AnalyserOptions -> m AnalyserNode
newAnalyserNode context options = liftDOM (((P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_newAnalyserNode (Types.toBaseAudioContext context) a2'))

foreign import javascript safe "(($1, $2) => { return $1[\"getByteFrequencyData\"]($2); })"
        js_getByteFrequencyData :: AnalyserNode -> Uint8Array -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteFrequencyData MDN AnalyserNode.getByteFrequencyData documentation>
getByteFrequencyData :: (MonadDOM m, IsUint8Array array) => AnalyserNode -> array -> m ()
getByteFrequencyData self array = liftDOM (void ((js_getByteFrequencyData (self) (Types.toUint8Array array))))

foreign import javascript safe "(($1, $2) => { return $1[\"getByteTimeDomainData\"]($2); })"
        js_getByteTimeDomainData :: AnalyserNode -> Uint8Array -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteTimeDomainData MDN AnalyserNode.getByteTimeDomainData documentation>
getByteTimeDomainData :: (MonadDOM m, IsUint8Array array) => AnalyserNode -> array -> m ()
getByteTimeDomainData self array = liftDOM (void ((js_getByteTimeDomainData (self) (Types.toUint8Array array))))

foreign import javascript safe "(($1, $2) => { return $1[\"getFloatFrequencyData\"]($2); })"
        js_getFloatFrequencyData :: AnalyserNode -> Float32Array -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatFrequencyData MDN AnalyserNode.getFloatFrequencyData documentation>
getFloatFrequencyData :: (MonadDOM m, IsFloat32Array array) => AnalyserNode -> array -> m ()
getFloatFrequencyData self array = liftDOM (void ((js_getFloatFrequencyData (self) (Types.toFloat32Array array))))

foreign import javascript safe "(($1, $2) => { return $1[\"getFloatTimeDomainData\"]($2); })"
        js_getFloatTimeDomainData :: AnalyserNode -> Float32Array -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatTimeDomainData MDN AnalyserNode.getFloatTimeDomainData documentation>
getFloatTimeDomainData :: (MonadDOM m, IsFloat32Array array) => AnalyserNode -> array -> m ()
getFloatTimeDomainData self array = liftDOM (void ((js_getFloatTimeDomainData (self) (Types.toFloat32Array array))))

foreign import javascript safe "(($1, $2) => { $1[\"fftSize\"] = $2; })"
        js_setFftSize :: AnalyserNode -> Word -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/fftSize MDN AnalyserNode.fftSize documentation>
setFftSize :: (MonadDOM m) => AnalyserNode -> Word -> m ()
setFftSize self val = liftDOM (void ((js_setFftSize (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"fftSize\"]; })"
        js_getFftSize :: AnalyserNode -> IO Word
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/fftSize MDN AnalyserNode.fftSize documentation>
getFftSize :: (MonadDOM m) => AnalyserNode -> m Word
getFftSize self = liftDOM ((js_getFftSize (self)))

foreign import javascript unsafe "(($1) => { return $1[\"frequencyBinCount\"]; })"
        js_getFrequencyBinCount :: AnalyserNode -> IO Word
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/frequencyBinCount MDN AnalyserNode.frequencyBinCount documentation>
getFrequencyBinCount :: (MonadDOM m) => AnalyserNode -> m Word
getFrequencyBinCount self = liftDOM ((js_getFrequencyBinCount (self)))

foreign import javascript safe "(($1, $2) => { $1[\"minDecibels\"] = $2; })"
        js_setMinDecibels :: AnalyserNode -> Double -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/minDecibels MDN AnalyserNode.minDecibels documentation>
setMinDecibels :: (MonadDOM m) => AnalyserNode -> Double -> m ()
setMinDecibels self val = liftDOM (void ((js_setMinDecibels (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"minDecibels\"]; })"
        js_getMinDecibels :: AnalyserNode -> IO Double
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/minDecibels MDN AnalyserNode.minDecibels documentation>
getMinDecibels :: (MonadDOM m) => AnalyserNode -> m Double
getMinDecibels self = liftDOM ((js_getMinDecibels (self)))

foreign import javascript safe "(($1, $2) => { $1[\"maxDecibels\"] = $2; })"
        js_setMaxDecibels :: AnalyserNode -> Double -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/maxDecibels MDN AnalyserNode.maxDecibels documentation>
setMaxDecibels :: (MonadDOM m) => AnalyserNode -> Double -> m ()
setMaxDecibels self val = liftDOM (void ((js_setMaxDecibels (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"maxDecibels\"]; })"
        js_getMaxDecibels :: AnalyserNode -> IO Double
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/maxDecibels MDN AnalyserNode.maxDecibels documentation>
getMaxDecibels :: (MonadDOM m) => AnalyserNode -> m Double
getMaxDecibels self = liftDOM ((js_getMaxDecibels (self)))

foreign import javascript safe "(($1, $2) => { $1[\"smoothingTimeConstant\"] = $2; })"
        js_setSmoothingTimeConstant :: AnalyserNode -> Double -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/smoothingTimeConstant MDN AnalyserNode.smoothingTimeConstant documentation>
setSmoothingTimeConstant :: (MonadDOM m) => AnalyserNode -> Double -> m ()
setSmoothingTimeConstant self val = liftDOM (void ((js_setSmoothingTimeConstant (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"smoothingTimeConstant\"]; })"
        js_getSmoothingTimeConstant :: AnalyserNode -> IO Double
-- | <https://developer.mozilla.org/docs/Web/API/AnalyserNode/smoothingTimeConstant MDN AnalyserNode.smoothingTimeConstant documentation>
getSmoothingTimeConstant :: (MonadDOM m) => AnalyserNode -> m Double
getSmoothingTimeConstant self = liftDOM ((js_getSmoothingTimeConstant (self)))