-- 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: -- --
-- 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, RGB, BGRA and BGR 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 BGRA :: (Array F DIM3 Word8) -> Image BGR :: (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 GHC.Base.Applicative Data.Array.Repa.IO.DevIL.IL instance GHC.Base.Functor Data.Array.Repa.IO.DevIL.IL instance Control.Monad.IO.Class.MonadIO Data.Array.Repa.IO.DevIL.IL instance GHC.Base.Monad Data.Array.Repa.IO.DevIL.IL instance GHC.Show.Show Data.Array.Repa.IO.DevIL.ImageName