NetworkDMAPayload#
- class FIREQ_SERVER.network.protocol.NetworkDMAPayload(source: str, shots: int, dtype: str, data: bytes)[source]#
Bases:
DMAPayloadObject that holds the payload for a DMA transfer and that can be transferred through the network.
It can be sent over a socket with the to_buffers method, using sock.sendmsg().
- to_buffers() tuple[bytes, bytes, bytes][source]#
Return a sequence of bytes-like objects ready for sendmsg().
- The layout:
buf[0] : 4 bytes header size (big-endian unsigned int) buf[1-N] : msgpack-packed header buf[N+1: M] : raw binary payload
The msgpack header contains a “tsize” key that specifies the size of the trailing binary payload.