![]() |
![]() |
#include <PhysicsTools/PatUtils/interface/bJetSelector.h>
Public Member Functions | |
bJetSelector (const edm::ParameterSet &cfg) | |
bool | IsbTag (const pat::Jet &JetCand) const |
bool | IsbTag (const pat::Jet &JetCand, const std::string &operpoint) const |
bool | IsbTag (const pat::Jet &JetCand, const std::string &operpoint, const std::string &tagger) const |
Private Attributes | |
std::vector< std::string > | BTagdiscriminator_ |
std::string | DefaultOp_ |
std::string | DefaultTg_ |
std::map< std::string, std::map< std::string, double > > | discCut |
std::vector< double > | discriminantCutsLoose_ |
std::vector< double > | discriminantCutsMedium_ |
std::vector< double > | discriminantCutsTight_ |
Definition at line 19 of file bJetSelector.h.
bJetSelector::bJetSelector | ( | const edm::ParameterSet & | cfg | ) |
Definition at line 8 of file bJetSelector.cc.
References BTagdiscriminator_, discCut, discriminantCutsLoose_, discriminantCutsMedium_, discriminantCutsTight_, and i.
00008 : 00009 discriminantCutsLoose_(cfg.getParameter<std::vector<double> >("discCutLoose")), 00010 discriminantCutsMedium_(cfg.getParameter<std::vector<double> >("discCutMedium")), 00011 discriminantCutsTight_(cfg.getParameter<std::vector<double> >("discCutTight")), 00012 BTagdiscriminator_(cfg.getParameter<std::vector<std::string> >("bdiscriminators")), 00013 DefaultOp_(cfg.getParameter<std::string>("DefaultOp")), 00014 DefaultTg_(cfg.getParameter<std::string>("DefaultBdisc")) 00015 00016 { 00017 00018 for (unsigned int i=0; i<BTagdiscriminator_.size(); i++){ 00019 discCut["Loose"][BTagdiscriminator_[i]] = discriminantCutsLoose_[i]; 00020 discCut["Medium"][BTagdiscriminator_[i]] = discriminantCutsMedium_[i]; 00021 discCut["Tight"][BTagdiscriminator_[i]] = discriminantCutsTight_[i]; 00022 } 00023 }
Definition at line 45 of file bJetSelector.cc.
References DefaultOp_, DefaultTg_, and IsbTag().
00045 { 00046 return IsbTag(JetCand,DefaultOp_,DefaultTg_); 00047 }
Definition at line 38 of file bJetSelector.cc.
References DefaultTg_, and IsbTag().
00039 { 00040 00041 00042 return IsbTag(JetCand,operpoint,DefaultTg_); 00043 }
bool bJetSelector::IsbTag | ( | const pat::Jet & | JetCand, | |
const std::string & | operpoint, | |||
const std::string & | tagger | |||
) | const |
Definition at line 26 of file bJetSelector.cc.
References pat::Jet::bDiscriminator(), discCut, and lat::endl().
Referenced by IsbTag(), and bJetFilterSelector::operator()().
00028 { 00029 00030 std::map<std::string,std::map<std::string,double> >::const_iterator ioperpoint = discCut.find(operpoint); 00031 if ( ioperpoint == discCut.end() ) throw cms::Exception("UnknownOperatingPoint") << "Unknown or undefined operative point" << std::endl; 00032 std::map<std::string,double>::const_iterator itagger = ioperpoint->second.find(tagger); 00033 if ( itagger == ioperpoint->second.end() ) throw cms::Exception("UnknownTagger") << "Unknown or undefined tagger" << std::endl; 00034 00035 return JetCand.bDiscriminator(tagger) > itagger->second; 00036 }
std::vector<std::string> bJetSelector::BTagdiscriminator_ [private] |
std::string bJetSelector::DefaultOp_ [private] |
std::string bJetSelector::DefaultTg_ [private] |
std::map<std::string,std::map<std::string,double> > bJetSelector::discCut [private] |
std::vector<double> bJetSelector::discriminantCutsLoose_ [private] |
std::vector<double> bJetSelector::discriminantCutsMedium_ [private] |
std::vector<double> bJetSelector::discriminantCutsTight_ [private] |