CMS 3D CMS Logo

MuonSeedOrcaPatternRecognition.h
Go to the documentation of this file.
1 #ifndef MuonSeedGenerator_MuonSeedOrcaPatternRecognition_h
2 #define MuonSeedGenerator_MuonSeedOrcaPatternRecognition_h
3 
7 
9 public:
11 
12  void produce(const edm::Event& event,
13  const edm::EventSetup& eSetup,
14  std::vector<MuonRecHitContainer>& result) override;
15 
16 private:
17  // aalocates a zeroed array of a given size
18  bool* zero(unsigned listSize);
19 
20  void endcapPatterns(const MuonRecHitContainer& me11,
21  const MuonRecHitContainer& me12,
22  const MuonRecHitContainer& me2,
23  const MuonRecHitContainer& me3,
24  const MuonRecHitContainer& me4,
25  const MuonRecHitContainer& me0,
26  const MuonRecHitContainer& mb1,
27  const MuonRecHitContainer& mb2,
28  const MuonRecHitContainer& mb3,
29  bool* MB1,
30  bool* MB2,
31  bool* MB3,
32  std::vector<MuonRecHitContainer>& result);
33 
34  void complete(MuonRecHitContainer& seedSegments, const MuonRecHitContainer& recHits, bool* used = nullptr) const;
35 
37  // some score to measure how well the two hits match
39  // see if it's OK to add
40  bool check(const MuonRecHitContainer& segments);
41  bool isCrack(const ConstMuonRecHitPointer& segment) const;
42  void rememberCrackSegments(const MuonRecHitContainer& segments, MuonRecHitContainer& crackSegments) const;
43 
44  void dumpLayer(const char* name, const MuonRecHitContainer& segments) const;
45 
47  MuonRecHitContainer filterSegments(const MuonRecHitContainer& segments, double dThetaCut) const;
48  void filterOverlappingChambers(MuonRecHitContainer& segments) const;
49  bool isME1A(const ConstMuonRecHitPointer& segment) const;
50  int countHits(const MuonRecHitPointer& segment) const;
51  // can mark other ME1A as used if one is.
52  void markAsUsed(int nr, const MuonRecHitContainer& recHits, bool* used) const;
53  std::vector<double> theCrackEtas;
59 };
60 
61 #endif
MuonSeedOrcaPatternRecognition::isME1A
bool isME1A(const ConstMuonRecHitPointer &segment) const
Definition: MuonSeedOrcaPatternRecognition.cc:753
MuonSeedVPatternRecognition::MuonRecHitPointer
MuonTransientTrackingRecHit::MuonRecHitPointer MuonRecHitPointer
Definition: MuonSeedVPatternRecognition.h:10
MuonSeedOrcaPatternRecognition::dumpLayer
void dumpLayer(const char *name, const MuonRecHitContainer &segments) const
Definition: MuonSeedOrcaPatternRecognition.cc:652
MuonSeedOrcaPatternRecognition::discriminator
double discriminator(const ConstMuonRecHitPointer &first, MuonRecHitPointer &other) const
Definition: MuonSeedOrcaPatternRecognition.cc:572
MuonStationSelectors_cff.mb3
mb3
Definition: MuonStationSelectors_cff.py:15
MuonDetLayerMeasurements
Definition: MuonDetLayerMeasurements.h:41
MuonSeedOrcaPatternRecognition::muonMeasurements
MuonDetLayerMeasurements * muonMeasurements
Definition: MuonSeedOrcaPatternRecognition.h:55
MuonSeedOrcaPatternRecognition::endcapPatterns
void endcapPatterns(const MuonRecHitContainer &me11, const MuonRecHitContainer &me12, const MuonRecHitContainer &me2, const MuonRecHitContainer &me3, const MuonRecHitContainer &me4, const MuonRecHitContainer &me0, const MuonRecHitContainer &mb1, const MuonRecHitContainer &mb2, const MuonRecHitContainer &mb3, bool *MB1, bool *MB2, bool *MB3, std::vector< MuonRecHitContainer > &result)
Definition: MuonSeedOrcaPatternRecognition.cc:315
MuonSeedOrcaPatternRecognition::theDeltaCrackWindow
double theDeltaCrackWindow
Definition: MuonSeedOrcaPatternRecognition.h:58
MuonSeedVPatternRecognition::MuonRecHitContainer
MuonTransientTrackingRecHit::MuonRecHitContainer MuonRecHitContainer
Definition: MuonSeedVPatternRecognition.h:12
MuonStationSelectors_cff.mb2
mb2
Definition: MuonStationSelectors_cff.py:9
dqmdumpme.first
first
Definition: dqmdumpme.py:55
MuonSeedOrcaPatternRecognition::rememberCrackSegments
void rememberCrackSegments(const MuonRecHitContainer &segments, MuonRecHitContainer &crackSegments) const
Definition: MuonSeedOrcaPatternRecognition.cc:639
MuonSeedOrcaPatternRecognition::theCrackEtas
std::vector< double > theCrackEtas
Definition: MuonSeedOrcaPatternRecognition.h:53
MuonSeedOrcaPatternRecognition::produce
void produce(const edm::Event &event, const edm::EventSetup &eSetup, std::vector< MuonRecHitContainer > &result) override
Definition: MuonSeedOrcaPatternRecognition.cc:72
hlt_dqm_clientPB-live_cfg.me2
me2
Definition: hlt_dqm_clientPB-live_cfg.py:78
MuonSeedVPatternRecognition::ConstMuonRecHitPointer
MuonTransientTrackingRecHit::ConstMuonRecHitPointer ConstMuonRecHitPointer
Definition: MuonSeedVPatternRecognition.h:11
MuonSeedOrcaPatternRecognition::filterOverlappingChambers
void filterOverlappingChambers(MuonRecHitContainer &segments) const
Definition: MuonSeedOrcaPatternRecognition.cc:696
MuonSeedVPatternRecognition.h
MuonSeedOrcaPatternRecognition::countHits
int countHits(const MuonRecHitPointer &segment) const
Definition: MuonSeedOrcaPatternRecognition.cc:757
trackingPlots.other
other
Definition: trackingPlots.py:1465
MuonSeedOrcaPatternRecognition::filterSegments
MuonRecHitContainer filterSegments(const MuonRecHitContainer &segments, double dThetaCut) const
apply some cuts to segments before using them
Definition: MuonSeedOrcaPatternRecognition.cc:661
FastTrackerRecHitMaskProducer_cfi.recHits
recHits
Definition: FastTrackerRecHitMaskProducer_cfi.py:8
edm::ParameterSet
Definition: ParameterSet.h:36
mixOne_premix_on_sim_cfi.me0
me0
Definition: mixOne_premix_on_sim_cfi.py:309
MuonSeedOrcaPatternRecognition::theDeltaEtaWindow
double theDeltaEtaWindow
Definition: MuonSeedOrcaPatternRecognition.h:57
EgHLTOffHistBins_cfi.nr
nr
Definition: EgHLTOffHistBins_cfi.py:4
MuonSeedOrcaPatternRecognition::zero
bool * zero(unsigned listSize)
Definition: MuonSeedOrcaPatternRecognition.cc:305
edm::EventSetup
Definition: EventSetup.h:57
MuonSeedOrcaPatternRecognition::theDeltaPhiWindow
double theDeltaPhiWindow
Definition: MuonSeedOrcaPatternRecognition.h:56
MuonSeedOrcaPatternRecognition::complete
void complete(MuonRecHitContainer &seedSegments, const MuonRecHitContainer &recHits, bool *used=nullptr) const
Definition: MuonSeedOrcaPatternRecognition.cc:523
MuonSeedOrcaPatternRecognition::markAsUsed
void markAsUsed(int nr, const MuonRecHitContainer &recHits, bool *used) const
Definition: MuonSeedOrcaPatternRecognition.cc:606
MuonStationSelectors_cff.mb1
mb1
Definition: MuonStationSelectors_cff.py:3
MuonDetLayerMeasurements.h
MuonSeedOrcaPatternRecognition
Definition: MuonSeedOrcaPatternRecognition.h:8
MuonSeedVPatternRecognition
Definition: MuonSeedVPatternRecognition.h:8
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
mps_fire.result
result
Definition: mps_fire.py:303
ConsumesCollector.h
MuonSeedOrcaPatternRecognition::check
bool check(const MuonRecHitContainer &segments)
Definition: MuonSeedOrcaPatternRecognition.cc:604
event
Definition: event.py:1
edm::Event
Definition: Event.h:73
MuonSeedOrcaPatternRecognition::bestMatch
MuonRecHitPointer bestMatch(const ConstMuonRecHitPointer &first, MuonRecHitContainer &good_rhit) const
Definition: MuonSeedOrcaPatternRecognition.cc:556
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
MuonSeedOrcaPatternRecognition::MuonSeedOrcaPatternRecognition
MuonSeedOrcaPatternRecognition(const edm::ParameterSet &pset, edm::ConsumesCollector &iC)
Definition: MuonSeedOrcaPatternRecognition.cc:46
MuonSeedOrcaPatternRecognition::theCrackWindow
double theCrackWindow
Definition: MuonSeedOrcaPatternRecognition.h:54
MuonSeedOrcaPatternRecognition::isCrack
bool isCrack(const ConstMuonRecHitPointer &segment) const
Definition: MuonSeedOrcaPatternRecognition.cc:627