Base classes
ZmqClient
- class libstored.ZmqClient(address='localhost', port=19026, csv=None, multi=False, parent=None, t=None, timeout=None, context=None)
A ZMQ client.
This client can connect to either the libstored.zmq_server.ZmqServer and stored::DebugZmqLayer.
Instantiate as libstored.ZmqClient().
- acquireAlias(obj, prefer=None, temporary=True, permanentRef=None)
- acquireMacro(cmds=None, sep='\n')
- assignMacro(m, cmds, sep=b'\n')
- autoSaveState(enable=True)
- capabilities()
- close()
- closed
- property context
- defaultPollInterval = <libstored.zmq_client._Property object>
- defaultPollIntervalChanged
- defaultStateFile()
- echo(s)
- fastPollThreshold_s = 0.9
- find(name, all=False)
- identification()
- list()
- property multi
- obj(x)
- property objects
- otherStreams()
- poll(obj, interval_s=0)
- pyname(name)
- readMem(pointer, size)
- releaseAlias(alias, permanentRef=None)
- releaseMacro(m)
- req(message)
- reqAsync(message, callback=None)
- restoreState(f=None)
- saveState(f=None)
- slowPollInterval_s = 1.0
- property socket
- staticMetaObject = PySide6.QtCore.QMetaObject("ZmqClient" inherits "QObject": Properties: #1 "defaultPollInterval", double [writeable] [designable], notify=defaultPollIntervalChanged Methods: #4 type=Signal, signature=defaultPollIntervalChanged() #5 type=Signal, signature=closed() #6 type=Slot, signature=req(QString), parameters=QString #7 type=Slot, signature=_reqAsyncCheckResponse() #8 type=Slot, signature=_aboutToQuit() #9 type=Slot, signature=capabilities() #10 type=Slot, signature=echo() #11 type=Slot, signature=obj(QString), parameters=QString #12 type=Slot, signature=identification() #13 type=Slot, signature=version() #14 type=Slot, signature=traceDecimate(int), parameters=int #15 type=Slot, signature=saveState(QString), parameters=QString #16 type=Slot, signature=saveState() #17 type=Slot, signature=restoreState(QString), parameters=QString #18 type=Slot, signature=restoreState() )
- stream(s, raw=False)
- streams()
- time()
- timestampToTime(t=None)
- traceDecimate(decimate)
- traceProcess()
In case there is no Qt event loop running, call this function to poll and process data that is expected via the trace stream.
- traceThreshold_s = 0.1
- property useEventLoop
- version()
- writeMem(pointer, data)
Protocol layers
- class libstored.protocol.ProtocolLayer
- activity()
- close()
- decode(data)
- property down
- encode(data)
- lastActivity()
- property mtu
- name = 'layer'
- timeout()
- property up
- wrap(layer)
- class libstored.protocol.AsciiEscapeLayer(**kwargs)
- class libstored.protocol.TerminalLayer(fdout=1, ignoreEscapesTillFirstEncode=True, **kwargs)
- class libstored.protocol.PubTerminalLayer(bind='*:19027', **kwargs)
A TerminalLayer (term), that also forwards all non-debug data over a PUB socket.
- class libstored.protocol.SegmentationLayer(mtu=None, **kwargs)
- class libstored.protocol.DebugArqLayer(**kwargs)
- class libstored.protocol.Crc8Layer(**kwargs)
- class libstored.protocol.Crc16Layer(**kwargs)
- class libstored.protocol.LoopbackLayer(**kwargs)
- class libstored.protocol.RawLayer(**kwargs)
Protocol stack
- class libstored.protocol.ProtocolStack(layers)
- class Iterator(stack)
- decode(data)
- encode(data)
- lastActivity()
- property mtu
- name = 'stack'
- timeout()
- libstored.protocol.registerLayerType(layer_type)
- libstored.protocol.buildStack(description)
Construct the protocol stack from a description.
The description is a comma-separated string with layer ids. If the layer has a parameter, it can be specified. The stack is constructed top-down in order of the specified layers.
Grammar: ( <name> (
=
<value> ) ? ) (,
<name> (=
<value> ) ? ) *