generate_listener: Add support for uint16, int32 and int16 arrays

Signed-off-by: CarlOlsson <carlolsson.co@gmail.com>
This commit is contained in:
CarlOlsson
2017-08-26 22:34:25 +02:00
committed by Lorenz Meier
parent 49c0947cc2
commit 6135179202
@@ -33,6 +33,15 @@ for index,m in enumerate(raw_messages):
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"):
@@ -202,6 +211,24 @@ for index,m in enumerate(messages[1:]):
print("\t\t\t\tprintf(\"%%\" PRIu64 \" \",container.%s[j]);" % item[1])
print("\t\t\t}")
print("\t\t\tprintf(\"\\n\");")
elif item[0] == "uint16_array":
print("\t\t\tprintf(\"%s: \");" % item[1])
print("\t\t\tfor (int j = 0; j < %d; j++) {" % item[2])
print("\t\t\t\tprintf(\"%%u \",container.%s[j]);" % item[1])
print("\t\t\t}")
print("\t\t\tprintf(\"\\n\");")
elif item[0] == "int32_array":
print("\t\t\tprintf(\"%s: \");" % item[1])
print("\t\t\tfor (int j = 0; j < %d; j++) {" % item[2])
print("\t\t\t\tprintf(\"%%d \",container.%s[j]);" % item[1])
print("\t\t\t}")
print("\t\t\tprintf(\"\\n\");")
elif item[0] == "int16_array":
print("\t\t\tprintf(\"%s: \");" % item[1])
print("\t\t\tfor (int j = 0; j < %d; j++) {" % item[2])
print("\t\t\t\tprintf(\"%%d \",container.%s[j]);" % item[1])
print("\t\t\t}")
print("\t\t\tprintf(\"\\n\");")
elif item[0] == "int64":
print("\t\t\tprintf(\"%s: %%\" PRId64 \"\\n\",container.%s);" % (item[1], item[1]))
elif item[0] == "int32":