Belle II Software  release-05-01-25
trggdlSummary.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 # -----------------------------------------------------------------------------------
4 #
5 # Example of GDL trigger Summary Module
6 #
7 # usage : %> basf2 trggdlSummary.py [input sroot file name]
8 #
9 # -----------------------------------------------------------------------------------
10 
11 from basf2 import *
12 
13 import sys # get argv
14 import re
15 import os.path
16 argvs = sys.argv # get arg
17 argc = len(argvs) # of arg
18 if argc != 2:
19  sys.exit("trggdlSummary.py> # of arg is strange. Exit.")
20 if argc == 2:
21  f_in_root = argvs[1]
22 
23 
24 set_log_level(LogLevel.INFO)
25 
26 main = create_path()
27 
28 # input
29 if f_in_root[-6:] == ".sroot":
30  rootfiletype = "sroot"
31  input = register_module('SeqRootInput')
32  matchobj = re.search("([^\/]+)\.sroot", f_in_root)
33  basename = re.sub('\.sroot$', '', matchobj.group())
34 if f_in_root[-5:] == ".root":
35  rootfiletype = "root"
36  input = register_module('RootInput')
37  matchobj = re.search("([^\/]+)\.root", f_in_root)
38  basename = re.sub('\.root$', '', matchobj.group())
39 
40 input.param('inputFileName', f_in_root)
41 main.add_module(input)
42 
43 
44 # output
45 output = register_module('RootOutput')
46 output.param("outputFileName", "trgsum/trgsum.%s.root" % basename)
47 if not os.path.isdir('trgsum'):
48  os.mkdir('trgsum')
49 
50 # Unpacker
51 trggdlUnpacker = register_module("TRGGDLUnpacker")
52 main.add_module(trggdlUnpacker)
53 
54 #
55 trggdlsummary = register_module('TRGGDLSummary')
56 main.add_module(trggdlsummary)
57 
58 progress = register_module('Progress')
59 main.add_module(progress)
60 
61 main.add_module(output, branchNames=["TRGSummary"])
62 
63 process(main)
64 
65 print(statistics)