Hi everybody, I am playing with the Event example that I modified to have as unique data member a large C structure (this would be our "legacy"DST, i.e. the one I am trying to replace): > #include "compact.h" > > ...... > > class Event : public TObject { : > public: > cmpEvent the_evt; > .... > ClassDef(Event,1) //Event structure > }; > When I run Event I get a warning > origin:18:28:~/rootevent: Event -l c1.list > Warning in <Add>: class TBranchObject allready in TClassTable > but also a large (too large!) Event.root that I can open from root > root [0] TFile f("Event.root") > root [1] f.ls() > TFile** Event.root > TFile* Event.root > KEY: TH1F htime;1 Real-Time to write versus time > KEY: TTree T;1 A test of a NA48 ROOT tree > now, outside of root, I try to read the file with a program of mine also derived from the Event example > origin:18:37:~/rootevent: dbx myread > .... > (dbx) run > Process 4457 (myread) started > Warning in <Add>: class TBranchObject allready in TClassTable > Warning in <Tclass:TClass>: no dictionary for class Event available > Process 4457 (myread) stopped on signal SIGSEGV: > > Segmentation violation (handler sighandler(int)) > > at [TBranchObject::SetAddress(void*):266 +0x4,0x4142b0] > 266 rd = (TRealData *)rdata->First(); > that's how I understand it: as the warning warned, there is no dictionary available on Event class and the pointer rdata to the list of real(?) data in the class is nil and stays nil even after TClass::BuildRealData is run. How this can happen? Does it depend on my, admittedly weird, Event class or on something that I am forgetting/doing wrong in myread.cxx before the usual > // Start main loop on all events > TBranch *branch = T->GetBranch("event"); > Event *event = new Event(); > branch->SetAddress(&event); > Thanks for any suggestion, -- Paolo Calafiura Scuola Normale Superiore, Piazza Cavalieri 7, I-56127 Pisa phone/fax Pisa SNS 39-50-509085 / 563513 phone/fax Pisa INFN 39-50-880218 / 880317 phone/fax CERN 41-22-7674418 / 7678950 office 31-2-006
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:30 MET