module Rhs.U8v where import Data.Binary import qualified Data.ByteString.Lazy as B import Sound.OpenSoundControl.Byte i16_u8v :: Int -> [Word8] i16_u8v = B.unpack . encode_i16 i32_u8v :: Int -> [Word8] i32_u8v = B.unpack . encode_i32 i64_u8v :: Integer -> [Word8] i64_u8v = B.unpack . encode_i64 u64_u8v :: Integer -> [Word8] u64_u8v = B.unpack . encode_u64 u8v_i16 :: [Word8] -> Int u8v_i16 = decode_i16 . B.pack u8v_i32 :: [Word8] -> Int u8v_i32 = decode_i32 . B.pack u8v_i64 :: [Word8] -> Integer u8v_i64 = decode_i64 . B.pack f32_u8v :: Double -> [Word8] f32_u8v = B.unpack . encode_f32 f64_u8v :: Double -> [Word8] f64_u8v = B.unpack . encode_f64 u8v_f32 :: [Word8] -> Double u8v_f32 = decode_f32 . B.pack u8v_f64 :: [Word8] -> Double u8v_f64 = decode_f64 . B.pack str_u8v :: String -> [Word8] str_u8v = B.unpack . encode_str u8v_str :: [Word8] -> String u8v_str = decode_str . B.pack u8vWrite :: FilePath -> [Word8] -> IO () u8vWrite fn u = B.writeFile fn (B.pack u) u8vRead :: FilePath -> IO [Word8] u8vRead fn = B.readFile fn >>= return . B.unpack