packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webcodecs-opus-codec-registration (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.OpusEncoderConfig
       (js_newOpusEncoderConfig, js_setFormat, js_getFormat, js_setSignal, js_getSignal, js_setApplication, js_getApplication, js_setFrameDuration, js_getFrameDuration, js_setComplexity, js_getComplexity, js_setPacketlossperc, js_getPacketlossperc, js_setUseinbandfec, js_getUseinbandfec, js_setUsedtx, js_getUsedtx, newOpusEncoderConfig, setFormat, getFormat, getFormatUnsafe, getFormatUnchecked, setSignal, getSignal, getSignalUnsafe, getSignalUnchecked, setApplication, getApplication, getApplicationUnsafe, getApplicationUnchecked, setFrameDuration, getFrameDuration, getFrameDurationUnsafe, getFrameDurationUnchecked, setComplexity, getComplexity, getComplexityUnsafe, getComplexityUnchecked, setPacketlossperc, getPacketlossperc, getPacketlosspercUnsafe, getPacketlosspercUnchecked, setUseinbandfec, getUseinbandfec, getUseinbandfecUnsafe, getUseinbandfecUnchecked, setUsedtx, getUsedtx, getUsedtxUnsafe, getUsedtxUnchecked, OpusEncoderConfig(..), gTypeOpusEncoderConfig)
       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_newOpusEncoderConfig :: IO OpusEncoderConfig
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dictdef-opusencoderconfig OpusEncoderConfig specification>
newOpusEncoderConfig :: (MonadDOM m) => m OpusEncoderConfig
newOpusEncoderConfig = liftDOM ((js_newOpusEncoderConfig))

foreign import javascript safe "(($1, $2) => { $1[\"format\"] = $2; })"
        js_setFormat :: OpusEncoderConfig -> JSVal -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-format OpusEncoderConfig.format specification>
setFormat :: (MonadDOM m) => OpusEncoderConfig -> OpusBitstreamFormat -> m ()
setFormat self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setFormat (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"format\"]; })"
        js_getFormat :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-format OpusEncoderConfig.format specification>
getFormat :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe OpusBitstreamFormat)
getFormat self = liftDOM (((js_getFormat (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-format OpusEncoderConfig.format specification>
getFormatUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m OpusBitstreamFormat
getFormatUnsafe self = liftDOM ((((js_getFormat (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-format OpusEncoderConfig.format specification>
getFormatUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m OpusBitstreamFormat
getFormatUnchecked self = liftDOM ((pFromJSVal <$> (js_getFormat (self))))

foreign import javascript safe "(($1, $2) => { $1[\"signal\"] = $2; })"
        js_setSignal :: OpusEncoderConfig -> JSVal -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-signal OpusEncoderConfig.signal specification>
setSignal :: (MonadDOM m) => OpusEncoderConfig -> OpusSignal -> m ()
setSignal self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setSignal (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"signal\"]; })"
        js_getSignal :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-signal OpusEncoderConfig.signal specification>
getSignal :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe OpusSignal)
getSignal self = liftDOM (((js_getSignal (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-signal OpusEncoderConfig.signal specification>
getSignalUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m OpusSignal
getSignalUnsafe self = liftDOM ((((js_getSignal (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-signal OpusEncoderConfig.signal specification>
getSignalUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m OpusSignal
getSignalUnchecked self = liftDOM ((pFromJSVal <$> (js_getSignal (self))))

foreign import javascript safe "(($1, $2) => { $1[\"application\"] = $2; })"
        js_setApplication :: OpusEncoderConfig -> JSVal -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-application OpusEncoderConfig.application specification>
setApplication :: (MonadDOM m) => OpusEncoderConfig -> OpusApplication -> m ()
setApplication self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setApplication (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"application\"]; })"
        js_getApplication :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-application OpusEncoderConfig.application specification>
getApplication :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe OpusApplication)
getApplication self = liftDOM (((js_getApplication (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-application OpusEncoderConfig.application specification>
getApplicationUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m OpusApplication
getApplicationUnsafe self = liftDOM ((((js_getApplication (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-application OpusEncoderConfig.application specification>
getApplicationUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m OpusApplication
getApplicationUnchecked self = liftDOM ((pFromJSVal <$> (js_getApplication (self))))

foreign import javascript safe "(($1, $2) => { $1[\"frameDuration\"] = $2; })"
        js_setFrameDuration :: OpusEncoderConfig -> JSVal -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-frameduration OpusEncoderConfig.frameDuration specification>
setFrameDuration :: (MonadDOM m) => OpusEncoderConfig -> Word53 -> m ()
setFrameDuration self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setFrameDuration (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"frameDuration\"]; })"
        js_getFrameDuration :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-frameduration OpusEncoderConfig.frameDuration specification>
getFrameDuration :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe Word53)
getFrameDuration self = liftDOM (((js_getFrameDuration (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-frameduration OpusEncoderConfig.frameDuration specification>
getFrameDurationUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m Word53
getFrameDurationUnsafe self = liftDOM ((((js_getFrameDuration (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-frameduration OpusEncoderConfig.frameDuration specification>
getFrameDurationUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m Word53
getFrameDurationUnchecked self = liftDOM ((pFromJSVal <$> (js_getFrameDuration (self))))

foreign import javascript safe "(($1, $2) => { $1[\"complexity\"] = $2; })"
        js_setComplexity :: OpusEncoderConfig -> Word -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-complexity OpusEncoderConfig.complexity specification>
setComplexity :: (MonadDOM m) => OpusEncoderConfig -> Word -> m ()
setComplexity self val = liftDOM (void ((js_setComplexity (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"complexity\"]; })"
        js_getComplexity :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-complexity OpusEncoderConfig.complexity specification>
getComplexity :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe Word)
getComplexity self = liftDOM (((js_getComplexity (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-complexity OpusEncoderConfig.complexity specification>
getComplexityUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m Word
getComplexityUnsafe self = liftDOM ((((js_getComplexity (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-complexity OpusEncoderConfig.complexity specification>
getComplexityUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m Word
getComplexityUnchecked self = liftDOM ((pFromJSVal <$> (js_getComplexity (self))))

foreign import javascript safe "(($1, $2) => { $1[\"packetlossperc\"] = $2; })"
        js_setPacketlossperc :: OpusEncoderConfig -> Word -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-packetlossperc OpusEncoderConfig.packetlossperc specification>
setPacketlossperc :: (MonadDOM m) => OpusEncoderConfig -> Word -> m ()
setPacketlossperc self val = liftDOM (void ((js_setPacketlossperc (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"packetlossperc\"]; })"
        js_getPacketlossperc :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-packetlossperc OpusEncoderConfig.packetlossperc specification>
getPacketlossperc :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe Word)
getPacketlossperc self = liftDOM (((js_getPacketlossperc (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-packetlossperc OpusEncoderConfig.packetlossperc specification>
getPacketlosspercUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m Word
getPacketlosspercUnsafe self = liftDOM ((((js_getPacketlossperc (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-packetlossperc OpusEncoderConfig.packetlossperc specification>
getPacketlosspercUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m Word
getPacketlosspercUnchecked self = liftDOM ((pFromJSVal <$> (js_getPacketlossperc (self))))

foreign import javascript safe "(($1, $2) => { $1[\"useinbandfec\"] = $2; })"
        js_setUseinbandfec :: OpusEncoderConfig -> Bool -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-useinbandfec OpusEncoderConfig.useinbandfec specification>
setUseinbandfec :: (MonadDOM m) => OpusEncoderConfig -> Bool -> m ()
setUseinbandfec self val = liftDOM (void ((js_setUseinbandfec (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"useinbandfec\"]; })"
        js_getUseinbandfec :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-useinbandfec OpusEncoderConfig.useinbandfec specification>
getUseinbandfec :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe Bool)
getUseinbandfec self = liftDOM (((js_getUseinbandfec (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-useinbandfec OpusEncoderConfig.useinbandfec specification>
getUseinbandfecUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m Bool
getUseinbandfecUnsafe self = liftDOM ((((js_getUseinbandfec (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-useinbandfec OpusEncoderConfig.useinbandfec specification>
getUseinbandfecUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m Bool
getUseinbandfecUnchecked self = liftDOM ((pFromJSVal <$> (js_getUseinbandfec (self))))

foreign import javascript safe "(($1, $2) => { $1[\"usedtx\"] = $2; })"
        js_setUsedtx :: OpusEncoderConfig -> Bool -> IO ()
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-usedtx OpusEncoderConfig.usedtx specification>
setUsedtx :: (MonadDOM m) => OpusEncoderConfig -> Bool -> m ()
setUsedtx self val = liftDOM (void ((js_setUsedtx (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"usedtx\"]; })"
        js_getUsedtx :: OpusEncoderConfig -> IO JSVal
-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-usedtx OpusEncoderConfig.usedtx specification>
getUsedtx :: (MonadDOM m) => OpusEncoderConfig -> m (Maybe Bool)
getUsedtx self = liftDOM (((js_getUsedtx (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-usedtx OpusEncoderConfig.usedtx specification>
getUsedtxUnsafe :: (MonadDOM m, HasCallStack) => OpusEncoderConfig -> m Bool
getUsedtxUnsafe self = liftDOM ((((js_getUsedtx (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/opus_codec_registration.html#dom-opusencoderconfig-usedtx OpusEncoderConfig.usedtx specification>
getUsedtxUnchecked :: (MonadDOM m) => OpusEncoderConfig -> m Bool
getUsedtxUnchecked self = liftDOM ((pFromJSVal <$> (js_getUsedtx (self))))