#include <HitStructures.h>
Classes | |
struct | HitInfo |
Public Member Functions | |
void | beginRegistrationOfHits (const HitVec &hitv) |
void | endRegistrationOfHits (bool build_original_to_internal_map) |
int | getHitIndexFromOriginal (int i) const |
int | getOriginalHitIndex (int i) const |
float | hit_phi (int i) const |
float | hit_q (int i) const |
const Hit * | hitArray () const |
bool | is_barrel () const |
bool | is_endcap () const |
bool | is_pix_lyr () const |
bool | is_pixb_lyr () const |
bool | is_pixe_lyr () const |
bool | is_stereo () const |
bool | is_tec_lyr () const |
bool | is_tib_lyr () const |
bool | is_tid_lyr () const |
bool | is_tob_lyr () const |
bool | is_within_r_limits (float r) const |
WSR_Result | is_within_r_sensitive_region (float r, float dr) const |
bool | is_within_z_limits (float z) const |
WSR_Result | is_within_z_sensitive_region (float z, float dz) const |
int | layer_id () const |
const LayerInfo * | layer_info () const |
LayerOfHits ()=default | |
int | nHits () const |
bool | phi_bin_dead (int qi, int pi) const |
const vecvecPhiBinDead_t & | phi_bin_deads () const |
PhiBinInfo_t | phi_bin_info (int qi, int pi) const |
const vecvecPhiBinInfo_t & | phi_bin_infos () const |
int | phiBin (float phi) const |
int | phiBinChecked (float phi) const |
int | phiBinFine (float phi) const |
int | phiMaskApply (int in) const |
void | printBins () |
int | qBin (float q) const |
int | qBinChecked (float q) const |
const Hit & | refHit (int i) const |
void | registerHit (int idx) |
void | reset () |
void | setupLayer (const LayerInfo &li) |
void | suckInDeads (const DeadVec &deadv) |
void | suckInHits (const HitVec &hitv) |
const vecPhiBinInfo_t & | vecPhiBinInfo (float q) const |
~LayerOfHits () | |
Private Member Functions | |
void | empty_phi_bins (int q_bin, int phi_bin_1, int phi_bin_2, uint16_t hit_count) |
void | empty_phi_bins_dead (int q_bin, int phi_bin_1, int phi_bin_2) |
void | empty_q_bins (int q_bin_1, int q_bin_2, uint16_t hit_count) |
void | empty_q_bins_dead (int q_bin_1, int q_bin_2) |
void | setup_bins (float qmin, float qmax, float dq) |
Private Attributes | |
const HitVec * | m_ext_hits |
std::vector< int > | m_ext_idcs |
float | m_fq |
std::vector< HitInfo > | m_hit_infos |
std::vector< float > | m_hit_phis |
std::vector< float > | m_hit_qs |
unsigned int * | m_hit_ranks = nullptr |
bool | m_is_barrel |
const LayerInfo * | m_layer_info = nullptr |
int | m_max_ext_idx |
int | m_min_ext_idx |
int | m_n_hits = 0 |
int | m_nq = 0 |
vecvecPhiBinDead_t | m_phi_bin_deads |
vecvecPhiBinInfo_t | m_phi_bin_infos |
float | m_qmax |
float | m_qmin |
std::vector< uint32_t > | m_qphifines |
Static Private Attributes | |
static constexpr float | m_fphi = Config::m_nphi / Const::TwoPI |
static constexpr float | m_fphi_fine = 1024 / Const::TwoPI |
static constexpr int | m_phi_bits = 8 |
static constexpr int | m_phi_bits_fine = 10 |
static constexpr int | m_phi_bits_shift = m_phi_bits_fine - m_phi_bits |
static constexpr int | m_phi_fine_xmask = ~((1 << m_phi_bits_shift) - 1) |
static constexpr int | m_phi_mask = 0xff |
static constexpr int | m_phi_mask_fine = 0x3ff |
Definition at line 45 of file HitStructures.h.
|
default |
mkfit::LayerOfHits::~LayerOfHits | ( | ) |
void mkfit::LayerOfHits::beginRegistrationOfHits | ( | const HitVec & | hitv | ) |
Definition at line 166 of file HitStructures.cc.
References cms::cuda::assert(), m_ext_hits, m_ext_idcs, m_hit_infos, m_max_ext_idx, m_min_ext_idx, m_n_hits, m_nq, m_qphifines, SiStripPI::max, and SiStripPI::min.
|
inlineprivate |
Definition at line 156 of file HitStructures.h.
References m_phi_bin_infos.
Referenced by empty_q_bins().
|
inlineprivate |
Definition at line 168 of file HitStructures.h.
References m_phi_bin_deads.
Referenced by empty_q_bins_dead().
|
inlineprivate |
Definition at line 162 of file HitStructures.h.
References empty_phi_bins(), and mkfit::Config::m_nphi.
Referenced by endRegistrationOfHits(), and suckInHits().
|
inlineprivate |
Definition at line 174 of file HitStructures.h.
References empty_phi_bins_dead(), and mkfit::Config::m_nphi.
Referenced by suckInDeads().
void mkfit::LayerOfHits::endRegistrationOfHits | ( | bool | build_original_to_internal_map | ) |
Definition at line 195 of file HitStructures.cc.
References empty_q_bins(), mps_fire::i, dqmiolumiharvest::j, isotrackApplyRegressor::k, m_ext_idcs, m_hit_infos, m_hit_phis, m_hit_qs, m_hit_ranks, m_max_ext_idx, m_min_ext_idx, m_n_hits, m_nq, m_phi_bin_infos, m_phi_bits_shift, m_phi_fine_xmask, m_phi_mask_fine, m_qphifines, gpuVertexFinder::printf(), RADIX_UNSIGNED, RadixSort::RelinquishRanks(), RadixSort::Sort(), and mkfit::Config::usePhiQArrays.
|
inline |
|
inline |
Definition at line 97 of file HitStructures.h.
References mps_fire::i, and m_hit_ranks.
Referenced by mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 92 of file HitStructures.h.
References mps_fire::i, and m_hit_phis.
Referenced by mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 91 of file HitStructures.h.
References mps_fire::i, and m_hit_qs.
Referenced by mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 104 of file HitStructures.h.
References m_ext_hits.
Referenced by mkfit::MkFinder::addBestHit(), mkfit::MkFinder::findCandidates(), and mkfit::MkFinder::findCandidatesCloneEngine().
|
inline |
Definition at line 118 of file HitStructures.h.
References m_is_barrel.
Referenced by mkfit::MkFinder::bkFitFitTracks(), mkfit::MkFinder::findCandidates(), mkfit::MkFinder::findCandidatesCloneEngine(), printBins(), and mkfit::MkFinder::selectHitIndices().
|
inline |
|
inline |
Definition at line 137 of file HitStructures.h.
References mkfit::LayerInfo::is_pix_lyr(), and m_layer_info.
Referenced by mkfit::MkFinder::findCandidates(), and mkfit::MkFinder::findCandidatesCloneEngine().
|
inline |
Definition at line 135 of file HitStructures.h.
References mkfit::LayerInfo::is_pixb_lyr(), and m_layer_info.
|
inline |
Definition at line 136 of file HitStructures.h.
References mkfit::LayerInfo::is_pixe_lyr(), and m_layer_info.
|
inline |
Definition at line 132 of file HitStructures.h.
References mkfit::LayerInfo::is_stereo(), and m_layer_info.
Referenced by mkfit::MkFinder::bkFitFitTracks().
|
inline |
Definition at line 141 of file HitStructures.h.
References mkfit::LayerInfo::is_tec_lyr(), and m_layer_info.
|
inline |
Definition at line 138 of file HitStructures.h.
References mkfit::LayerInfo::is_tib_lyr(), and m_layer_info.
|
inline |
Definition at line 140 of file HitStructures.h.
References mkfit::LayerInfo::is_tid_lyr(), and m_layer_info.
|
inline |
Definition at line 139 of file HitStructures.h.
References mkfit::LayerInfo::is_tob_lyr(), and m_layer_info.
|
inline |
Definition at line 122 of file HitStructures.h.
References mkfit::LayerInfo::is_within_r_limits(), and m_layer_info.
|
inline |
Definition at line 128 of file HitStructures.h.
References mkfit::LayerInfo::is_within_r_sensitive_region(), and m_layer_info.
Referenced by mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 121 of file HitStructures.h.
References mkfit::LayerInfo::is_within_z_limits(), and m_layer_info.
|
inline |
Definition at line 124 of file HitStructures.h.
References mkfit::LayerInfo::is_within_z_sensitive_region(), and m_layer_info.
Referenced by mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 116 of file HitStructures.h.
References mkfit::LayerInfo::layer_id(), and m_layer_info.
Referenced by mkfit::MkFinder::addBestHit(), mkfit::MkFinder::findCandidates(), mkfit::MkFinder::findCandidatesCloneEngine(), and mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 115 of file HitStructures.h.
References m_layer_info.
Referenced by mkfit::MkFinder::bkFitFitTracks(), mkfit::MkFinder::bkFitFitTracksBH(), and mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 68 of file HitStructures.h.
References m_n_hits.
Referenced by mkfit::MkBuilder::find_tracks_in_layers(), mkfit::MkBuilder::findTracksBestHit(), and mkfit::MkBuilder::findTracksStandard().
|
inline |
Definition at line 89 of file HitStructures.h.
References m_phi_bin_deads, and pi.
Referenced by mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 87 of file HitStructures.h.
References m_phi_bin_deads.
|
inline |
Definition at line 88 of file HitStructures.h.
References m_phi_bin_infos, and pi.
Referenced by mkfit::MkFinder::selectHitIndices().
|
inline |
Definition at line 86 of file HitStructures.h.
References m_phi_bin_infos.
|
inline |
Definition at line 78 of file HitStructures.h.
References m_phi_bits_shift, and phiBinFine().
Referenced by phiBinChecked(), mkfit::MkFinder::selectHitIndices(), and suckInDeads().
|
inline |
|
inline |
Definition at line 77 of file HitStructures.h.
References m_fphi_fine, and mkfit::Const::PI.
Referenced by phiBin(), registerHit(), and suckInHits().
|
inline |
Definition at line 82 of file HitStructures.h.
References m_phi_mask.
Referenced by mkfit::MkFinder::selectHitIndices().
void mkfit::LayerOfHits::printBins | ( | ) |
Definition at line 355 of file HitStructures.cc.
References first, is_barrel(), mkfit::Config::m_nphi, m_nq, m_phi_bin_infos, gpuVertexFinder::printf(), and edm::second().
|
inline |
|
inline |
Definition at line 74 of file HitStructures.h.
Referenced by registerHit(), mkfit::MkFinder::selectHitIndices(), suckInDeads(), and suckInHits().
|
inline |
Definition at line 103 of file HitStructures.h.
References mps_fire::i, and m_ext_hits.
Referenced by mkfit::MkFinder::addBestHit(), mkfit::MkFinder::bkFitFitTracks(), mkfit::MkFinder::bkFitFitTracksBH(), mkfit::MkFinder::findCandidates(), mkfit::MkFinder::findCandidatesCloneEngine(), mkfit::findSeedsByRoadSearch(), mkfit::MkBuilder::findTracksStandard(), mkfit::MkFinder::selectHitIndices(), and mkfit::MkFinder::updateWithLastHit().
void mkfit::LayerOfHits::registerHit | ( | int | idx | ) |
Definition at line 179 of file HitStructures.cc.
References h, m_ext_idcs, m_hit_infos, m_is_barrel, m_max_ext_idx, m_min_ext_idx, m_qphifines, SiStripPI::max, SiStripPI::min, mkfit::Hit::phi(), mkfit::LayerOfHits::HitInfo::phi, phiBinFine(), mkfit::LayerOfHits::HitInfo::q, qBinChecked(), mkfit::Hit::r(), mkfit::Config::usePhiQArrays, and mkfit::Hit::z().
|
inline |
Definition at line 55 of file HitStructures.h.
|
private |
Definition at line 30 of file HitStructures.cc.
References reco::ceil(), m_fq, m_nq, m_phi_bin_deads, m_phi_bin_infos, m_qmax, and m_qmin.
Referenced by setupLayer().
void mkfit::LayerOfHits::setupLayer | ( | const LayerInfo & | li | ) |
Definition at line 50 of file HitStructures.cc.
References cms::cuda::assert(), mkfit::LayerInfo::is_barrel(), m_is_barrel, m_layer_info, mkfit::LayerInfo::q_bin(), mkfit::LayerInfo::rin(), mkfit::LayerInfo::rout(), setup_bins(), mkfit::LayerInfo::zmax(), and mkfit::LayerInfo::zmin().
void mkfit::LayerOfHits::suckInDeads | ( | const DeadVec & | deadv | ) |
Definition at line 139 of file HitStructures.cc.
References cms::cuda::assert(), ztail::d, empty_q_bins_dead(), mkfit::Config::m_nphi, m_nq, m_phi_bin_deads, phiBin(), and qBinChecked().
void mkfit::LayerOfHits::suckInHits | ( | const HitVec & | hitv | ) |
Definition at line 67 of file HitStructures.cc.
References cms::cuda::assert(), empty_q_bins(), h, mps_fire::i, dqmiolumiharvest::j, m_ext_hits, m_hit_infos, m_hit_phis, m_hit_qs, m_hit_ranks, m_is_barrel, m_n_hits, m_nq, m_phi_bin_infos, m_phi_bits_shift, m_phi_fine_xmask, m_phi_mask_fine, m_qphifines, mkfit::Hit::phi(), mkfit::LayerOfHits::HitInfo::phi, phiBinFine(), mkfit::LayerOfHits::HitInfo::q, qBinChecked(), mkfit::Hit::r(), RADIX_UNSIGNED, RadixSort::RelinquishRanks(), RadixSort::Sort(), mkfit::Config::usePhiQArrays, and mkfit::Hit::z().
|
inline |
Definition at line 84 of file HitStructures.h.
References m_phi_bin_infos, and qBin().
|
private |
Definition at line 187 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), hitArray(), refHit(), and suckInHits().
|
private |
Definition at line 190 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), endRegistrationOfHits(), getHitIndexFromOriginal(), and registerHit().
|
staticprivate |
Definition at line 145 of file HitStructures.h.
|
staticprivate |
Definition at line 148 of file HitStructures.h.
Referenced by phiBinFine().
|
private |
Definition at line 204 of file HitStructures.h.
Referenced by qBin(), and setup_bins().
|
private |
Definition at line 213 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), endRegistrationOfHits(), registerHit(), and suckInHits().
|
private |
Definition at line 199 of file HitStructures.h.
Referenced by endRegistrationOfHits(), hit_phi(), and suckInHits().
|
private |
Definition at line 200 of file HitStructures.h.
Referenced by endRegistrationOfHits(), hit_q(), and suckInHits().
|
private |
Definition at line 189 of file HitStructures.h.
Referenced by endRegistrationOfHits(), getOriginalHitIndex(), suckInHits(), and ~LayerOfHits().
|
private |
Definition at line 206 of file HitStructures.h.
Referenced by is_barrel(), is_endcap(), registerHit(), setupLayer(), and suckInHits().
|
private |
Definition at line 203 of file HitStructures.h.
Referenced by is_pix_lyr(), is_pixb_lyr(), is_pixe_lyr(), is_stereo(), is_tec_lyr(), is_tib_lyr(), is_tid_lyr(), is_tob_lyr(), is_within_r_limits(), is_within_r_sensitive_region(), is_within_z_limits(), is_within_z_sensitive_region(), layer_id(), layer_info(), and setupLayer().
|
private |
Definition at line 191 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), endRegistrationOfHits(), and registerHit().
|
private |
Definition at line 191 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), endRegistrationOfHits(), getHitIndexFromOriginal(), and registerHit().
|
private |
Definition at line 192 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), endRegistrationOfHits(), nHits(), and suckInHits().
|
private |
Definition at line 205 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), endRegistrationOfHits(), printBins(), qBinChecked(), setup_bins(), suckInDeads(), and suckInHits().
|
private |
Definition at line 196 of file HitStructures.h.
Referenced by empty_phi_bins_dead(), phi_bin_dead(), phi_bin_deads(), setup_bins(), and suckInDeads().
|
private |
Definition at line 195 of file HitStructures.h.
Referenced by empty_phi_bins(), endRegistrationOfHits(), phi_bin_info(), phi_bin_infos(), printBins(), setup_bins(), suckInHits(), and vecPhiBinInfo().
|
staticprivate |
Definition at line 147 of file HitStructures.h.
|
staticprivate |
Definition at line 150 of file HitStructures.h.
|
staticprivate |
Definition at line 151 of file HitStructures.h.
Referenced by endRegistrationOfHits(), phiBin(), and suckInHits().
|
staticprivate |
Definition at line 152 of file HitStructures.h.
Referenced by endRegistrationOfHits(), and suckInHits().
|
staticprivate |
Definition at line 146 of file HitStructures.h.
Referenced by phiBinChecked(), and phiMaskApply().
|
staticprivate |
Definition at line 149 of file HitStructures.h.
Referenced by endRegistrationOfHits(), and suckInHits().
|
private |
Definition at line 204 of file HitStructures.h.
Referenced by setup_bins().
|
private |
Definition at line 204 of file HitStructures.h.
Referenced by qBin(), and setup_bins().
|
private |
Definition at line 214 of file HitStructures.h.
Referenced by beginRegistrationOfHits(), endRegistrationOfHits(), registerHit(), and suckInHits().