Home

UnROOT.jl

UnROOT.arrayMethod.
function array(f::ROOTFile, path)

Reads an array from a branch. Currently hardcoded to Int32

UnROOT.PreambleMethod.

Reads the preamble of an object.

The cursor will be put into the right place depending on the data.

UnROOT.StreamersMethod.
function Streamers(io)

Reads all the streamers from the ROOT source.

UnROOT.endcheckMethod.
function endcheck(io, preamble::Preamble)

Checks if everything went well after parsing a TOBject. Used in conjuction with Preamble.

UnROOT.readbytes!Method.
function readbytes!(io, b, offset, nr)

Efficient read of bytes into an existing array at a given offset

UnROOT.readobjany!Method.
function readobjany!(io, tkey::TKey, refs)

The main entrypoint where streamers are parsed and cached for later use. The refs dictionary holds the streamers or parsed data which are reused when already available.

UnROOT.skiptobjMethod.
function skiptobj(io)

Skips a TOBject.

function topological_sort(streamer_infos)

Sort the streamers with respect to their dependencies and keep only those which are not defined already.

The implementation is based on https://stackoverflow.com/a/11564769/1623645

UnROOT.@stackMacro.
macro stack(into, structs...)

Stack the fields of multiple structs and create a new one. The first argument is the name of the new struct followed by the ones to be stacked. Parametric types are not supported and the fieldnames needs to be unique.

Example:

@stack Baz Foo Bar

Creates Baz with the concatenated fields of Foo and Bar