6 from argparse
import ArgumentParser
10 """Shortcut method to do the basf2 execution on hltout"""
13 parser = ArgumentParser()
14 parser.add_argument(
"input_ring_buffer", help=
"Name of the input ring buffer")
15 parser.add_argument(
"output_ring_buffer", help=
"Name of the output ring buffer")
16 parser.add_argument(
"unused-histoport", help=
"Unused in the moment")
17 parser.add_argument(
"--number-of-collectors", help=
"Number of collectors to start", default=3, type=int)
19 args = parser.parse_args()
21 input_ring_buffer_list = [f
"{args.input_ring_buffer}{i + 1}" for i
in range(0, args.number_of_collectors)]
22 output_ring_buffer_list = [f
"{args.output_ring_buffer}{i + 1}" for i
in range(0, args.number_of_collectors)]
23 message_queue_list = [f
"/roi{i}" for i
in range(0, args.number_of_collectors)]
25 for input_rb
in input_ring_buffer_list:
26 subprocess.run([
"removerb", input_rb])
27 for output_rb
in output_ring_buffer_list:
28 subprocess.run([
"removerb", output_rb])
30 execution = CleanBasf2Execution()
32 execution.start([
"hlt_rb2mrb", args.input_ring_buffer] + input_ring_buffer_list)
33 execution.start([
"hlt_mrb2rb"] + output_ring_buffer_list + [args.output_ring_buffer])
34 for input_rb, output_rb, roi_message_queue
in zip(input_ring_buffer_list, output_ring_buffer_list,
36 execution.start([
"basf2",
"--no-stats", script_name,
"--", input_rb, output_rb, roi_message_queue])
37 return_code = execution.wait()
40 subprocess.run([
"framework-pcore-clear_ipcs"])
41 for input_rb
in input_ring_buffer_list:
42 subprocess.run([
"removerb", input_rb])
43 for output_rb
in output_ring_buffer_list:
44 subprocess.run([
"removerb", output_rb])