module Graphics.Rendering.OpenGL.GL.PixelData (
PixelData(..), withPixelData
) where
import Foreign.Ptr ( Ptr )
import Graphics.Rendering.OpenGL.GL.BasicTypes ( GLenum )
import Graphics.Rendering.OpenGL.GL.DataType ( DataType, marshalDataType )
import Graphics.Rendering.OpenGL.GL.PixelFormat (
PixelFormat, marshalPixelFormat )
data PixelData a = PixelData PixelFormat DataType (Ptr a)
#ifdef __HADDOCK__
instance Eq (PixelData a)
instance Ord (PixelData a)
instance Show (PixelData a)
#else
deriving ( Eq, Ord, Show )
#endif
withPixelData :: PixelData a -> (GLenum -> GLenum -> Ptr a -> b) -> b
withPixelData (PixelData pixelFormat dataType ptr) f =
f (marshalPixelFormat pixelFormat) (marshalDataType dataType) ptr