35 """Runs the dumping routines"""
38 if (args.verbosity > 0):
40 print(
"Opening", bsfile)
42 input = eformat.istream(bsfile)
46 code.interact(local=locals())
50 offset = args.skip
if args.skip
else 0
57 if args.events
is not None and event_count>args.events:
63 for stag
in event.stream_tag():
64 if (stag.type ==
'calibration')
and ((stag.name).startswith(
'DataScouting_')):
65 ds_module_ids[
int((stag.name).
split(
'_')[1])] = (
False, stag.name)
66 if stag.name
not in ds_ROB_counts:
67 ds_ROB_counts[stag.name] = {
'ROBfound':0,
'ROBnotFound':0,
'noContainers':0,
'emptyContainers':0}
70 for f
in event.children():
71 if (f.source_id().subdetector_id() == eformat.helper.SubDetector.TDAQ_HLT)
and (f.source_id().module_id()
in ds_module_ids):
72 if (args.verbosity >= 1):
73 print(
"======================= RunNumber : %d , Event: %d, LB: %d, LVL1_ID: %d, Global_ID: %d bunch-x: %d TT: x%x =========================="
74 % ( event.run_no(), event_count, event.lumi_block(), event.lvl1_id(), event.global_id(), event.bc_id(), event.lvl1_trigger_type()))
76 if (args.verbosity >= 1):
77 print(
".. Stream Tags:", [(s.name, s.type)
for s
in event.stream_tag()])
80 if (args.verbosity >= 1):
81 print(
'.. %s %s %s bytes' % (f.__class__.__name__, f.source_id(), f.fragment_size_word()*4))
84 ds_module_ids[f.source_id().module_id()] = (
True, ds_module_ids[f.source_id().module_id()][1])
85 if (args.verbosity >= 2):
87 for feature
in res.nav_payload:
88 key = feature[0]+
'#'+feature[1]
89 if key
not in featureSizes:
91 featureSizes[key] += feature[2]
92 except Exception
as ex:
93 print(
'... **** problems in analyzing payload', ex)
94 print(
'... **** raw data[:10]',
list(f.rod_data())[:10])
96 if (featureSizes == {}):
97 if (args.verbosity >= 1):
98 print(
" FATAL : No containers are available for Data Scouting HLTResult with module ID = ",f.source_id().module_id(),
", Stream name = ",ds_module_ids[f.source_id().module_id()][1])
99 ds_ROB_counts[ ds_module_ids[f.source_id().module_id()][1] ][
'noContainers'] += 1
100 for item
in featureSizes.items():
102 if (args.verbosity >= 1):
103 print(
" ERROR : Empty container for feature = ",item[0])
104 ds_ROB_counts[ ds_module_ids[f.source_id().module_id()][1] ][
'emptyContainers'] += 1
106 if (args.verbosity >= 2):
107 print(
".. EOF DS HLTResult with module ID = ", f.source_id().module_id())
110 for item
in ds_module_ids.items():
111 if (item[1][0]
is False):
112 if (args.verbosity >= 1):
113 print(
" FATAL : No Data Scouting HLTResult found for expected module ID = ",item[0],
", Stream name = ",item[1][1])
114 ds_ROB_counts[ item[1][1] ][
'ROBnotFound'] += 1
116 ds_ROB_counts[ item[1][1] ][
'ROBfound'] += 1
118 if (args.verbosity >= 0):
119 print(
"\n Events read: ", event_count)
120 print(
"\n Summary of Data Scouting information:\n",
" -------------------------------------\n", ds_ROB_counts)