File indexing completed on 2024-04-06 12:09:38
0001 #ifndef MuonRecoOneHLT_H
0002 #define MuonRecoOneHLT_H
0003
0004 #include <memory>
0005 #include <fstream>
0006 #include "FWCore/Framework/interface/Frameworkfwd.h"
0007 #include "FWCore/Framework/interface/Event.h"
0008 #include "FWCore/Framework/interface/MakerMacros.h"
0009 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0010 #include "FWCore/ServiceRegistry/interface/Service.h"
0011 #include "DQMServices/Core/interface/DQMStore.h"
0012 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0013
0014 #include "DataFormats/Common/interface/TriggerResults.h"
0015 #include "DataFormats/HLTReco/interface/TriggerEvent.h"
0016 #include "DataFormats/HLTReco/interface/TriggerObject.h"
0017 #include "DataFormats/HLTReco/interface/TriggerTypeDefs.h"
0018 #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h"
0019 #include "CommonTools/TriggerUtils/interface/GenericTriggerEventFlag.h"
0020
0021 #include "DataFormats/Common/interface/Handle.h"
0022 #include "DataFormats/MuonReco/interface/Muon.h"
0023 #include "DataFormats/MuonReco/interface/MuonFwd.h"
0024 #include "DataFormats/MuonReco/interface/MuonEnergy.h"
0025
0026 #include "FWCore/Common/interface/TriggerNames.h"
0027
0028 #include "DataFormats/TrackReco/interface/Track.h"
0029 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0030 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
0031
0032 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0033
0034 #include "DataFormats/VertexReco/interface/Vertex.h"
0035 #include "DataFormats/VertexReco/interface/VertexFwd.h"
0036 #include "DataFormats/MuonReco/interface/MuonSelectors.h"
0037 #include "DataFormats/Common/interface/TriggerResults.h"
0038 #include "DataFormats/HLTReco/interface/TriggerEvent.h"
0039 #include "DataFormats/HLTReco/interface/TriggerObject.h"
0040 #include "DataFormats/HLTReco/interface/TriggerTypeDefs.h"
0041 #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h"
0042
0043 class MuonRecoOneHLT : public DQMEDAnalyzer {
0044 public:
0045
0046 MuonRecoOneHLT(const edm::ParameterSet&);
0047
0048
0049 ~MuonRecoOneHLT() override;
0050
0051 void analyze(const edm::Event&, const edm::EventSetup&) override;
0052 void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
0053
0054 private:
0055
0056 edm::ParameterSet parameters;
0057
0058
0059 std::string metname;
0060
0061
0062 edm::EDGetTokenT<reco::MuonCollection> theMuonCollectionLabel_;
0063 edm::EDGetTokenT<reco::VertexCollection> theVertexLabel_;
0064 edm::EDGetTokenT<reco::BeamSpot> theBeamSpotLabel_;
0065 edm::EDGetTokenT<edm::TriggerResults> theTriggerResultsLabel_;
0066
0067 std::vector<std::string> singlemuonExpr_;
0068 std::vector<std::string> doublemuonExpr_;
0069 GenericTriggerEventFlag* _SingleMuonEventFlag;
0070 GenericTriggerEventFlag* _DoubleMuonEventFlag;
0071
0072
0073 int ptBin;
0074 float ptMin;
0075 float ptMax;
0076
0077 int etaBin;
0078 float etaMin;
0079 float etaMax;
0080
0081 int phiBin;
0082 float phiMin;
0083 float phiMax;
0084
0085 int chi2Bin;
0086 float chi2Min;
0087 float chi2Max;
0088
0089
0090 MonitorElement* muReco;
0091
0092
0093 std::vector<MonitorElement*> etaGlbTrack;
0094 std::vector<MonitorElement*> phiGlbTrack;
0095 std::vector<MonitorElement*> chi2OvDFGlbTrack;
0096 std::vector<MonitorElement*> ptGlbTrack;
0097
0098
0099 MonitorElement* etaTight;
0100 MonitorElement* phiTight;
0101 MonitorElement* chi2OvDFTight;
0102 MonitorElement* ptTight;
0103
0104
0105 MonitorElement* etaTrack;
0106 MonitorElement* phiTrack;
0107 MonitorElement* chi2OvDFTrack;
0108 MonitorElement* ptTrack;
0109
0110 MonitorElement* etaStaTrack;
0111 MonitorElement* phiStaTrack;
0112 MonitorElement* chi2OvDFStaTrack;
0113 MonitorElement* ptStaTrack;
0114 };
0115 #endif