Public Member Functions | |
def | __init__ |
def | add_capability |
def | deserialize |
def | finish |
def | incoming |
def | log |
def | outgoing |
def | register_operation |
def | send |
def | serialize |
def | unregister_operation |
Public Attributes | |
buffer | |
capabilities | |
client_id | |
delay_between_messages | |
old_buffer | |
operations | |
Static Public Attributes | |
string | buffer = "" |
busy = False | |
float | delay_between_messages = 0.01 |
dictionary | external_service_list = {} |
fragment_size = None | |
string | old_buffer = "" |
parameters = None | |
png = None |
The interface for a single client to interact with ROS. See rosbridge_protocol for the default protocol used by rosbridge The lifecycle for a Protocol instance is as follows: - Pass incoming messages from the client to incoming - Propagate outgoing messages to the client by overriding outgoing - Call finish to clean up resources when the client is finished
Definition at line 60 of file protocol.py.
def rosbridge_library.protocol.Protocol.__init__ | ( | self, | |
client_id | |||
) |
Keyword arguments: client_id -- a unique ID for this client to take. Uniqueness is important otherwise there will be conflicts between multiple clients with shared resources
Definition at line 89 of file protocol.py.
def rosbridge_library.protocol.Protocol.add_capability | ( | self, | |
capability_class | |||
) |
Add a capability to the protocol. This method is for convenience; assumes the default capability constructor Keyword arguments: capability_class -- the class of the capability to add
Definition at line 335 of file protocol.py.
def rosbridge_library.protocol.Protocol.deserialize | ( | self, | |
msg, | |||
cid = None |
|||
) |
Turns the wire-level representation into a dictionary of values Default behaviour assumes JSON. Override to use a different container. Keyword arguments: msg -- the wire-level message to deserialize cid -- (optional) an ID associated with this. Is logged on error Returns a dictionary of values
Definition at line 283 of file protocol.py.
def rosbridge_library.protocol.Protocol.finish | ( | self | ) |
Indicate that the client is finished and clean up resources. All clients should call this method after disconnecting.
Definition at line 250 of file protocol.py.
def rosbridge_library.protocol.Protocol.incoming | ( | self, | |
message_string = "" |
|||
) |
Process an incoming message from the client Keyword arguments: message_string -- the wire-level message sent by the client
Definition at line 106 of file protocol.py.
def rosbridge_library.protocol.Protocol.log | ( | self, | |
level, | |||
message, | |||
lid = None |
|||
) |
Log a message to the client. By default just sends to stdout Keyword arguments: level -- the logger level of this message message -- the string message to send to the user lid -- an associated for this log message
Definition at line 347 of file protocol.py.
def rosbridge_library.protocol.Protocol.outgoing | ( | self, | |
message | |||
) |
Pass an outgoing message to the client. This method should be overridden. Keyword arguments: message -- the wire-level message to send to the client
Definition at line 202 of file protocol.py.
def rosbridge_library.protocol.Protocol.register_operation | ( | self, | |
opcode, | |||
handler | |||
) |
Register a handler for an opcode Keyword arguments: opcode -- the opcode to register this handler for handler -- a callback function to call for messages with this opcode
Definition at line 315 of file protocol.py.
def rosbridge_library.protocol.Protocol.send | ( | self, | |
message, | |||
cid = None |
|||
) |
Called internally in preparation for sending messages to the client This method pre-processes the message then passes it to the overridden outgoing method. Keyword arguments: message -- a dict of message values to be marshalled and sent cid -- (optional) an associated id
Definition at line 212 of file protocol.py.
def rosbridge_library.protocol.Protocol.serialize | ( | self, | |
msg, | |||
cid = None |
|||
) |
Turns a dictionary of values into the appropriate wire-level representation. Default behaviour uses JSON. Override to use a different container. Keyword arguments: msg -- the dictionary of values to serialize cid -- (optional) an ID associated with this. Will be logged on err. Returns a JSON string representing the dictionary
Definition at line 259 of file protocol.py.
def rosbridge_library.protocol.Protocol.unregister_operation | ( | self, | |
opcode | |||
) |
Unregister a handler for an opcode Keyword arguments: opcode -- the opcode to unregister the handler for
Definition at line 325 of file protocol.py.
string rosbridge_library::protocol.Protocol::buffer = "" [static] |
Definition at line 77 of file protocol.py.
Definition at line 111 of file protocol.py.
rosbridge_library::protocol.Protocol::busy = False [static] |
Definition at line 79 of file protocol.py.
Definition at line 94 of file protocol.py.
Definition at line 94 of file protocol.py.
float rosbridge_library::protocol.Protocol::delay_between_messages = 0.01 [static] |
Definition at line 83 of file protocol.py.
Definition at line 94 of file protocol.py.
dictionary rosbridge_library::protocol.Protocol::external_service_list = {} [static] |
Definition at line 85 of file protocol.py.
rosbridge_library::protocol.Protocol::fragment_size = None [static] |
Definition at line 74 of file protocol.py.
string rosbridge_library::protocol.Protocol::old_buffer = "" [static] |
Definition at line 78 of file protocol.py.
Definition at line 111 of file protocol.py.
Definition at line 94 of file protocol.py.
rosbridge_library::protocol.Protocol::parameters = None [static] |
Reimplemented in rosbridge_library.rosbridge_protocol.RosbridgeProtocol.
Definition at line 87 of file protocol.py.
rosbridge_library::protocol.Protocol::png = None [static] |
Definition at line 75 of file protocol.py.