CMS 3D CMS Logo

SimpleCosmicBONSeeder.h
Go to the documentation of this file.
1 #ifndef SimpleCosmicBONSeeder_h
2 #define SimpleCosmicBONSeeder_h
3 
13 
19 
24 
30 
38 
40 
42 public:
43  explicit SimpleCosmicBONSeeder(const edm::ParameterSet &conf);
44 
45  ~SimpleCosmicBONSeeder() override {}
46 
47  void produce(edm::Event &e, const edm::EventSetup &c) override;
48 
49  void init(const edm::EventSetup &c);
50  bool triplets(const edm::Event &e, const edm::EventSetup &c);
52  void done();
53 
54  bool goodTriplet(const GlobalPoint &inner,
55  const GlobalPoint &middle,
56  const GlobalPoint &outer,
57  const double &minRho) const;
58 
59  std::pair<GlobalVector, int> pqFromHelixFit(const GlobalPoint &inner,
60  const GlobalPoint &middle,
61  const GlobalPoint &outer,
62  const edm::EventSetup &iSetup) const;
63 
64 private:
67 
70  double pMin_;
72 
74  double rescaleError_;
75 
77 
81  TkClonerImpl cloner; // FIXME
85 
88 
90 
91  int goodHitsPerSeed_; // number of hits that must be good
92  bool checkCharge_; // check cluster charge
94  std::vector<int32_t> chargeThresholds_;
96  std::vector<int32_t> maxHitsPerModule_;
97  bool checkCharge(const TrackingRecHit *hit) const;
98  bool checkCharge(const SiStripRecHit2D &hit, int subdetid) const;
99  void checkNoisyModules(const std::vector<SeedingHitSet::ConstRecHitPointer> &hits, std::vector<bool> &oks) const;
100 
101  //***top-bottom
104  //***
105 };
106 
107 #endif
GlobalTrackingRegion region_
bool triplets(const edm::Event &e, const edm::EventSetup &c)
void init(const edm::EventSetup &c)
OrderedHitTriplets hitTriplets
bool checkCharge(const TrackingRecHit *hit) const
SimpleCosmicBONSeeder(const edm::ParameterSet &conf)
edm::ESHandle< TrackerGeometry > tracker
std::pair< GlobalVector, int > pqFromHelixFit(const GlobalPoint &inner, const GlobalPoint &middle, const GlobalPoint &outer, const edm::EventSetup &iSetup) const
std::vector< TrajectorySeed > TrajectorySeedCollection
PropagatorWithMaterial * thePropagatorOp
edm::ESHandle< MagneticField > magfield
edm::ESHandle< TransientTrackingRecHitBuilder > TTTRHBuilder
edm::EDGetTokenT< SeedingLayerSetsHits > seedingLayerToken_
PropagatorWithMaterial * thePropagatorAl
bool seeds(TrajectorySeedCollection &output, const edm::EventSetup &iSetup)
bool goodTriplet(const GlobalPoint &inner, const GlobalPoint &middle, const GlobalPoint &outer, const double &minRho) const
void produce(edm::Event &e, const edm::EventSetup &c) override
std::vector< int32_t > chargeThresholds_
void checkNoisyModules(const std::vector< SeedingHitSet::ConstRecHitPointer > &hits, std::vector< bool > &oks) const
std::vector< int32_t > maxHitsPerModule_