-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Support for image reading and writing of Repa arrays using in-place FFI calls -- -- The repa-image library adds support for reading and writing images in -- many formats based on the DevIL open source image library. Image data -- is represented in Haskell as typed, multi-dimensional repa arrays. -- -- Developer's Image Library (DevIL) is a library to develop applications -- with very powerful image loading capabilities, yet with a relatively -- simple interface. DevIL can load, save, convert, manipulate, filter -- and display a wide variety of image formats, including: -- -- -- -- References: -- -- @package repa-devil @version 0.3.0 -- | Read and write images in many formats, representing them in Haskell as -- a 3-dimensional repa array. Image parsing and decoding is done -- by the Developers Image Library, DevIL. -- -- -- -- Example: read a .png file into a repa array, and write it out as a -- .jpg -- --
--   main = runIL $ do
--            x <- readImage "/tmp/y.png" 
--            writeImage "/tmp/x.jpg" x
--   
-- -- Note that as DevIL is stateful, we ensure the library is initialized -- by running image manipulation functions in the IL monad, a -- wrapper over IO that ensures the library has been initialized. It is a -- type error to call image functions outside of the IL monad. module Data.Array.Repa.IO.DevIL -- | RGBA and RGB images are 3D repa arrays where indices are Z :. row -- :. column :. color channel. Grey images are 2D repa arrays. -- -- The origin (Z :. 0 :. 0) is on the lower left point of the -- image. data Image RGBA :: (Array F DIM3 Word8) -> Image RGB :: (Array F DIM3 Word8) -> Image Grey :: (Array F DIM2 Word8) -> Image -- | The IL monad. Provides statically-guaranteed access to an initialized -- IL context. data IL a -- | Running code in the IL monad. This is a simple wrapper over -- IO that guarantees the DevIL library has been initialized -- before you run functions on it. runIL :: IL a -> IO a -- | Reads an image into a repa array. It uses directly the C array using -- the repa's foreign arrays wrapper. -- -- Example: -- --
--   main = do
--      x <- runIL $ readImage "/tmp/x.png"
--      .. operations on x ..
--   
-- -- Note: The image input type is determined by the filename -- extension. readImage :: FilePath -> IL Image -- | Writes an Image to a file. The image array must be represented -- as foreign buffers. You can use copyS or copyP to -- convert the array. -- -- Note: The image output type is determined by the filename -- extension. writeImage :: FilePath -> Image -> IL () instance Monad IL instance MonadIO IL instance Functor IL instance Applicative IL