module Graphics.ImageMagick.MagickCore.Types.FFI.Quantize where
import Graphics.ImageMagick.MagickCore.Types (ColorspaceType, DitherMethod)
import Graphics.ImageMagick.MagickWand.FFI.Types (MagickBooleanType)
import Foreign.C.Types (CSize)
import Foreign.Storable
data QuantizeInfo = QuantizeInfo { numberOfColors :: CSize
, treeDepth :: CSize
, shouldDither :: MagickBooleanType
, colorspace :: ColorspaceType
, measureError :: MagickBooleanType
, signature :: CSize
, ditherMethod :: DitherMethod
}
deriving (Eq, Show)
instance Storable QuantizeInfo where
sizeOf _ = ((48))
alignment _ = alignment (undefined :: CSize)
peek ptr = do
numberOfColors' <- ((\hsc_ptr -> peekByteOff hsc_ptr 0)) ptr
treeDepth' <- ((\hsc_ptr -> peekByteOff hsc_ptr 8)) ptr
shouldDither' <- ((\hsc_ptr -> peekByteOff hsc_ptr 16)) ptr
colorspace' <- ((\hsc_ptr -> peekByteOff hsc_ptr 20)) ptr
measureError' <- ((\hsc_ptr -> peekByteOff hsc_ptr 24)) ptr
signature' <- ((\hsc_ptr -> peekByteOff hsc_ptr 32)) ptr
ditherMethod' <- ((\hsc_ptr -> peekByteOff hsc_ptr 40)) ptr
return QuantizeInfo { numberOfColors = numberOfColors'
, treeDepth = treeDepth'
, shouldDither = shouldDither'
, colorspace = colorspace'
, measureError = measureError'
, signature = signature'
, ditherMethod = ditherMethod'
}
poke = error "not yet implemented"