CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 {class ParameterSet; class Event; class EventSetup;}
25 
27  public:
28 
31 
33  virtual ~CosmicMuonSeedGenerator();
34 
35  // Operations
36 
38  virtual void produce(edm::Event&, const edm::EventSetup&) override;
39 
40  private:
41 
42  struct MuonRecHitPair {
44 
48  };
49 
50  typedef std::vector<MuonRecHitPair> MuonRecHitPairVector;
51 
55  const edm::EventSetup& eSetup) const;
56 
57 
60  const edm::EventSetup& eSetup) const;
61 
64 
67 
69  std::vector<TrajectorySeed> createSeed(const MuonTransientTrackingRecHit::MuonRecHitPointer&,
70  const edm::EventSetup&) const;
71 
72 
74 
76  std::vector<TrajectorySeed> createSeed(const MuonRecHitPair&,
77  const edm::EventSetup&) const;
78 
79  TrajectorySeed tsosToSeed(const TrajectoryStateOnSurface&, uint32_t) const;
81 
85 
89 
93  return lhs->globalPosition().y() > rhs->globalPosition().y();
94  }
95  };
96 
97  private:
100 
103 
106 
109 
111  unsigned int theMaxSeeds;
112 
114  double theMaxDTChi2;
119 
120  std::map<std::string, float> theParameters;
121 
123 
124 };
125 #endif
126 
type
Definition: HCALResponse.h:21
edm::ESHandle< MagneticField > theField
MuonTransientTrackingRecHit::MuonRecHitContainer selectSegments(const MuonTransientTrackingRecHit::MuonRecHitContainer &) const
select seed candidates from Segments in Event
unsigned int theMaxSeeds
the maximum number of Seeds
MuonTransientTrackingRecHit::MuonRecHitPointer first
double theMaxDTChi2
the maximum chi2 required for dt and csc rechits
bool areCorrelated(const MuonTransientTrackingRecHit::MuonRecHitPointer &, const MuonTransientTrackingRecHit::MuonRecHitPointer &) const
check if two rechits are correlated
edm::InputTag theDTRecSegmentLabel
the name of the DT rec hits collection
std::vector< TrajectorySeed > TrajectorySeedCollection
std::shared_ptr< MuonTransientTrackingRecHit > MuonRecHitPointer
tuple results
Definition: mps_update.py:44
bool leftIsBetter(const MuonTransientTrackingRecHit::MuonRecHitPointer &, const MuonTransientTrackingRecHit::MuonRecHitPointer &) const
compare quality of two rechits
edm::ESHandle< MuonDetLayerGeometry > theMuonLayers
std::vector< TrajectorySeed > createSeed(const MuonTransientTrackingRecHit::MuonRecHitPointer &, const edm::EventSetup &) const
create TrajectorySeed from MuonTransientTrackingRecHit
std::map< std::string, float > theParameters
std::vector< MuonRecHitPair > MuonRecHitPairVector
MuonDetLayerMeasurements * muonMeasurements
bool checkQuality(const MuonTransientTrackingRecHit::MuonRecHitPointer &) const
determine if a MuonTransientTrackingRecHit is qualified to build seed
bool theEnableCSCFlag
enable CSCSegment Flag
double b
Definition: hdecay.h:120
bool theEnableDTFlag
enable DT Segment Flag
edm::InputTag theCSCRecSegmentLabel
the name of the CSC rec hits collection
MuonTransientTrackingRecHit::MuonRecHitPointer second
bool operator()(const MuonTransientTrackingRecHit::ConstMuonRecHitPointer &lhs, const MuonTransientTrackingRecHit::ConstMuonRecHitPointer &rhs) const
MuonRecHitPair(const MuonTransientTrackingRecHit::MuonRecHitPointer &a, const MuonTransientTrackingRecHit::MuonRecHitPointer &b, std::string c="")
double a
Definition: hdecay.h:121
virtual void produce(edm::Event &, const edm::EventSetup &) override
reconstruct muon&#39;s seeds
std::shared_ptr< MuonTransientTrackingRecHit const > ConstMuonRecHitPointer
std::vector< MuonRecHitPair > makeSegPairs(const MuonTransientTrackingRecHit::MuonRecHitContainer &, const MuonTransientTrackingRecHit::MuonRecHitContainer &, std::string) const
TrajectorySeed tsosToSeed(const TrajectoryStateOnSurface &, uint32_t) const
void createSeeds(TrajectorySeedCollection &results, const MuonTransientTrackingRecHit::MuonRecHitContainer &hits, const edm::EventSetup &eSetup) const
generate TrajectorySeeds and put them into results
std::vector< MuonRecHitPointer > MuonRecHitContainer
CosmicMuonSeedGenerator(const edm::ParameterSet &)
Constructor.
virtual ~CosmicMuonSeedGenerator()
Destructor.