ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/GPUCommandEncoder.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webgpu (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.GPUCommandEncoder
(js_beginComputePass, js_beginRenderPass, js_clearBuffer, js_copyBufferToBuffer, js_copyBufferToBufferSourceOffsetDestinationOffset, js_copyBufferToTexture, js_copyTextureToBuffer, js_copyTextureToTexture, js_finish, js_resolveQuerySet, beginComputePass, beginComputePass_, beginRenderPass, beginRenderPass_, clearBuffer, copyBufferToBuffer, copyBufferToBufferSourceOffsetDestinationOffset, copyBufferToTexture, copyTextureToBuffer, copyTextureToTexture, finish, finish_, resolveQuerySet, GPUCommandEncoder(..), gTypeGPUCommandEncoder)
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) => { return $1[\"beginComputePass\"]($2); })"
js_beginComputePass :: GPUCommandEncoder -> JSVal -> IO GPUComputePassEncoder
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginComputePass MDN GPUCommandEncoder.beginComputePass documentation>
beginComputePass :: (MonadDOM m) => GPUCommandEncoder -> Maybe GPUComputePassDescriptor -> m GPUComputePassEncoder
beginComputePass self descriptor = liftDOM (((P.maybe (P.return jsUndefined) toJSVal descriptor) >>= \a2' -> js_beginComputePass (self) a2'))
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginComputePass MDN GPUCommandEncoder.beginComputePass documentation>
beginComputePass_ :: (MonadDOM m) => GPUCommandEncoder -> Maybe GPUComputePassDescriptor -> m ()
beginComputePass_ self descriptor = liftDOM (void (((P.maybe (P.return jsUndefined) toJSVal descriptor) >>= \a2' -> js_beginComputePass (self) a2')))
foreign import javascript safe "(($1, $2) => { return $1[\"beginRenderPass\"]($2); })"
js_beginRenderPass :: GPUCommandEncoder -> GPURenderPassDescriptor -> IO GPURenderPassEncoder
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginRenderPass MDN GPUCommandEncoder.beginRenderPass documentation>
beginRenderPass :: (MonadDOM m) => GPUCommandEncoder -> GPURenderPassDescriptor -> m GPURenderPassEncoder
beginRenderPass self descriptor = liftDOM ((js_beginRenderPass (self) (descriptor)))
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginRenderPass MDN GPUCommandEncoder.beginRenderPass documentation>
beginRenderPass_ :: (MonadDOM m) => GPUCommandEncoder -> GPURenderPassDescriptor -> m ()
beginRenderPass_ self descriptor = liftDOM (void ((js_beginRenderPass (self) (descriptor))))
foreign import javascript safe "(($1, $2, $3, $4) => { return $1[\"clearBuffer\"]($2, $3, $4); })"
js_clearBuffer :: GPUCommandEncoder -> GPUBuffer -> JSVal -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/clearBuffer MDN GPUCommandEncoder.clearBuffer documentation>
clearBuffer :: (MonadDOM m) => GPUCommandEncoder -> GPUBuffer -> Maybe Word53 -> Maybe Word53 -> m ()
clearBuffer self buffer offset size = liftDOM (void (((P.maybe (P.return jsUndefined) toJSVal offset) >>= \a3' -> (P.maybe (P.return jsUndefined) toJSVal size) >>= \a4' -> js_clearBuffer (self) (buffer) a3' a4')))
foreign import javascript safe "(($1, $2, $3, $4) => { return $1[\"copyBufferToBuffer\"]($2, $3, $4); })"
js_copyBufferToBuffer :: GPUCommandEncoder -> GPUBuffer -> GPUBuffer -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToBuffer MDN GPUCommandEncoder.copyBufferToBuffer documentation>
copyBufferToBuffer :: (MonadDOM m) => GPUCommandEncoder -> GPUBuffer -> GPUBuffer -> Maybe Word53 -> m ()
copyBufferToBuffer self source destination size = liftDOM (void (((P.maybe (P.return jsUndefined) toJSVal size) >>= \a4' -> js_copyBufferToBuffer (self) (source) (destination) a4')))
foreign import javascript safe "(($1, $2, $3, $4, $5, $6) => { return $1[\"copyBufferToBuffer\"]($2, $3, $4, $5, $6); })"
js_copyBufferToBufferSourceOffsetDestinationOffset :: GPUCommandEncoder -> GPUBuffer -> JSVal -> GPUBuffer -> JSVal -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToBuffer MDN GPUCommandEncoder.copyBufferToBuffer documentation>
copyBufferToBufferSourceOffsetDestinationOffset :: (MonadDOM m) => GPUCommandEncoder -> GPUBuffer -> Word53 -> GPUBuffer -> Word53 -> Maybe Word53 -> m ()
copyBufferToBufferSourceOffsetDestinationOffset self source sourceOffset destination destinationOffset size = liftDOM (void (((toJSVal sourceOffset) >>= \a3' -> (toJSVal destinationOffset) >>= \a5' -> (P.maybe (P.return jsUndefined) toJSVal size) >>= \a6' -> js_copyBufferToBufferSourceOffsetDestinationOffset (self) (source) a3' (destination) a5' a6')))
foreign import javascript safe "(($1, $2, $3, $4) => { return $1[\"copyBufferToTexture\"]($2, $3, $4); })"
js_copyBufferToTexture :: GPUCommandEncoder -> GPUTexelCopyBufferInfo -> GPUTexelCopyTextureInfo -> GPUExtent3D -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToTexture MDN GPUCommandEncoder.copyBufferToTexture documentation>
copyBufferToTexture :: (MonadDOM m, IsGPUTexelCopyTextureInfo destination, IsGPUExtent3D copySize) => GPUCommandEncoder -> GPUTexelCopyBufferInfo -> destination -> copySize -> m ()
copyBufferToTexture self source destination copySize = liftDOM (void ((js_copyBufferToTexture (self) (source) (Types.toGPUTexelCopyTextureInfo destination) (Types.toGPUExtent3D copySize))))
foreign import javascript safe "(($1, $2, $3, $4) => { return $1[\"copyTextureToBuffer\"]($2, $3, $4); })"
js_copyTextureToBuffer :: GPUCommandEncoder -> GPUTexelCopyTextureInfo -> GPUTexelCopyBufferInfo -> GPUExtent3D -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToBuffer MDN GPUCommandEncoder.copyTextureToBuffer documentation>
copyTextureToBuffer :: (MonadDOM m, IsGPUTexelCopyTextureInfo source, IsGPUExtent3D copySize) => GPUCommandEncoder -> source -> GPUTexelCopyBufferInfo -> copySize -> m ()
copyTextureToBuffer self source destination copySize = liftDOM (void ((js_copyTextureToBuffer (self) (Types.toGPUTexelCopyTextureInfo source) (destination) (Types.toGPUExtent3D copySize))))
foreign import javascript safe "(($1, $2, $3, $4) => { return $1[\"copyTextureToTexture\"]($2, $3, $4); })"
js_copyTextureToTexture :: GPUCommandEncoder -> GPUTexelCopyTextureInfo -> GPUTexelCopyTextureInfo -> GPUExtent3D -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToTexture MDN GPUCommandEncoder.copyTextureToTexture documentation>
copyTextureToTexture :: (MonadDOM m, IsGPUTexelCopyTextureInfo source, IsGPUTexelCopyTextureInfo destination, IsGPUExtent3D copySize) => GPUCommandEncoder -> source -> destination -> copySize -> m ()
copyTextureToTexture self source destination copySize = liftDOM (void ((js_copyTextureToTexture (self) (Types.toGPUTexelCopyTextureInfo source) (Types.toGPUTexelCopyTextureInfo destination) (Types.toGPUExtent3D copySize))))
foreign import javascript safe "(($1, $2) => { return $1[\"finish\"]($2); })"
js_finish :: GPUCommandEncoder -> JSVal -> IO GPUCommandBuffer
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/finish MDN GPUCommandEncoder.finish documentation>
finish :: (MonadDOM m) => GPUCommandEncoder -> Maybe GPUCommandBufferDescriptor -> m GPUCommandBuffer
finish self descriptor = liftDOM (((P.maybe (P.return jsUndefined) toJSVal descriptor) >>= \a2' -> js_finish (self) a2'))
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/finish MDN GPUCommandEncoder.finish documentation>
finish_ :: (MonadDOM m) => GPUCommandEncoder -> Maybe GPUCommandBufferDescriptor -> m ()
finish_ self descriptor = liftDOM (void (((P.maybe (P.return jsUndefined) toJSVal descriptor) >>= \a2' -> js_finish (self) a2')))
foreign import javascript safe "(($1, $2, $3, $4, $5, $6) => { return $1[\"resolveQuerySet\"]($2, $3, $4, $5, $6); })"
js_resolveQuerySet :: GPUCommandEncoder -> GPUQuerySet -> Word -> Word -> GPUBuffer -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/resolveQuerySet MDN GPUCommandEncoder.resolveQuerySet documentation>
resolveQuerySet :: (MonadDOM m) => GPUCommandEncoder -> GPUQuerySet -> Word -> Word -> GPUBuffer -> Word53 -> m ()
resolveQuerySet self querySet firstQuery queryCount destination destinationOffset = liftDOM (void (((toJSVal destinationOffset) >>= \a6' -> js_resolveQuerySet (self) (querySet) (firstQuery) (queryCount) (destination) a6')))