12Test import for Offline root file
13with histograms in subdirs
17from ROOT
import TFile, TH1F, gROOT
21filein =
"histin2.root"
22fileout =
'histout2.root'
24f = TFile(filein,
"RECREATE")
28h_expno = TH1F(
"expno",
"1", 1, 0, 1)
29h_runno = TH1F(
"runno",
"1", 1, 0, 1)
30h_rtype = TH1F(
"rtype",
"null", 1, 0, 1)
35h_test = TH1F(
"test",
"", 1, 0, 1)
40h_nevent = TH1F(
"Nevent",
"", 1, 0, 1)
48main = b2.create_path()
50dqminput = b2.register_module(
'DQMHistAnalysisInputRootFile')
51dqminput.param(
'SelectHistograms', [])
52dqminput.param(
'FileList', [filein])
53dqminput.param(
'EventInterval', 0)
54dqminput.param(
"EnableRunInfo",
True)
55main.add_module(dqminput)
57main.add_module(
"DQMHistAutoCanvas")
59dqmoutput = b2.register_module(
'DQMHistAnalysisOutputFile')
60dqmoutput.param(
'OutputFolder',
'./')
61dqmoutput.param(
'Filename', fileout)
62main.add_module(dqmoutput)
67expected = [
"DQMInfo/c_info",
"DAQ/c_Nevent",
"DQMInfo/c_expno",
"DQMInfo/c_runno",
"DQMInfo/c_rtype",
"TEST/c_test"]
68print(
"== resulting file content ==")
69f = TFile(fileout,
"READ")
70for k
in f.GetListOfKeys():
72 print(o.ClassName(), k)
73 if o.GetName() ==
"DQMInfo/c_info":
74 if "Exp 1, Run 1, RunType null" not in o.GetTitle():
75 b2.B2ERROR(f
"Run Info not found in {o.GetName()}: {o.GetTitle()}")
76 if o.GetName()
in expected:
77 expected.remove(o.GetName())
78print(
"============================")
80 b2.B2ERROR(
"missing items in outfile: ", expected)