module Graphics.Rendering.FreeType.Internal.OpenArgs
( FT_Open_Args(..)
) where
import Foreign
import Foreign.C.String
import Graphics.Rendering.FreeType.Internal.PrimitiveTypes
import Graphics.Rendering.FreeType.Internal.Stream
import Graphics.Rendering.FreeType.Internal.Module
import Graphics.Rendering.FreeType.Internal.Parameter
data FT_Open_Args = FT_Open_Args
{ flags :: FT_UInt
, memory_base :: FT_Bytes
, memory_size :: FT_Long
, pathname :: CString
, stream :: FT_Stream
, driver :: FT_Module
, num_params :: FT_Int
, params :: Ptr FT_Parameter
}
instance Storable FT_Open_Args where
sizeOf _ = (64)
alignment _ = 8
peek ptr = do
flags' <- ((\hsc_ptr -> peekByteOff hsc_ptr 0)) ptr
memory_base' <- ((\hsc_ptr -> peekByteOff hsc_ptr 8)) ptr
memory_size' <- ((\hsc_ptr -> peekByteOff hsc_ptr 16)) ptr
pathname' <- ((\hsc_ptr -> peekByteOff hsc_ptr 24)) ptr
stream' <- ((\hsc_ptr -> peekByteOff hsc_ptr 32)) ptr
driver' <- ((\hsc_ptr -> peekByteOff hsc_ptr 40)) ptr
num_params' <- ((\hsc_ptr -> peekByteOff hsc_ptr 48)) ptr
params' <- ((\hsc_ptr -> peekByteOff hsc_ptr 56)) ptr
return $ FT_Open_Args
{ flags = flags'
, memory_base = memory_base'
, memory_size = memory_size'
, pathname = pathname'
, stream = stream'
, driver = driver'
, num_params = num_params'
, params = params'
}