Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:20:54

0001 #ifndef L1TMuonEndCap_PrimitiveMatching_h
0002 #define L1TMuonEndCap_PrimitiveMatching_h
0003 
0004 #include "L1Trigger/L1TMuonEndCap/interface/Common.h"
0005 
0006 class PrimitiveMatching {
0007 public:
0008   typedef EMTFHitCollection::const_iterator hit_ptr_t;
0009   typedef std::pair<int, hit_ptr_t> hit_sort_pair_t;  // key=ph_diff, value=hit
0010 
0011   void configure(int verbose,
0012                  int endcap,
0013                  int sector,
0014                  int bx,
0015                  bool fixZonePhi,
0016                  bool useNewZones,
0017                  bool bugSt2PhDiff,
0018                  bool bugME11Dupes);
0019 
0020   void process(const std::deque<EMTFHitCollection>& extended_conv_hits,
0021                const emtf::zone_array<EMTFRoadCollection>& zone_roads,
0022                emtf::zone_array<EMTFTrackCollection>& zone_tracks) const;
0023 
0024   void process_single_zone_station(int zone,
0025                                    int station,
0026                                    const EMTFRoadCollection& roads,
0027                                    const EMTFHitCollection& conv_hits,
0028                                    std::vector<hit_sort_pair_t>& phi_differences) const;
0029 
0030   void insert_hits(hit_ptr_t conv_hit_ptr, const EMTFHitCollection& conv_hits, EMTFTrack& track) const;
0031 
0032 private:
0033   int verbose_, endcap_, sector_, bx_;
0034 
0035   bool fixZonePhi_, useNewZones_;
0036   bool bugSt2PhDiff_, bugME11Dupes_;
0037 };
0038 
0039 #endif