AddFriend [message #4725] |
Sun, 22 July 2007 22:12 |
StefanoSpataro
Messages: 2736 Registered: June 2005 Location: Torino
|
first-grade participant |
From: *dip.t-dialin.net
|
|
Hello,
during the weekend I simulated many events, and the output of my simulation macro was composed by several files (bigdata_mega_X.root).
Then I launched my reconstruction, I added all the files with the fRun->AddFile() function, in order to have only one file with the output (full_bigdata_mega.root).
Then I wanted to launch my macro, and to use even the MCTrack information. In mý macro I put the following lines:
TFile* f = new TFile("$DATA/panda/kick/full_bigdata_mega.root"); TTree *t=(TTree *) f->Get("cbmsim") ;
t->AddFriend("cbmsim","$DATA/panda/kick/bigdata_mega.root");
t->AddFriend("cbmsim","$DATA/panda/kick/bigdata_mega_1.root");
t->AddFriend("cbmsim","$DATA/panda/kick/bigdata_mega_2.root");
t->AddFriend("cbmsim","$DATA/panda/kick/bigdata_mega_3.root");
Fist of all I get several warnings, telling me that the size of the friend is less than the original file (of course, but the sum of friends corresponds to the total size of the first file), then the analysis run smoothly, but when it exceeds the number of events of the first friend (so when it has to move to the next one), I have an error (illegal pointer to class...), so the friend mechanism has failed.
What I did wrong? Or is there some bug?
P.S. If I try to create one reconstruction file per each "son" of the first file, the first one is ok (bigdata_mega) but from the 2ns one (bigdata_mega_1) the analysis crashes (-E- CbmRootManager Branch: EventHeader. not found in Tree).
[Updated on: Sun, 22 July 2007 22:16] Report message to a moderator
|
|
|