Module parsers

Source

Functions§

c_string
Parse a null terminated string
checked_byte_count
Return the size in bytes of the following object in the input. The count is the remainder of this object minus the size of the count.
class_name_and_buffer
Figure out the class we are looking at. This parser immediately resolves possible references returning the name of the object in this buffer and the associated data. This function needs a Context, though, which may not be available. If so, have a look at the classinfo parser.
classinfo
Figure out the class we are looking at. The data might not be saved locally but rather in a reference to some other place in the buffer.This is modeled after ROOT’s TBufferFile::ReadObjectAny and TBufferFile::ReadClass
decompress
Decompress the given buffer. Figures out the compression algorithm from the preceeding "magic" bytes
parse_custom_mantissa
Some Double_* values are saved with a custom mantissa… The number of bytes can be found in the comment string of the generated YAML code (for ALICE ESD files at least). This function reconstructs a float from the exponent and mantissa
parse_tobjarray_of_tnameds
ESD trigger classes are strings describing a particular Trigger. Each event (but in reality every run) might have a different “menu” of available triggers. The trigger menu is saved as an TObjArray of TNamed objects for each event. This breaks it down to a simple vector
raw
Parse a Raw chunk from the given input buffer. This is usefull when one does not know the exact type at the time of parsing
raw_no_context
Same as raw but doesn’t require a Context as input. Panics if a Context is required to parse the underlying buffer (i.e., the given buffer contains a reference to some other part of the file.
string
Read ROOT’s version of short and long strings (preceeded by u8). Does not read null terminated!
tarray
Parse a so-called TArray. Note that ROOT’s TArrays are actually not fixed size. Example usage for TArrayI: tarray(nom::complete::be_i32, input_slice)
tlist
Parse a TList
tnamed
Parser for TNamed objects
tobjarray
Parse a TObjArray
tobjarray_no_context
Parse a TObjArray which does not have references pointing outside of the input buffer
tobject
Parser for the most basic of ROOT types
tobjstring
Parser for TObjString