Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-01-31 02:19:53

0001 // * Author: Alberto Zucchetta
0002 // * Mail: a.zucchetta@cern.ch
0003 // * January 16, 2015
0004 
0005 #ifndef RecoBTag_SoftLepton_MuonTagger_h
0006 #define RecoBTag_SoftLepton_MuonTagger_h
0007 
0008 #include <memory>
0009 
0010 #include "CommonTools/MVAUtils/interface/TMVAEvaluator.h"
0011 #include "CondFormats/DataRecord/interface/GBRWrapperRcd.h"
0012 #include "FWCore/Framework/interface/ESConsumesCollector.h"
0013 #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h"
0014 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0015 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0016 #include "RecoBTag/SoftLepton/interface/LeptonSelector.h"
0017 #include "RecoBTau/JetTagComputer/interface/JetTagComputer.h"
0018 
0019 class MuonTagger : public JetTagComputer {
0020 public:
0021   struct Tokens {
0022     Tokens(const edm::ParameterSet& cfg, edm::ESConsumesCollector&& cc);
0023     edm::ESGetToken<GBRForest, GBRWrapperRcd> gbrForest_;
0024   };
0025 
0026   MuonTagger(const edm::ParameterSet&, Tokens);
0027   void initialize(const JetTagComputerRecord&) override;
0028   float discriminator(const TagInfoHelper& tagInfo) const override;
0029 
0030   static void fillPSetDescription(edm::ParameterSetDescription& desc);
0031 
0032 private:
0033   btag::LeptonSelector m_selector;
0034   const edm::FileInPath m_weightFile;
0035   const bool m_useGBRForest;
0036   const bool m_useAdaBoost;
0037   const Tokens m_tokens;
0038 
0039   std::unique_ptr<TMVAEvaluator> mvaID;
0040 };
0041 
0042 #endif