Hi Kris and I noticed that with the new BrOutputTreeModule it is not possible to "downcast" things in a tree. The actual problem is that I want to add the table that contains BrTpcTrackCandidates ( : BrTrackCandidate : BrTrack : ....) to a tree branch as BrTrack(s) since I don't need the residuals. In the old code I believe this used to work, but now it doesn't i.e., adding a table of BrTracks(s) gives some Streamer/class version conflicts, while adding the full BrTpcTrackCandidate works. I believe this has to do with the part in the event method that reads : TClass* cl = gROOT->GetClass(fClassName); TObject*o = arr->New(iE); TBuffer b(TBuffer::kWrite); TObject * obj = table->At(iE); obj->Streamer(b); b.SetReadMode(); b.SetBufferOffset(); o->Streamer(b); PC comments : What is cl used for ? ie is the index looping over the datatable arr is a TClonesArray of here BrTracks(s) obj is of type BrTpcTrackCandidate here So somehow I need to tell either obj or o when I stream that I want a BrTrack instead of the full monty. Does anybody know a fix for this ? The lazy way is to use the old, but as FV notes it is 100 times slower! Or I could just copy everything, but that increases my filesize. Cheers Peter -- :-) --------------------------- )-: Peter H L Christiansen @ NBI EMAIL : pchristi@nbi.dk OFFICE : Tb1@NBI (353 25269) HOME : Hjertensfrydsgade 3, st PHONE : 33330493(New)/ 40840492(mob.) :-D --------------------------- \-:
This archive was generated by hypermail 2b30 : Fri Sep 20 2002 - 07:05:43 EDT