31
31
import sys
32
32
import typing
33
33
from builtins import *
34
+ import re
34
35
35
36
import canmatrix .formats .xls_common
36
37
@@ -92,7 +93,7 @@ def write_ecu_matrix(ecu_name_list, sig, frame, row, col):
92
93
elif ecu_name in frame .transmitters :
93
94
row [col ] = "s"
94
95
else :
95
- pass
96
+ row [ col ] = ""
96
97
col += 1
97
98
return col
98
99
@@ -116,7 +117,7 @@ def dump(db, file_object, delimiter=',', **options):
116
117
'is signed' ]
117
118
head_tail = ['Name / Phys. Range' , 'Function / Increment Unit' , 'Value' ]
118
119
119
- additional_signal_columns = options .get ("additionalSignalAttributes " , "" ).split ("," )
120
+ additional_signal_columns = options .get ("additionalAttributes " , "" ).split ("," )
120
121
additional_frame_columns = options .get ("additionalFrameAttributes" , "" ).split ("," )
121
122
motorola_bit_format = options .get ("xlsMotorolaBitFormat" , "msbreverse" )
122
123
@@ -195,10 +196,23 @@ def dump(db, file_object, delimiter=',', **options):
195
196
signal_row += ("s" if sig .is_signed else "u" )
196
197
197
198
col = head_top .__len__ ()
198
- write_ecu_matrix (ecu_name_list , sig , frame , signal_row , col )
199
+ col = write_ecu_matrix (ecu_name_list , sig , frame , signal_row , col )
200
+
201
+ if float (sig .min ) != 0 or float (sig .max ) != 1.0 :
202
+ back .insert (0 , str ("%g..%g" % (sig .min , sig .max ))) # type: ignore
203
+ elif float (sig .min ) == 0 and float (sig .max ) == 1.0 :
204
+ back .insert (0 , str ("%g..%g" % (sig .min , sig .max ))) # type: ignore
205
+ else :
206
+ back .insert (0 , "" )
207
+ '''
208
+ back += additional_frame_info
209
+ for item in additional_signal_columns:
210
+ temp = getattr(sig, item, "")
211
+ back.append(temp)
212
+ '''
213
+ temp = ", " .join (["{}: {}" .format (a , b ) for (a , b ) in sig .values .items ()])
214
+ back .append (temp )
199
215
signal_row += back
200
- # write Value
201
- signal_row += [val , sig .values [val ]]
202
216
203
217
signal_row += additional_frame_info
204
218
for item in additional_signal_columns :
@@ -219,13 +233,23 @@ def dump(db, file_object, delimiter=',', **options):
219
233
signal_row += ("s" if sig .is_signed else "u" )
220
234
221
235
col = head_top .__len__ ()
222
- write_ecu_matrix (ecu_name_list , sig , frame , signal_row , col )
223
- signal_row += back
236
+ col = write_ecu_matrix (ecu_name_list , sig , frame , signal_row , col )
224
237
225
- if sig .min is not None or sig .max is not None :
226
- signal_row += [str ("{}..{}" .format (sig .min , sig .max ))]
238
+ if float (sig .min ) != 0 or float (sig .max ) != 1.0 :
239
+ back .insert (0 , str ("%g..%g" % (sig .min , sig .max ))) # type: ignore
240
+ elif float (sig .min ) == 0 and float (sig .max ) == 1.0 :
241
+ back .insert (0 , str ("%g..%g" % (sig .min , sig .max ))) # type: ignore
227
242
else :
228
- signal_row += ["" ]
243
+ back .insert (0 , "" )
244
+ '''
245
+ back += additional_frame_info
246
+ for item in additional_signal_columns:
247
+ temp = getattr(sig, item, "")
248
+ back.append(temp)
249
+ '''
250
+ temp = ", " .join (["{}: {}" .format (a , b ) for (a , b ) in sig .values .items ()])
251
+ back .append (temp )
252
+ signal_row += back
229
253
230
254
signal_row += additional_frame_info
231
255
for item in additional_signal_columns :
0 commit comments