Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:07:44

0001 #ifndef L1TdeCSCTF_h
0002 #define L1TdeCSCTF_h
0003 
0004 #include "FWCore/Framework/interface/Frameworkfwd.h"
0005 #include "FWCore/PluginManager/interface/ModuleDef.h"
0006 #include "FWCore/Framework/interface/MakerMacros.h"
0007 
0008 #include "FWCore/Framework/interface/Event.h"
0009 #include "DataFormats/Common/interface/Handle.h"
0010 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0011 #include "FWCore/Framework/interface/EventSetup.h"
0012 #include "FWCore/Framework/interface/ESHandle.h"
0013 #include "FWCore/Utilities/interface/InputTag.h"
0014 #include "CondFormats/L1TObjects/interface/L1MuTriggerScales.h"
0015 #include "L1Trigger/CSCTrackFinder/interface/CSCSectorReceiverLUT.h"
0016 #include "L1Trigger/CSCTrackFinder/interface/CSCTFPtLUT.h"
0017 
0018 //data formats
0019 #include "DataFormats/L1CSCTrackFinder/interface/L1CSCTrackCollection.h"
0020 #include "DataFormats/L1CSCTrackFinder/interface/CSCTriggerContainer.h"
0021 
0022 #include "DQMServices/Core/interface/DQMStore.h"
0023 #include "FWCore/ServiceRegistry/interface/Service.h"
0024 #include "L1Trigger/CSCTrackFinder/interface/CSCTFDTReceiver.h"
0025 
0026 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0027 
0028 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0029 
0030 #include <iostream>
0031 #include <fstream>
0032 #include <vector>
0033 #include <memory>
0034 #include <unistd.h>
0035 
0036 #include "TTree.h"
0037 #include "TFile.h"
0038 
0039 class L1TdeCSCTF : public DQMEDAnalyzer {
0040 private:
0041   edm::EDGetTokenT<L1CSCTrackCollection> dataTrackProducer;
0042   edm::EDGetTokenT<L1CSCTrackCollection> emulTrackProducer;
0043   edm::EDGetTokenT<CSCTriggerContainer<csctf::TrackStub> > dataStubProducer;
0044   edm::EDGetTokenT<L1MuDTChambPhContainer> emulStubProducer;
0045 
0046   edm::ParameterSet ptLUTset;
0047   std::unique_ptr<CSCTFDTReceiver> my_dtrc;
0048 
0049   // Define Monitor Element Histograms
0050   ////////////////////////////////////
0051   MonitorElement *phiComp, *etaComp, *occComp, *ptComp, *qualComp;
0052   MonitorElement *pt1Comp, *pt2Comp, *pt3Comp, *pt4Comp, *pt5Comp, *pt6Comp;
0053   MonitorElement *dtStubPhi, *badDtStubSector;
0054 
0055   MonitorElement *phiComp_1d, *etaComp_1d, *occComp_1d, *ptComp_1d, *qualComp_1d;
0056   MonitorElement *pt1Comp_1d, *pt2Comp_1d, *pt3Comp_1d, *pt4Comp_1d, *pt5Comp_1d, *pt6Comp_1d;
0057   MonitorElement* dtStubPhi_1d;
0058 
0059   // dqm folder name
0060   //////////////////
0061   std::string m_dirName;
0062   std::string outFile;
0063 
0064 protected:
0065   void analyze(edm::Event const& e, edm::EventSetup const& iSetup) override;
0066   void bookHistograms(DQMStore::IBooker& ibooker, edm::Run const&, edm::EventSetup const&) override;
0067 
0068 public:
0069   explicit L1TdeCSCTF(edm::ParameterSet const& pset);
0070   ~L1TdeCSCTF() override {}
0071 };
0072 
0073 #endif