packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from mediacapture-transform (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.MediaStreamTrackProcessorInit
       (js_newMediaStreamTrackProcessorInit, js_setTrack, js_getTrack, js_setMaxBufferSize, js_getMaxBufferSize, newMediaStreamTrackProcessorInit, setTrack, getTrack, setMaxBufferSize, getMaxBufferSize, getMaxBufferSizeUnsafe, getMaxBufferSizeUnchecked, MediaStreamTrackProcessorInit(..), gTypeMediaStreamTrackProcessorInit)
       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) => { return ({\"track\": $1}); })"
        js_newMediaStreamTrackProcessorInit :: MediaStreamTrackOrHandle -> IO MediaStreamTrackProcessorInit
-- | <https://w3c.github.io/mediacapture-transform/#dictdef-mediastreamtrackprocessorinit MediaStreamTrackProcessorInit specification>
newMediaStreamTrackProcessorInit :: (MonadDOM m, IsMediaStreamTrackOrHandle track) => track -> m MediaStreamTrackProcessorInit
newMediaStreamTrackProcessorInit track = liftDOM ((js_newMediaStreamTrackProcessorInit (Types.toMediaStreamTrackOrHandle track)))

foreign import javascript safe "(($1, $2) => { $1[\"track\"] = $2; })"
        js_setTrack :: MediaStreamTrackProcessorInit -> MediaStreamTrackOrHandle -> IO ()
-- | <https://w3c.github.io/mediacapture-transform/#dom-mediastreamtrackprocessorinit-track MediaStreamTrackProcessorInit.track specification>
setTrack :: (MonadDOM m, IsMediaStreamTrackOrHandle val) => MediaStreamTrackProcessorInit -> val -> m ()
setTrack self val = liftDOM (void ((js_setTrack (self) (Types.toMediaStreamTrackOrHandle val))))

foreign import javascript unsafe "(($1) => { return $1[\"track\"]; })"
        js_getTrack :: MediaStreamTrackProcessorInit -> IO MediaStreamTrackOrHandle
-- | <https://w3c.github.io/mediacapture-transform/#dom-mediastreamtrackprocessorinit-track MediaStreamTrackProcessorInit.track specification>
getTrack :: (MonadDOM m) => MediaStreamTrackProcessorInit -> m MediaStreamTrackOrHandle
getTrack self = liftDOM ((js_getTrack (self)))

foreign import javascript safe "(($1, $2) => { $1[\"maxBufferSize\"] = $2; })"
        js_setMaxBufferSize :: MediaStreamTrackProcessorInit -> Word -> IO ()
-- | <https://w3c.github.io/mediacapture-transform/#dom-mediastreamtrackprocessorinit-maxbuffersize MediaStreamTrackProcessorInit.maxBufferSize specification>
setMaxBufferSize :: (MonadDOM m) => MediaStreamTrackProcessorInit -> Word -> m ()
setMaxBufferSize self val = liftDOM (void ((js_setMaxBufferSize (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"maxBufferSize\"]; })"
        js_getMaxBufferSize :: MediaStreamTrackProcessorInit -> IO JSVal
-- | <https://w3c.github.io/mediacapture-transform/#dom-mediastreamtrackprocessorinit-maxbuffersize MediaStreamTrackProcessorInit.maxBufferSize specification>
getMaxBufferSize :: (MonadDOM m) => MediaStreamTrackProcessorInit -> m (Maybe Word)
getMaxBufferSize self = liftDOM (((js_getMaxBufferSize (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/mediacapture-transform/#dom-mediastreamtrackprocessorinit-maxbuffersize MediaStreamTrackProcessorInit.maxBufferSize specification>
getMaxBufferSizeUnsafe :: (MonadDOM m, HasCallStack) => MediaStreamTrackProcessorInit -> m Word
getMaxBufferSizeUnsafe self = liftDOM ((((js_getMaxBufferSize (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/mediacapture-transform/#dom-mediastreamtrackprocessorinit-maxbuffersize MediaStreamTrackProcessorInit.maxBufferSize specification>
getMaxBufferSizeUnchecked :: (MonadDOM m) => MediaStreamTrackProcessorInit -> m Word
getMaxBufferSizeUnchecked self = liftDOM ((pFromJSVal <$> (js_getMaxBufferSize (self))))