#!/usr/bin/env python3
from __future__ import print_function
import ROOT
import sys
import os

if len(sys.argv)==1:
    print("Please specify one or more ROOT file(s)")
    sys.exit(0)

for filename in sys.argv[1:]:
    if not os.path.exists(filename):
        print("ERROR File not found: %s"%filename)
        sys.exit(1)

for filename in sys.argv[1:]:
    tfile=ROOT.TFile(filename)
    if not tfile or not tfile.IsOpen():
        print("ERROR Problems opening file: %s"%filename)
        sys.exit(2)
    print("Objects in %s:"%filename)
    for key in tfile.GetListOfKeys():
        o=key.ReadObj()
        extra=''
        if isinstance(o,ROOT.TNamed):
            extra=' \"%s\"'%o.GetTitle()
        out='    %10s %s'%(o.ClassName(),o.GetName())
        print('%s%s'%(out.ljust(50),extra))
    tfile.Close()
    del tfile

