Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:28:43

0001 #ifndef TauValidationMiniAOD_h
0002 #define TauValidationMiniAOD_h
0003 
0004 // -*- C++ -*-
0005 //
0006 // Package:    TauValidationMiniAOD
0007 // Class:      TauValidationMiniAOD
0008 //
0009 /* *\class TauValidationMiniAOD TauValidationMiniAOD.cc
0010 
0011  Description: EDAnalyzer to validate tau collection in miniAOD
0012  Implementation:
0013 
0014 */
0015 // Original Author: Aniello Spiezia On August 13, 2019
0016 // user include files
0017 
0018 #include "FWCore/Framework/interface/Event.h"
0019 #include "FWCore/Framework/interface/MakerMacros.h"
0020 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0021 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0022 #include "FWCore/ServiceRegistry/interface/Service.h"
0023 #include "CommonTools/TriggerUtils/interface/GenericTriggerEventFlag.h"
0024 #include "DataFormats/Math/interface/Vector3D.h"
0025 #include "DataFormats/Math/interface/LorentzVector.h"
0026 #include "DataFormats/TauReco/interface/PFTau.h"
0027 #include "DataFormats/PatCandidates/interface/Tau.h"
0028 #include "DataFormats/Math/interface/deltaR.h"
0029 
0030 // Include DQM core
0031 #include <DQMServices/Core/interface/DQMStore.h>
0032 #include <DQMServices/Core/interface/MonitorElement.h>
0033 #include <DQMServices/Core/interface/DQMEDAnalyzer.h>
0034 
0035 struct histoInfo {
0036   int nbins;
0037   double min;
0038   double max;
0039   histoInfo(int n, double m, double M) {
0040     nbins = n;
0041     min = m;
0042     max = M;
0043   }
0044   histoInfo(const edm::ParameterSet &config) {
0045     nbins = config.getParameter<int>("nbins");
0046     min = config.getParameter<double>("min");
0047     max = config.getParameter<double>("max");
0048   }
0049 };
0050 
0051 // class declaration
0052 class TauValidationMiniAOD : public DQMEDAnalyzer {
0053 public:
0054   explicit TauValidationMiniAOD(const edm::ParameterSet &);
0055   ~TauValidationMiniAOD() override;
0056 
0057   void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
0058   void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) override;
0059 
0060 private:
0061   edm::EDGetTokenT<std::vector<pat::Tau> > tauCollection_;
0062   edm::EDGetTokenT<edm::View<reco::Candidate> > refCollectionInputTagToken_;
0063   std::map<std::string, MonitorElement *> ptMap, etaMap, phiMap, massMap, decayModeFindingMap, decayModeMap,
0064       byDeepTau2017v2p1VSerawMap, byDeepTau2017v2p1VSjetrawMap, byDeepTau2017v2p1VSmurawMap, summaryMap;
0065   edm::ParameterSet histoSettings_;
0066   std::string extensionName_;
0067   std::vector<edm::ParameterSet> discriminators_;
0068 };
0069 
0070 #endif