FairRoot/PandaRoot
Public Member Functions | Private Attributes | List of all members
PndCATracks Class Reference

#include <PndCATracks.h>

Inheritance diagram for PndCATracks:

Public Member Functions

 PndCATracks (PndCAHits *hits)
 
const PndCAHitHit (int iH, int iT) const
 
void SelectAndSaveTracks (PndCATracks &tracks)
 
PndCAHitsHitsRef ()
 

Private Attributes

PndCAHitsfHitsRef
 

Detailed Description

Definition at line 84 of file PndCATracks.h.

Constructor & Destructor Documentation

PndCATracks::PndCATracks ( PndCAHits hits)
inline

Definition at line 86 of file PndCATracks.h.

86 :fHitsRef(hits){};
PndCAHits * fHitsRef
Definition: PndCATracks.h:95

Member Function Documentation

const PndCAHit& PndCATracks::Hit ( int  iH,
int  iT 
) const
inline

Definition at line 88 of file PndCATracks.h.

References fHitsRef.

Referenced by PndCAGBTracker::CATrackFinder().

88 { return (*fHitsRef)[ (*this)[iT].IHits()[iH] ]; }
PndCAHits * fHitsRef
Definition: PndCATracks.h:95
PndCAHits* PndCATracks::HitsRef ( )
inline

Definition at line 93 of file PndCATracks.h.

References fHitsRef.

Referenced by PndCAGBTracker::CreateTracks(), and PndCAGBTracker::Merge().

93 { return fHitsRef; }
PndCAHits * fHitsRef
Definition: PndCATracks.h:95
void PndCATracks::SelectAndSaveTracks ( PndCATracks tracks)
inline

Definition at line 99 of file PndCATracks.h.

References PndCATrack::Compare(), fHitsRef, PndCATrack::NUsedHits(), PndCATrack::SetHitsAsUsed(), and tr.

100 {
101  vector<PndCATrack*> vptrackcandidate; // vptrackcandidate - array of pointers to vtrackcandidate
102  vptrackcandidate.resize(size());
103 
104  for ( unsigned int iC = 0; iC < size(); ++iC ) {
105  vptrackcandidate[iC] = &((*this)[iC]);
106  }
107 
108  sort(vptrackcandidate.begin(), vptrackcandidate.end(), PndCATrack::Compare);
109 
110  for (vector<PndCATrack*>::iterator trIt = vptrackcandidate.begin();
111  trIt != vptrackcandidate.end(); ++trIt){
112  PndCATrack *tr = *trIt;
113 
114  if( tr->NUsedHits(*fHitsRef) > 0 ) continue; // don't allow tracks have shared hits. Track will be shorter, leave it for the next iteration
115 
116  tr->SetHitsAsUsed(*fHitsRef);
117 
118  tracks.push_back(*tr);
119  } // i_trackCandidate
120 }
int NUsedHits(const PndCAHits &hits) const
Definition: PndCATracks.h:54
static bool Compare(const PndCATrack *a, const PndCATrack *b)
Definition: PndCATracks.h:40
PndCAHits * fHitsRef
Definition: PndCATracks.h:95
void SetHitsAsUsed(PndCAHits &hits) const
Definition: PndCATracks.h:63

Member Data Documentation

PndCAHits* PndCATracks::fHitsRef
private

Definition at line 95 of file PndCATracks.h.

Referenced by Hit(), HitsRef(), and SelectAndSaveTracks().


The documentation for this class was generated from the following file: