Public Member Functions | |
def | __init__ |
def | join |
def | lost_connection_cb |
def | new_connection_cb |
def | new_registration_cb |
def | publish_discovered_clients |
Utilities. | |
def | run |
Come in spinner! | |
def | spin |
def | unique_name_generator |
def | watchdog |
Public Attributes | |
concert_clients | |
concert_clients_publisher | |
concert_master_name | |
Static Public Attributes | |
int | unique_id_counter = 0 |
Private Attributes | |
_auto_invite_clients |
Definition at line 198 of file connection_manager.py.
Subscriber callback that listens to the zeroconf new_connection topic.
Definition at line 209 of file connection_manager.py.
Wait for the thread to terminate. Note that it doesn't need help - it will terminate when ros shuts down.
Definition at line 346 of file connection_manager.py.
def rocon_conductor.connection_manager.Connections.lost_connection_cb | ( | self, | |
lost_zconf_client | |||
) |
Relays removed zeroconf connections from the zeroconf/lost_connections topic.
Definition at line 279 of file connection_manager.py.
def rocon_conductor.connection_manager.Connections.new_connection_cb | ( | self, | |
new_zconf_client | |||
) |
Relays removed zeroconf connections from the zeroconf/new_connections topic.
Definition at line 258 of file connection_manager.py.
def rocon_conductor.connection_manager.Connections.new_registration_cb | ( | self, | |
client | |||
) |
Definition at line 255 of file connection_manager.py.
Utilities.
Provide a list of currently discovered clients. This goes onto a latched publisher, so subscribers will always have the latest without the need to poll a service.
Definition at line 357 of file connection_manager.py.
Come in spinner!
This loop currently runs a watchdog and publishes current client list. See the watchdog method for more detailed information. Todo: fix a race condition when calling concert_clients in this thread.
Definition at line 328 of file connection_manager.py.
Convenient label if we're spinning in the main thread (i.e. not using this class's thread)..
Definition at line 340 of file connection_manager.py.
def rocon_conductor.connection_manager.Connections.unique_name_generator | ( | self, | |
suggested_name | |||
) |
Checks if the suggested name is currently unique and if not, stamps it with a # to guarantee uniqueness. This could be a little bit 'nicer'. The # increments for every robot, not in parallel for every robot with a particular suggested name. i.e. irobi, robosem, irobo_1, robosem_2, robosem_3, irobi_4.
Definition at line 238 of file connection_manager.py.
def rocon_conductor.connection_manager.Connections.watchdog | ( | self, | |
master | |||
) |
This keeps tab on the ros master's xmlrpc api to check for new incoming connections. It's a bit naive, but it does the job - at least until we can do proper invites across the board (android is on-connect only atm).
Definition at line 291 of file connection_manager.py.
Definition at line 211 of file connection_manager.py.
Definition at line 211 of file connection_manager.py.
Definition at line 211 of file connection_manager.py.
Definition at line 211 of file connection_manager.py.
int rocon_conductor::connection_manager.Connections::unique_id_counter = 0 [static] |
Definition at line 200 of file connection_manager.py.