GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » Bugs, Fixes, Releases » sigfault during EMC reco
Re: sigfault during EMC reco [message #5912 is a reply to message #5911] Tue, 19 February 2008 15:12 Go to previous message
Dima Melnychuk is currently offline  Dima Melnychuk
Messages: 213
Registered: April 2004
Location: National Centre for Nucle...
first-grade participant
From: *
Hi again,

I will try to explain concerning "PndEmcTwoCoordIndex* fTCI" pointer.

So, each crystal is characterised by 1 integer number fDetectorID or by 2 indexes (theta, phi integer indexes for barrel or X,Y indexes for endcup). These 2 integer indexes are combined into the object of PndEmcTwoCoordIndex class, which except these 2 indexes contains also references to the same object of neighboring crystals. This is used in the clustering algorithm. And the list of neighboring crystals is filled in the PndEmcMapper.

So each PndEmcDigi contain fDetectorID and *fTCI. And in principle fDetectorID uniquely identify *fTCI, but the last is more convenient for clustering algorithm.

But the *fTCI pointer is transient data member since root have problem with persistency of object which has indirect reference to itself.

So after PndEmcDigi is read from the root file the fTCI data should be restored. And the method PndEmcDigi::ValidateTCI() does this. My original idea was to use custom streamer for this purpose but it appears that for some cases it work and for some don't .
So the error which you reported today shows that fTCI data restored by custom streamer and restored by ValidateTCI() are inconsistent.

It will need further investigation.

Best regards,
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Problem compiling external packages on RedHat
Next Topic: break segm,antation with geant4
Goto Forum:

Current Time: Sat Jul 13 14:08:32 CEST 2024

Total time taken to generate the page: 0.00768 seconds