6 template<
class Extractor>
26 class TrackExtractor {
30 return tau->isolationPFChargedHadrCands();
38 return tau->isolationPFGammaCands();
42 class MaskedECALExtractor {
47 std::vector<reco::PFCandidatePtr>
output;
50 output.reserve(result.
gammas.size());
52 output.push_back(
gamma);
64 return tau->isolationPFNeutrHadrCands();
68 class MaskedHCALExtractor {
73 std::vector<reco::PFCandidatePtr>
output;
76 output.reserve(result.
h0s.size());
77 for(
auto const& h0 : result.
h0s) {
90 "RecoTauDiscriminationBinnedTrackIsolation");
93 "RecoTauDiscriminationBinnedECALIsolation");
96 "RecoTauDiscriminationBinnedMaskedECALIsolation");
99 "RecoTauDiscriminationBinnedHCALIsolation");
102 "RecoTauDiscriminationBinnedMaskedHCALIsolation");
std::list< reco::PFCandidatePtr > h0s
T getParameter(std::string const &) const
RecoTauDiscriminationBinnedIsolationImpl(const edm::ParameterSet &pset)
std::vector< double > operator()(const reco::PFTauRef &tau) const override
std::list< reco::PFCandidatePtr > gammas
std::vector< reco::PFCandidatePtr > extractIsoObjects(const reco::PFTauRef &tau) const override
#define DEFINE_EDM_PLUGIN(factory, type, name)