13 m_sign(option(params.getParameter<std::string>(
"ipSign"))),
14 m_leptonId(
reco::SoftLeptonProperties::quality::btagLeptonCands),
17 if (params.
exists(
"leptonId") || params.
exists(
"qualityCut")) {
18 std::string leptonId = params.
getParameter<std::string>(
"leptonId");
19 m_leptonId = reco::SoftLeptonProperties::quality::byName<reco::SoftLeptonProperties::quality::Generic>(leptonId.c_str());
45 if (selection ==
"any")
47 else if (selection ==
"negative")
49 else if (selection ==
"positive")
T getParameter(std::string const &) const
bool exists(std::string const ¶meterName) const
checks if a parameter exists
float quality(quality::Generic qual, bool throwIfUndefined=true) const
sign
optionally select leptons based on their impact parameter sign
LeptonSelector(const edm::ParameterSet ¶ms)
reco::SoftLeptonProperties::quality::Generic m_leptonId
static sign option(const std::string &election)
bool operator()(const reco::SoftLeptonProperties &properties, bool use3d=true) const