28 typedef std::pair<edm::InputTag, edm::Handle<reco::PFTauDiscriminator> >
DiscInfo;
49 pset.
getParameter<std::vector<edm::InputTag> >(
"discSrc");
50 for(
auto const&
tag : discriminators) {
68 bool foundGoodDiscriminator =
false;
75 foundGoodDiscriminator =
true;
81 if (!foundGoodDiscriminator) {
82 std::stringstream
error;
83 error <<
"Couldn't find a PFTauDiscriminator usable with given tau." 84 << std::endl <<
" Input tau has product id: " << tau.
id() << std::endl;
93 edm::LogError(
"BadDiscriminatorConfiguration") << error.str();
99 return std::vector<double>(1,
result);
107 "RecoTauDiscriminantFromDiscriminator");
void beginEvent() override
T getParameter(std::string const &) const
bool existsAs(std::string const ¶meterName, bool trackiness=true) const
checks if a parameter exists as a given type
std::vector< double > operator()(const reco::PFTauRef &tau) const override
ProductID id() const
Accessor for product ID.
U second(std::pair< T, U > const &p)
std::vector< DiscInfo > discriminators_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
const edm::Event * evt() const
RecoTauDiscriminantFromDiscriminator(const edm::ParameterSet &pset)
KeyRefProd const & keyProduct() const
std::pair< edm::InputTag, edm::Handle< reco::PFTauDiscriminator > > DiscInfo
#define DEFINE_EDM_PLUGIN(factory, type, name)