Hello, sorry for that much mails,
what is the correct usage of the SetAddress() function of the
TBranch class?
I thought that it always needs a pointer to a pointer with an
initialized events, but in the example of the User's manual (pg. 247),
they use
static Float_d destep;
t2->GetBranch("destep")->SetAddress(&destep);
For me, neither of the two works. My script looks like:
gSystem->Load("run/.libs/libpamelarun");
TFile *f = new TFile("Physics.root");
TTree *t = (TTree *)f.Get("Physics");
EventCounter *counter = new EventCounter();
t->GetBranch("Counter")->SetAddress(&counter);
t->GetEntry(0);
cout << counter->GetEventNumber() << endl;
t->GetEntry(10);
cout << counter->GetEventNumber() << endl;
which doesn't print anything else than "0". Changing the "counter"
from a pointer to a local variable doesn't help. No error message is
printed, using "t->GetBranch("Counter")->Print()" I can see that it
contains the correct structure. Also with
"t->GetBranch()->Draw("Counter.EventNumber")" I find that the Number
is not zero.
How can I proceed to debug?
Ole
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:06 MET