CMS 3D CMS Logo

ElectronSeedProducer.h
Go to the documentation of this file.
1 #ifndef ElectronSeedProducer_h
2 #define ElectronSeedProducer_h
3 
4 //
5 // Package: RecoEgamma/ElectronTrackSeedProducers
6 // Class: ElectronSeedProducer
7 //
8 // Description: Calls ElectronSeedGenerator
9 // to find TrajectorySeeds.
10 
11 
13 class SeedFilter ;
14 class EgammaHcalIsolation ;
15 class ElectronHcalHelper ;
16 
21 
25 
27 namespace edm
28  {
30  }
31 
38 
41 
43  {
44  public:
45 
46  //static void fillDescriptions( edm::ConfigurationDescriptions & ) ;
47 
48  explicit ElectronSeedProducer( const edm::ParameterSet & ) ;
49  void beginRun( edm::Run const&, edm::EventSetup const & ) final;
50  void endRun( edm::Run const&, edm::EventSetup const & ) final;
51  ~ElectronSeedProducer() override ;
52 
53  void produce( edm::Event &, const edm::EventSetup & ) final;
54 
55  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
56  private:
57 
58  void filterClusters
59  ( const reco::BeamSpot & bs,
60  const edm::Handle<reco::SuperClusterCollection> & superClusters,
62  std::vector<float> & hoe1s, std::vector<float> & hoe2s, edm::Event& e, const edm::EventSetup& setup ) ;
63  void filterSeeds(edm::Event& e, const edm::EventSetup& setup, reco::SuperClusterRefVector &sclRefs);
64 
71 
74  std::unique_ptr<SeedFilter> seedFilter_;
75 
77 
78  // for the filter
79  // H/E
80  // edm::InputTag hcalRecHits_;
83  // edm::ESHandle<CaloGeometry> caloGeom_ ;
84  // unsigned long long caloGeomCacheId_ ;
86  unsigned long long caloGeomCacheId_ ;
88  unsigned long long caloTopoCacheId_;
89  // EgammaHcalIsolation * hcalIso_ ;
91  // double maxHOverE_ ;
94  double maxHBarrel_ ;
95  double maxHEndcaps_ ;
96  // double hOverEConeSize_;
97  // double hOverEHBMinE_;
98  // double hOverEHFMinE_;
99  // super cluster Et cut
100  double SCEtCut_;
101 
105 
108 
110  std::unique_ptr<hgcal::ClusterTools> hgcClusterTools_;
111 
112  } ;
113 
114 #endif
115 
116 
117 
unsigned long long caloGeomCacheId_
edm::EDGetTokenT< std::vector< reco::Vertex > > filterVtxTag_
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:1
edm::EDGetTokenT< TrajectorySeedCollection > initialSeeds_
edm::EDGetTokenT< EcalRecHitCollection > eeRecHitCollection_
edm::ESHandle< CaloTopology > caloTopo_
std::vector< TrajectorySeed > TrajectorySeedCollection
edm::EDGetTokenT< EcalRecHitCollection > ebRecHitCollection_
std::unique_ptr< SeedFilter > seedFilter_
edm::ParameterSet conf_
edm::ESHandle< CaloGeometry > caloGeom_
ElectronSeedGenerator * matcher_
TrajectorySeedCollection * theInitialSeedColl
unsigned long long caloTopoCacheId_
HLT enums.
edm::EDGetTokenT< reco::BeamSpot > beamSpotTag_
ElectronHcalHelper * hcalHelper_
std::unique_ptr< hgcal::ClusterTools > hgcClusterTools_
Definition: Run.h:43