Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Telescope.Data.Array
Synopsis
- decodeArray :: forall ix a m. (AxesIndex ix, Prim a, BinaryValue a, MonadThrow m, MonadCatch m) => Axes Row -> ByteString -> m (Array D ix a)
- encodeArray :: (Source r a, Stream r Ix1 a, PutArray ix, BinaryValue a, Prim a) => Array r ix a -> ByteString
- decodeArrayOrder :: forall ix a m. (AxesIndex ix, BinaryValue a, MonadThrow m, MonadCatch m) => ByteOrder -> Axes Row -> ByteString -> m (Array D ix a)
- decodeVector :: forall a. BinaryValue a => Comp -> ByteOrder -> ByteString -> Vector D a
- fromVector :: forall ix a m. (AxesIndex ix, MonadThrow m, MonadCatch m) => Axes Row -> Vector D a -> m (Array D ix a)
- data ArrayError
- class Index ix => AxesIndex ix where
- class PutArray ix where
- axesIndexN :: AxesIndex (Lower (IxN n)) => MonadThrow m => Axes Row -> m (IxN n)
- indexAxesN :: AxesIndex (Lower (IxN n)) => IxN n -> Axes Row
- sizeAxes :: (AxesIndex ix, Index ix) => Sz ix -> Axes Column
- heatmap :: forall n. (Ord n, RealFrac n) => Array D Ix2 n -> Array D Ix2 (Pixel (SRGB 'NonLinear) Word8)
Documentation
decodeArray :: forall ix a m. (AxesIndex ix, Prim a, BinaryValue a, MonadThrow m, MonadCatch m) => Axes Row -> ByteString -> m (Array D ix a) Source #
encodeArray :: (Source r a, Stream r Ix1 a, PutArray ix, BinaryValue a, Prim a) => Array r ix a -> ByteString Source #
Encode an Array as a Lazy ByteString based on the type of the element a
>>>
myArray = decodeArray @Ix2 @Float BPFloat [3, 2] input
>>>
output = encodeArray myArray
decodeArrayOrder :: forall ix a m. (AxesIndex ix, BinaryValue a, MonadThrow m, MonadCatch m) => ByteOrder -> Axes Row -> ByteString -> m (Array D ix a) Source #
decodeVector :: forall a. BinaryValue a => Comp -> ByteOrder -> ByteString -> Vector D a Source #
Decode binary data into as a 1d Array
fromVector :: forall ix a m. (AxesIndex ix, MonadThrow m, MonadCatch m) => Axes Row -> Vector D a -> m (Array D ix a) Source #
Resize a Vector into an Array
data ArrayError Source #
Constructors
BinaryParseError !ByteOffset String | |
AxesMismatch !(Axes Row) | |
ResizeMismatch String |
Instances
Exception ArrayError Source # | |
Defined in Telescope.Data.Array Methods toException :: ArrayError -> SomeException # fromException :: SomeException -> Maybe ArrayError # displayException :: ArrayError -> String # | |
Show ArrayError Source # | |
Defined in Telescope.Data.Array Methods showsPrec :: Int -> ArrayError -> ShowS # show :: ArrayError -> String # showList :: [ArrayError] -> ShowS # |
class PutArray ix where Source #
Methods
putArray :: (BinaryValue a, Source r a, Stream r Ix1 a, Prim a) => ByteOrder -> Array r ix a -> Put Source #
axesIndexN :: AxesIndex (Lower (IxN n)) => MonadThrow m => Axes Row -> m (IxN n) Source #