jsaddle-dom-0.10.0.0: src/JSDOM/Generated/VideoEncoderEncodeOptions.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webcodecs (webref). Do not edit.
module JSDOM.Generated.VideoEncoderEncodeOptions
(newVideoEncoderEncodeOptions, setKeyFrame, getKeyFrame, getKeyFrameUnsafe, getKeyFrameUnchecked, setAv1, getAv1, getAv1Unsafe, getAv1Unchecked, setAvc, getAvc, getAvcUnsafe, getAvcUnchecked, setHevc, getHevc, getHevcUnsafe, getHevcUnchecked, setVp9, getVp9, getVp9Unsafe, getVp9Unchecked, VideoEncoderEncodeOptions(..), gTypeVideoEncoderEncodeOptions)
where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums
-- | <https://w3c.github.io/webcodecs/#dictdef-videoencoderencodeoptions VideoEncoderEncodeOptions specification>
newVideoEncoderEncodeOptions :: (MonadDOM m) => m VideoEncoderEncodeOptions
newVideoEncoderEncodeOptions = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/#dom-videoencoderencodeoptions-keyframe VideoEncoderEncodeOptions.keyFrame specification>
setKeyFrame :: (MonadDOM m) => VideoEncoderEncodeOptions -> Bool -> m ()
setKeyFrame self val = liftDOM (void (self ^. jss "keyFrame" (toJSVal val)))
-- | <https://w3c.github.io/webcodecs/#dom-videoencoderencodeoptions-keyframe VideoEncoderEncodeOptions.keyFrame specification>
getKeyFrame :: (MonadDOM m) => VideoEncoderEncodeOptions -> m (Maybe Bool)
getKeyFrame self = liftDOM (((self ^. js "keyFrame") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/#dom-videoencoderencodeoptions-keyframe VideoEncoderEncodeOptions.keyFrame specification>
getKeyFrameUnsafe :: (MonadDOM m, HasCallStack) => VideoEncoderEncodeOptions -> m Bool
getKeyFrameUnsafe self = liftDOM ((((self ^. js "keyFrame") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/webcodecs/#dom-videoencoderencodeoptions-keyframe VideoEncoderEncodeOptions.keyFrame specification>
getKeyFrameUnchecked :: (MonadDOM m) => VideoEncoderEncodeOptions -> m Bool
getKeyFrameUnchecked self = liftDOM (((self ^. js "keyFrame") >>= valToBool))
-- | <https://w3c.github.io/webcodecs/av1_codec_registration.html#dom-videoencoderencodeoptions-av1 VideoEncoderEncodeOptions.av1 specification>
setAv1 :: (MonadDOM m) => VideoEncoderEncodeOptions -> VideoEncoderEncodeOptionsForAv1 -> m ()
setAv1 self val = liftDOM (void (self ^. jss "av1" (toJSVal val)))
-- | <https://w3c.github.io/webcodecs/av1_codec_registration.html#dom-videoencoderencodeoptions-av1 VideoEncoderEncodeOptions.av1 specification>
getAv1 :: (MonadDOM m) => VideoEncoderEncodeOptions -> m (Maybe VideoEncoderEncodeOptionsForAv1)
getAv1 self = liftDOM (((self ^. js "av1") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/av1_codec_registration.html#dom-videoencoderencodeoptions-av1 VideoEncoderEncodeOptions.av1 specification>
getAv1Unsafe :: (MonadDOM m, HasCallStack) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForAv1
getAv1Unsafe self = liftDOM ((((self ^. js "av1") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/webcodecs/av1_codec_registration.html#dom-videoencoderencodeoptions-av1 VideoEncoderEncodeOptions.av1 specification>
getAv1Unchecked :: (MonadDOM m) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForAv1
getAv1Unchecked self = liftDOM (((self ^. js "av1") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/avc_codec_registration.html#dom-videoencoderencodeoptions-avc VideoEncoderEncodeOptions.avc specification>
setAvc :: (MonadDOM m) => VideoEncoderEncodeOptions -> VideoEncoderEncodeOptionsForAvc -> m ()
setAvc self val = liftDOM (void (self ^. jss "avc" (toJSVal val)))
-- | <https://w3c.github.io/webcodecs/avc_codec_registration.html#dom-videoencoderencodeoptions-avc VideoEncoderEncodeOptions.avc specification>
getAvc :: (MonadDOM m) => VideoEncoderEncodeOptions -> m (Maybe VideoEncoderEncodeOptionsForAvc)
getAvc self = liftDOM (((self ^. js "avc") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/avc_codec_registration.html#dom-videoencoderencodeoptions-avc VideoEncoderEncodeOptions.avc specification>
getAvcUnsafe :: (MonadDOM m, HasCallStack) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForAvc
getAvcUnsafe self = liftDOM ((((self ^. js "avc") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/webcodecs/avc_codec_registration.html#dom-videoencoderencodeoptions-avc VideoEncoderEncodeOptions.avc specification>
getAvcUnchecked :: (MonadDOM m) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForAvc
getAvcUnchecked self = liftDOM (((self ^. js "avc") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/hevc_codec_registration.html#dom-videoencoderencodeoptions-hevc VideoEncoderEncodeOptions.hevc specification>
setHevc :: (MonadDOM m) => VideoEncoderEncodeOptions -> VideoEncoderEncodeOptionsForHevc -> m ()
setHevc self val = liftDOM (void (self ^. jss "hevc" (toJSVal val)))
-- | <https://w3c.github.io/webcodecs/hevc_codec_registration.html#dom-videoencoderencodeoptions-hevc VideoEncoderEncodeOptions.hevc specification>
getHevc :: (MonadDOM m) => VideoEncoderEncodeOptions -> m (Maybe VideoEncoderEncodeOptionsForHevc)
getHevc self = liftDOM (((self ^. js "hevc") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/hevc_codec_registration.html#dom-videoencoderencodeoptions-hevc VideoEncoderEncodeOptions.hevc specification>
getHevcUnsafe :: (MonadDOM m, HasCallStack) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForHevc
getHevcUnsafe self = liftDOM ((((self ^. js "hevc") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/webcodecs/hevc_codec_registration.html#dom-videoencoderencodeoptions-hevc VideoEncoderEncodeOptions.hevc specification>
getHevcUnchecked :: (MonadDOM m) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForHevc
getHevcUnchecked self = liftDOM (((self ^. js "hevc") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/vp9_codec_registration.html#dom-videoencoderencodeoptions-vp9 VideoEncoderEncodeOptions.vp9 specification>
setVp9 :: (MonadDOM m) => VideoEncoderEncodeOptions -> VideoEncoderEncodeOptionsForVp9 -> m ()
setVp9 self val = liftDOM (void (self ^. jss "vp9" (toJSVal val)))
-- | <https://w3c.github.io/webcodecs/vp9_codec_registration.html#dom-videoencoderencodeoptions-vp9 VideoEncoderEncodeOptions.vp9 specification>
getVp9 :: (MonadDOM m) => VideoEncoderEncodeOptions -> m (Maybe VideoEncoderEncodeOptionsForVp9)
getVp9 self = liftDOM (((self ^. js "vp9") >>= fromJSValUnchecked))
-- | <https://w3c.github.io/webcodecs/vp9_codec_registration.html#dom-videoencoderencodeoptions-vp9 VideoEncoderEncodeOptions.vp9 specification>
getVp9Unsafe :: (MonadDOM m, HasCallStack) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForVp9
getVp9Unsafe self = liftDOM ((((self ^. js "vp9") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://w3c.github.io/webcodecs/vp9_codec_registration.html#dom-videoencoderencodeoptions-vp9 VideoEncoderEncodeOptions.vp9 specification>
getVp9Unchecked :: (MonadDOM m) => VideoEncoderEncodeOptions -> m VideoEncoderEncodeOptionsForVp9
getVp9Unchecked self = liftDOM (((self ^. js "vp9") >>= fromJSValUnchecked))