diff --git a/km3io/utils/kprinttree.py b/km3io/utils/kprinttree.py new file mode 100644 index 0000000000000000000000000000000000000000..a7fd1db1f80df35743d793f65ad4a5206194cf8d --- /dev/null +++ b/km3io/utils/kprinttree.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python +# coding=utf-8 +# Filename: kprinttree.py +# Author: Tamas Gal <tgal@km3net.de> +""" +Print the available ROOT trees. + +Usage: + kprinttree.py FILENAME + kprinttree.py (-h | --help) + +Options: + -h --help Show this screen. + +""" +import uproot + +def print_tree(filename): + f = uproot.open(filename) + for key, ttree in f.items(): + try: + print("{} : {}".format(key.decode(), len(ttree))) + except TypeError: + print("{}".format(key.decode())) + + +def main(): + from docopt import docopt + args = docopt(__doc__) + + print_tree(args['FILENAME']) + + +if __name__ == '__main__': + main() + + + diff --git a/requirements.txt b/requirements.txt index 1e71e83e77d7521cde36bf64086741dcb1a20084..90b38c43f12a09986959d403ae20cc8ac4b1335a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,3 @@ +docopt uproot>=3.10.12 setuptools_scm diff --git a/setup.py b/setup.py index 54a3e34b3ab0ce40a0312ada24eaeb807dbd7def..0dfb14e3ca7d33a6a9674d7f755992250b39edd1 100644 --- a/setup.py +++ b/setup.py @@ -32,6 +32,11 @@ setup( }, install_requires=requirements, python_requires='>=3.5', + entry_points={ + 'console_scripts': [ + 'KPrintTree=km3io.utils.kprinttree:main' + ] + }, classifiers=[ 'Intended Audience :: Developers', 'Intended Audience :: Science/Research',