94 void updateTrack(std::unique_ptr<Trk::Track>& newTrack);
97 const std::vector<MuPatSegment*>&
segments()
const;
179 if (pp) {
return *pp; }
180 assert(!
m_track->trackParameters() ||
m_track->trackParameters()->empty());
181 return *
m_track->trackParameters()->front();
188 if (c1->segments().size() > c2->segments().size())
return true;
189 if (c1->segments().size() < c2->segments().size())
return false;
194 if (!fq1)
return false;
195 if (!fq2)
return true;
203 return chi2Ndof1 < chi2Ndof2;
MuPatCandidateBase()=default
constructor.
const std::set< MuonStationIndex::ChIndex > & chambers() const
returns set with contained chamberIndices
segment candidate object.
bool isSegmentExcluded(const MuPatSegment *segment) const
loops over the excluded segment collection and checks whether the pointer is in there
static const std::vector< std::string > & processingStageStrings()
Return list of processing stage strings.
void addExcludedSegment(MuPatSegment *segment)
add segment that does not match the track
std::vector< MuonStationIndex::StIndex > stationsInOrder()
returns vector with contained stationIndices in the order they were added
Trk::Track & track() const
access to track
void updateSegments(bool add)
update segment/track association, if add == true ,will add track to segments else remove it
MuPatSegment * m_seedSeg
The special segment for this track.
static std::vector< std::string > initProcessingStageStrings()
Initialize s_processingStageStrings & s_processingStageStringMaxLen.
static const std::string & processingStageString(ProcessingStage stage)
Convert enum to string.
bool hasMomentum() const
returns whether canditate has a momentum measurement
friend class MuPatCandidateTool
MuPatTrack & operator=(const MuPatTrack &can)
assignment operator.
ProcessingStage
enum to keep track of the life of candidates
@ AmbiguityCreateCandidateFromSeeds
@ AmbiguitySelectCandidates
@ NumberOfProcessingStages
void updateTrack(std::unique_ptr< Trk::Track > &newTrack)
update track.
void addSegment(MuPatSegment *segment, std::unique_ptr< Trk::Track > &newTrack)
add segment + the associated new track.
ProcessingStage lastSegmentChange
~MuPatTrack()
destructor, decrease the usedInFit counter of all MuPatSegment objects by one
void modifySegmentCounters(int change)
increase the segment counters by the passed number
MuPatSegment * seedSegment() const
Return pointer to the seed segment.
MuPatTrack(const std::vector< MuPatSegment * > &segments, std::unique_ptr< Trk::Track > &track, MuPatSegment *seedSeg=0)
constructor taking a vector of MuPatSegment object, the candidate takes ownership of the track It wil...
const std::vector< MuPatSegment * > & excludedSegments() const
access to segments
std::vector< MuPatSegment * > m_segments
std::vector< MuPatSegment * > m_excludedSegments
bool resetChambersOnCandidate(const std::set< MuonStationIndex::ChIndex > &chambers)
reset chambers on the candidate.
static unsigned int processingStageStringMaxLen()
maximum width of the strings corresponding to the ProcessingStage
std::unique_ptr< Trk::Track > m_track
std::string segmentNames() const
string containing the names of the segments on the candidate
const Trk::TrackParameters & entryPars() const
returns first track parameters
const std::vector< MuPatSegment * > & segments() const
access to segments
bool operator()(const MuPatTrack *c1, const MuPatTrack *c2)
Class to represent and store fit qualities from track reconstruction in terms of and number of degre...
int numberDoF() const
returns the number of degrees of freedom of the overall track or vertex fit as integer
double chiSquared() const
returns the of the overall track fit
Helper to enable counting number of instantiations in debug builds.
bool add(const std::string &hname, TKey *tobj)
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
ParametersT< TrackParametersDim, Charged, PerigeeSurface > Perigee
ParametersBase< TrackParametersDim, Charged > TrackParameters