ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/AudioBufferSourceOptions.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.AudioBufferSourceOptions
(js_newAudioBufferSourceOptions, js_setBuffer, js_getBuffer, js_setDetune, js_getDetune, js_setLoop, js_getLoop, js_setLoopEnd, js_getLoopEnd, js_setLoopStart, js_getLoopStart, js_setPlaybackRate, js_getPlaybackRate, newAudioBufferSourceOptions, setBuffer, getBuffer, getBufferUnsafe, getBufferUnchecked, setDetune, getDetune, getDetuneUnsafe, getDetuneUnchecked, setLoop, getLoop, getLoopUnsafe, getLoopUnchecked, setLoopEnd, getLoopEnd, getLoopEndUnsafe, getLoopEndUnchecked, setLoopStart, getLoopStart, getLoopStartUnsafe, getLoopStartUnchecked, setPlaybackRate, getPlaybackRate, getPlaybackRateUnsafe, getPlaybackRateUnchecked, AudioBufferSourceOptions(..), gTypeAudioBufferSourceOptions)
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 "(() => { return ({}); })"
js_newAudioBufferSourceOptions :: IO AudioBufferSourceOptions
-- | <https://webaudio.github.io/web-audio-api/#AudioBufferSourceOptions AudioBufferSourceOptions specification>
newAudioBufferSourceOptions :: (MonadDOM m) => m AudioBufferSourceOptions
newAudioBufferSourceOptions = liftDOM ((js_newAudioBufferSourceOptions))
foreign import javascript safe "(($1, $2) => { $1[\"buffer\"] = $2; })"
js_setBuffer :: AudioBufferSourceOptions -> JSVal -> IO ()
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-buffer AudioBufferSourceOptions.buffer specification>
setBuffer :: (MonadDOM m) => AudioBufferSourceOptions -> Maybe AudioBuffer -> m ()
setBuffer self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setBuffer (self) a2')))
foreign import javascript unsafe "(($1) => { return $1[\"buffer\"]; })"
js_getBuffer :: AudioBufferSourceOptions -> IO JSVal
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-buffer AudioBufferSourceOptions.buffer specification>
getBuffer :: (MonadDOM m) => AudioBufferSourceOptions -> m (Maybe AudioBuffer)
getBuffer self = liftDOM (((js_getBuffer (self)) >>= fromJSValUnchecked))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-buffer AudioBufferSourceOptions.buffer specification>
getBufferUnsafe :: (MonadDOM m, HasCallStack) => AudioBufferSourceOptions -> m AudioBuffer
getBufferUnsafe self = liftDOM ((((js_getBuffer (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-buffer AudioBufferSourceOptions.buffer specification>
getBufferUnchecked :: (MonadDOM m) => AudioBufferSourceOptions -> m AudioBuffer
getBufferUnchecked self = liftDOM ((pFromJSVal <$> (js_getBuffer (self))))
foreign import javascript safe "(($1, $2) => { $1[\"detune\"] = $2; })"
js_setDetune :: AudioBufferSourceOptions -> Float -> IO ()
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-detune AudioBufferSourceOptions.detune specification>
setDetune :: (MonadDOM m) => AudioBufferSourceOptions -> Float -> m ()
setDetune self val = liftDOM (void ((js_setDetune (self) (val))))
foreign import javascript unsafe "(($1) => { return $1[\"detune\"]; })"
js_getDetune :: AudioBufferSourceOptions -> IO JSVal
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-detune AudioBufferSourceOptions.detune specification>
getDetune :: (MonadDOM m) => AudioBufferSourceOptions -> m (Maybe Float)
getDetune self = liftDOM (((js_getDetune (self)) >>= fromJSValUnchecked))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-detune AudioBufferSourceOptions.detune specification>
getDetuneUnsafe :: (MonadDOM m, HasCallStack) => AudioBufferSourceOptions -> m Float
getDetuneUnsafe self = liftDOM ((((js_getDetune (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-detune AudioBufferSourceOptions.detune specification>
getDetuneUnchecked :: (MonadDOM m) => AudioBufferSourceOptions -> m Float
getDetuneUnchecked self = liftDOM ((pFromJSVal <$> (js_getDetune (self))))
foreign import javascript safe "(($1, $2) => { $1[\"loop\"] = $2; })"
js_setLoop :: AudioBufferSourceOptions -> Bool -> IO ()
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loop AudioBufferSourceOptions.loop specification>
setLoop :: (MonadDOM m) => AudioBufferSourceOptions -> Bool -> m ()
setLoop self val = liftDOM (void ((js_setLoop (self) (val))))
foreign import javascript unsafe "(($1) => { return $1[\"loop\"]; })"
js_getLoop :: AudioBufferSourceOptions -> IO JSVal
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loop AudioBufferSourceOptions.loop specification>
getLoop :: (MonadDOM m) => AudioBufferSourceOptions -> m (Maybe Bool)
getLoop self = liftDOM (((js_getLoop (self)) >>= fromJSValUnchecked))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loop AudioBufferSourceOptions.loop specification>
getLoopUnsafe :: (MonadDOM m, HasCallStack) => AudioBufferSourceOptions -> m Bool
getLoopUnsafe self = liftDOM ((((js_getLoop (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loop AudioBufferSourceOptions.loop specification>
getLoopUnchecked :: (MonadDOM m) => AudioBufferSourceOptions -> m Bool
getLoopUnchecked self = liftDOM ((pFromJSVal <$> (js_getLoop (self))))
foreign import javascript safe "(($1, $2) => { $1[\"loopEnd\"] = $2; })"
js_setLoopEnd :: AudioBufferSourceOptions -> Double -> IO ()
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopend AudioBufferSourceOptions.loopEnd specification>
setLoopEnd :: (MonadDOM m) => AudioBufferSourceOptions -> Double -> m ()
setLoopEnd self val = liftDOM (void ((js_setLoopEnd (self) (val))))
foreign import javascript unsafe "(($1) => { return $1[\"loopEnd\"]; })"
js_getLoopEnd :: AudioBufferSourceOptions -> IO JSVal
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopend AudioBufferSourceOptions.loopEnd specification>
getLoopEnd :: (MonadDOM m) => AudioBufferSourceOptions -> m (Maybe Double)
getLoopEnd self = liftDOM (((js_getLoopEnd (self)) >>= fromJSValUnchecked))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopend AudioBufferSourceOptions.loopEnd specification>
getLoopEndUnsafe :: (MonadDOM m, HasCallStack) => AudioBufferSourceOptions -> m Double
getLoopEndUnsafe self = liftDOM ((((js_getLoopEnd (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopend AudioBufferSourceOptions.loopEnd specification>
getLoopEndUnchecked :: (MonadDOM m) => AudioBufferSourceOptions -> m Double
getLoopEndUnchecked self = liftDOM ((pFromJSVal <$> (js_getLoopEnd (self))))
foreign import javascript safe "(($1, $2) => { $1[\"loopStart\"] = $2; })"
js_setLoopStart :: AudioBufferSourceOptions -> Double -> IO ()
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopstart AudioBufferSourceOptions.loopStart specification>
setLoopStart :: (MonadDOM m) => AudioBufferSourceOptions -> Double -> m ()
setLoopStart self val = liftDOM (void ((js_setLoopStart (self) (val))))
foreign import javascript unsafe "(($1) => { return $1[\"loopStart\"]; })"
js_getLoopStart :: AudioBufferSourceOptions -> IO JSVal
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopstart AudioBufferSourceOptions.loopStart specification>
getLoopStart :: (MonadDOM m) => AudioBufferSourceOptions -> m (Maybe Double)
getLoopStart self = liftDOM (((js_getLoopStart (self)) >>= fromJSValUnchecked))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopstart AudioBufferSourceOptions.loopStart specification>
getLoopStartUnsafe :: (MonadDOM m, HasCallStack) => AudioBufferSourceOptions -> m Double
getLoopStartUnsafe self = liftDOM ((((js_getLoopStart (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-loopstart AudioBufferSourceOptions.loopStart specification>
getLoopStartUnchecked :: (MonadDOM m) => AudioBufferSourceOptions -> m Double
getLoopStartUnchecked self = liftDOM ((pFromJSVal <$> (js_getLoopStart (self))))
foreign import javascript safe "(($1, $2) => { $1[\"playbackRate\"] = $2; })"
js_setPlaybackRate :: AudioBufferSourceOptions -> Float -> IO ()
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-playbackrate AudioBufferSourceOptions.playbackRate specification>
setPlaybackRate :: (MonadDOM m) => AudioBufferSourceOptions -> Float -> m ()
setPlaybackRate self val = liftDOM (void ((js_setPlaybackRate (self) (val))))
foreign import javascript unsafe "(($1) => { return $1[\"playbackRate\"]; })"
js_getPlaybackRate :: AudioBufferSourceOptions -> IO JSVal
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-playbackrate AudioBufferSourceOptions.playbackRate specification>
getPlaybackRate :: (MonadDOM m) => AudioBufferSourceOptions -> m (Maybe Float)
getPlaybackRate self = liftDOM (((js_getPlaybackRate (self)) >>= fromJSValUnchecked))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-playbackrate AudioBufferSourceOptions.playbackRate specification>
getPlaybackRateUnsafe :: (MonadDOM m, HasCallStack) => AudioBufferSourceOptions -> m Float
getPlaybackRateUnsafe self = liftDOM ((((js_getPlaybackRate (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://webaudio.github.io/web-audio-api/#dom-audiobuffersourceoptions-playbackrate AudioBufferSourceOptions.playbackRate specification>
getPlaybackRateUnchecked :: (MonadDOM m) => AudioBufferSourceOptions -> m Float
getPlaybackRateUnchecked self = liftDOM ((pFromJSVal <$> (js_getPlaybackRate (self))))