$search
00001 #! /usr/bin/env python 00002 00003 import os, sys, string, time, getopt 00004 import urllib 00005 import roslib 00006 00007 import config 00008 00009 def grabTopics(hdf, topics): 00010 topics = topics + ["/power_state", "/power_board_state", "/app_status"] 00011 topicList = [] 00012 for topic in topics: topicList.append("topic=%s" % topic) 00013 topics = string.join(topicList, "&") 00014 00015 url = "http://localhost:%s/ros/receive?since=0&nowait=1&%s" % (config.gROSBridgePort, topics) 00016 try: 00017 fp = urllib.urlopen(url) 00018 body = fp.read() 00019 fp.close() 00020 00021 hdf.setValue("CGI.cur.messages", body) 00022 except: 00023 pass 00024 00025 def list_apps(): 00026 import subprocess 00027 import glob 00028 00029 apps = [] 00030 cmd = ["rospack", "depends-on", "webui"] 00031 p = subprocess.Popen(cmd, stdout=subprocess.PIPE) 00032 while 1: 00033 line = p.stdout.readline() 00034 if not line: break 00035 pkg = line.strip() 00036 00037 path = roslib.packages.get_pkg_dir(pkg) 00038 files = glob.glob(os.path.join(path, "*.app")) 00039 for app in files: 00040 apps.append(app) 00041 return apps 00042 00043 def set_tabs(hdf, tabs): 00044 i = 0 00045 for tab in tabs: 00046 hdf.setValue("CGI.cur.tabs.%d" % i, tab) 00047 i += 1 00048 00049 def hdf_array(hdf, array, prefix): 00050 i = 0 00051 for element in array: 00052 hdf.setValue("%s.%s" % (prefix, i), element) 00053 i += 1 00054