packages feed

wgpu-raw-hs-0.3.0.0: src/WGPU/Raw/Generated/Struct/WGPURenderPassColorAttachment.hsc

{-# OPTIONS_GHC -Wno-unused-imports #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE NoImplicitPrelude #-}

-- This file was generated by wgpu-raw-hs-codegen on:
--   2021-08-25T10:02:03.522705
-- Using wgpu-native git hash:
--   b10496e7eed9349f0fd541e6dfe5029cb436de74 wgpu-native (v0.9.2.2)

module WGPU.Raw.Generated.Struct.WGPURenderPassColorAttachment where

#include "wgpu.h"

import Data.Word (Word16, Word32, Word64)
import Data.Int (Int32)
import Foreign
import Foreign.C.Types
import WGPU.Raw.Types
import Prelude (pure, ($!))
import WGPU.Raw.Generated.Enum.WGPULoadOp
import WGPU.Raw.Generated.Enum.WGPUStoreOp
import WGPU.Raw.Generated.Struct.WGPUColor

data WGPURenderPassColorAttachment = WGPURenderPassColorAttachment {
  view :: WGPUTextureView,
  resolveTarget :: WGPUTextureView,
  loadOp :: WGPULoadOp,
  storeOp :: WGPUStoreOp,
  clearColor :: WGPUColor
}

instance Storable WGPURenderPassColorAttachment where
  sizeOf _ = (#size WGPURenderPassColorAttachment)
  {-# INLINABLE sizeOf #-}
  alignment = sizeOf
  {-# INLINABLE alignment #-}
  peek ptr = do
    view <- (#peek WGPURenderPassColorAttachment, view) ptr
    resolveTarget <- (#peek WGPURenderPassColorAttachment, resolveTarget) ptr
    loadOp <- (#peek WGPURenderPassColorAttachment, loadOp) ptr
    storeOp <- (#peek WGPURenderPassColorAttachment, storeOp) ptr
    clearColor <- (#peek WGPURenderPassColorAttachment, clearColor) ptr
    pure $! WGPURenderPassColorAttachment{..}
  {-# INLINABLE peek #-}
  poke ptr WGPURenderPassColorAttachment{..} = do
    (#poke WGPURenderPassColorAttachment, view) ptr view
    (#poke WGPURenderPassColorAttachment, resolveTarget) ptr resolveTarget
    (#poke WGPURenderPassColorAttachment, loadOp) ptr loadOp
    (#poke WGPURenderPassColorAttachment, storeOp) ptr storeOp
    (#poke WGPURenderPassColorAttachment, clearColor) ptr clearColor
  {-# INLINABLE poke #-}