Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef DTMonitorClient_DTDAQInfo_H
0002 #define DTMonitorClient_DTDAQInfo_H
0003 
0004 /** \class DTDAQInfo
0005  *  No description available.
0006  *
0007  *  \author G. Cerminara - INFN Torino
0008  *
0009  *  threadsafe version (//-) oct/nov 2014 - WATWanAbdullah ncpp-um-my
0010  *
0011  */
0012 
0013 #include "FWCore/Framework/interface/Frameworkfwd.h"
0014 #include "FWCore/Framework/interface/ESHandle.h"
0015 #include "DQMServices/Core/interface/DQMStore.h"
0016 
0017 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0018 
0019 #include "CondFormats/DataRecord/interface/DTReadOutMappingRcd.h"
0020 #include "CondFormats/DataRecord/interface/RunSummaryRcd.h"
0021 
0022 #include <map>
0023 
0024 class DTReadOutMapping;
0025 class RunInfo;
0026 
0027 class DTDAQInfo : public DQMEDHarvester {
0028 public:
0029   /// Constructor
0030   DTDAQInfo(const edm::ParameterSet &pset);
0031 
0032   /// Destructor
0033   ~DTDAQInfo() override;
0034 
0035   // Operations
0036 
0037 protected:
0038   void dqmEndLuminosityBlock(DQMStore::IBooker &,
0039                              DQMStore::IGetter &,
0040                              edm::LuminosityBlock const &,
0041                              edm::EventSetup const &) override;
0042   void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override;
0043 
0044 private:
0045   bool bookingdone;
0046 
0047   // Check FEDs from uROS, otherwise standard ROS
0048   bool checkUros;
0049 
0050   MonitorElement *totalDAQFraction;
0051   MonitorElement *daqMap;
0052   std::map<int, MonitorElement *> daqFractions;
0053   edm::ESGetToken<DTReadOutMapping, DTReadOutMappingRcd> mappingToken_;
0054   const DTReadOutMapping *mapping;
0055 
0056   edm::ESGetToken<RunInfo, RunInfoRcd> runInfoToken_;
0057   const RunInfo *sumFED;
0058 };
0059 
0060 #endif