1 #ifndef RecoHGCal_TICL_LinkingAlgoByDirectionGeometric_H__ 2 #define RecoHGCal_TICL_LinkingAlgoByDirectionGeometric_H__ 40 const std::vector<reco::Muon> &,
43 std::vector<TICLCandidate> &,
44 std::vector<TICLCandidate> &)
override;
56 std::array<TICLLayerTile, 2> &tracksterTiles);
59 const std::array<TICLLayerTile, 2> &tracksterTiles,
60 const std::vector<Vector> &tracksterPropPoints,
62 unsigned trackstersSize,
63 std::vector<std::vector<unsigned>> &resultCollection,
70 const float &tkTimeErr,
71 const float &tkTimeQual,
75 const std::vector<Trackster> &tracksters,
77 std::vector<unsigned> &ts_mask,
78 float &energy_in_candidate,
void linkTracksters(const edm::Handle< std::vector< reco::Track >>, const edm::Handle< edm::ValueMap< float >>, const edm::Handle< edm::ValueMap< float >>, const edm::Handle< edm::ValueMap< float >>, const std::vector< reco::Muon > &, const edm::Handle< std::vector< Trackster >>, const bool useMTDTiming, std::vector< TICLCandidate > &, std::vector< TICLCandidate > &) override
ticl::Trackster::Vector Vector
std::once_flag initializeGeometry_
const float del_tk_ts_int_
edm::ESHandle< Propagator > propagator_
hgcal::RecHitTools rhtools_
const float del_ts_em_had_
static void fillPSetDescription(edm::ParameterSetDescription &desc)
Vector propagateTrackster(const Trackster &t, const unsigned idx, float zVal, std::array< TICLLayerTile, 2 > &tracksterTiles)
const StringCutObjectSelector< reco::Track > cutTk_
void recordTrackster(const unsigned ts, const std::vector< Trackster > &tracksters, const edm::Handle< std::vector< Trackster >> tsH, std::vector< unsigned > &ts_mask, float &energy_in_candidate, TICLCandidate &candidate)
edm::ESHandle< MagneticField > bfield_
void initialize(const HGCalDDDConstants *hgcons, const hgcal::RecHitTools rhtools, const edm::ESHandle< MagneticField > bfieldH, const edm::ESHandle< Propagator > propH) override
const float del_ts_had_had_
LinkingAlgoByDirectionGeometric(const edm::ParameterSet &conf)
const float del_tk_ts_layer1_
void dumpLinksFound(std::vector< std::vector< unsigned >> &resultCollection, const char *label) const
const float timing_quality_threshold_
void findTrackstersInWindow(const std::vector< std::pair< Vector, unsigned >> &seedingCollection, const std::array< TICLLayerTile, 2 > &tracksterTiles, const std::vector< Vector > &tracksterPropPoints, float delta, unsigned trackstersSize, std::vector< std::vector< unsigned >> &resultCollection, bool useMask)
const HGCalDDDConstants * hgcons_
std::unique_ptr< GeomDet > interfaceDisk_[2]
std::unique_ptr< GeomDet > firstDisk_[2]
bool timeAndEnergyCompatible(float &total_raw_energy, const reco::Track &track, const Trackster &trackster, const float &tkTime, const float &tkTimeErr, const float &tkTimeQual, bool useMTDTiming)
~LinkingAlgoByDirectionGeometric() override