hosc-0.20: Haskell Open Sound Control

Safe Haskell | Safe-Inferred
Language | Haskell2010

Sound.Osc.Coding.Encode.Builder

Description

Optimised encode function for Osc packets.

Synopsis

- build_packet :: Packet -> Builder
- encodeMessage :: Message -> ByteString
- encodeBundle :: Bundle -> ByteString
- encodePacket :: Packet -> ByteString
- encodePacket_strict :: Packet -> ByteString

# Documentation

build_packet :: Packet -> Builder Source #

Builder for an Osc `Packet`.

encodeMessage :: Message -> ByteString Source #

Encode an Osc `Message`, ie. `encodePacket` of `Packet_Message`.

    let m = [47,103,95,102,114,101,101,0,44,105,0,0,0,0,0,0]
    encodeMessage (Message "/g_free" [Int32 0]) == L.pack m

encodeBundle :: Bundle -> ByteString Source #

Encode an Osc `Bundle`, ie. `encodePacket` of `Packet_Bundle`.

    let m = [47,103,95,102,114,101,101,0,44,105,0,0,0,0,0,0]
    let b = [35,98,117,110,100,108,101,0,0,0,0,0,0,0,0,1,0,0,0,16] ++ m
    encodeBundle (Bundle immediately [Message "/g_free" [Int32 0]]) == L.pack b

encodePacket :: Packet -> ByteString Source #

Encode an Osc `Packet`.

encodePacket_strict :: Packet -> ByteString Source #

Encode an Osc `Packet` to a strict `ByteString`.