CMS 3D CMS Logo

PFIsoDepositAlgo.h
Go to the documentation of this file.
1 #ifndef CommonTools_ParticleFlow_PFIsoDepositAlgo_
2 #define CommonTools_ParticleFlow_PFIsoDepositAlgo_
3 
4 // system include files
5 #include <memory>
6 #include <string>
7 
8 // user include files
11 
13 
14 //not a fwd declaration, to save the pain to the user to include the necessary DF header as well
16 
24 namespace pf2pat {
25 
27  public:
28  // can be a template parameter (IsoDeposits from GenParticles? )
30  typedef std::vector<Particle> ParticleCollection;
31 
32  // random access to the IsoDeposit corresponding to a given particle
33  typedef std::vector<reco::IsoDeposit> IsoDeposits;
34 
35  explicit PFIsoDepositAlgo(const edm::ParameterSet&);
36 
38 
43  const IsoDeposits& produce(const ParticleCollection& toBeIsolated, const ParticleCollection& forIsolation);
44 
45  private:
47  reco::IsoDeposit buildIsoDeposit(const Particle& particle, const ParticleCollection& forIsolation) const;
48 
50  bool sameParticle(const Particle& particle1, const Particle& particle2) const;
51 
54 
55  bool verbose_;
56  };
57 } // namespace pf2pat
58 
59 #endif
pf2pat::PFIsoDepositAlgo::buildIsoDeposit
reco::IsoDeposit buildIsoDeposit(const Particle &particle, const ParticleCollection &forIsolation) const
build the IsoDeposit for "particle"
Definition: PFIsoDepositAlgo.cc:43
pf2pat::PFIsoDepositAlgo::~PFIsoDepositAlgo
~PFIsoDepositAlgo()
Definition: PFIsoDepositAlgo.cc:20
pf2pat
Definition: ElectronIDPFCandidateSelectorDefinition.h:22
pf2pat::PFIsoDepositAlgo::ParticleCollection
std::vector< Particle > ParticleCollection
Definition: PFIsoDepositAlgo.h:30
pf2pat::PFIsoDepositAlgo
Definition: PFIsoDepositAlgo.h:26
pf2pat::PFIsoDepositAlgo::isoDeposits_
IsoDeposits isoDeposits_
IsoDeposits computed in the produce function.
Definition: PFIsoDepositAlgo.h:53
pf2pat::PFIsoDepositAlgo::verbose_
bool verbose_
Definition: PFIsoDepositAlgo.h:55
pf2pat::PFIsoDepositAlgo::produce
const IsoDeposits & produce(const ParticleCollection &toBeIsolated, const ParticleCollection &forIsolation)
Definition: PFIsoDepositAlgo.cc:22
IsoDeposit.h
edm::ParameterSet
Definition: ParameterSet.h:36
pf2pat::PFIsoDepositAlgo::Particle
reco::PFCandidate Particle
Definition: PFIsoDepositAlgo.h:29
pf2pat::PFIsoDepositAlgo::PFIsoDepositAlgo
PFIsoDepositAlgo(const edm::ParameterSet &)
Definition: PFIsoDepositAlgo.cc:15
Frameworkfwd.h
pf2pat::PFIsoDepositAlgo::sameParticle
bool sameParticle(const Particle &particle1, const Particle &particle2) const
checks if the 2 particles are in fact the same
Definition: PFIsoDepositAlgo.cc:81
pf2pat::PFIsoDepositAlgo::IsoDeposits
std::vector< reco::IsoDeposit > IsoDeposits
Definition: PFIsoDepositAlgo.h:33
Particle
Definition: Particle.py:1
reco::IsoDeposit
Definition: IsoDeposit.h:49
reco::PFCandidate
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:40
ParameterSet.h
PFCandidateFwd.h