plico.rpc package

Submodules

plico.rpc.abstract_remote_procedure_call module

class plico.rpc.abstract_remote_procedure_call.AbstractRemoteProcedureCall

Bases: object

abstract handleRequest()
abstract publishPickable(socket, pickableObject)
abstract receivePickable(socket, timeoutInSec=10)
abstract recvCameraFrame()
abstract sendCameraFrame()
abstract sendRequest()

plico.rpc.dummy_remote_procedure_call module

class plico.rpc.dummy_remote_procedure_call.DummyRpcHandler

Bases: AbstractRemoteProcedureCall

handleRequest()
publishPickable()
receivePickable()
recvCameraFrame()
sendCameraFrame()
sendRequest()

plico.rpc.dummy_sockets module

class plico.rpc.dummy_sockets.DummySockets(prefix='dummySocket')

Bases: object

serverDisplay()
serverDisplayAddress()
serverRequest()
serverRequestAddress()
serverStatus()
serverStatusAddress()
serverSubscriber()
serverSubscriberAddress()

plico.rpc.sockets module

class plico.rpc.sockets.Sockets(ports, zmqRpc)

Bases: object

serverDisplay()
serverDisplayAddress()
serverRequest()
serverRequestAddress()
serverStatus()
serverStatusAddress()
serverSubscriber()
serverSubscriberAddress()

plico.rpc.zmq_ports module

class plico.rpc.zmq_ports.ZmqPorts(hostname, basePort)

Bases: object

property SERVER_DISPLAY_PORT
property SERVER_HOSTNAME
property SERVER_PUBLISHER_PORT
property SERVER_REPLY_PORT
property SERVER_STATUS_PORT
static fromConfiguration(configuration, configSection)

plico.rpc.zmq_remote_procedure_call module

class plico.rpc.zmq_remote_procedure_call.ZmqRemoteProcedureCall(timeModule=<module 'time' (built-in)>)

Bases: AbstractRemoteProcedureCall

handleRequest(obj, socket, multi=False)

Handle one or more requests on a REP socket, with the format sent by sendRequest()

publishPickable(socket, pickableObject)
publisherSocket(port, connect=False, host='*', hwm=1)

Create a PUB-style socket for data publishers. If <connect> is true, connects to a XPUB/XSUB forwarding device.

receivePickable(socket, timeoutInSec=10)
receiveWithTimeout(socket, timeoutInSeconds=1)
recvCameraFrame(socket, timeoutInSec=10)
replySocket(port, host='*')

Create a REP-style socket for servers

requestSocket(host, port)

Create a REQ-style socket for clients

sendCameraFrame(socket, frame)
sendRequest(socket, cmd, args=(), timeout=10)

Perform client request/reply Request is a ZMQ multipart message:

  • command string

  • pickled argument list

Reply is a pickled object

subscriberSocket(host, port, filt=b'', conflate=False)

Create a SUB-style socket for data receivers

tcpAddress(host, port)
xpubsubSockets(hostSub, portSub, hostPub, portPub)

Creates frontend and backend for a XPUB/XSUB forwarding device

exception plico.rpc.zmq_remote_procedure_call.ZmqRpcTimeoutError

Bases: Exception

Module contents