Public Member Functions | Public Attributes | Static Public Attributes
rosbridge_library.protocol.Protocol Class Reference
Inheritance diagram for rosbridge_library.protocol.Protocol:
Inheritance graph
[legend]

List of all members.

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
 fragment_size = None
string old_buffer = ""
 parameters = None
 png = None
 request_list = None

Detailed Description

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 59 of file protocol.py.


Constructor & Destructor Documentation

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 87 of file protocol.py.


Member Function Documentation

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 330 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 278 of file protocol.py.

Indicate that the client is finished and clean up resources.

All clients should call this method after disconnecting.

Definition at line 248 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 104 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 342 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 200 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 310 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 210 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 257 of file protocol.py.

Unregister a handler for an opcode

Keyword arguments:
opcode -- the opcode to unregister the handler for

Definition at line 320 of file protocol.py.


Member Data Documentation

Definition at line 76 of file protocol.py.

Definition at line 109 of file protocol.py.

Definition at line 78 of file protocol.py.

Definition at line 92 of file protocol.py.

Definition at line 92 of file protocol.py.

Definition at line 82 of file protocol.py.

Definition at line 92 of file protocol.py.

Definition at line 73 of file protocol.py.

Definition at line 77 of file protocol.py.

Definition at line 109 of file protocol.py.

Definition at line 92 of file protocol.py.

Reimplemented in rosbridge_library.rosbridge_protocol.RosbridgeProtocol.

Definition at line 85 of file protocol.py.

Definition at line 74 of file protocol.py.

Definition at line 83 of file protocol.py.


The documentation for this class was generated from the following file:


rosbridge_library
Author(s): Jonathan Mace
autogenerated on Mon Oct 6 2014 06:58:09