35 """dump the content of a ROOT file into an ASCII format.
38 import PyUtils.RootUtils
as ru
39 root = ru.import_root()
41 _inspect = root.RootUtils.PyROOTInspector.pyroot_inspect2
43 import PyUtils.Logging
as L
44 msg = L.logging.getLogger(
'dump-root')
45 msg.setLevel(L.logging.INFO)
47 msg.info(
'fname: [%s]', args.fname)
48 root_file = root.TFile.Open(args.fname)
49 if (root_file
is None or
50 not isinstance(root_file, root.TFile)
or not root_file.IsOpen()):
51 msg.error(
'could not open [%s]', args.fname)
56 tree_names = args.tree_name.split(
',')
59 keys = [k.GetName()
for k
in root_file.GetListOfKeys()]
62 if isinstance(o, root.TTree):
65 msg.info(
'dumping trees: %s', tree_names)
67 for tree_name
in tree_names:
68 f = ru.RootFileDumper(args.fname, tree_name)
69 nentries = f.tree.GetEntries()
71 nentries = args.entries
72 for d
in f.dump(tree_name, nentries):
73 tree_name, ientry, name, data = d
74 n =
'.'.
join(map(str, [tree_name,
"%03i"%ientry]+name))
75 print (
'%s %r' %(n, data))