Hello, dear rooters. First of all, sorry for this long mail... I created a tree containing (as usual) vectors of tracks and vertices. This tree has one single branch for an MEvent object : class MEvent : public TObject { public: int number; vector<MVertex> vertex; vector<MTrack> track; MEvent(); // ... ClassDef(MEvent,1) }; As you can see, I would like to use STL vectors to store vertices and tracks. Everything seems to work fine, except I get the following error message at the first TTree::GetEntry(int) Error in <TBuffer::ReadClass>: got wrong class: TObject Does anybody know what could be the cause of this message ? In case you need it, my code can be found in /afs/cern.ch/user/c/cbernet/public/MDST Tree is created and filled or chained and read in MDST class. Linux/testMDST produced the tree Linux/Debug reads the tree and produces the error message. executables are in /afs/cern.ch/user/c/cbernet/public/MDST/Linux I also have a question : At the beginning, my LinkDef was : #ifdef __CINT__ #pragma link off all globals; #pragma link off all classes; #pragma link off all functions; #pragma link C++ class MTrack; #pragma link C++ class MVertex; #pragma link C++ class MEvent; #pragma link C++ class MDST; #endif Then the tree was filled but the vectors of tracks and vertices were empty at reading stage. Wandering on the root web site, I found out that appending "+" at the end of the class names in the LinkDef solves this problem. Is this the normal behaviour ? is it related to the "wrong class" error message ? I tried with root 3.00/06 and 3.03/07. thanks a lot if you can help me. Colin
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:00 MET