Safe Haskell | None |
---|---|
Language | Haskell2010 |
Extensions |
|
Open Sound Control data
Synopsis
- data OSC = OSC ByteString [OSCDatum]
- data OSCDatum
- encodeOSC :: OSC -> ByteString
- decodeOSC :: ByteString -> Either String OSC
- data Timestamp = Timestamp Double
- data OSCBundle = OSCBundle Timestamp [Either ByteString OSC]
- encodeOSCBundle :: OSCBundle -> ByteString
- decodeOSCBundle :: ByteString -> Either String OSCBundle
- encodeTimestamp :: Timestamp -> ByteString
- utcToTimestamp :: UTCTime -> Timestamp
- timestampToUTC :: Timestamp -> UTCTime
- timestampFromUTC :: UTCTime -> Timestamp
- timestampToPOSIX :: Timestamp -> POSIXTime
- timestampFromPOSIX :: POSIXTime -> Timestamp
- addSecs :: Timestamp -> Double -> Timestamp
- diffTimestamps :: Timestamp -> Timestamp -> Double
- encodeOSCDatum :: OSCDatum -> ByteString
- putOSC :: OSC -> Put
- putOSCString :: ByteString -> Put
- putOSCDatum :: OSCDatum -> Put
- getOSCString :: Get ByteString
- getOSC :: Get OSC
- putOSCBlob :: ByteString -> Put
- getOSCBlob :: Get ByteString
- getOSCTimestamp :: Get Timestamp
- putOSCTimestamp :: Timestamp -> Put
- putOSCBundle :: OSCBundle -> Put
- getOSCBundle :: Get OSCBundle
- runGetWithNoLeftover :: Get a -> ByteString -> Either String a
- alignTo4' :: Integral i => i -> i
Documentation
An OSC message, e.g.
OSC "/n_free" [OSC_I 42]
OSC_I Int32 | |
OSC_S ByteString | |
OSC_F Float | |
OSC_D Double | This isn't a base type in the OSC standard but the scsynth response message from "/status" uses it... |
OSC_B ByteString | |
OSC_T Timestamp | From the OSC 1.1 spec |
encodeOSC :: OSC -> ByteString Source #
This is stored as the number of seconds since Jan 1 1900. You can get
it with getTime
TODO: a Bundle can also contain other bundles, recursively
utcToTimestamp :: UTCTime -> Timestamp Source #
Deprecated: renamed to timestampFromUTC
timestampToUTC :: Timestamp -> UTCTime Source #
timestampFromUTC :: UTCTime -> Timestamp Source #
encodeOSCDatum :: OSCDatum -> ByteString Source #
putOSCString :: ByteString -> Put Source #
putOSCDatum :: OSCDatum -> Put Source #
putOSCBlob :: ByteString -> Put Source #
putOSCTimestamp :: Timestamp -> Put Source #
putOSCBundle :: OSCBundle -> Put Source #
runGetWithNoLeftover :: Get a -> ByteString -> Either String a Source #