The different buffers can be organized to be written to the same file or to different files. It is easy and efficient for an interactive analysis program to make selections on the event flag and then only read buffers of the selected events. This mechanism is also well suited for parallel architectures. Note that this scheme allows also insertion of a new Branch at any time in an existing file or set of files. When queries are executed on one or more variables or objects, only the branch buffers containing these variables are read into memory.
Data are in general processed on different architectures with different memory sizes.
In case the analysis is performed on a parallel architecture with a lot of memory, as many buffers as possible are kept in memory, maybe even all buffers. The Tree data structure allows direct access to any event, direct access to any branch or any leaf even in the case of variable length structures. A working example of a tree can be found in the description of the class TTree . The batch example Event. Example macro eventa.