From bc4f47e7a0d4d91b0dcf92c65d3eb52fe80f2b93 Mon Sep 17 00:00:00 2001 From: Tamas Gal <tgal@km3net.de> Date: Thu, 12 Dec 2019 00:07:01 +0100 Subject: [PATCH] Add kprinttree --- km3io/utils/kprinttree.py | 38 ++++++++++++++++++++++++++++++++++++++ setup.py | 5 +++++ 2 files changed, 43 insertions(+) create mode 100644 km3io/utils/kprinttree.py diff --git a/km3io/utils/kprinttree.py b/km3io/utils/kprinttree.py new file mode 100644 index 0000000..a7fd1db --- /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/setup.py b/setup.py index 54a3e34..0dfb14e 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', -- GitLab