|
|
Go to the documentation of this file.
26 std::deque<EMTFHitCollection> extended_conv_hits;
29 std::deque<EMTFTrackCollection> extended_best_track_cands;
32 std::map<pattern_ref_t, int> patt_lifetime_map;
37 int delayBX =
cfg.bxWindow_ - 1;
39 for (
int bx =
cfg.minBX_;
bx <=
cfg.maxBX_ + delayBX; ++
bx) {
46 bx, muon_primitives, out_hits, out_tracks, extended_conv_hits, extended_best_track_cands, patt_lifetime_map);
49 if (
bx >=
cfg.minBX_ + delayBX) {
50 extended_conv_hits.pop_front();
53 extended_best_track_cands.erase(extended_best_track_cands.end() -
n,
54 extended_best_track_cands.end());
65 std::deque<EMTFHitCollection>& extended_conv_hits,
66 std::deque<EMTFTrackCollection>& extended_best_track_cands,
67 std::map<pattern_ref_t, int>& patt_lifetime_map)
const {
116 cfg.pattDefinitions_,
117 cfg.symPattDefinitions_,
119 cfg.maxRoadsPerZone_,
120 cfg.useSecondEarliest_);
133 cfg.thetaWindowZone0_,
135 cfg.bugAmbigThetaWin_,
136 cfg.twoStationSameBX_);
144 cfg.maxRoadsPerZone_,
146 cfg.useSecondEarliest_,
147 cfg.bugSameSectorPt0_);
154 pt_assign_engine_dxy_,
160 cfg.fixMode15HighPt_,
169 std::map<int, TriggerPrimitiveCollection> selected_dt_map;
170 std::map<int, TriggerPrimitiveCollection> selected_csc_map;
171 std::map<int, TriggerPrimitiveCollection> selected_rpc_map;
172 std::map<int, TriggerPrimitiveCollection> selected_gem_map;
173 std::map<int, TriggerPrimitiveCollection> selected_me0_map;
174 std::map<int, TriggerPrimitiveCollection> selected_prim_map;
175 std::map<int, TriggerPrimitiveCollection> inclusive_selected_prim_map;
199 selected_dt_map, selected_csc_map, selected_rpc_map, selected_gem_map, selected_me0_map, selected_prim_map);
204 prim_conv.
process(selected_prim_map, conv_hits);
205 extended_conv_hits.push_back(conv_hits);
215 inclusive_selected_prim_map);
216 prim_conv.
process(inclusive_selected_prim_map, inclusive_conv_hits);
219 selected_dt_map.clear();
220 selected_csc_map.clear();
221 selected_rpc_map.clear();
222 selected_gem_map.clear();
223 selected_me0_map.clear();
228 patt_recog.
process(extended_conv_hits, patt_lifetime_map, zone_roads);
232 prim_match.
process(extended_conv_hits, zone_roads, zone_tracks);
236 angle_calc.
process(zone_tracks);
237 extended_best_track_cands.insert(
238 extended_best_track_cands.begin(), zone_tracks.begin(), zone_tracks.end());
242 btrack_sel.
process(extended_best_track_cands, best_tracks);
246 single_hit.
process(conv_hits, best_tracks);
250 pt_assign.
process(best_tracks);
255 out_hits.insert(out_hits.end(), inclusive_conv_hits.begin(), inclusive_conv_hits.end());
256 out_tracks.insert(out_tracks.end(), best_tracks.begin(), best_tracks.end());
void configure(int verbose, int endcap, int sector, int bx, int bxWindow, const std::vector< std::string > &pattDefinitions, const std::vector< std::string > &symPattDefinitions, bool useSymPatterns, int maxRoadsPerZone, bool useSecondEarliest)
constexpr int MIN_TRIGSECTOR
const VersionControl & getVersionControl() const
const SectorProcessorLUT & getSectorProcessorLUT() const
void process(emtf::zone_array< EMTFTrackCollection > &zone_tracks) const
void configure(PtAssignmentEngine *pt_assign_engine, PtAssignmentEngineDxy *pt_assign_engine_dxy, int verbose, int endcap, int sector, int bx, bool readPtLUTFile, bool fixMode15HighPt, bool bug9BitDPhi, bool bugMode7CLCT, bool bugNegPt, bool bugGMTPhi, bool promoteMode7, int modeQualVer, std::string pbFileName)
void process(const EMTFHitCollection &conv_hits, EMTFTrackCollection &best_tracks) const
void process(const std::map< int, TriggerPrimitiveCollection > &selected_prim_map, EMTFHitCollection &conv_hits) const
void process(T tag, const TriggerPrimitiveCollection &muon_primitives, std::map< int, TriggerPrimitiveCollection > &selected_prim_map) const
void process(const edm::EventID &event_id, const TriggerPrimitiveCollection &muon_primitives, EMTFHitCollection &out_hits, EMTFTrackCollection &out_tracks) const
constexpr int MAX_TRIGSECTOR
l1t::EMTFTrackCollection EMTFTrackCollection
const GeometryTranslator & getGeometryTranslator() const
void configure(int verbose, int endcap, int sector, int bx, int bxWindow, int maxRoadsPerZone, int maxTracks, bool useSecondEarliest, bool bugSameSectorPt0)
l1t::EMTFHitCollection EMTFHitCollection
static constexpr int verbose
void process_single_bx(int bx, const TriggerPrimitiveCollection &muon_primitives, EMTFHitCollection &out_hits, EMTFTrackCollection &out_tracks, std::deque< EMTFHitCollection > &extended_conv_hits, std::deque< EMTFTrackCollection > &extended_best_track_cands, std::map< pattern_ref_t, int > &patt_lifetime_map) const
void configure(int verbose, int endcap, int sector, int bx, int maxTracks, bool useSingleHits)
L1TMuon::TriggerPrimitiveCollection TriggerPrimitiveCollection
PtAssignmentEngineDxy * getPtAssignmentEngineDxy() const
void configure(const EMTFSetup *setup, int verbose, int endcap, int sector)
PtAssignmentEngine * getPtAssignmentEngine() const
void configure(int verbose, int endcap, int sector, int bx, int bxWindow, int thetaWindow, int thetaWindowZone0, bool bugME11Dupes, bool bugAmbigThetaWin, bool twoStationSameBX)
void configure(int verbose, int endcap, int sector, int bx, bool fixZonePhi, bool useNewZones, bool bugSt2PhDiff, bool bugME11Dupes)
void merge_no_truncate(const std::map< int, TriggerPrimitiveCollection > &selected_dt_map, const std::map< int, TriggerPrimitiveCollection > &selected_csc_map, const std::map< int, TriggerPrimitiveCollection > &selected_rpc_map, const std::map< int, TriggerPrimitiveCollection > &selected_gem_map, const std::map< int, TriggerPrimitiveCollection > &selected_me0_map, std::map< int, TriggerPrimitiveCollection > &selected_prim_map) const
void merge(const std::map< int, TriggerPrimitiveCollection > &selected_dt_map, const std::map< int, TriggerPrimitiveCollection > &selected_csc_map, const std::map< int, TriggerPrimitiveCollection > &selected_rpc_map, const std::map< int, TriggerPrimitiveCollection > &selected_gem_map, const std::map< int, TriggerPrimitiveCollection > &selected_me0_map, std::map< int, TriggerPrimitiveCollection > &selected_prim_map) const
void process(EMTFTrackCollection &best_tracks)
void configure(int verbose, int endcap, int sector, int bx, int bxShiftCSC, int bxShiftRPC, int bxShiftGEM, int bxShiftME0, bool includeNeighbor, bool duplicateTheta, bool bugME11Dupes)
std::array< T, NUM_ZONES > zone_array
void process(const std::deque< EMTFTrackCollection > &extended_best_track_cands, EMTFTrackCollection &best_tracks) const
void configure(const GeometryTranslator *tp_geom, const SectorProcessorLUT *pc_lut, int verbose, int endcap, int sector, int bx, int bxShiftCSC, int bxShiftRPC, int bxShiftGEM, int bxShiftME0, const std::vector< int > &zoneBoundaries, int zoneOverlap, bool duplicateTheta, bool fixZonePhi, bool useNewZones, bool fixME11Edges, bool bugME11Dupes)
void process(const std::deque< EMTFHitCollection > &extended_conv_hits, const emtf::zone_array< EMTFRoadCollection > &zone_roads, emtf::zone_array< EMTFTrackCollection > &zone_tracks) const
void process(const std::deque< EMTFHitCollection > &extended_conv_hits, std::map< pattern_ref_t, int > &patt_lifetime_map, emtf::zone_array< EMTFRoadCollection > &zone_roads) const