24 std::vector<std::string> decayModeCutNames =
26 for(
auto const& dmName : decayModeCutNames) {
30 unsigned int nPiZero = dmPSet.
getParameter<
unsigned int>(
"pizeros");
35 std::make_pair(minCut, maxCut);
43 typedef std::pair<unsigned int, unsigned int>
IntPair;
53 double mass = tau->mass();
54 unsigned int charged = tau->signalChargedHadrCands().size();
55 unsigned int pizeros = tau->signalPiZeroCandidates().size();
57 std::make_pair(charged, pizeros));
62 return (mass > specificCut->second.first &&
63 mass < specificCut->
second.second);
77 psd1.
add<
double>(
"cut");
85 psd0.
add<
double>(
"max");
86 psd0.
add<
double>(
"min");
90 descriptions.
add(
"pfRecoTauDiscriminationByInvMass", desc);
T getParameter(std::string const &) const
std::pair< double, double > DoublePair
std::map< IntPair, DoublePair > DecayModeCutMap
ParameterDescriptionBase * addOptional(U const &iLabel, T const &value)
std::vector< std::string > getParameterNamesForType(bool trackiness=true) const
U second(std::pair< T, U > const &p)
#define DEFINE_FWK_MODULE(type)
std::pair< unsigned int, unsigned int > IntPair
PFRecoTauDiscriminationByInvMass(const edm::ParameterSet &pset)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
~PFRecoTauDiscriminationByInvMass() override
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
DecayModeCutMap decayModeCuts_
double discriminate(const reco::PFTauRef &) const override