CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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(), and upgradeWorkflowComponents::dups.

std::unique_ptr<std::vector<size_t> > pat::DuplicatedPhotonRemover::duplicatesBySeed ( const reco::PhotonCollection photons) const
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 interactiveExample::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(), and upgradeWorkflowComponents::dups.

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 interactiveExample::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
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().

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 HI_PhotonSkim_cff::electrons, and interactiveExample::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 HI_PhotonSkim_cff::electrons, and interactiveExample::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 HI_PhotonSkim_cff::electrons, and interactiveExample::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 HI_PhotonSkim_cff::electrons, and interactiveExample::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().

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 HI_PhotonSkim_cff::electrons, and interactiveExample::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 HI_PhotonSkim_cff::electrons, and interactiveExample::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 HI_PhotonSkim_cff::electrons, and interactiveExample::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 HI_PhotonSkim_cff::electrons, and interactiveExample::photons.

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