CMS 3D CMS Logo

CosmicMuonSeedGenerator.h
Go to the documentation of this file.
1 #ifndef MuonSeedGenerator_CosmicMuonSeedGenerator_H
2 #define MuonSeedGenerator_CosmicMuonSeedGenerator_H
3 
13 
17 
18 #include <vector>
19 
21 
23 
24 namespace edm {
25  class ParameterSet;
26  class Event;
27  class EventSetup;
28 } // namespace edm
29 
31 public:
34 
36  ~CosmicMuonSeedGenerator() override;
37 
38  // Operations
39 
41  void produce(edm::Event&, const edm::EventSetup&) override;
42 
43 private:
44  struct MuonRecHitPair {
47  std::string c = "")
48  : first(a), second(b), type(c) {}
49 
53  };
54 
55  typedef std::vector<MuonRecHitPair> MuonRecHitPairVector;
56 
60  const edm::EventSetup& eSetup) const;
61 
64  const edm::EventSetup& eSetup) const;
65 
68 
72 
74  std::vector<TrajectorySeed> createSeed(const MuonTransientTrackingRecHit::MuonRecHitPointer&,
75  const edm::EventSetup&) const;
76 
77  std::vector<MuonRecHitPair> makeSegPairs(const MuonTransientTrackingRecHit::MuonRecHitContainer&,
79  std::string) const;
80 
82  std::vector<TrajectorySeed> createSeed(const MuonRecHitPair&, const edm::EventSetup&) const;
83 
84  TrajectorySeed tsosToSeed(const TrajectoryStateOnSurface&, uint32_t) const;
86 
90 
94 
98  return lhs->globalPosition().y() > rhs->globalPosition().y();
99  }
100  };
101 
102 private:
105 
108 
111 
114 
116  unsigned int theMaxSeeds;
117 
119  double theMaxDTChi2;
124 
125  std::map<std::string, float> theParameters;
126 
128 };
129 #endif
CosmicMuonSeedGenerator::theDTRecSegmentLabel
edm::InputTag theDTRecSegmentLabel
the name of the DT rec hits collection
Definition: CosmicMuonSeedGenerator.h:110
MuonTransientTrackingRecHit::ConstMuonRecHitPointer
std::shared_ptr< MuonTransientTrackingRecHit const > ConstMuonRecHitPointer
Definition: MuonTransientTrackingRecHit.h:22
CosmicMuonSeedGenerator::theForcePointDownFlag
bool theForcePointDownFlag
Definition: CosmicMuonSeedGenerator.h:121
TrajectorySeedCollection
std::vector< TrajectorySeed > TrajectorySeedCollection
Definition: TrajectorySeedCollection.h:6
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
ESHandle.h
MuonDetLayerMeasurements
Definition: MuonDetLayerMeasurements.h:41
edm
HLT enums.
Definition: AlignableModifier.h:19
EDProducer.h
bookConverter.results
results
Definition: bookConverter.py:144
MuonTransientTrackingRecHit::MuonRecHitContainer
std::vector< MuonRecHitPointer > MuonRecHitContainer
Definition: MuonTransientTrackingRecHit.h:26
MuonTransientTrackingRecHit.h
CosmicMuonSeedGenerator::theField
edm::ESHandle< MagneticField > theField
Definition: CosmicMuonSeedGenerator.h:123
CosmicMuonSeedGenerator::DecreasingGlobalY
Definition: CosmicMuonSeedGenerator.h:95
CosmicMuonSeedGenerator::theMuonLayers
edm::ESHandle< MuonDetLayerGeometry > theMuonLayers
Definition: CosmicMuonSeedGenerator.h:122
CosmicMuonSeedGenerator::MuonRecHitPair::second
MuonTransientTrackingRecHit::MuonRecHitPointer second
Definition: CosmicMuonSeedGenerator.h:51
CosmicMuonSeedGenerator::makeSegPairs
std::vector< MuonRecHitPair > makeSegPairs(const MuonTransientTrackingRecHit::MuonRecHitContainer &, const MuonTransientTrackingRecHit::MuonRecHitContainer &, std::string) const
Definition: CosmicMuonSeedGenerator.cc:413
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
CosmicMuonSeedGenerator::theMaxSeeds
unsigned int theMaxSeeds
the maximum number of Seeds
Definition: CosmicMuonSeedGenerator.h:116
MuonDetLayerGeometry
Definition: MuonDetLayerGeometry.h:21
CosmicMuonSeedGenerator
Definition: CosmicMuonSeedGenerator.h:30
MuonTransientTrackingRecHit::MuonRecHitPointer
std::shared_ptr< MuonTransientTrackingRecHit > MuonRecHitPointer
Definition: MuonTransientTrackingRecHit.h:21
CosmicMuonSeedGenerator::theCSCRecSegmentLabel
edm::InputTag theCSCRecSegmentLabel
the name of the CSC rec hits collection
Definition: CosmicMuonSeedGenerator.h:113
CosmicMuonSeedGenerator::theMaxCSCChi2
double theMaxCSCChi2
Definition: CosmicMuonSeedGenerator.h:120
edm::ESHandle< MuonDetLayerGeometry >
Event
CosmicMuonSeedGenerator::tsosToSeed
TrajectorySeed tsosToSeed(const TrajectoryStateOnSurface &, uint32_t) const
Definition: CosmicMuonSeedGenerator.cc:534
b
double b
Definition: hdecay.h:118
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::ParameterSet
Definition: ParameterSet.h:36
CosmicMuonSeedGenerator::selectSegments
MuonTransientTrackingRecHit::MuonRecHitContainer selectSegments(const MuonTransientTrackingRecHit::MuonRecHitContainer &) const
select seed candidates from Segments in Event
Definition: CosmicMuonSeedGenerator.cc:221
CosmicMuonSeedGenerator::createSeeds
void createSeeds(TrajectorySeedCollection &results, const MuonTransientTrackingRecHit::MuonRecHitContainer &hits, const edm::EventSetup &eSetup) const
generate TrajectorySeeds and put them into results
Definition: CosmicMuonSeedGenerator.cc:272
a
double a
Definition: hdecay.h:119
CosmicMuonSeedGenerator::areCorrelated
bool areCorrelated(const MuonTransientTrackingRecHit::MuonRecHitPointer &, const MuonTransientTrackingRecHit::MuonRecHitPointer &) const
check if two rechits are correlated
Definition: CosmicMuonSeedGenerator.cc:372
ParameterSet
Definition: Functions.h:16
CosmicMuonSeedGenerator::~CosmicMuonSeedGenerator
~CosmicMuonSeedGenerator() override
Destructor.
Definition: CosmicMuonSeedGenerator.cc:94
CosmicMuonSeedGenerator::produce
void produce(edm::Event &, const edm::EventSetup &) override
reconstruct muon's seeds
Definition: CosmicMuonSeedGenerator.cc:100
CosmicMuonSeedGenerator::muonMeasurements
MuonDetLayerMeasurements * muonMeasurements
Definition: CosmicMuonSeedGenerator.h:127
CosmicMuonSeedGenerator::MuonRecHitPair::MuonRecHitPair
MuonRecHitPair(const MuonTransientTrackingRecHit::MuonRecHitPointer &a, const MuonTransientTrackingRecHit::MuonRecHitPointer &b, std::string c="")
Definition: CosmicMuonSeedGenerator.h:45
TrajectoryStateTransform
Definition: TrajectoryStateTransform.h:47
edm::stream::EDProducer
Definition: EDProducer.h:38
edm::EventSetup
Definition: EventSetup.h:57
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
CosmicMuonSeedGenerator::theEnableCSCFlag
bool theEnableCSCFlag
enable CSCSegment Flag
Definition: CosmicMuonSeedGenerator.h:107
TrajectorySeedCollection.h
CosmicMuonSeedGenerator::MuonRecHitPair::first
MuonTransientTrackingRecHit::MuonRecHitPointer first
Definition: CosmicMuonSeedGenerator.h:50
InputTag.h
CosmicMuonSeedGenerator::leftIsBetter
bool leftIsBetter(const MuonTransientTrackingRecHit::MuonRecHitPointer &, const MuonTransientTrackingRecHit::MuonRecHitPointer &) const
compare quality of two rechits
Definition: CosmicMuonSeedGenerator.cc:404
CosmicMuonSeedGenerator::MuonRecHitPair
Definition: CosmicMuonSeedGenerator.h:44
type
type
Definition: HCALResponse.h:21
MuonDetLayerMeasurements.h
CosmicMuonSeedGenerator::CosmicMuonSeedGenerator
CosmicMuonSeedGenerator(const edm::ParameterSet &)
Constructor.
Definition: CosmicMuonSeedGenerator.cc:44
CosmicMuonSeedGenerator::theParameters
std::map< std::string, float > theParameters
Definition: CosmicMuonSeedGenerator.h:125
CosmicMuonSeedGenerator::checkQuality
bool checkQuality(const MuonTransientTrackingRecHit::MuonRecHitPointer &) const
determine if a MuonTransientTrackingRecHit is qualified to build seed
Definition: CosmicMuonSeedGenerator.cc:199
TrajectorySeed
Definition: TrajectorySeed.h:17
CosmicMuonSeedGenerator::DecreasingGlobalY::operator()
bool operator()(const MuonTransientTrackingRecHit::ConstMuonRecHitPointer &lhs, const MuonTransientTrackingRecHit::ConstMuonRecHitPointer &rhs) const
Definition: CosmicMuonSeedGenerator.h:96
CosmicMuonSeedGenerator::createSeed
std::vector< TrajectorySeed > createSeed(const MuonTransientTrackingRecHit::MuonRecHitPointer &, const edm::EventSetup &) const
create TrajectorySeed from MuonTransientTrackingRecHit
Definition: CosmicMuonSeedGenerator.cc:308
EventSetup
CosmicMuonSeedGenerator::MuonRecHitPair::type
std::string type
Definition: CosmicMuonSeedGenerator.h:52
CosmicMuonSeedGenerator::theMaxDTChi2
double theMaxDTChi2
the maximum chi2 required for dt and csc rechits
Definition: CosmicMuonSeedGenerator.h:119
CosmicMuonSeedGenerator::theEnableDTFlag
bool theEnableDTFlag
enable DT Segment Flag
Definition: CosmicMuonSeedGenerator.h:104
edm::Event
Definition: Event.h:73
CosmicMuonSeedGenerator::MuonRecHitPairVector
std::vector< MuonRecHitPair > MuonRecHitPairVector
Definition: CosmicMuonSeedGenerator.h:55
edm::InputTag
Definition: InputTag.h:15
edm::OwnVector< TrackingRecHit >