I am working on creating root files from binary data files and there was a change of our readout mode. Before our data files were ordered by event number making it easy to fill the TTree after each event. Now the ordering is different (I am reading out several TDCs and first TDC0 sends all of its events, then TDC1 sends all of its events and so on).
Is there a way to set the event number manually when filling a tree such that the event ids from the different TDCs are the same even though I did TTree->Fill(); at different times?
Thank you very much!
Also, I am working with an old version of root that was already installed in the lab:
ROOT Version: 5.34/36
Built for linuxx8664gcc on Apr 05 2016
CINT/ROOT C/C++ Interpreter version 5.18.00
While trying to implement this I stumbled upon a new issue.
In my .cc file I want to do
TTreeIndex* new_ind = new TTreeIndex(tr, "EventNr", "0");
but when compiling I get “undefined reference to `TTreeIndex::TTreeIndex(TTree const*, char const*, char const*)'” event though I included TTreeIndex.h in my .hh file. Am I missing any other include files or what could be the issue here?
Since I have not yet managed to compile without errors I also have another question:
I have the same EventNr four times (once for each TDC) - will these events then be combined in one index or will there be four events with the same index?
And: Will I be able to later normally loop over the entries or do I need to use some other Index functions to loop over all of my data?