Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:24:00

0001 #ifndef PatBTagCommonHistos_H_
0002 #define PatBTagCommonHistos_H_
0003 
0004 // -*- C++ -*-
0005 //
0006 // Package:    PatBTag
0007 // Class:      PatBTagCommonHistos
0008 //
0009 /**\class PatBTagCommonHistos PatBTagCommonHistos.h
0010 
0011  Description: <Define and Fill common set of histograms depending on flavor and tagger>
0012 
0013  Implementation:
0014  
0015  Create a container of histograms. 
0016 */
0017 //
0018 // Original Author:  J. E. Ramirez
0019 //
0020 //
0021 
0022 // system include files
0023 #include <memory>
0024 
0025 // user include files
0026 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0027 #include "FWCore/Utilities/interface/InputTag.h"
0028 #include "DataFormats/PatCandidates/interface/Jet.h"
0029 #include "DataFormats/Common/interface/View.h"
0030 #include "PhysicsTools/PatUtils/interface/bJetSelector.h"
0031 
0032 #include "TH1D.h"
0033 #include "TH2D.h"
0034 #include <map>
0035 
0036 //
0037 // class declaration
0038 //
0039 
0040 class PatBTagCommonHistos {
0041 public:
0042   explicit PatBTagCommonHistos(const edm::ParameterSet&);
0043   ~PatBTagCommonHistos();
0044 
0045   void Set(std::string);
0046   void Sumw2();
0047   void Fill(edm::View<pat::Jet>::const_iterator&, std::string);
0048 
0049 private:
0050   // ----------member data ---------------------------
0051 
0052   std::string flavor;
0053   std::map<std::string, TH1D*>
0054       histocontainer_;  // simple map to contain all histograms. Histograms are booked in the beginJob() method
0055   std::map<std::string, TH2D*>
0056       h2_;  // simple map to contain 2D  histograms. Histograms are booked in the beginJob() method
0057   std::string BTagdiscriminator_;
0058   std::string BTagpurity_;
0059   double BTagdisccut_;
0060   bJetSelector BTagger;
0061 };
0062 
0063 #endif