CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EgammaEcalExtractor.h
Go to the documentation of this file.
1 #ifndef EgammaIsolationAlgos_EgammaEcalIsolation_h
2 #define EgammaIsolationAlgos_EgammaEcalIsolation_h
3 
4 //*****************************************************************************
5 // File: EgammaEcalExtractor.h
6 // ----------------------------------------------------------------------------
7 // Type: Class implementation header
8 // Package: EgammaIsolationAlgos/EgammaIsolationAlgos
9 // Class: EgammaEcalExtractor
10 // Language: Standard C++
11 // Project: CMS
12 // OrigAuth: Gilles De Lentdecker
13 // Institute: IIHE-ULB
14 //=============================================================================
15 //*****************************************************************************
16 
17 
23 
25 
31 
34 
37 
38 namespace egammaisolation {
39 
41  public:
43  EgammaEcalExtractor(par, iC) {}
45  etMin_(par.getParameter<double>("etMin")),
46  conesize_(par.getParameter<double>("extRadius")),
47  scmatch_(par.getParameter<bool>("superClusterMatch")),
48  basicClusterToken_(iC.consumes<reco::BasicClusterCollection>(par.getParameter<edm::InputTag>("basicClusters"))),
49  superClusterToken_(iC.consumes<reco::SuperClusterCollection>(par.getParameter<edm::InputTag>("superClusters"))) { }
50 
51 
52  virtual ~EgammaEcalExtractor();
53 
54  virtual void fillVetos(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::TrackCollection & tracks) { }
55  virtual reco::IsoDeposit deposit(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::Track & track) const {
56  throw cms::Exception("Configuration Error") << "This extractor " << (typeid(this).name()) << " is not made for tracks";
57  }
58  virtual reco::IsoDeposit deposit(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::Candidate & c) const ;
59 
60  private:
61 
62  // ---------- member data --------------------------------
63 
64  // Parameters of isolation cone geometry.
65  // Photon case
66  double etMin_;
67  double conesize_;
68  bool scmatch_; // true-> reject basic clusters matched to the superclsuter
69  // false-> fill all basic clusters
72  };
73 
74 }
75 #endif
EgammaEcalExtractor(const edm::ParameterSet &par, edm::ConsumesCollector &&iC)
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:10
edm::EDGetTokenT< reco::BasicClusterCollection > basicClusterToken_
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
virtual reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const
virtual void fillVetos(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackCollection &tracks)
edm::EDGetTokenT< reco::SuperClusterCollection > superClusterToken_
tuple tracks
Definition: testEve_cfg.py:39
EgammaEcalExtractor(const edm::ParameterSet &par, edm::ConsumesCollector &iC)
std::vector< BasicCluster > BasicClusterCollection
collection of BasicCluster objects