module Bindings.DirectFB.IDirectFBSurface where
import Prelude (IO,Num,return,(.),($),Eq,Show,take)
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
import Bindings.DirectFB.Types
import Bindings.DirectFB.IDirectFBGL
import Bindings.DirectFB.IDirectFBPalette
import Bindings.DirectFB.IDirectFBFont
data C'IDirectFBSurface = C'IDirectFBSurface{
c'IDirectFBSurface'GetCapabilities :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBSurfaceCapabilities -> IO C'DFBResult)
,
c'IDirectFBSurface'GetPosition :: FunPtr (Ptr C'IDirectFBSurface -> Ptr CInt -> Ptr CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'GetSize :: FunPtr (Ptr C'IDirectFBSurface -> Ptr CInt -> Ptr CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'GetVisibleRectangle :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> IO C'DFBResult)
,
c'IDirectFBSurface'GetPixelFormat :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBSurfacePixelFormat -> IO C'DFBResult)
,
c'IDirectFBSurface'GetAccelerationMask :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> Ptr C'DFBAccelerationMask -> IO C'DFBResult)
,
c'IDirectFBSurface'GetPalette :: FunPtr (Ptr C'IDirectFBSurface -> Ptr (Ptr C'IDirectFBPalette) -> IO C'DFBResult)
,
c'IDirectFBSurface'SetPalette :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBPalette -> IO C'DFBResult)
,
c'IDirectFBSurface'SetAlphaRamp :: FunPtr (Ptr C'IDirectFBSurface -> Word8 -> Word8 -> Word8 -> Word8 -> IO C'DFBResult)
,
c'IDirectFBSurface'Lock :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBSurfaceLockFlags -> Ptr (Ptr ()) -> Ptr CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'GetFramebufferOffset :: FunPtr (Ptr C'IDirectFBSurface -> Ptr CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'Unlock :: FunPtr (Ptr C'IDirectFBSurface -> IO C'DFBResult)
,
c'IDirectFBSurface'Flip :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBRegion -> C'DFBSurfaceFlipFlags -> IO C'DFBResult)
,
c'IDirectFBSurface'SetField :: FunPtr (Ptr C'IDirectFBSurface -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'Clear :: FunPtr (Ptr C'IDirectFBSurface -> Word8 -> Word8 -> Word8 -> Word8 -> IO C'DFBResult)
,
c'IDirectFBSurface'SetClip :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBRegion -> IO C'DFBResult)
,
c'IDirectFBSurface'GetClip :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBRegion -> IO C'DFBResult)
,
c'IDirectFBSurface'SetColor :: FunPtr (Ptr C'IDirectFBSurface -> Word8 -> Word8 -> Word8 -> Word8 -> IO C'DFBResult)
,
c'IDirectFBSurface'SetColorIndex :: FunPtr (Ptr C'IDirectFBSurface -> CUInt -> IO C'DFBResult)
,
c'IDirectFBSurface'SetSrcBlendFunction :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBSurfaceBlendFunction -> IO C'DFBResult)
,
c'IDirectFBSurface'SetDstBlendFunction :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBSurfaceBlendFunction -> IO C'DFBResult)
,
c'IDirectFBSurface'SetPorterDuff :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBSurfacePorterDuffRule -> IO C'DFBResult)
,
c'IDirectFBSurface'SetSrcColorKey :: FunPtr (Ptr C'IDirectFBSurface -> Word8 -> Word8 -> Word8 -> IO C'DFBResult)
,
c'IDirectFBSurface'SetSrcColorKeyIndex :: FunPtr (Ptr C'IDirectFBSurface -> CUInt -> IO C'DFBResult)
,
c'IDirectFBSurface'SetDstColorKey :: FunPtr (Ptr C'IDirectFBSurface -> Word8 -> Word8 -> Word8 -> IO C'DFBResult)
,
c'IDirectFBSurface'SetDstColorKeyIndex :: FunPtr (Ptr C'IDirectFBSurface -> CUInt -> IO C'DFBResult)
,
c'IDirectFBSurface'SetBlittingFlags :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBSurfaceBlittingFlags -> IO C'DFBResult)
,
c'IDirectFBSurface'Blit :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> CInt -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'TileBlit :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> CInt -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'BatchBlit :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> Ptr C'DFBPoint -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'StretchBlit :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> Ptr C'DFBRectangle -> IO C'DFBResult)
,
c'IDirectFBSurface'TextureTriangles :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> Ptr C'DFBVertex -> Ptr CInt -> CInt -> C'DFBTriangleFormation -> IO C'DFBResult)
,
c'IDirectFBSurface'SetDrawingFlags :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBSurfaceDrawingFlags -> IO C'DFBResult)
,
c'IDirectFBSurface'FillRectangle :: FunPtr (Ptr C'IDirectFBSurface -> CInt -> CInt -> CInt -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'DrawRectangle :: FunPtr (Ptr C'IDirectFBSurface -> CInt -> CInt -> CInt -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'DrawLine :: FunPtr (Ptr C'IDirectFBSurface -> CInt -> CInt -> CInt -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'DrawLines :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBRegion -> CUInt -> IO C'DFBResult)
,
c'IDirectFBSurface'FillTriangle :: FunPtr (Ptr C'IDirectFBSurface -> CInt -> CInt -> CInt -> CInt -> CInt -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'FillRectangles :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> CUInt -> IO C'DFBResult)
,
c'IDirectFBSurface'FillSpans :: FunPtr (Ptr C'IDirectFBSurface -> CInt -> Ptr C'DFBSpan -> CUInt -> IO C'DFBResult)
,
c'IDirectFBSurface'FillTriangles :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBTriangle -> CUInt -> IO C'DFBResult)
,
c'IDirectFBSurface'SetFont :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBFont -> IO C'DFBResult)
,
c'IDirectFBSurface'GetFont :: FunPtr (Ptr C'IDirectFBSurface -> Ptr (Ptr C'IDirectFBFont) -> IO C'DFBResult)
,
c'IDirectFBSurface'DrawString :: FunPtr (Ptr C'IDirectFBSurface -> CString -> CInt -> CInt -> CInt -> C'DFBSurfaceTextFlags -> IO C'DFBResult)
,
c'IDirectFBSurface'DrawGlyph :: FunPtr (Ptr C'IDirectFBSurface -> CUInt -> CInt -> CInt -> C'DFBSurfaceTextFlags -> IO C'DFBResult)
,
c'IDirectFBSurface'SetEncoding :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBTextEncodingID -> IO C'DFBResult)
,
c'IDirectFBSurface'GetSubSurface :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> Ptr (Ptr C'IDirectFBSurface) -> IO C'DFBResult)
,
c'IDirectFBSurface'GetGL :: FunPtr (Ptr C'IDirectFBSurface -> Ptr (Ptr C'IDirectFBGL) -> IO C'DFBResult)
,
c'IDirectFBSurface'Dump :: FunPtr (Ptr C'IDirectFBSurface -> CString -> CString -> IO C'DFBResult)
,
c'IDirectFBSurface'DisableAcceleration :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBAccelerationMask -> IO C'DFBResult)
,
c'IDirectFBSurface'ReleaseSource :: FunPtr (Ptr C'IDirectFBSurface -> IO C'DFBResult)
,
c'IDirectFBSurface'SetIndexTranslation :: FunPtr (Ptr C'IDirectFBSurface -> Ptr CInt -> CInt -> IO C'DFBResult)
,
c'IDirectFBSurface'SetRenderOptions :: FunPtr (Ptr C'IDirectFBSurface -> C'DFBSurfaceRenderOptions -> IO C'DFBResult)
,
c'IDirectFBSurface'SetMatrix :: FunPtr (Ptr C'IDirectFBSurface -> Ptr Int32 -> IO C'DFBResult)
,
c'IDirectFBSurface'SetSourceMask :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> CInt -> CInt -> C'DFBSurfaceMaskFlags -> IO C'DFBResult)
,
c'IDirectFBSurface'MakeSubSurface :: FunPtr (Ptr C'IDirectFBSurface -> Ptr C'IDirectFBSurface -> Ptr C'DFBRectangle -> IO C'DFBResult)
} deriving (Eq,Show)
instance Storable C'IDirectFBSurface where
sizeOf _ = 248
alignment = sizeOf
peek p = do
v0 <- peekByteOff p 16
v1 <- peekByteOff p 20
v2 <- peekByteOff p 24
v3 <- peekByteOff p 28
v4 <- peekByteOff p 32
v5 <- peekByteOff p 36
v6 <- peekByteOff p 40
v7 <- peekByteOff p 44
v8 <- peekByteOff p 48
v9 <- peekByteOff p 52
v10 <- peekByteOff p 56
v11 <- peekByteOff p 60
v12 <- peekByteOff p 64
v13 <- peekByteOff p 68
v14 <- peekByteOff p 72
v15 <- peekByteOff p 76
v16 <- peekByteOff p 80
v17 <- peekByteOff p 84
v18 <- peekByteOff p 88
v19 <- peekByteOff p 92
v20 <- peekByteOff p 96
v21 <- peekByteOff p 100
v22 <- peekByteOff p 104
v23 <- peekByteOff p 108
v24 <- peekByteOff p 112
v25 <- peekByteOff p 116
v26 <- peekByteOff p 120
v27 <- peekByteOff p 124
v28 <- peekByteOff p 128
v29 <- peekByteOff p 132
v30 <- peekByteOff p 136
v31 <- peekByteOff p 140
v32 <- peekByteOff p 144
v33 <- peekByteOff p 148
v34 <- peekByteOff p 152
v35 <- peekByteOff p 156
v36 <- peekByteOff p 160
v37 <- peekByteOff p 164
v38 <- peekByteOff p 168
v39 <- peekByteOff p 172
v40 <- peekByteOff p 176
v41 <- peekByteOff p 180
v42 <- peekByteOff p 184
v43 <- peekByteOff p 188
v44 <- peekByteOff p 192
v45 <- peekByteOff p 196
v46 <- peekByteOff p 200
v47 <- peekByteOff p 204
v48 <- peekByteOff p 208
v49 <- peekByteOff p 212
v50 <- peekByteOff p 216
v51 <- peekByteOff p 220
v52 <- peekByteOff p 224
v53 <- peekByteOff p 228
v54 <- peekByteOff p 232
v55 <- peekByteOff p 236
return $ C'IDirectFBSurface v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55
poke p (C'IDirectFBSurface v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v14 v15 v16 v17 v18 v19 v20 v21 v22 v23 v24 v25 v26 v27 v28 v29 v30 v31 v32 v33 v34 v35 v36 v37 v38 v39 v40 v41 v42 v43 v44 v45 v46 v47 v48 v49 v50 v51 v52 v53 v54 v55) = do
pokeByteOff p 16 v0
pokeByteOff p 20 v1
pokeByteOff p 24 v2
pokeByteOff p 28 v3
pokeByteOff p 32 v4
pokeByteOff p 36 v5
pokeByteOff p 40 v6
pokeByteOff p 44 v7
pokeByteOff p 48 v8
pokeByteOff p 52 v9
pokeByteOff p 56 v10
pokeByteOff p 60 v11
pokeByteOff p 64 v12
pokeByteOff p 68 v13
pokeByteOff p 72 v14
pokeByteOff p 76 v15
pokeByteOff p 80 v16
pokeByteOff p 84 v17
pokeByteOff p 88 v18
pokeByteOff p 92 v19
pokeByteOff p 96 v20
pokeByteOff p 100 v21
pokeByteOff p 104 v22
pokeByteOff p 108 v23
pokeByteOff p 112 v24
pokeByteOff p 116 v25
pokeByteOff p 120 v26
pokeByteOff p 124 v27
pokeByteOff p 128 v28
pokeByteOff p 132 v29
pokeByteOff p 136 v30
pokeByteOff p 140 v31
pokeByteOff p 144 v32
pokeByteOff p 148 v33
pokeByteOff p 152 v34
pokeByteOff p 156 v35
pokeByteOff p 160 v36
pokeByteOff p 164 v37
pokeByteOff p 168 v38
pokeByteOff p 172 v39
pokeByteOff p 176 v40
pokeByteOff p 180 v41
pokeByteOff p 184 v42
pokeByteOff p 188 v43
pokeByteOff p 192 v44
pokeByteOff p 196 v45
pokeByteOff p 200 v46
pokeByteOff p 204 v47
pokeByteOff p 208 v48
pokeByteOff p 212 v49
pokeByteOff p 216 v50
pokeByteOff p 220 v51
pokeByteOff p 224 v52
pokeByteOff p 228 v53
pokeByteOff p 232 v54
pokeByteOff p 236 v55
return ()