Belle II Software  release-06-02-00
pxd_analysis.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 
4 
11 
12 import basf2 as b2
13 import sys
14 argv = sys.argv
15 
16 # Set the log level to show only error and fatal messages
17 b2.set_log_level(b2.LogLevel.ERROR)
18 # set_log_level(LogLevel.INFO)
19 # set_log_level(LogLevel.DEBUG)
20 
21 # globalTag = 'vxd_commissioning_20181030'
22 globalTag = 'data_reprocessing_prompt'
23 
24 b2.conditions.prepend_globaltag(globalTag)
25 b2.conditions.prepend_testing_payloads("localdb/database.txt")
26 
27 
28 gearbox = b2.register_module('Gearbox')
29 geometry = b2.register_module('Geometry')
30 
31 
32 # Create main path
33 main = b2.create_path()
34 
35 # Modules
36 
37 input = b2.register_module('DQMHistAnalysisInput')
38 input.param('HistMemoryPath', argv[1])
39 input.param('AutoCanvas', False)
40 input.param('AutoCanvasFolders', [])
41 main.add_module(input)
42 
43 # input = register_module('DQMHistAnalysisInputRootFile')
44 # input.param('InputRootFile', argv[1])
45 # main.add_module(input)
46 
47 main.add_module(gearbox, fileName="/geometry/Belle2_earlyPhase3.xml")
48 main.add_module(geometry) # , useDB=True)
49 
50 pxd_charge = b2.register_module('DQMHistAnalysisPXDCharge')
51 pxd_charge.param('histogramDirectoryName', 'PXDER')
52 main.add_module(pxd_charge)
53 
54 pxd_trackcharge = b2.register_module('DQMHistAnalysisPXDTrackCharge')
55 pxd_trackcharge.param('histogramDirectoryName', 'PXDER')
56 main.add_module(pxd_trackcharge)
57 
58 pxd_inj = b2.register_module('DQMHistInjection')
59 main.add_module(pxd_inj)
60 
61 pxd_commode = b2.register_module('DQMHistAnalysisPXDCM')
62 pxd_commode.param('histogramDirectoryName', 'PXDDAQ')
63 main.add_module(pxd_commode)
64 
65 pxd_effi = b2.register_module('DQMHistAnalysisPXDEff')
66 pxd_effi.param('histogramDirectoryName', 'PXDEFF')
67 pxd_effi.param("binsU", 16)
68 pxd_effi.param("binsV", 24)
69 pxd_effi.param("singleHists", False)
70 main.add_module(pxd_effi)
71 
72 pxd_redu = b2.register_module('DQMHistAnalysisPXDReduction')
73 pxd_redu.param('histogramDirectoryName', 'PXDDAQ')
74 main.add_module(pxd_redu)
75 
76 # output = register_module('DQMHistAnalysisOutputFile')
77 # output.param('SaveHistos', False) # don't save histograms
78 # output.param('SaveCanvases', True) # save canvases
79 # main.add_module(output)
80 
81 output = b2.register_module('DQMHistAnalysisOutputRelayMsg')
82 # check that port fit your root canvas server
83 output.param('Port', int(argv[2]))
84 main.add_module(output)
85 
86 # Process all events
87 b2.process(main)