Skip to content

Commit a4d8aa8

Browse files
author
Collin Baldwin
committed
Bug fixes and updated handler generator
1 parent 83d2a43 commit a4d8aa8

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

openxc/generator/coder.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ def block(message_set):
241241
LOG.warning("Skipping disabled signal '%s' (in 0x%x)" % (
242242
signal.generic_name, signal.message.id))
243243
continue
244-
if signal.array_index is None:
244+
if not hasattr(signal, "array_index") or signal.array_index is None:
245245
signal.array_index = i
246246
lines.append(" " * 8 + "%s" % signal)
247247
LOG.info("Added signal '%s'" % signal.generic_name)
@@ -264,11 +264,11 @@ def block(message_set):
264264
LOG.warning("Skipping manager for disabled signal '%s' (in 0x%x)" % (
265265
signal.generic_name, signal.message.id))
266266
continue
267-
if signal.array_index is None:
267+
if not hasattr(signal, "array_index") or signal.array_index is None:
268268
signal.array_index = i
269269

270270
signal_arr_str = "SIGNALS[%d][%d]" % (signal.message_set.index, signal.array_index)
271-
lines.append(" " * 8 + "{signal: &%s, frequencyClock: {%s.frequency}}," % signal_arr_str)
271+
lines.append(" " * 8 + "{signal: &%s, frequencyClock: {%s.frequency}}," % (signal_arr_str, signal_arr_str))
272272
LOG.info("Added signal manager '%s'" % signal.generic_name)
273273

274274
return lines
@@ -340,9 +340,11 @@ def block(message_set):
340340
lines.append(" " * 12 + "case 0x%x: // %s" % (message.id,
341341
message.name))
342342
for handler in message.handlers:
343-
lines.append(" " * 16 + "%s(message, SIGNALS[%d], " % (
344-
handler, message_set.index) +
345-
"getSignalCount(), pipeline);")
343+
lines.append(" " * 16 + "%s(SIGNALS[%d], SIGNALS[%d], " % (
344+
handler, message_set.index, message_set.index) +
345+
"SIGNAL_MANAGERS[%d], SIGNAL_MANAGERS[%d], " % (
346+
message_set.index, message_set.index) +
347+
"getSignalCount(), message, pipeline);")
346348
for signal in message.active_signals():
347349
line = " " * 16
348350
line += ("can::read::translateSignal("

0 commit comments

Comments
 (0)