203def dumpdir (f, by_branch, pref=''):
204 kk = [k.GetName() for k in f.GetListOfKeys()]
205 kk.sort()
206 for k in kk:
207 o = f.Get (k)
208 if k == 'Schema':
209 pass
210 elif isinstance (o, ROOT.TTree):
211 print ('\n\n\nTree', pref+k)
212 dumptree (o, by_branch)
213 elif isinstance (o, ROOT.TH1):
214 print ('\n\n\nTH1', pref+k)
215 dumphist (o)
216 elif isinstance (o, ROOT.TDirectory):
217 dumpdir (o, by_branch, pref + k + '/')
218 elif isinstance (o, ROOT.TObjString):
219 print ('\n\n\nString', pref+k)
220 if k == '_pickle':
221 print ('[pickle data skipped]')
222 else:
223 print (o, end='')
224 print ('__END_OF_STRING__')
225 else:
226 print ('\n\n\nKey', pref+k)
227 print (o)
228 return
229
230
231