JuicyPixels-repa 0.1 → 0.2
raw patch · 2 files changed
+27/−52 lines, 2 filesdep ~JuicyPixels
Dependency ranges changed: JuicyPixels
Files
- Codec/Picture/Repa.hs +24/−14
- JuicyPixels-repa.cabal +3/−38
Codec/Picture/Repa.hs view
@@ -3,9 +3,9 @@ ( -- * Primitive types and operations Img, imgData , convertImage- -- * Generic interface+ -- * Generic interface , readImage, decodeImage- -- * Monomorphic image decoding functions+ -- * Monomorphic image decoding functions , readImageRGBA, readImageRGB, readImageR, readImageG, readImageB , decodeImageRGBA, decodeImageRGB, decodeImageR, decodeImageG, decodeImageB -- * Image Representations (Phantom Types)@@ -24,11 +24,11 @@ import Codec.Picture hiding (readImage, decodeImage) import Codec.Picture.Types hiding (convertImage) import qualified Data.Vector.Storable as S-import qualified Data.Vector.Unboxed as VU import Foreign.ForeignPtr import Data.Word import Control.Monad import Data.ByteString as B+import qualified Data.Vector.Unboxed as VU -- |An all-red image data R@@ -68,34 +68,44 @@ order (Z :. r :. c :. z') = Z :. r :. c :. z - z' - 1 readImageRGBA :: FilePath -> IO (Either String (Img RGBA))-readImageRGBA = readImage+readImageRGBA f = do+ x <- P.readImage f+ return (fmap convertImage x) readImageRGB :: FilePath -> IO (Either String (Img RGB))-readImageRGB = readImage+readImageRGB f = do+ x <- P.readImage f+ return (fmap convertImage x) readImageB :: FilePath -> IO (Either String (Img B))-readImageB = readImage+readImageB f = do+ x <- P.readImage f+ return (fmap convertImage x) readImageG :: FilePath -> IO (Either String (Img G))-readImageG = readImage+readImageG f = do+ x <- P.readImage f+ return (fmap convertImage x) readImageR :: FilePath -> IO (Either String (Img R))-readImageR = readImage+readImageR f = do+ x <- P.readImage f+ return (fmap convertImage x) decodeImageRGBA :: ByteString -> Either String (Img RGBA)-decodeImageRGBA = decodeImage+decodeImageRGBA = fmap convertImage . P.decodeImage decodeImageRGB :: ByteString -> Either String (Img RGB)-decodeImageRGB = decodeImage+decodeImageRGB = fmap convertImage . P.decodeImage decodeImageR :: ByteString -> Either String (Img R)-decodeImageR = decodeImage+decodeImageR = fmap convertImage . P.decodeImage decodeImageG :: ByteString -> Either String (Img G)-decodeImageG = decodeImage+decodeImageG = fmap convertImage . P.decodeImage decodeImageB :: ByteString -> Either String (Img B)-decodeImageB = decodeImage+decodeImageB = fmap convertImage . P.decodeImage class DecodeImage a where decodeImage :: ByteString -> Either String (Img a)@@ -213,7 +223,7 @@ convertImage p@(Image w h dat) = let z = 4 in Img $ R.fromFunction (Z :. h :. w :. z) - (\(Z :. y :. x :. z') -> getPixel x y (z - z' - 1) p)+ (\(Z :. y :. x :. z') -> getPixel x y (z - z' - 1) p) instance (ToRGBAChannels a, Pixel a) => ConvertImage (Image a) RGB where convertImage p@(Image w h dat) =
JuicyPixels-repa.cabal view
@@ -1,62 +1,27 @@--- Juicy.Pixels.Interface.cabal auto-generated by cabal init. For--- additional options, see--- http://www.haskell.org/cabal/release/cabal-latest/doc/users-guide/authors.html#pkg-descr.--- The name of the package. Name: JuicyPixels-repa---- The package version. See the Haskell package versioning policy--- (http://www.haskell.org/haskellwiki/Package_versioning_policy) for--- standards guiding when and how versions should be incremented.-Version: 0.1---- A short (one-line) description of the package.+Version: 0.2 Synopsis: Convenience functions to obtain array representations of images.---- A longer description of the package. Description: This wraps the Juicy.Pixels library to convert into 'Repa' and 'Data.Vector.Storable' formats.---- The license under which the package is released. License: BSD3---- The file containing the license text. License-file: LICENSE---- The package author(s). Author: Thomas M. DuBuisson---- An email address to which users can send suggestions, bug reports,--- and patches. Maintainer: Thomas.DuBuisson@gmail.com --- A copyright notice.--- Copyright: -+Copyright: Thomas M. DuBuisson 2012 Category: Graphics- Build-type: Simple --- Extra files to be distributed with the package, such as examples or--- a README. -- Extra-source-files: ---- Constraint on the version of Cabal needed to build this package. Cabal-version: >=1.6 Library- -- Modules exported by the library. Exposed-modules: Codec.Picture.Repa- - -- Packages needed in order to build this package. Build-depends: base >= 4.0 && < 5, repa >= 2.1 && < 2.3- , JuicyPixels >= 1.1 && < 1.2+ , JuicyPixels >= 1.1 && < 1.3 , vector >= 0.9 && < 0.10 , bytestring >= 0.9 && < 0.10- - -- Modules not exported by this package. -- Other-modules: - - -- Extra tools (e.g. alex, hsc2hs, ...) needed to build the source. -- Build-tools: