{-# LANGUAGE BangPatterns , MultiParamTypeClasses #-} {-# OPTIONS_GHC -fno-warn-orphans #-} module Vision.Image.RGBA.Conversion () where import Data.Convertible (Convertible (..)) import Vision.Image.Grey.Type (GreyPixel (..)) import Vision.Image.RGBA.Type (RGBAPixel (..)) import Vision.Image.RGB.Type (RGBPixel (..)) instance Convertible RGBAPixel RGBAPixel where safeConvert = Right {-# INLINE safeConvert #-} instance Convertible GreyPixel RGBAPixel where safeConvert !(GreyPixel pix) = Right $ RGBAPixel pix pix pix 255 {-# INLINE safeConvert #-} instance Convertible RGBPixel RGBAPixel where safeConvert !(RGBPixel r g b) = Right $ RGBAPixel r g b 255 {-# INLINE safeConvert #-}