mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
topic_listener report never published and cleanup
- don't ignore position_setpoint_triplet
This commit is contained in:
parent
0a0044fc29
commit
55466e539b
@ -25,72 +25,26 @@ raw_messes = [raw_messages.remove(x) for x in raw_messages if 'gps_inject_data'
|
||||
raw_messes = [raw_messages.remove(x) for x in raw_messages if 'gps_dump' in x]
|
||||
|
||||
for index,m in enumerate(raw_messages):
|
||||
temp_list_floats = []
|
||||
temp_list_uint64 = []
|
||||
temp_list_bool = []
|
||||
if("pwm_input" not in m and "position_setpoint" not in m):
|
||||
temp_list = []
|
||||
topic_list = []
|
||||
f = open(m,'r')
|
||||
for line in f.readlines():
|
||||
items = re.split('\s+', line.strip())
|
||||
topic_list = []
|
||||
f = open(m,'r')
|
||||
for line in f.readlines():
|
||||
items = re.split('\s+', line.strip())
|
||||
|
||||
if ('float32[' in items[0]):
|
||||
num_floats = int(items[0].split("[")[1].split("]")[0])
|
||||
temp_list.append(("float_array",items[1],num_floats))
|
||||
elif ('float64[' in items[0]):
|
||||
num_floats = int(items[0].split("[")[1].split("]")[0])
|
||||
temp_list.append(("double_array",items[1],num_floats))
|
||||
elif ('uint64[' in items[0]):
|
||||
num_floats = int(items[0].split("[")[1].split("]")[0])
|
||||
temp_list.append(("uint64_array",items[1],num_floats))
|
||||
elif ('uint16[' in items[0]):
|
||||
num_floats = int(items[0].split("[")[1].split("]")[0])
|
||||
temp_list.append(("uint16_array",items[1],num_floats))
|
||||
elif ('int32[' in items[0]):
|
||||
num_floats = int(items[0].split("[")[1].split("]")[0])
|
||||
temp_list.append(("int32_array",items[1],num_floats))
|
||||
elif ('int16[' in items[0]):
|
||||
num_floats = int(items[0].split("[")[1].split("]")[0])
|
||||
temp_list.append(("int16_array",items[1],num_floats))
|
||||
elif(items[0] == "float32"):
|
||||
temp_list.append(("float",items[1]))
|
||||
elif(items[0] == "float64"):
|
||||
temp_list.append(("double",items[1]))
|
||||
elif(items[0] == "uint64") and len(line.split('=')) == 1:
|
||||
temp_list.append(("uint64",items[1]))
|
||||
elif(items[0] == "uint32") and len(line.split('=')) == 1:
|
||||
temp_list.append(("uint32",items[1]))
|
||||
elif(items[0] == "uint16") and len(line.split('=')) == 1:
|
||||
temp_list.append(("uint16",items[1]))
|
||||
elif(items[0] == "int64") and len(line.split('=')) == 1:
|
||||
temp_list.append(("int64",items[1]))
|
||||
elif(items[0] == "int32") and len(line.split('=')) == 1:
|
||||
temp_list.append(("int32",items[1]))
|
||||
elif(items[0] == "int16") and len(line.split('=')) == 1:
|
||||
temp_list.append(("int16",items[1]))
|
||||
elif (items[0] == "bool") and len(line.split('=')) == 1:
|
||||
temp_list.append(("bool",items[1]))
|
||||
elif (items[0] == "uint8") and len(line.split('=')) == 1:
|
||||
temp_list.append(("uint8",items[1]))
|
||||
elif (items[0] == "int8") and len(line.split('=')) == 1:
|
||||
temp_list.append(("int8",items[1]))
|
||||
elif '# TOPICS' == ' '.join(items[:2]):
|
||||
for topic in items[2:]:
|
||||
topic_list.append(topic)
|
||||
if '# TOPICS' == ' '.join(items[:2]):
|
||||
for topic in items[2:]:
|
||||
topic_list.append(topic)
|
||||
|
||||
f.close()
|
||||
f.close()
|
||||
|
||||
(m_head, m_tail) = os.path.split(m)
|
||||
message = m_tail.split('.')[0]
|
||||
(m_head, m_tail) = os.path.split(m)
|
||||
message = m_tail.split('.')[0]
|
||||
|
||||
if len(topic_list) == 0:
|
||||
topic_list.append(message)
|
||||
if len(topic_list) == 0:
|
||||
topic_list.append(message)
|
||||
|
||||
for topic in topic_list:
|
||||
messages.append(message)
|
||||
topics.append(topic)
|
||||
message_elements.append(temp_list)
|
||||
for topic in topic_list:
|
||||
messages.append(message)
|
||||
topics.append(topic)
|
||||
|
||||
num_messages = len(messages);
|
||||
|
||||
@ -199,9 +153,9 @@ print("}\n")
|
||||
|
||||
for index, (m, t) in enumerate(zip(messages, topics)):
|
||||
print("void listen_%s(unsigned num_msgs, unsigned topic_instance) {" % t)
|
||||
print("\tint sub = orb_subscribe_multi(ORB_ID(%s), topic_instance);" % t)
|
||||
print("\torb_id_t ID = ORB_ID(%s);" % t)
|
||||
print("\t%s_s container = {};" % m)
|
||||
print("\tif (orb_exists(ID, topic_instance) != 0) { printf(\"never published\\n\"); return; }")
|
||||
print("\tint sub = orb_subscribe_multi(ORB_ID(%s), topic_instance);" % t)
|
||||
print("\tbool updated = false;")
|
||||
print("\tunsigned i = 0;")
|
||||
print("\thrt_abstime start_time = hrt_absolute_time();")
|
||||
@ -212,6 +166,7 @@ for index, (m, t) in enumerate(zip(messages, topics)):
|
||||
print("\t\t\tstart_time = hrt_absolute_time();")
|
||||
print("\t\t\ti++;")
|
||||
print("\t\tprintf(\"\\nTOPIC: %s instance %%d #%%d\\n\", topic_instance, i);" % t)
|
||||
print("\t\t%s_s container = {};" % m)
|
||||
print("\t\torb_copy(ID, sub, &container);")
|
||||
print("\t\tprint_message(container);")
|
||||
print("\t\t} else {")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user