00001 #include "PhysicsTools/PatUtils/interface/DuplicatedPhotonRemover.h"
00002
00003 #include <algorithm>
00004
00005 std::auto_ptr< std::vector<size_t> >
00006 pat::DuplicatedPhotonRemover::duplicatesBySeed(const reco::PhotonCollection &photons) const {
00007 return duplicatesBySeed<reco::PhotonCollection>(photons);
00008 }
00009
00010 std::auto_ptr< std::vector<size_t> >
00011 pat::DuplicatedPhotonRemover::duplicatesBySeed(const edm::View<reco::Photon> &photons) const {
00012 return duplicatesBySeed< edm::View<reco::Photon> >(photons);
00013 }
00014
00015 std::auto_ptr< std::vector<size_t> >
00016 pat::DuplicatedPhotonRemover::duplicatesBySuperCluster(const reco::PhotonCollection &photons) const {
00017 return duplicatesBySuperCluster<reco::PhotonCollection>(photons);
00018 }
00019
00020 std::auto_ptr< std::vector<size_t> >
00021 pat::DuplicatedPhotonRemover::duplicatesBySuperCluster(const edm::View<reco::Photon> &photons) const {
00022 return duplicatesBySuperCluster< edm::View<reco::Photon> >(photons);
00023 }
00024
00025
00026
00027 std::auto_ptr< pat::OverlapList >
00028 pat::DuplicatedPhotonRemover::electronsBySeed(const reco::PhotonCollection &photons,
00029 const reco::GsfElectronCollection electrons) const {
00030 return electronsBySeed<reco::PhotonCollection, reco::GsfElectronCollection>(photons, electrons);
00031 }
00032
00033 std::auto_ptr< pat::OverlapList >
00034 pat::DuplicatedPhotonRemover::electronsBySeed(const edm::View<reco::Photon> &photons,
00035 const reco::GsfElectronCollection electrons) const {
00036 return electronsBySeed<edm::View<reco::Photon>, reco::GsfElectronCollection>(photons, electrons);
00037 }
00038
00039 std::auto_ptr< pat::OverlapList >
00040 pat::DuplicatedPhotonRemover::electronsBySuperCluster(const edm::View<reco::Photon> &photons,
00041 const reco::GsfElectronCollection electrons) const {
00042 return electronsBySuperCluster<edm::View<reco::Photon>, reco::GsfElectronCollection>(photons, electrons);
00043 }
00044
00045 std::auto_ptr< pat::OverlapList >
00046 pat::DuplicatedPhotonRemover::electronsBySuperCluster(const reco::PhotonCollection &photons,
00047 const reco::GsfElectronCollection electrons) const {
00048 return electronsBySuperCluster<reco::PhotonCollection, reco::GsfElectronCollection>(photons, electrons);
00049 }
00050
00051
00052 std::auto_ptr< pat::OverlapList >
00053 pat::DuplicatedPhotonRemover::electronsBySeed(const reco::PhotonCollection &photons,
00054 const edm::View<reco::GsfElectron> electrons) const {
00055 return electronsBySeed<reco::PhotonCollection, edm::View<reco::GsfElectron> >(photons, electrons);
00056 }
00057
00058 std::auto_ptr< pat::OverlapList >
00059 pat::DuplicatedPhotonRemover::electronsBySeed(const edm::View<reco::Photon> &photons,
00060 const edm::View<reco::GsfElectron> electrons) const {
00061 return electronsBySeed<edm::View<reco::Photon>, edm::View<reco::GsfElectron> >(photons, electrons);
00062 }
00063
00064 std::auto_ptr< pat::OverlapList >
00065 pat::DuplicatedPhotonRemover::electronsBySuperCluster(const edm::View<reco::Photon> &photons,
00066 const edm::View<reco::GsfElectron> electrons) const {
00067 return electronsBySuperCluster<edm::View<reco::Photon>, edm::View<reco::GsfElectron> >(photons, electrons);
00068 }
00069
00070 std::auto_ptr< pat::OverlapList >
00071 pat::DuplicatedPhotonRemover::electronsBySuperCluster(const reco::PhotonCollection &photons,
00072 const edm::View<reco::GsfElectron> electrons) const {
00073 return electronsBySuperCluster<reco::PhotonCollection, edm::View<reco::GsfElectron> >(photons, electrons);
00074 }
00075