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 TrackingSeeds.
10 
11 
13 class SeedFilter ;
14 class EgammaHcalIsolation ;
15 class ElectronHcalHelper ;
16 
21 
25 
27 namespace edm
28  {
30  }
31 
38 
39 
41  {
42  public:
43 
44  //static void fillDescriptions( edm::ConfigurationDescriptions & ) ;
45 
46  explicit ElectronSeedProducer( const edm::ParameterSet & ) ;
47  virtual void beginRun( edm::Run const&, edm::EventSetup const & ) override final;
48  virtual void endRun( edm::Run const&, edm::EventSetup const & ) override final;
49  virtual ~ElectronSeedProducer() ;
50 
51  virtual void produce( edm::Event &, const edm::EventSetup & ) override final;
52 
53  private:
54 
55  void filterClusters
56  ( const reco::BeamSpot & bs,
57  const edm::Handle<reco::SuperClusterCollection> & superClusters,
59  std::vector<float> & hoe1s, std::vector<float> & hoe2s ) ;
61 
66 
69  std::unique_ptr<SeedFilter> seedFilter_;
70 
72 
73  // for the filter
74 
75  // H/E
76  // edm::InputTag hcalRecHits_;
79  // edm::ESHandle<CaloGeometry> caloGeom_ ;
80  // unsigned long long caloGeomCacheId_ ;
82  unsigned long long caloGeomCacheId_ ;
84  unsigned long long caloTopoCacheId_;
85  // EgammaHcalIsolation * hcalIso_ ;
87  // double maxHOverE_ ;
90  double maxHBarrel_ ;
91  double maxHEndcaps_ ;
92  // double hOverEConeSize_;
93  // double hOverEHBMinE_;
94  // double hOverEHFMinE_;
95 
96  // super cluster Et cut
97  double SCEtCut_;
98 
99 
102 
103  } ;
104 
105 #endif
106 
107 
108 
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::ESHandle< CaloTopology > caloTopo_
void filterClusters(const reco::BeamSpot &bs, const edm::Handle< reco::SuperClusterCollection > &superClusters, reco::SuperClusterRefVector &sclRefs, std::vector< float > &hoe1s, std::vector< float > &hoe2s)
std::vector< TrajectorySeed > TrajectorySeedCollection
ElectronSeedProducer(const edm::ParameterSet &)
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_
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
Definition: Run.h:41
virtual void produce(edm::Event &, const edm::EventSetup &) overridefinal