Yes, indeed, Flemming is correct. I did not have the line track->SetID(i) in the copy of CopyDetectorTracks that I found. Isn't this something that should be an 'official' piece of software? That is, shouldn't we have BrCopyDetectorTracksFromTpcTracksToTracksWeCanActuallyUseForReconstructingGl obalSpectrometerTracks? Perhaps the name needs some work, but I think that we are in a confusing (at least it was for me) situation, in that our best "local tracks" cannot be used directly with our track matching routines. I propose, at least for discussion, that we freeze the tracking code (except for obvious bug fixes) add BrCopyTpcTracks and concentrate on analysis. It seems that our matching is working (at least when I'm not giving it shitty input!) pretty well, and perhaps should be left alone long enough to get some (more) results. The only argument, to my mind, against this would be if there were known serious problems with the code. It may well be that my idea of a serious problem is not the same as the more fanatical c++'ers. Any comments? Ian -----Original Message----- From: owner-brahms-dev-l@bnl.gov [mailto:owner-brahms-dev-l@bnl.gov]On Behalf Of Flemming Videbaek Sent: Friday, August 24, 2001 9:06 PM To: brahms-dev-l@bnl.gov Subject: brmodulematch track again Claus, I looked a bit more into this and concluded the following a) You were right in the the code would not find more than one good track, b) However this is not due to BrModuleMtachTrack, but rather to the fact that the utility module did not copy properly the TpcTracks into BrdetectorTracks I attach the proper code here - since I am unsure if there is a public place for those ? [line with SetID()] // Find the BrTpcTrack table BrDataTable* fTpcTable = inNode->GetDataTable(Form("%s %s", kTpcTrack, GetName())); // Create a BrDetectorTrack Table BrDataTable* fTable = new BrDataTable(Form("DetectorTrack %s", GetName())); outNode->AddDataTable(fTable); if(fTpcTable){ int n = fTpcTable->GetEntries(); for(int i=0;i<n;i++){ BrTpcTrackCandidate* bestTrack = (BrTpcTrackCandidate*) fTpcTable->At(i); BrDetectorTrack *track = new BrDetectorTrack(); track->SetPos(bestTrack->GetPos()); track->SetAlpha(bestTrack->GetSlope()); track->SetQuality(bestTrack->GetQuality()); track->SetID(i); fTable->Add(track); } } ------------------------------------------------------ Flemming Videbaek Physics Department Brookhaven National Laboratory tlf: 631-344-4106 fax 631-344-1334 e-mail: videbaek@bnl.gov
This archive was generated by hypermail 2b30 : Fri Aug 24 2001 - 17:26:57 EDT