Go to the documentation of this file.00001
00002 import roslib; roslib.load_manifest('sap_pkg')
00003
00004
00005 import rospy
00006
00007
00008 import auction_msgs.msg
00009
00010
00011 import auction_srvs.srv
00012
00013
00014 import random
00015 import math
00016
00017
00018 winner_id = 'none'
00019 winner_cost = 0
00020
00021 role_assigned = False
00022 node_role = 'none'
00023
00024
00025
00026
00027
00028
00029 def create_neighbour_nodes_list(auction_req):
00030
00031 neighbour_nodes_string = rospy.get_param('~neighbour_nodes_list')
00032 neighbour_nodes_list = neighbour_nodes_string.split(',')
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055 nodes_collected_list = list(set(neighbour_nodes_list) - set(auction_req.nodes_collected.split(',')))
00056
00057
00058
00059 while '' in nodes_collected_list:
00060 nodes_collected_list.remove('')
00061
00062
00063 nodes_collected_list = list(set(nodes_collected_list))
00064
00065
00066 while rospy.get_name() in nodes_collected_list:
00067 nodes_collected_list.remove(rospy.get_name())
00068
00069
00070 while auction_req.sending_node in nodes_collected_list:
00071 nodes_collected_list.remove(auction_req.sending_node)
00072
00073
00074 if nodes_collected_list:
00075
00076
00077 nodes_collected_string = ','.join(nodes_collected_list)
00078
00079
00080
00081
00082
00083 neighbour_nodes_list = nodes_collected_string.split(',')
00084
00085 else:
00086 neighbour_nodes_list = []
00087 pass
00088
00089 return neighbour_nodes_list
00090
00091
00092