File indexing completed on 2023-10-25 09:43:53
0001 #ifndef _TrackingActionExecutor_h_
0002 #define _TrackingActionExecutor_h_
0003
0004 #include "DQMServices/Core/interface/DQMStore.h"
0005 #include "FWCore/Framework/interface/ESHandle.h"
0006 #include "FWCore/Framework/interface/EventSetup.h"
0007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0008
0009 #include <iostream>
0010 #include <fstream>
0011 #include <sstream>
0012 #include <map>
0013 #include <vector>
0014 #include <string>
0015
0016 class SiStripSummaryCreator;
0017 class MonitorUserInterface;
0018 class SiStripTrackerMapCreator;
0019 class TrackingQualityChecker;
0020 class SiStripFedCabling;
0021 class SiStripDetCabling;
0022 class SiStripConfigWriter;
0023
0024 class TrackingActionExecutor {
0025 public:
0026 typedef dqm::harvesting::DQMStore DQMStore;
0027 typedef dqm::harvesting::MonitorElement MonitorElement;
0028
0029 TrackingActionExecutor(edm::ParameterSet const& ps);
0030 virtual ~TrackingActionExecutor();
0031
0032 void createGlobalStatus(DQMStore::IBooker& ibooker, DQMStore::IGetter& igetter);
0033 void createLSStatus(DQMStore::IBooker& ibooker, DQMStore::IGetter& igetter);
0034 void fillDummyGlobalStatus();
0035 void fillDummyLSStatus();
0036 void fillGlobalStatus(DQMStore::IBooker& ibooker, DQMStore::IGetter& igetter);
0037 void fillStatusAtLumi(DQMStore::IBooker& ibooker, DQMStore::IGetter& igetter);
0038
0039 void createDummyShiftReport();
0040 void createShiftReport(DQMStore::IBooker& ibooker, DQMStore::IGetter& igetter);
0041 void printReportSummary(MonitorElement* me, std::ostringstream& str_val, std::string name);
0042 void printShiftHistoParameters(DQMStore::IBooker& ibooker,
0043 DQMStore::IGetter& igetter,
0044 std::map<std::string, std::vector<std::string> >& layout_map,
0045 std::ostringstream& str_val);
0046
0047 private:
0048 std::vector<std::string> tkMapMENames;
0049
0050 TrackingQualityChecker* qualityChecker_;
0051
0052 SiStripConfigWriter* configWriter_;
0053
0054 edm::ParameterSet pSet_;
0055 };
0056 #endif