Dear Rooters, I have problems as I try to build STL vector containing objects which are related to a compile Classes (libMyClass.so). When I was using the not-compiled class, i.e. the include files, it worked good!!!!! I explain myself better: I have my own class Track.h . I want to build a STL vector of Track objects, so I can do: #include <vector> #include "Track.h" // as header of the ROOT macro ... vector<Track> ve; Track *tr=new Track(0.2,23.2); ve.push_back(tr); THIS PROCEDURE WORKS GOOD! But now I need to retrieve tracks stored in a Tree, so I'm forced to use the compiled class library: I have produced the libTrack.so. Then, omitting the #include "Track.h" , I do: if(!TClassTable::GetDict("Track")){ gSystem->Load("mylib/libTrack.so"); } vector<Track> ve; I make the usual opening of the Tree and addressing of the Track objects TTree *myTree = (TTree*)file_root->Get("t1"); TBranch *myBranch = myTree->GetBranch("tracks"); Track *tr = new Track(); myBranch->SetAddress(&tr); and get the entries one by one looping over the Int_t nevent = myTree->GetEntries(); so: for(Int_t i=0;i<nevent;i++){ myBranch->GetEntry(i); // get the track ve.push_back(tr); } THIS FAILS!!!!! What can it be? Is it something related to some Errors in compiling my class? sorry if I disturb you again with a new problem. Thanks and Cheers! Tommaso
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:51:00 MET