module Graphics.UI.FLTK.LowLevel.JPEGImage
    (
     jpegImageNew,
     jpegImageNewWithData
     
     
     
    )
where
import qualified Foreign.C.Types as C2HSImp
import qualified Foreign.Ptr as C2HSImp
import C2HS hiding (cFromEnum, cFromBool, cToBool,cToEnum)
import Graphics.UI.FLTK.LowLevel.Fl_Types
import Graphics.UI.FLTK.LowLevel.Utils
import Graphics.UI.FLTK.LowLevel.Hierarchy
import Graphics.UI.FLTK.LowLevel.RGBImage
import qualified Data.ByteString as B
jpegImageNew' :: (String) -> IO ((Ptr ()))
jpegImageNew' a1 =
  let {a1' = unsafeToCString a1} in 
  jpegImageNew''_ a1' >>= \res ->
  let {res' = id res} in
  return (res')
jpegImageNewWithData' :: (String) -> (Ptr CUChar) -> IO ((Ptr ()))
jpegImageNewWithData' a1 a2 =
  let {a1' = unsafeToCString a1} in 
  let {a2' = id a2} in 
  jpegImageNewWithData''_ a1' a2' >>= \res ->
  let {res' = id res} in
  return (res')
jpegImageNew :: String -> IO (Either UnknownError (Ref JPEGImage))
jpegImageNew filename' = jpegImageNew' filename' >>= toRef >>= checkImage
jpegImageNewWithData :: String -> B.ByteString -> IO (Either UnknownError (Ref JPEGImage))
jpegImageNewWithData l' data' = do
  jpeg' <- copyByteStringToCString data'
  jpegImageNewWithData' l' (castPtr jpeg') >>= toRef >>= checkImage
foreign import ccall safe "Graphics/UI/FLTK/LowLevel/JPEGImage.chs.h Fl_JPEG_Image_New"
  jpegImageNew''_ :: ((C2HSImp.Ptr C2HSImp.CChar) -> (IO (C2HSImp.Ptr ())))
foreign import ccall safe "Graphics/UI/FLTK/LowLevel/JPEGImage.chs.h Fl_JPEG_Image_New_WithData"
  jpegImageNewWithData''_ :: ((C2HSImp.Ptr C2HSImp.CChar) -> ((C2HSImp.Ptr C2HSImp.CUChar) -> (IO (C2HSImp.Ptr ()))))