CMS 3D CMS Logo

List of all members | Classes | Public Member Functions
pat::DuplicatedPhotonRemover Class Reference

#include <DuplicatedPhotonRemover.h>

Classes

struct  EqualBySuperCluster
 
struct  EqualBySuperClusterSeed
 

Public Member Functions

template<typename PhotonCollection >
std::unique_ptr< std::vector< size_t > > duplicatesBySeed (const PhotonCollection &photons) const
 
std::unique_ptr< std::vector< size_t > > duplicatesBySeed (const reco::PhotonCollection &photons) const
 
std::unique_ptr< std::vector< size_t > > duplicatesBySeed (const edm::View< reco::Photon > &photons) const
 
template<typename PhotonCollection >
std::unique_ptr< std::vector< size_t > > duplicatesBySuperCluster (const PhotonCollection &photons) const
 
std::unique_ptr< std::vector< size_t > > duplicatesBySuperCluster (const edm::View< reco::Photon > &photons) const
 
std::unique_ptr< std::vector< size_t > > duplicatesBySuperCluster (const reco::PhotonCollection &photons) const
 
template<typename PhotonCollection , typename ElectronCollection >
std::unique_ptr< pat::OverlapListelectronsBySeed (const PhotonCollection &photons, const ElectronCollection &electrons) const
 Indices of photons which happen to be also electrons (that is, they share the same SC seed) More...
 
std::unique_ptr< pat::OverlapListelectronsBySeed (const reco::PhotonCollection &photons, const reco::GsfElectronCollection &electrons) const
 
std::unique_ptr< pat::OverlapListelectronsBySeed (const edm::View< reco::Photon > &photons, const reco::GsfElectronCollection &electrons) const
 
std::unique_ptr< pat::OverlapListelectronsBySeed (const reco::PhotonCollection &photons, const edm::View< reco::GsfElectron > &electrons) const
 
std::unique_ptr< pat::OverlapListelectronsBySeed (const edm::View< reco::Photon > &photons, const edm::View< reco::GsfElectron > &electrons) const
 
template<typename PhotonCollection , typename ElectronCollection >
std::unique_ptr< pat::OverlapListelectronsBySuperCluster (const PhotonCollection &photons, const ElectronCollection &electrons) const
 Indices of photons which happen to be also electrons (that is, they share the same SC) More...
 
std::unique_ptr< pat::OverlapListelectronsBySuperCluster (const edm::View< reco::Photon > &photons, const reco::GsfElectronCollection &electrons) const
 
std::unique_ptr< pat::OverlapListelectronsBySuperCluster (const reco::PhotonCollection &photons, const reco::GsfElectronCollection &electrons) const
 
std::unique_ptr< pat::OverlapListelectronsBySuperCluster (const edm::View< reco::Photon > &photons, const edm::View< reco::GsfElectron > &electrons) const
 
std::unique_ptr< pat::OverlapListelectronsBySuperCluster (const reco::PhotonCollection &photons, const edm::View< reco::GsfElectron > &electrons) const
 

Detailed Description

Definition at line 18 of file DuplicatedPhotonRemover.h.

Member Function Documentation

template<typename PhotonCollection >
std::unique_ptr< std::vector< size_t > > pat::DuplicatedPhotonRemover::duplicatesBySeed ( const PhotonCollection photons) const

Indices of duplicated photons (same supercluster) to remove. It keeps the photons with highest energy. PhotonCollection can be anything that has a "begin()" and "end()", and that hold things which have a "superCluster()" method notable examples are std::vector<Photon> and edm::View<Photon> (but GsfElectrons work too)

Definition at line 91 of file DuplicatedPhotonRemover.h.

References pat::GenericDuplicateRemover< Comparator, Arbitrator >::duplicates().

Referenced by pat::DuplicatedPhotonRemover::EqualBySuperCluster::operator()().

92  {
93  typedef typename PhotonCollection::value_type PhotonType;
95  return dups.duplicates(photons);
96 }
std::unique_ptr< std::vector< size_t > > duplicates(const Collection &items) const
std::unique_ptr< std::vector< size_t > > pat::DuplicatedPhotonRemover::duplicatesBySeed ( const reco::PhotonCollection photons) const

Definition at line 5 of file DuplicatedPhotonRemover.cc.

References BPHMonitor_cfi::photons.

6  {
7  return duplicatesBySeed<reco::PhotonCollection>(photons);
8 }
std::unique_ptr< std::vector< size_t > > pat::DuplicatedPhotonRemover::duplicatesBySeed ( const edm::View< reco::Photon > &  photons) const

Definition at line 10 of file DuplicatedPhotonRemover.cc.

References BPHMonitor_cfi::photons.

11  {
12  return duplicatesBySeed<edm::View<reco::Photon> >(photons);
13 }
template<typename PhotonCollection >
std::unique_ptr< std::vector< size_t > > pat::DuplicatedPhotonRemover::duplicatesBySuperCluster ( const PhotonCollection photons) const

Indices of duplicated photons (same supercluster) to remove. It keeps the photons with highest energy. PhotonCollection can be anything that has a "begin()" and "end()", and that hold things which have a "superCluster()" method notable examples are std::vector<Photon> and edm::View<Photon> (but GsfElectrons work too)

Definition at line 83 of file DuplicatedPhotonRemover.h.

References pat::GenericDuplicateRemover< Comparator, Arbitrator >::duplicates().

Referenced by pat::DuplicatedPhotonRemover::EqualBySuperCluster::operator()().

84  {
85  typedef typename PhotonCollection::value_type PhotonType;
87  return dups.duplicates(photons);
88 }
std::unique_ptr< std::vector< size_t > > duplicates(const Collection &items) const
std::unique_ptr< std::vector< size_t > > pat::DuplicatedPhotonRemover::duplicatesBySuperCluster ( const edm::View< reco::Photon > &  photons) const

Definition at line 20 of file DuplicatedPhotonRemover.cc.

References BPHMonitor_cfi::photons.

21  {
22  return duplicatesBySuperCluster<edm::View<reco::Photon> >(photons);
23 }
std::unique_ptr< std::vector< size_t > > pat::DuplicatedPhotonRemover::duplicatesBySuperCluster ( const reco::PhotonCollection photons) const

Definition at line 15 of file DuplicatedPhotonRemover.cc.

References BPHMonitor_cfi::photons.

16  {
17  return duplicatesBySuperCluster<reco::PhotonCollection>(photons);
18 }
template<typename PhotonCollection , typename ElectronCollection >
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySeed ( const PhotonCollection photons,
const ElectronCollection electrons 
) const

Indices of photons which happen to be also electrons (that is, they share the same SC seed)

Indices of photons which happen to be also electrons (that is, they share the same SC)

Definition at line 108 of file DuplicatedPhotonRemover.h.

References pat::GenericOverlapFinder< Distance >::find().

Referenced by pat::DuplicatedPhotonRemover::EqualBySuperCluster::operator()().

109  {
111  return ovl.find(photons, electrons);
112 }
std::unique_ptr< OverlapList > find(const Collection &items, const OtherCollection &other) const
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySeed ( const reco::PhotonCollection photons,
const reco::GsfElectronCollection electrons 
) const

Definition at line 27 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

28  {
29  return electronsBySeed<reco::PhotonCollection, reco::GsfElectronCollection>(photons, electrons);
30 }
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySeed ( const edm::View< reco::Photon > &  photons,
const reco::GsfElectronCollection electrons 
) const

Definition at line 32 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

33  {
34  return electronsBySeed<edm::View<reco::Photon>, reco::GsfElectronCollection>(photons, electrons);
35 }
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySeed ( const reco::PhotonCollection photons,
const edm::View< reco::GsfElectron > &  electrons 
) const

Definition at line 48 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

49  {
50  return electronsBySeed<reco::PhotonCollection, edm::View<reco::GsfElectron> >(photons, electrons);
51 }
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySeed ( const edm::View< reco::Photon > &  photons,
const edm::View< reco::GsfElectron > &  electrons 
) const

Definition at line 53 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

54  {
55  return electronsBySeed<edm::View<reco::Photon>, edm::View<reco::GsfElectron> >(photons, electrons);
56 }
template<typename PhotonCollection , typename ElectronCollection >
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySuperCluster ( const PhotonCollection photons,
const ElectronCollection electrons 
) const

Indices of photons which happen to be also electrons (that is, they share the same SC)

Definition at line 100 of file DuplicatedPhotonRemover.h.

References pat::GenericOverlapFinder< Distance >::find().

Referenced by pat::DuplicatedPhotonRemover::EqualBySuperCluster::operator()().

101  {
103  return ovl.find(photons, electrons);
104 }
std::unique_ptr< OverlapList > find(const Collection &items, const OtherCollection &other) const
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySuperCluster ( const edm::View< reco::Photon > &  photons,
const reco::GsfElectronCollection electrons 
) const

Definition at line 37 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

38  {
39  return electronsBySuperCluster<edm::View<reco::Photon>, reco::GsfElectronCollection>(photons, electrons);
40 }
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySuperCluster ( const reco::PhotonCollection photons,
const reco::GsfElectronCollection electrons 
) const

Definition at line 42 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

43  {
44  return electronsBySuperCluster<reco::PhotonCollection, reco::GsfElectronCollection>(photons, electrons);
45 }
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySuperCluster ( const edm::View< reco::Photon > &  photons,
const edm::View< reco::GsfElectron > &  electrons 
) const

Definition at line 58 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

59  {
60  return electronsBySuperCluster<edm::View<reco::Photon>, edm::View<reco::GsfElectron> >(photons, electrons);
61 }
std::unique_ptr< pat::OverlapList > pat::DuplicatedPhotonRemover::electronsBySuperCluster ( const reco::PhotonCollection photons,
const edm::View< reco::GsfElectron > &  electrons 
) const

Definition at line 63 of file DuplicatedPhotonRemover.cc.

References pwdgSkimBPark_cfi::electrons, and BPHMonitor_cfi::photons.

64  {
65  return electronsBySuperCluster<reco::PhotonCollection, edm::View<reco::GsfElectron> >(photons, electrons);
66 }