CMS 3D CMS Logo

bJetSelector Class Reference

#include <PhysicsTools/PatUtils/interface/bJetSelector.h>

List of all members.

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_


Detailed Description

Definition at line 19 of file bJetSelector.h.


Constructor & Destructor Documentation

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 }


Member Function Documentation

bool bJetSelector::IsbTag ( const pat::Jet JetCand  )  const

Definition at line 45 of file bJetSelector.cc.

References DefaultOp_, DefaultTg_, and IsbTag().

00045                                                { 
00046         return IsbTag(JetCand,DefaultOp_,DefaultTg_);
00047 }

bool bJetSelector::IsbTag ( const pat::Jet JetCand,
const std::string &  operpoint 
) const

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 }


Member Data Documentation

std::vector<std::string> bJetSelector::BTagdiscriminator_ [private]

Definition at line 35 of file bJetSelector.h.

Referenced by bJetSelector().

std::string bJetSelector::DefaultOp_ [private]

Definition at line 36 of file bJetSelector.h.

Referenced by IsbTag().

std::string bJetSelector::DefaultTg_ [private]

Definition at line 37 of file bJetSelector.h.

Referenced by IsbTag().

std::map<std::string,std::map<std::string,double> > bJetSelector::discCut [private]

Definition at line 31 of file bJetSelector.h.

Referenced by bJetSelector(), and IsbTag().

std::vector<double> bJetSelector::discriminantCutsLoose_ [private]

Definition at line 32 of file bJetSelector.h.

Referenced by bJetSelector().

std::vector<double> bJetSelector::discriminantCutsMedium_ [private]

Definition at line 33 of file bJetSelector.h.

Referenced by bJetSelector().

std::vector<double> bJetSelector::discriminantCutsTight_ [private]

Definition at line 34 of file bJetSelector.h.

Referenced by bJetSelector().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:15:02 2009 for CMSSW by  doxygen 1.5.4