No description
Find a file
2024-09-25 12:00:52 +02:00
src major refactor 2024-09-25 12:00:52 +02:00
third_party update imgui_memory_editor to the upstream version 2024-08-21 11:43:48 +02:00
.gitignore update gitignore 2024-09-24 11:56:56 +02:00
.gitmodules make imgui a submodule; import memory editor 2024-07-10 21:41:48 +02:00
COPYING add license 2024-08-08 17:27:22 +02:00
example.png update example.png 2024-07-26 13:51:53 +02:00
lmext1.root add arena 2024-07-10 17:48:23 +02:00
Makefile fix makefile 2024-09-06 16:07:42 +02:00
README.md update README 2024-08-21 14:38:26 +02:00

rntviewer

This is a work-in-progress interactive visualization tool for RNTuple.

Getting the repo

Clone this repository with

$ git clone --recurse-submodules <repo_url>

Dependencies

rntviewer currently only fully works on Linux, with the terminal-only version working on MacOS as well (PRs welcome).

The dependencies are:

  • GLFW3 (libglfw3-dev on debian, glfw-devel on fedora, glfw on arch)
  • ROOT (likely bleeding edge version, compiled from sources)
  • libxxhash3-dev

Other than those, rntviewer depends on Dear ImGui and GLAD (both included in the source tree).

The machine must support OpenGL 3.3 or higher.

For the terminal-only version you don't need GLFW3, ImGui or OpenGL support.

Building

Building is done with make. Make sure to source /path/to/root/bin/thisroot.sh before running it. You probably want to build the release version:

$ make r

You can test that the tool is working properly with:

$ ./rntviewer lmext1.root ntpl

To build the terminal-only version:

$ make nogfx_r

Usage

Basic usage is:

$ ./rntviewer <ntuple_file.root> [ntuple_name]

This will open a window and let you browse the RNTuple, jump around its sections and get some information about them. If you don't specify ntuple_name, the program will look for the first RNTuple in the file.

There is also a non-interactive non-graphical mode that can be used in a terminal (useful e.g. for ssh sessions):

$ ./rntviewer -t <ntuple_file.root> [ntuple_name]

The -t flag enables terminal mode. Use ./rntviewer -h to get a help message about the other flags that rntviewer accepts and are particularly useful in non-interactive mode.