module JSDOM.Generated.MediaSource
(newMediaSource, addSourceBuffer, addSourceBuffer_,
addSourceBufferUnchecked, removeSourceBuffer, endOfStream,
isTypeSupported, isTypeSupported_, getSourceBuffers,
getSourceBuffersUnchecked, getActiveSourceBuffers,
getActiveSourceBuffersUnchecked, setDuration, getDuration,
getReadyState, MediaSource, castToMediaSource, gTypeMediaSource)
where
import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..))
import Data.Typeable (Typeable)
import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, new, array)
import Data.Int (Int64)
import Data.Word (Word, Word64)
import JSDOM.Types
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import JSDOM.EventTargetClosures (EventName, unsafeEventName)
import JSDOM.Enums
newMediaSource :: (MonadDOM m) => m MediaSource
newMediaSource
= liftDOM (MediaSource <$> new (jsg "MediaSource") ())
addSourceBuffer ::
(MonadDOM m, ToJSString type') =>
MediaSource -> type' -> m (Maybe SourceBuffer)
addSourceBuffer self type'
= liftDOM
((self ^. jsf "addSourceBuffer" [toJSVal type']) >>= fromJSVal)
addSourceBuffer_ ::
(MonadDOM m, ToJSString type') => MediaSource -> type' -> m ()
addSourceBuffer_ self type'
= liftDOM (void (self ^. jsf "addSourceBuffer" [toJSVal type']))
addSourceBufferUnchecked ::
(MonadDOM m, ToJSString type') =>
MediaSource -> type' -> m SourceBuffer
addSourceBufferUnchecked self type'
= liftDOM
((self ^. jsf "addSourceBuffer" [toJSVal type']) >>=
fromJSValUnchecked)
removeSourceBuffer ::
(MonadDOM m) => MediaSource -> Maybe SourceBuffer -> m ()
removeSourceBuffer self buffer
= liftDOM
(void (self ^. jsf "removeSourceBuffer" [toJSVal buffer]))
endOfStream ::
(MonadDOM m) => MediaSource -> EndOfStreamError -> m ()
endOfStream self error
= liftDOM (void (self ^. jsf "endOfStream" [toJSVal error]))
isTypeSupported ::
(MonadDOM m, ToJSString type') => MediaSource -> type' -> m Bool
isTypeSupported self type'
= liftDOM
((self ^. jsf "isTypeSupported" [toJSVal type']) >>= valToBool)
isTypeSupported_ ::
(MonadDOM m, ToJSString type') => MediaSource -> type' -> m ()
isTypeSupported_ self type'
= liftDOM (void (self ^. jsf "isTypeSupported" [toJSVal type']))
getSourceBuffers ::
(MonadDOM m) => MediaSource -> m (Maybe SourceBufferList)
getSourceBuffers self
= liftDOM ((self ^. js "sourceBuffers") >>= fromJSVal)
getSourceBuffersUnchecked ::
(MonadDOM m) => MediaSource -> m SourceBufferList
getSourceBuffersUnchecked self
= liftDOM ((self ^. js "sourceBuffers") >>= fromJSValUnchecked)
getActiveSourceBuffers ::
(MonadDOM m) => MediaSource -> m (Maybe SourceBufferList)
getActiveSourceBuffers self
= liftDOM ((self ^. js "activeSourceBuffers") >>= fromJSVal)
getActiveSourceBuffersUnchecked ::
(MonadDOM m) => MediaSource -> m SourceBufferList
getActiveSourceBuffersUnchecked self
= liftDOM
((self ^. js "activeSourceBuffers") >>= fromJSValUnchecked)
setDuration :: (MonadDOM m) => MediaSource -> Double -> m ()
setDuration self val
= liftDOM (self ^. jss "duration" (toJSVal val))
getDuration :: (MonadDOM m) => MediaSource -> m Double
getDuration self
= liftDOM ((self ^. js "duration") >>= valToNumber)
getReadyState ::
(MonadDOM m, FromJSString result) => MediaSource -> m result
getReadyState self
= liftDOM ((self ^. js "readyState") >>= fromJSValUnchecked)