package rcmd

import "go-hep.org/x/hep/groot/rcmd"

Package rcmd provides helper functions containing the logic of various root-xyz commands.

Index

Functions

func Copy

func Copy(oname string, fnames []string) error

Copy copies the content of the ROOT files fnames into the output ROOT file named oname.

func Diff

func Diff(w io.Writer, ref, chk *riofs.File, keys []string) error

Diff compares the values of the list of keys between the two provided ROOT files. Diff writes the differing data (if any) to w.

if w is nil, os.Stdout is used. if the slice of keys is nil, all keys are considered.

func Dump

func Dump(w io.Writer, fname string, deep bool, filter func(name string) bool) error

Dump dumps the content of the fname ROOT file to the provided io.Writer. If deep is true, Dump will recursively inspect directories and trees. Dump only display the content of ROOT objects satisfying the provided filter function.

If filter is nil, Dump will consider all ROOT objects.

func List

func List(w io.Writer, fname string, opts ...ListOption) error

List displays the summary content of the named ROOT file into the provided io Writer.

List's behaviour can be customized with a set of optional ListOptions.

func Merge

func Merge(oname string, fnames []string, verbose bool) error

Merge merges all input fnames ROOT files into the output oname one.

func Split

func Split(oname, fname, tname string, nevts int64, verbose bool) ([]string, error)

Split splits the tree from the input file into multiple trees, each with nevts entries. Split returns the name of the split output files, and an error, if any.

Types

type ListOption

type ListOption func(*lsCmd)

ListOption controls how List behaves.

func ListStreamers

func ListStreamers(v bool) ListOption

ListStreamers enables the display of streamer informations contained in the provided ROOT file.

func ListTrees

func ListTrees(v bool) ListOption

ListTrees enables the detailed display of trees contained in the provided ROOT file.

Source Files

copy.go diff.go dump.go ls.go merge.go rcmd.go split.go

Version
v0.36.0 (latest)
Published
Nov 15, 2024
Platform
linux/amd64
Imports
23 packages
Last checked
1 day ago

Tools for package owners.