Copyright | (c) Dustin Sallings 2020 |
---|---|
License | BSD3 |
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
A low-level parser for GPMF telemetry data.
Synopsis
- parseGPMF :: ByteString -> Either String [(FourCC, [Value])]
- data Value
- = GInt8 [Int8]
- | GUint8 [Word8]
- | GString String
- | GDouble Double
- | GFloat [Float]
- | GFourCC FourCC
- | GUUID [Word8]
- | GInt64 [Int64]
- | GUint64 [Word64]
- | GInt32 [Int32]
- | GUint32 [Word32]
- | GQ32 [Word32]
- | GQ64 [Word64]
- | GInt16 [Int16]
- | GUint16 [Word16]
- | GTimestamp UTCTime
- | GComplex String [Value]
- | GNested (FourCC, [Value])
- | GUnknown (Char, Int, Int, [[Word8]])
- newtype FourCC = FourCC (Char, Char, Char, Char)
Documentation
parseGPMF :: ByteString -> Either String [(FourCC, [Value])] Source #
Parse GPMF data from a telemetry stream. A successful return value contains a list of FourCC tagged value lists.
Note that the input is the telemetry stream itself, not the container that contains it.
GInt8 [Int8] | |
GUint8 [Word8] | |
GString String | |
GDouble Double | |
GFloat [Float] | |
GFourCC FourCC | |
GUUID [Word8] | |
GInt64 [Int64] | |
GUint64 [Word64] | |
GInt32 [Int32] | |
GUint32 [Word32] | |
GQ32 [Word32] | |
GQ64 [Word64] | |
GInt16 [Int16] | |
GUint16 [Word16] | |
GTimestamp UTCTime | |
GComplex String [Value] | |
GNested (FourCC, [Value]) | |
GUnknown (Char, Int, Int, [[Word8]]) |