14from ROOT.Belle2
import ARICHDatabaseImporter
15from optparse
import OptionParser
17parser = OptionParser()
18parser.add_option(
'-t',
'--tag', dest=
'tag', default=
'',
19 help=
'database tag from which to import/export data')
20parser.add_option(
'-e',
'--exp', dest=
'experiment',
21 default=-1, help=
'experiment')
22parser.add_option(
'-r',
'--run', dest=
'run',
23 default=-1, help=
'run')
24parser.add_option(
'-o',
'--object', dest=
'object',
25 default=
"", help=
'object to be printed')
28(options, args) = parser.parse_args()
30if options.object ==
'':
31 print(
"use option -o to specify the object to be printed (ARICHReconstructionPar, etc)")
34if options.tag ==
'local':
35 b2.conditions.testing_payloads = [
"localdb/database.txt"]
36elif options.tag ==
'':
37 print(
"Using default tag")
39 b2.conditions.override_globaltags([options.tag])
43eventinfo = b2.register_module(
'EventInfoSetter')
45main = b2.create_path()
47main.add_module(eventinfo)
50paramloader = b2.register_module(
'Gearbox')
51paramloader.initialize()
56dbImporter = ARICHDatabaseImporter()
57exp = int(options.experiment)
59if exp > 0
and run > 0:
60 dbImporter.setExperimentAndRun(exp, run)
62if options.object ==
'ARICHModulesInfo':
63 dbImporter.printModulesInfo()
64elif options.object ==
'ARICHSimulationPar':
65 dbImporter.printSimulationPar()
66elif options.object ==
'ARICHChannelMask':
67 dbImporter.printChannelMask()
68elif options.object ==
'ARICHChannelMapping':
69 dbImporter.printChannelMapping()
70elif options.object ==
'ARICHMergerMapping':
71 dbImporter.printMergerMapping()
72elif options.object ==
'ARICHCopperMapping':
73 dbImporter.printCopperMapping()
74elif options.object ==
'ARICHReconstructionPar':
75 dbImporter.printReconstructionPar()
76elif options.object ==
'ARICHGlobalAlignment':
77 dbImporter.printGlobalAlignment()
78elif options.object ==
'ARICHMirrorAlignment':
79 dbImporter.printMirrorAlignment()
80elif options.object ==
'ARICHAeroTilesAlignment':
81 dbImporter.printAeroTilesAlignment()
82elif options.object ==
'ARICHGeometryConfig':
84 dbImporter.printGeometryConfig()
85elif options.object ==
'moduleNumbering':
87 dbImporter.dumpModuleNumbering()
88elif options.object ==
'QEMap':
90 dbImporter.dumpQEMap()
91elif options.object ==
'MergerMap':
94 dbImporter.dumpMergerMapping()
95elif options.object ==
'FEMappings':
97 dbImporter.printFEMappings()
99 print(
'Non-valid arich DB object!')