CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Attributes
mkfit::CombCandidate Class Reference

#include <HitStructures.h>

Public Types

using allocator_type = CcAlloc< TrackCand >
 
enum  SeedState_e { Dormant = 0, Finding, Finished }
 
using trk_cand_vec_type = std::vector< TrackCand, CcAlloc< TrackCand >>
 

Public Member Functions

int addHit (const HitOnTrack &hot, float chi2, int prev_idx)
 
void beginBkwSearch ()
 
void clear ()
 
 CombCandidate (const allocator_type &alloc)
 
 CombCandidate (const CombCandidate &o)
 
 CombCandidate (CombCandidate &&o)
 
void compactifyHitStorageForBestCand (bool remove_seed_hits, int backward_fit_min_hits)
 
trk_cand_vec_type::reference emplace_back (TrackCand &tc)
 
bool empty () const
 
void endBkwSearch ()
 
TrackCandfront ()
 
const TrackCandfront () const
 
HitOnTrack hot (int i) const
 
const HoTNodehot_node (int i) const
 
HoTNodehot_node_nc (int i)
 
const HoTNodehotsData () const
 
int hotsSize () const
 
void importSeed (const Track &seed, int region)
 
void mergeCandsAndBestShortOne (const IterationParams &params, bool update_score, bool sort_cands)
 
CombCandidateoperator= (CombCandidate &&o)
 
TrackCandoperator[] (int i)
 
const TrackCandoperator[] (int i) const
 
int pickupLayer () const
 
const TrackCandrefBestShortCand () const
 
void reset (int max_cands_per_seed, int expected_num_hots)
 
void resize (trk_cand_vec_type::size_type count)
 
void setBestShortCand (const TrackCand &tc)
 
void setState (SeedState_e ss)
 
trk_cand_vec_type::size_type size () const
 
SeedState_e state () const
 

Private Attributes

TrackCand m_best_short_cand
 
std::vector< HoTNodem_hots
 
int m_hots_size = 0
 
short int m_lastHitIdx_before_bkwsearch = -1
 
short int m_nInsideMinusOneHits_before_bkwsearch = -1
 
short int m_nTailMinusOneHits_before_bkwsearch = -1
 
int m_pickup_layer: 16
 
SeedState_e m_state: 8
 
trk_cand_vec_type m_trk_cands
 

Detailed Description

Definition at line 504 of file HitStructures.h.

Member Typedef Documentation

Definition at line 507 of file HitStructures.h.

Definition at line 506 of file HitStructures.h.

Member Enumeration Documentation

Enumerator
Dormant 
Finding 
Finished 

Definition at line 509 of file HitStructures.h.

Constructor & Destructor Documentation

mkfit::CombCandidate::CombCandidate ( const allocator_type alloc)
inline

Definition at line 511 of file HitStructures.h.

mkfit::CombCandidate::CombCandidate ( const CombCandidate o)
inline

Definition at line 514 of file HitStructures.h.

515  : m_trk_cands(o.m_trk_cands),
516  m_state(o.m_state),
517  m_pickup_layer(o.m_pickup_layer),
518  m_lastHitIdx_before_bkwsearch(o.m_lastHitIdx_before_bkwsearch),
519  m_nInsideMinusOneHits_before_bkwsearch(o.m_nInsideMinusOneHits_before_bkwsearch),
520  m_nTailMinusOneHits_before_bkwsearch(o.m_nTailMinusOneHits_before_bkwsearch),
521 #ifdef DUMPHITWINDOW
522  m_seed_algo(o.m_seed_algo),
523  m_seed_label(o.m_seed_label),
524 #endif
525  m_hots_size(o.m_hots_size),
526  m_hots(o.m_hots) {
527  }
short int m_nInsideMinusOneHits_before_bkwsearch
short int m_nTailMinusOneHits_before_bkwsearch
short int m_lastHitIdx_before_bkwsearch
trk_cand_vec_type m_trk_cands
std::vector< HoTNode > m_hots
mkfit::CombCandidate::CombCandidate ( CombCandidate &&  o)
inline

Definition at line 530 of file HitStructures.h.

531  : m_trk_cands(std::move(o.m_trk_cands)),
532  m_best_short_cand(std::move(o.m_best_short_cand)),
533  m_state(o.m_state),
534  m_pickup_layer(o.m_pickup_layer),
535  m_lastHitIdx_before_bkwsearch(o.m_lastHitIdx_before_bkwsearch),
536  m_nInsideMinusOneHits_before_bkwsearch(o.m_nInsideMinusOneHits_before_bkwsearch),
537  m_nTailMinusOneHits_before_bkwsearch(o.m_nTailMinusOneHits_before_bkwsearch),
538 #ifdef DUMPHITWINDOW
539  m_seed_algo(o.m_seed_algo),
540  m_seed_label(o.m_seed_label),
541 #endif
542  m_hots_size(o.m_hots_size),
543  m_hots(std::move(o.m_hots)) {
544  // This is not needed as we do EOCC::reset() after EOCCS::resize which
545  // calls Reset here and all CombCands get cleared.
546  // However, if at some point we start using this for other purposes this needs
547  // to be called as well.
548  // for (auto &tc : *this) tc.setCombCandidate(this);
549  }
TrackCand m_best_short_cand
short int m_nInsideMinusOneHits_before_bkwsearch
short int m_nTailMinusOneHits_before_bkwsearch
def move
Definition: eostools.py:511
short int m_lastHitIdx_before_bkwsearch
trk_cand_vec_type m_trk_cands
std::vector< HoTNode > m_hots

Member Function Documentation

int mkfit::CombCandidate::addHit ( const HitOnTrack hot,
float  chi2,
int  prev_idx 
)
inline

Definition at line 607 of file HitStructures.h.

References HLT_FULL_cff::chi2, hot(), m_hots, and m_hots_size.

Referenced by mkfit::TrackCand::addHitIdx().

607  {
608  m_hots.push_back({hot, chi2, prev_idx});
609  return m_hots_size++;
610  }
HitOnTrack hot(int i) const
std::vector< HoTNode > m_hots
void mkfit::CombCandidate::beginBkwSearch ( )

Definition at line 577 of file HitStructures.cc.

References Dormant, mkfit::TrackCand::lastCcIndex(), m_hots, m_lastHitIdx_before_bkwsearch, m_nInsideMinusOneHits_before_bkwsearch, m_nTailMinusOneHits_before_bkwsearch, m_pickup_layer, m_state, m_trk_cands, mkfit::TrackCand::nInsideMinusOneHits(), mkfit::TrackCand::nTailMinusOneHits(), mkfit::TrackCand::setLastCcIndex(), mkfit::TrackCand::setNInsideMinusOneHits(), and mkfit::TrackCand::setNTailMinusOneHits().

577  {
578  // Assumes compactifyHitStorageForBestCand() has already been called.
579  //
580  // This is to be called before backward-search to start with a single
581  // input candidate for backward combinatorial search.
582  //
583  // m_state and m_pickup_layer are also set.
584 
585  TrackCand &tc = m_trk_cands[0];
586 
587  m_state = Dormant;
588  m_pickup_layer = m_hots[0].m_hot.layer;
589  m_lastHitIdx_before_bkwsearch = tc.lastCcIndex();
590  m_nInsideMinusOneHits_before_bkwsearch = tc.nInsideMinusOneHits();
591  m_nTailMinusOneHits_before_bkwsearch = tc.nTailMinusOneHits();
592  tc.setLastCcIndex(0);
593  tc.setNInsideMinusOneHits(0);
594  tc.setNTailMinusOneHits(0);
595  }
short int m_nInsideMinusOneHits_before_bkwsearch
short int m_nTailMinusOneHits_before_bkwsearch
short int m_lastHitIdx_before_bkwsearch
trk_cand_vec_type m_trk_cands
std::vector< HoTNode > m_hots
void mkfit::CombCandidate::clear ( void  )
inline

Definition at line 585 of file HitStructures.h.

References m_trk_cands.

Referenced by mkfit::CandCloner::processSeedRange().

585 { m_trk_cands.clear(); }
trk_cand_vec_type m_trk_cands
void mkfit::CombCandidate::compactifyHitStorageForBestCand ( bool  remove_seed_hits,
int  backward_fit_min_hits 
)

Definition at line 492 of file HitStructures.cc.

References mkfit::TrackCand::addHitIdx(), cms::cuda::assert(), mkfit::TrackBase::getNSeedHits(), mkfit::HitOnTrack::index, mkfit::TrackCand::lastCcIndex(), mkfit::HitOnTrack::layer, mkfit::HoTNode::m_chi2, mkfit::HoTNode::m_hot, m_hots, m_hots_size, m_trk_cands, SiStripPI::max, mkfit::TrackCand::nFoundHits(), mkfit::TrackCand::setLastCcIndex(), mkfit::TrackCand::setNFoundHits(), mkfit::TrackCand::setNInsideMinusOneHits(), mkfit::TrackCand::setNMissingHits(), and mkfit::TrackCand::setNTailMinusOneHits().

492  {
493  // The best candidate is assumed to be in position 0 (after mergeCandsAndBestShortOne
494  // mergeCandsAndBestShortOne has been called).
495  // Other cands are dropped, their hits are dropped as well.
496  // Seed hits are dropped if remove_seed_hits is true.
497 
498  /* The following considerations are related to the following implementation:
499  minNrOfHitsForRebuild (checked against "nHits - nseed") has a default at 5, except
500  1 in initialStep
501  4 in tobTec and pixelLess
502  https://github.com/cms-sw/cmssw/blob/master/RecoTracker/CkfPattern/plugins/GroupedCkfTrajectoryBuilder.cc#L1015
503 
504  NOTE: some of those can be matched hits !!!
505 
506  the hit splitting is triggered here: https://github.com/cms-sw/cmssw/blob/master/RecoTracker/CkfPattern/src/CkfTrackCandidateMakerBase.cc#L468
507  after the rebuild has already happened: https://github.com/cms-sw/cmssw/blob/master/RecoTracker/CkfPattern/src/CkfTrackCandidateMakerBase.cc#L313
508  */
509 
510  assert(!m_trk_cands.empty());
511  m_trk_cands.resize(1);
512  TrackCand &tc = m_trk_cands[0];
513 
514  // Do NOT remove any seed hits if fewer than backward_fit_min_hits hits are available.
515  if (remove_seed_hits && tc.nFoundHits() <= backward_fit_min_hits) {
516  remove_seed_hits = false;
517  }
518 
519  // Stash HoTNodes at the end of m_hots.
520  int stash_end = m_hots.size();
521  int stash_pos = stash_end;
522 
523  int idx = tc.lastCcIndex();
524 
525  if (remove_seed_hits) {
526  // Skip invalid hits that would now be at the head of the candidate.
527  // Make sure to subtract / recount number of hits:
528  // as this is rather involved, just call addHitIdx() repeatedly so counts
529  // of holes get updated correctly.
530  // Though one should not care super much ... it's only relevant for relative scores
531  // and here we are trimming everything down to a single candidate.
532 
533  int n_hits_to_pick = std::max(tc.nFoundHits() - tc.getNSeedHits(), backward_fit_min_hits);
534  while (n_hits_to_pick > 0) {
535  m_hots[--stash_pos] = m_hots[idx];
536  if (m_hots[idx].m_hot.index >= 0)
537  --n_hits_to_pick;
538  idx = m_hots[idx].m_prev_idx;
539  }
540 
541  m_hots_size = 0;
542  m_hots.clear();
543  tc.setLastCcIndex(-1);
544  tc.setNFoundHits(0);
545  tc.setNMissingHits(0);
546  tc.setNInsideMinusOneHits(0);
547  tc.setNTailMinusOneHits(0);
548  while (stash_pos != stash_end && m_hots[stash_pos].m_hot.index < 0)
549  ++stash_pos;
550  while (stash_pos != stash_end) {
551  HoTNode &hn = m_hots[stash_pos];
552  tc.addHitIdx(hn.m_hot.index, hn.m_hot.layer, hn.m_chi2);
553  ++stash_pos;
554  }
555  } else {
556  while (idx != -1) {
557  m_hots[--stash_pos] = m_hots[idx];
558  idx = m_hots[idx].m_prev_idx;
559  }
560 
561  // If we are not removing seed_hits, track is good as it is,
562  // just fixup m_hots and t.lastCcIndex.
563  int pos = 0;
564  while (stash_pos != stash_end) {
565  m_hots[pos].m_hot = m_hots[stash_pos].m_hot;
566  m_hots[pos].m_chi2 = m_hots[stash_pos].m_chi2;
567  m_hots[pos].m_prev_idx = pos - 1;
568  ++pos;
569  ++stash_pos;
570  }
571  m_hots.resize(pos);
572  m_hots_size = pos;
573  tc.setLastCcIndex(pos - 1);
574  }
575  }
assert(be >=bs)
trk_cand_vec_type m_trk_cands
std::vector< HoTNode > m_hots
trk_cand_vec_type::reference mkfit::CombCandidate::emplace_back ( TrackCand tc)
inline

Definition at line 584 of file HitStructures.h.

References m_trk_cands.

Referenced by mkfit::CandCloner::processSeedRange().

584 { return m_trk_cands.emplace_back(tc); }
trk_cand_vec_type m_trk_cands
bool mkfit::CombCandidate::empty ( void  ) const
inline

Definition at line 577 of file HitStructures.h.

References m_trk_cands.

Referenced by mergeCandsAndBestShortOne().

577 { return m_trk_cands.empty(); }
trk_cand_vec_type m_trk_cands
void mkfit::CombCandidate::endBkwSearch ( )

Definition at line 597 of file HitStructures.cc.

References mkfit::TrackCand::lastCcIndex(), m_hots, m_lastHitIdx_before_bkwsearch, m_nInsideMinusOneHits_before_bkwsearch, m_nTailMinusOneHits_before_bkwsearch, m_trk_cands, mkfit::TrackCand::nInsideMinusOneHits(), mkfit::TrackCand::nTailMinusOneHits(), mkfit::TrackCand::setLastCcIndex(), mkfit::TrackCand::setNInsideMinusOneHits(), and mkfit::TrackCand::setNTailMinusOneHits().

597  {
598  // mergeCandsAndBestShortOne() has already been called (from MkBuilder::FindXxx()).
599  // We have to fixup the best candidate.
600 
601  TrackCand &tc = m_trk_cands[0];
602 
603  int curr_idx = tc.lastCcIndex();
604  if (curr_idx != 0) {
605  int last_idx = -1, prev_idx;
606  do {
607  prev_idx = m_hots[curr_idx].m_prev_idx;
608 
609  m_hots[curr_idx].m_prev_idx = last_idx;
610 
611  last_idx = curr_idx;
612  curr_idx = prev_idx;
613  } while (prev_idx != -1);
614  }
615 
616  tc.setLastCcIndex(m_lastHitIdx_before_bkwsearch);
617  tc.setNInsideMinusOneHits(m_nInsideMinusOneHits_before_bkwsearch + tc.nInsideMinusOneHits());
618  tc.setNTailMinusOneHits(m_nTailMinusOneHits_before_bkwsearch + tc.nTailMinusOneHits());
622  }
short int m_nInsideMinusOneHits_before_bkwsearch
short int m_nTailMinusOneHits_before_bkwsearch
short int m_lastHitIdx_before_bkwsearch
trk_cand_vec_type m_trk_cands
std::vector< HoTNode > m_hots
TrackCand& mkfit::CombCandidate::front ( )
inline

Definition at line 582 of file HitStructures.h.

References m_trk_cands.

582 { return m_trk_cands.front(); }
trk_cand_vec_type m_trk_cands
const TrackCand& mkfit::CombCandidate::front ( ) const
inline

Definition at line 583 of file HitStructures.h.

References m_trk_cands.

583 { return m_trk_cands.front(); }
trk_cand_vec_type m_trk_cands
HitOnTrack mkfit::CombCandidate::hot ( int  i) const
inline
const HoTNode& mkfit::CombCandidate::hot_node ( int  i) const
inline
HoTNode& mkfit::CombCandidate::hot_node_nc ( int  i)
inline

Definition at line 622 of file HitStructures.h.

References mps_fire::i, and m_hots.

Referenced by mkfit::TrackCand::refLastHoTNode().

622 { return m_hots[i]; }
std::vector< HoTNode > m_hots
const HoTNode* mkfit::CombCandidate::hotsData ( ) const
inline

Definition at line 625 of file HitStructures.h.

References m_hots.

Referenced by mkfit::MkFinder::bkFitInputTracks().

625 { return m_hots.data(); }
std::vector< HoTNode > m_hots
int mkfit::CombCandidate::hotsSize ( ) const
inline

Definition at line 620 of file HitStructures.h.

References m_hots_size.

620 { return m_hots_size; }
void mkfit::CombCandidate::importSeed ( const Track seed,
int  region 
)

Definition at line 424 of file HitStructures.cc.

References mkfit::TrackCand::addHitIdx(), mkfit::TrackBase::algoint(), mkfit::Track::beginHitsOnTrack(), Dormant, dprintf, mkfit::Track::endHitsOnTrack(), mkfit::Track::getLastHitLyr(), mkfit::getScoreCand(), mkfit::TrackBase::label(), mkfit::TrackCand::lastCcIndex(), m_pickup_layer, m_state, m_trk_cands, mkfit::TrackBase::momEta(), mkfit::Track::nTotalHits(), mkfit::TrackBase::pT(), mkfit::TrackBase::setEtaRegion(), mkfit::TrackBase::setNSeedHits(), mkfit::TrackBase::setScore(), and HLT_FULL_cff::TrackCand.

424  {
425  m_trk_cands.emplace_back(TrackCand(seed, this));
426 
428  m_pickup_layer = seed.getLastHitLyr();
429 #ifdef DUMPHITWINDOW
430  m_seed_algo = seed.algoint();
431  m_seed_label = seed.label();
432 #endif
433 
434  TrackCand &cand = m_trk_cands.back();
435  cand.setNSeedHits(seed.nTotalHits());
436  cand.setEtaRegion(region);
437 
438  dprintf("Importing pt=%f eta=%f, lastCcIndex=%d\n", cand.pT(), cand.momEta(), cand.lastCcIndex());
439 
440  for (const HitOnTrack *hp = seed.beginHitsOnTrack(); hp != seed.endHitsOnTrack(); ++hp) {
441  dprintf(" hit idx=%d lyr=%d\n", hp->index, hp->layer);
442  cand.addHitIdx(hp->index, hp->layer, 0.0f);
443  }
444 
445  cand.setScore(getScoreCand(cand));
446  }
float getScoreCand(const TrackCand &cand1, bool penalizeTailMissHits=false, bool inFindCandidates=false)
trk_cand_vec_type m_trk_cands
#define dprintf(...)
Definition: Debug.h:93
void mkfit::CombCandidate::mergeCandsAndBestShortOne ( const IterationParams params,
bool  update_score,
bool  sort_cands 
)

Definition at line 448 of file HitStructures.cc.

References c, mkfit::TrackCand::combCandidate(), empty(), mkfit::getScoreCand(), m_best_short_cand, m_trk_cands, mkfit::IterationParams::maxCandsPerSeed, gpuVertexFinder::printf(), mkfit::TrackCand::resetShortTrack(), mkfit::TrackBase::score(), mkfit::TrackBase::setScore(), and mkfit::sortByScoreTrackCand().

448  {
449  TrackCand *best_short = m_best_short_cand.combCandidate() ? &m_best_short_cand : nullptr;
450 
451  if (!empty()) {
452  if (update_score) {
453  for (auto &c : m_trk_cands)
454  c.setScore(getScoreCand(c));
455  if (best_short)
456  best_short->setScore(getScoreCand(*best_short));
457  }
458  if (sort_cands) {
459  std::sort(m_trk_cands.begin(), m_trk_cands.end(), sortByScoreTrackCand);
460  }
461 
462  if (best_short && best_short->score() > m_trk_cands.back().score()) {
463  auto ci = m_trk_cands.begin();
464  while (ci->score() > best_short->score())
465  ++ci;
466 
467  if ((int)m_trk_cands.size() >= params.maxCandsPerSeed)
468  m_trk_cands.pop_back();
469 
470  // To print out what has been replaced -- remove when done with short track handling.
471 #ifdef DEBUG
472  if (ci == m_trk_cands.begin()) {
473  printf("FindTracksStd -- Replacing best cand (%f) with short one (%f) in final sorting\n",
474  m_trk_cands.front().score(),
475  best_short->score());
476  }
477 #endif
478 
479  m_trk_cands.insert(ci, *best_short);
480  }
481 
482  } else if (best_short) {
483  m_trk_cands.push_back(*best_short);
484  }
485 
486  if (best_short)
487  best_short->resetShortTrack();
488 
489  // assert(capacity() == (size_t)Config::maxCandsPerSeed);
490  }
const edm::EventSetup & c
TrackCand m_best_short_cand
bool empty() const
printf("params %d %f %f %f\n", minT, eps, errmax, chi2max)
CombCandidate * combCandidate() const
float getScoreCand(const TrackCand &cand1, bool penalizeTailMissHits=false, bool inFindCandidates=false)
bool sortByScoreTrackCand(const TrackCand &cand1, const TrackCand &cand2)
trk_cand_vec_type m_trk_cands
CombCandidate& mkfit::CombCandidate::operator= ( CombCandidate &&  o)
inline

Definition at line 555 of file HitStructures.h.

References m_best_short_cand, m_hots, m_hots_size, m_lastHitIdx_before_bkwsearch, m_nInsideMinusOneHits_before_bkwsearch, m_nTailMinusOneHits_before_bkwsearch, m_pickup_layer, m_state, m_trk_cands, eostools::move(), and class-composition::o.

555  {
556  m_trk_cands = (std::move(o.m_trk_cands));
557  m_best_short_cand = std::move(o.m_best_short_cand);
558  m_state = o.m_state;
559  m_pickup_layer = o.m_pickup_layer;
560  m_lastHitIdx_before_bkwsearch = o.m_lastHitIdx_before_bkwsearch;
561  m_nInsideMinusOneHits_before_bkwsearch = o.m_nInsideMinusOneHits_before_bkwsearch;
562  m_nTailMinusOneHits_before_bkwsearch = o.m_nTailMinusOneHits_before_bkwsearch;
563 #ifdef DUMPHITWINDOW
564  m_seed_algo = o.m_seed_algo;
565  m_seed_label = o.m_seed_label;
566 #endif
567  m_hots_size = o.m_hots_size;
568  m_hots = std::move(o.m_hots);
569 
570  for (auto& tc : m_trk_cands)
571  tc.setCombCandidate(this);
572 
573  return *this;
574  }
TrackCand m_best_short_cand
short int m_nInsideMinusOneHits_before_bkwsearch
short int m_nTailMinusOneHits_before_bkwsearch
def move
Definition: eostools.py:511
short int m_lastHitIdx_before_bkwsearch
trk_cand_vec_type m_trk_cands
std::vector< HoTNode > m_hots
TrackCand& mkfit::CombCandidate::operator[] ( int  i)
inline

Definition at line 580 of file HitStructures.h.

References mps_fire::i, and m_trk_cands.

580 { return m_trk_cands[i]; }
trk_cand_vec_type m_trk_cands
const TrackCand& mkfit::CombCandidate::operator[] ( int  i) const
inline

Definition at line 581 of file HitStructures.h.

References mps_fire::i, and m_trk_cands.

581 { return m_trk_cands[i]; }
trk_cand_vec_type m_trk_cands
int mkfit::CombCandidate::pickupLayer ( ) const
inline

Definition at line 633 of file HitStructures.h.

References m_pickup_layer.

Referenced by mkfit::MkBuilder::find_tracks_unroll_candidates().

633 { return m_pickup_layer; }
const TrackCand& mkfit::CombCandidate::refBestShortCand ( ) const
inline

Definition at line 627 of file HitStructures.h.

References m_best_short_cand.

Referenced by mkfit::CandCloner::processSeedRange().

627 { return m_best_short_cand; }
TrackCand m_best_short_cand
void mkfit::CombCandidate::reset ( int  max_cands_per_seed,
int  expected_num_hots 
)
inline

Definition at line 587 of file HitStructures.h.

References mkfit::getScoreWorstPossible(), m_best_short_cand, m_hots, m_hots_size, m_trk_cands, mkfit::TrackBase::setScore(), and createJobs::tmp.

587  {
588  std::vector<TrackCand, CcAlloc<TrackCand>> tmp(m_trk_cands.get_allocator());
589  m_trk_cands.swap(tmp);
590  m_trk_cands.reserve(max_cands_per_seed); // we *must* never exceed this
591 
593 
594  // state and pickup_layer set in importSeed.
595 
596  // expected_num_hots is different for CloneEngine and Std, especially as long as we
597  // instantiate all candidates before purging them.
598  // ce: N_layer * N_cands ~~ 20 * 6 = 120
599  // std: i don't know, maybe double?
600  m_hots.reserve(expected_num_hots);
601  m_hots_size = 0;
602  m_hots.clear();
603  }
TrackCand m_best_short_cand
void setScore(float s)
Definition: Track.h:190
float getScoreWorstPossible()
Definition: Track.h:602
trk_cand_vec_type m_trk_cands
tmp
align.sh
Definition: createJobs.py:716
std::vector< HoTNode > m_hots
void mkfit::CombCandidate::resize ( trk_cand_vec_type::size_type  count)
inline

Definition at line 579 of file HitStructures.h.

References m_trk_cands.

Referenced by mkfit::CandCloner::processSeedRange().

579 { m_trk_cands.resize(count); }
trk_cand_vec_type m_trk_cands
void mkfit::CombCandidate::setBestShortCand ( const TrackCand tc)
inline

Definition at line 628 of file HitStructures.h.

References m_best_short_cand.

Referenced by mkfit::CandCloner::processSeedRange().

628 { m_best_short_cand = tc; }
TrackCand m_best_short_cand
void mkfit::CombCandidate::setState ( SeedState_e  ss)
inline

Definition at line 631 of file HitStructures.h.

References m_state, and contentValuesCheck::ss.

Referenced by mkfit::MkBuilder::find_tracks_unroll_candidates().

trk_cand_vec_type::size_type mkfit::CombCandidate::size ( void  ) const
inline
SeedState_e mkfit::CombCandidate::state ( ) const
inline

Definition at line 630 of file HitStructures.h.

References m_state.

Referenced by mkfit::MkBuilder::find_tracks_unroll_candidates(), and mkfit::CandCloner::processSeedRange().

630 { return m_state; }

Member Data Documentation

TrackCand mkfit::CombCandidate::m_best_short_cand
private
std::vector<HoTNode> mkfit::CombCandidate::m_hots
private
int mkfit::CombCandidate::m_hots_size = 0
private

Definition at line 653 of file HitStructures.h.

Referenced by addHit(), compactifyHitStorageForBestCand(), hotsSize(), operator=(), and reset().

short int mkfit::CombCandidate::m_lastHitIdx_before_bkwsearch = -1
private

Definition at line 645 of file HitStructures.h.

Referenced by beginBkwSearch(), endBkwSearch(), and operator=().

short int mkfit::CombCandidate::m_nInsideMinusOneHits_before_bkwsearch = -1
private

Definition at line 646 of file HitStructures.h.

Referenced by beginBkwSearch(), endBkwSearch(), and operator=().

short int mkfit::CombCandidate::m_nTailMinusOneHits_before_bkwsearch = -1
private

Definition at line 647 of file HitStructures.h.

Referenced by beginBkwSearch(), endBkwSearch(), and operator=().

int mkfit::CombCandidate::m_pickup_layer
private

Definition at line 644 of file HitStructures.h.

Referenced by beginBkwSearch(), importSeed(), operator=(), and pickupLayer().

SeedState_e mkfit::CombCandidate::m_state
private

Definition at line 643 of file HitStructures.h.

Referenced by beginBkwSearch(), importSeed(), operator=(), setState(), and state().

trk_cand_vec_type mkfit::CombCandidate::m_trk_cands
private