Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef DQM_L1TMONITORCLIENT_L1TRPCTFClient_H
0002 #define DQM_L1TMONITORCLIENT_L1TRPCTFClient_H
0003 
0004 #include "FWCore/Framework/interface/Frameworkfwd.h"
0005 #include "FWCore/Framework/interface/Event.h"
0006 #include "FWCore/Framework/interface/MakerMacros.h"
0007 #include "DQMServices/Core/interface/DQMStore.h"
0008 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0009 
0010 #include <memory>
0011 #include <iostream>
0012 #include <fstream>
0013 #include <string>
0014 #include <vector>
0015 #include <map>
0016 #include <TH1F.h>
0017 #include <TH2F.h>
0018 #include <TProfile2D.h>
0019 
0020 class L1TRPCTFClient : public DQMEDHarvester {
0021 public:
0022   /// Constructor
0023   L1TRPCTFClient(const edm::ParameterSet &ps);
0024 
0025   /// Destructor
0026   ~L1TRPCTFClient() override;
0027 
0028 protected:
0029   void dqmEndLuminosityBlock(DQMStore::IBooker &ibooker,
0030                              DQMStore::IGetter &,
0031                              edm::LuminosityBlock const &,
0032                              edm::EventSetup const &) override;       //performed in the endLumi
0033   void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override;  //performed in the endJob
0034 
0035 private:
0036   void initialize();
0037   void book(DQMStore::IBooker &ibooker);
0038   void processHistograms(DQMStore::IGetter &igetter);
0039 
0040   MonitorElement *m_phipackedbad;
0041   MonitorElement *m_phipackeddead;
0042   MonitorElement *m_deadChannels;
0043   MonitorElement *m_noisyChannels;
0044 
0045   edm::ParameterSet parameters_;
0046   std::string monitorName_;
0047   std::string input_dir_;
0048   std::string output_dir_;
0049   int counterLS_;    ///counter
0050   int counterEvt_;   ///counter
0051   int prescaleLS_;   ///units of lumi sections
0052   int prescaleEvt_;  ///prescale on number of events
0053 
0054   bool verbose_;
0055 
0056   bool m_runInEventLoop;
0057   bool m_runInEndLumi;
0058   bool m_runInEndRun;
0059   bool m_runInEndJob;
0060 };
0061 
0062 #endif