10 set_log_level(LogLevel.INFO)
14 import multiprocessing
17 from ROOT
import Belle2
18 from ROOT.Belle2
import SVDOccupancyCalibrationsAlgorithm
20 from caf.framework
import Calibration, CAF, Collection, LocalDatabase, CentralDatabase
21 from caf
import backends
22 from caf
import strategies
25 import reconstruction
as reco
26 import modularAnalysis
as ana
33 set_log_level(LogLevel.INFO)
36 def SVDOccupancyCalibrations(files, tags):
43 path.add_module(
'Progress')
45 path.add_module(
'RootInput', branchNames=input_branches)
47 path.add_module(
"Gearbox")
48 path.add_module(
"Geometry", useDB=
True)
56 raw.add_unpackers(path, components=[
'SVD'])
58 'SVDZeroSuppressionEmulator',
60 ShaperDigits=
'SVDShaperDigits',
61 ShaperDigitsIN=
'SVDShaperDigitsZS5',
64 collector = register_module(
'SVDOccupancyCalibrationsCollector')
66 collector.param(
"SVDShaperDigitsName",
"SVDShaperDigitsZS5")
67 algorithm = SVDOccupancyCalibrationsAlgorithm(
"SVDOccupancyCAF")
73 pre_collector_path=path,
74 database_chain=[CentralDatabase(tag)
for tag
in tags],
76 max_files_per_collector_job=1,
85 if __name__ ==
"__main__":
87 input_files = [os.path.abspath(file)
for file
in [
88 "/group/belle2/dataprod/Data/Raw/e0008/r01309/sub00/physics.0008.01309.HLT5.f00098.root"]]
93 if not len(input_files):
94 print(
"You have to specify some input file(s)\n"
95 "using the standard basf2 command line option - i")
96 print(
"See: basf2 -h")
99 svdOccupCAF = SVDOccupancyCalibrations(input_files,
100 [
'giulia_CDCEDepToADCConversions_rel4_patch',
101 'data_reprocessing_prompt_rel4_patch'])
105 cal_fw.add_calibration(svdOccupCAF)
110 if multiprocessing.cpu_count() < 10: