ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/MediaCapabilitiesDecodingInfo.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from media-capabilities (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.MediaCapabilitiesDecodingInfo
(js_newMediaCapabilitiesDecodingInfo, js_setKeySystemAccess, js_getKeySystemAccess, js_setConfiguration, js_getConfiguration, newMediaCapabilitiesDecodingInfo, setKeySystemAccess, getKeySystemAccess, getKeySystemAccessUnsafe, getKeySystemAccessUnchecked, setConfiguration, getConfiguration, MediaCapabilitiesDecodingInfo(..), gTypeMediaCapabilitiesDecodingInfo)
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, $3, $4, $5) => { return ({\"supported\": $1, \"smooth\": $2, \"powerEfficient\": $3, \"keySystemAccess\": $4, \"configuration\": $5}); })"
js_newMediaCapabilitiesDecodingInfo :: Bool -> Bool -> Bool -> JSVal -> MediaDecodingConfiguration -> IO MediaCapabilitiesDecodingInfo
-- | <https://w3c.github.io/media-capabilities/#dictdef-mediacapabilitiesdecodinginfo MediaCapabilitiesDecodingInfo specification>
newMediaCapabilitiesDecodingInfo :: (MonadDOM m) => Bool -> Bool -> Bool -> Maybe MediaKeySystemAccess -> MediaDecodingConfiguration -> m MediaCapabilitiesDecodingInfo
newMediaCapabilitiesDecodingInfo supported smooth powerEfficient keySystemAccess configuration = liftDOM (((toJSVal keySystemAccess) >>= \a4' -> js_newMediaCapabilitiesDecodingInfo (supported) (smooth) (powerEfficient) a4' (configuration)))
foreign import javascript safe "(($1, $2) => { $1[\"keySystemAccess\"] = $2; })"
js_setKeySystemAccess :: MediaCapabilitiesDecodingInfo -> JSVal -> IO ()
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesdecodinginfo-keysystemaccess MediaCapabilitiesDecodingInfo.keySystemAccess specification>
setKeySystemAccess :: (MonadDOM m) => MediaCapabilitiesDecodingInfo -> Maybe MediaKeySystemAccess -> m ()
setKeySystemAccess self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setKeySystemAccess (self) a2')))
foreign import javascript unsafe "(($1) => { return $1[\"keySystemAccess\"]; })"
js_getKeySystemAccess :: MediaCapabilitiesDecodingInfo -> IO JSVal
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesdecodinginfo-keysystemaccess MediaCapabilitiesDecodingInfo.keySystemAccess specification>
getKeySystemAccess :: (MonadDOM m) => MediaCapabilitiesDecodingInfo -> m (Maybe MediaKeySystemAccess)
getKeySystemAccess self = liftDOM (((js_getKeySystemAccess (self)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesdecodinginfo-keysystemaccess MediaCapabilitiesDecodingInfo.keySystemAccess specification>
getKeySystemAccessUnsafe :: (MonadDOM m, HasCallStack) => MediaCapabilitiesDecodingInfo -> m MediaKeySystemAccess
getKeySystemAccessUnsafe self = liftDOM ((((js_getKeySystemAccess (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesdecodinginfo-keysystemaccess MediaCapabilitiesDecodingInfo.keySystemAccess specification>
getKeySystemAccessUnchecked :: (MonadDOM m) => MediaCapabilitiesDecodingInfo -> m MediaKeySystemAccess
getKeySystemAccessUnchecked self = liftDOM ((pFromJSVal <$> (js_getKeySystemAccess (self))))
foreign import javascript safe "(($1, $2) => { $1[\"configuration\"] = $2; })"
js_setConfiguration :: MediaCapabilitiesDecodingInfo -> MediaDecodingConfiguration -> IO ()
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesdecodinginfo-configuration MediaCapabilitiesDecodingInfo.configuration specification>
setConfiguration :: (MonadDOM m) => MediaCapabilitiesDecodingInfo -> MediaDecodingConfiguration -> m ()
setConfiguration self val = liftDOM (void ((js_setConfiguration (self) (val))))
foreign import javascript unsafe "(($1) => { return $1[\"configuration\"]; })"
js_getConfiguration :: MediaCapabilitiesDecodingInfo -> IO MediaDecodingConfiguration
-- | <https://w3c.github.io/media-capabilities/#dom-mediacapabilitiesdecodinginfo-configuration MediaCapabilitiesDecodingInfo.configuration specification>
getConfiguration :: (MonadDOM m) => MediaCapabilitiesDecodingInfo -> m MediaDecodingConfiguration
getConfiguration self = liftDOM ((js_getConfiguration (self)))