CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CandIsolatorFromDeposits.h
Go to the documentation of this file.
1 #ifndef MuonIsolationProducers_CandIsolatorFromDeposits_H
2 #define MuonIsolationProducers_CandIsolatorFromDeposits_H
3 
6 
12 
16 
17 #include <string>
18 
19 namespace edm { class Event; }
20 namespace edm { class EventSetup; }
21 
23 
24 public:
26 
29 
30  virtual ~CandIsolatorFromDeposits();
31 
32  virtual void produce(edm::Event&, const edm::EventSetup&);
33 
34 private:
35  class SingleDeposit {
36  public:
38  void cleanup() ;
39  void open(const edm::Event &iEvent, const edm::EventSetup &iSetup) ;
40  double compute(const reco::CandidateBaseRef &cand) ;
41  const reco::IsoDepositMap & map() { return *hDeps_; }
42  private:
45  double deltaR_;
47  double weight_;
50  reco::isodeposit::EventDependentAbsVetos evdepVetos_; // note: these are a subset of the above. Don't delete twice!
53  };
54  // datamembers
55  std::vector<SingleDeposit> sources_;
56 
57 };
58 #endif
double compute(const reco::CandidateBaseRef &cand)
StringObjectFunction< reco::Candidate > weightExpr_
std::vector< SingleDeposit > sources_
edm::ValueMap< double > CandDoubleMap
edm::Handle< reco::IsoDepositMap > hDeps_
std::vector< EventDependentAbsVeto * > EventDependentAbsVetos
int iEvent
Definition: GenABIO.cc:243
void open(const edm::Event &iEvent, const edm::EventSetup &iSetup)
virtual ~CandIsolatorFromDeposits()
destructor
CandIsolatorFromDeposits(const edm::ParameterSet &)
constructor with config
std::vector< AbsVeto * > AbsVetos
Definition: IsoDeposit.h:39
reco::isodeposit::EventDependentAbsVetos evdepVetos_
virtual void produce(edm::Event &, const edm::EventSetup &)
build deposits