CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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  virtual void beginRun( edm::Run const&, edm::EventSetup const & ) override final;
50  virtual void endRun( edm::Run const&, edm::EventSetup const & ) override final;
51  virtual ~ElectronSeedProducer() ;
52 
53  virtual void produce( edm::Event &, const edm::EventSetup & ) override 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 
void filterClusters(const reco::BeamSpot &bs, const edm::Handle< reco::SuperClusterCollection > &superClusters, reco::SuperClusterRefVector &sclRefs, std::vector< float > &hoe1s, std::vector< float > &hoe2s, edm::Event &e, const edm::EventSetup &setup)
virtual void endRun(edm::Run const &, edm::EventSetup const &) overridefinal
virtual void beginRun(edm::Run const &, edm::EventSetup const &) overridefinal
unsigned long long caloGeomCacheId_
edm::EDGetTokenT< std::vector< reco::Vertex > > filterVtxTag_
edm::EDGetTokenT< TrajectorySeedCollection > initialSeeds_
edm::EDGetTokenT< EcalRecHitCollection > eeRecHitCollection_
edm::ESHandle< CaloTopology > caloTopo_
std::vector< TrajectorySeed > TrajectorySeedCollection
edm::EDGetTokenT< EcalRecHitCollection > ebRecHitCollection_
ElectronSeedProducer(const edm::ParameterSet &)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::unique_ptr< SeedFilter > seedFilter_
edm::ParameterSet conf_
edm::ESHandle< CaloGeometry > caloGeom_
ElectronSeedGenerator * matcher_
TrajectorySeedCollection * theInitialSeedColl
edm::EDGetTokenT< reco::SuperClusterCollection > superClusters_[2]
unsigned long long caloTopoCacheId_
void filterSeeds(edm::Event &e, const edm::EventSetup &setup, reco::SuperClusterRefVector &sclRefs)
edm::EDGetTokenT< reco::BeamSpot > beamSpotTag_
ElectronHcalHelper * hcalHelper_
std::unique_ptr< hgcal::ClusterTools > hgcClusterTools_
Definition: Run.h:42
virtual void produce(edm::Event &, const edm::EventSetup &) overridefinal