CMS 3D CMS Logo

PatternRecognition.h
Go to the documentation of this file.
1 #ifndef L1TMuonEndCap_PatternRecognition_h
2 #define L1TMuonEndCap_PatternRecognition_h
3 
6 
8 public:
9  // Pattern detector ID: [zone, keystrip, pattern]
10  typedef std::array<int, 3> pattern_ref_t;
11 
12  void configure(int verbose,
13  int endcap,
14  int sector,
15  int bx,
16  int bxWindow,
17  const std::vector<std::string>& pattDefinitions,
18  const std::vector<std::string>& symPattDefinitions,
19  bool useSymPatterns,
20  int maxRoadsPerZone,
21  bool useSecondEarliest);
22 
23  void configure_details();
24 
25  void process(const std::deque<EMTFHitCollection>& extended_conv_hits,
26  std::map<pattern_ref_t, int>& patt_lifetime_map,
27  emtf::zone_array<EMTFRoadCollection>& zone_roads) const;
28 
29  bool is_zone_empty(int zone,
30  const std::deque<EMTFHitCollection>& extended_conv_hits,
31  const std::map<pattern_ref_t, int>& patt_lifetime_map) const;
32 
33  void make_zone_image(int zone, const std::deque<EMTFHitCollection>& extended_conv_hits, PhiMemoryImage& image) const;
34 
35  void process_single_zone(int zone,
36  PhiMemoryImage cloned_image,
37  std::map<pattern_ref_t, int>& patt_lifetime_map,
38  EMTFRoadCollection& roads) const;
39 
40  void sort_single_zone(EMTFRoadCollection& roads) const;
41 
42 private:
44 
45  int bxWindow_;
46  std::vector<std::string> pattDefinitions_, symPattDefinitions_;
50 
51  std::vector<PhiMemoryImage> patterns_;
52 };
53 
54 #endif
PatternRecognition::pattDefinitions_
std::vector< std::string > pattDefinitions_
Definition: PatternRecognition.h:46
PatternRecognition::configure
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)
Definition: PatternRecognition.cc:11
PatternRecognition::process_single_zone
void process_single_zone(int zone, PhiMemoryImage cloned_image, std::map< pattern_ref_t, int > &patt_lifetime_map, EMTFRoadCollection &roads) const
Definition: PatternRecognition.cc:339
PatternRecognition::patterns_
std::vector< PhiMemoryImage > patterns_
Definition: PatternRecognition.h:51
PatternRecognition
Definition: PatternRecognition.h:7
PatternRecognition::useSecondEarliest_
bool useSecondEarliest_
Definition: PatternRecognition.h:49
EMTFRoadCollection
l1t::EMTFRoadCollection EMTFRoadCollection
Definition: Common.h:25
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
PatternRecognition::useSymPatterns_
bool useSymPatterns_
Definition: PatternRecognition.h:47
makeMuonMisalignmentScenario.endcap
endcap
Definition: makeMuonMisalignmentScenario.py:320
PatternRecognition::maxRoadsPerZone_
int maxRoadsPerZone_
Definition: PatternRecognition.h:48
PatternRecognition::sector_
int sector_
Definition: PatternRecognition.h:43
verbose
static constexpr int verbose
Definition: HLTExoticaSubAnalysis.cc:25
PatternRecognition::sort_single_zone
void sort_single_zone(EMTFRoadCollection &roads) const
Definition: PatternRecognition.cc:503
PatternRecognition::bxWindow_
int bxWindow_
Definition: PatternRecognition.h:45
PhiMemoryImage.h
PatternRecognition::symPattDefinitions_
std::vector< std::string > symPattDefinitions_
Definition: PatternRecognition.h:46
PatternRecognition::is_zone_empty
bool is_zone_empty(int zone, const std::deque< EMTFHitCollection > &extended_conv_hits, const std::map< pattern_ref_t, int > &patt_lifetime_map) const
Definition: PatternRecognition.cc:269
PatternRecognition::verbose_
int verbose_
Definition: PatternRecognition.h:43
Common.h
PhiMemoryImage
Definition: PhiMemoryImage.h:9
PatternRecognition::make_zone_image
void make_zone_image(int zone, const std::deque< EMTFHitCollection > &extended_conv_hits, PhiMemoryImage &image) const
Definition: PatternRecognition.cc:311
PatternRecognition::bx_
int bx_
Definition: PatternRecognition.h:43
emtf::zone_array
std::array< T, NUM_ZONES > zone_array
Definition: Common.h:65
PatternRecognition::endcap_
int endcap_
Definition: PatternRecognition.h:43
PatternRecognition::configure_details
void configure_details()
Definition: PatternRecognition.cc:36
PatternRecognition::pattern_ref_t
std::array< int, 3 > pattern_ref_t
Definition: PatternRecognition.h:10
PatternRecognition::process
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
Definition: PatternRecognition.cc:180