Revision 918 trunk/code/projects/mapping/python/colony.py
| colony.py (revision 918) | ||
|---|---|---|
| 1 | 1 |
#!/usr/bin/env python3.0 |
| 2 | 2 |
import sys, time |
| 3 | 3 |
from socket import * |
| 4 |
from struct import * |
|
| 4 | 5 |
|
| 5 | 6 |
hostname='localhost' |
| 6 | 7 |
|
| ... | ... | |
| 9 | 10 |
|
| 10 | 11 |
def main(): |
| 11 | 12 |
|
| 12 |
funcs = {31 : 'print_range_info'}
|
|
| 13 |
funcs = {1 : 'print_range_info'}
|
|
| 13 | 14 |
|
| 14 | 15 |
buf = [] |
| 15 | 16 |
sock = socket() |
| ... | ... | |
| 26 | 27 |
|
| 27 | 28 |
def print_range_info(packet): |
| 28 | 29 |
print ('Info from %d' % packet[0])
|
| 30 |
|
|
| 29 | 31 |
src = packet[0] |
| 30 |
len = packet[1] |
|
| 31 |
print(len) |
|
| 32 |
data = packet[3:] |
|
| 33 |
for i in range(len // 2): |
|
| 34 |
bot_id = data[i*2] |
|
| 35 |
max_range_id = data[i*2+1] |
|
| 36 |
print ('Max to bot %d is %d' % (bot_id, max_range_id))
|
|
| 37 |
|
|
| 38 | 32 |
|
| 33 |
packet_length = packet[1] |
|
| 39 | 34 |
|
| 35 |
data = packet[3 : 3+packet_length] |
|
| 36 |
print("data length: %d" % len(data))
|
|
| 37 |
ranges = unpack('hhhhhhh',data)
|
|
| 40 | 38 |
|
| 39 |
print(ranges) |
|
| 40 |
|
|
| 41 |
|
|
| 41 | 42 |
if __name__=='__main__': |
| 42 | 43 |
|
| 43 | 44 |
if len(sys.argv) < 2 or not str.isdecimal(sys.argv[1]): |
Also available in: Unified diff