CMS 3D CMS Logo

DTDataIntegrityTask.h
Go to the documentation of this file.
1 #ifndef DTDataIntegrityTask_H
2 #define DTDataIntegrityTask_H
3 
19 
22 
24 
25 #include <fstream>
26 #include <map>
27 #include <string>
28 #include <vector>
29 #include <list>
30 
31 class DTuROSROSData;
32 class DTuROSFEDData;
34 
35 class DTDataIntegrityTask : public DQMOneEDAnalyzer<edm::one::WatchLuminosityBlocks> {
36 public:
38 
39  ~DTDataIntegrityTask() override;
40 
41  void TimeHistos(DQMStore::IBooker&, std::string histoType);
42 
43  void processuROS(DTuROSROSData& data, int fed, int uRos);
44  void processFED(DTuROSFEDData& data, int fed);
45 
46  void beginLuminosityBlock(const edm::LuminosityBlock& ls, const edm::EventSetup& es) override;
47  void endLuminosityBlock(const edm::LuminosityBlock& ls, const edm::EventSetup& es) override;
48 
49  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
50 
51 protected:
52  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
53 
54 private:
55  void bookHistos(DQMStore::IBooker&, const int fedMin, const int fedMax);
56  void bookHistos(DQMStore::IBooker&, std::string folder, const int fed);
57  void bookHistosuROS(DQMStore::IBooker&, const int fed, const int uRos);
58  void bookHistosROS(DQMStore::IBooker&, const int wheel, const int ros);
59 
60  std::string topFolder(bool isFEDIntegrity) const;
61 
62  //conversions
63  int theDDU(int crate, int slot, int link, bool tenDDU);
64  int theROS(int slot, int link);
65 
66  //If you want info VS time histos
68 
69  int nevents;
70 
71  // Monitor Elements
73  // <histoType, <index , histo> >
74  std::map<std::string, std::map<int, MonitorElement*> > fedHistos;
75  // <histoType, histo> >
76  std::map<std::string, std::map<int, MonitorElement*> > summaryHistos;
77  // <key , histo> >
78  std::map<unsigned int, MonitorElement*> urosHistos;
79 
80  //enum histoTypes for reduced map of MEs urosHistos
81  // key = stringEnum*1000 + (fed-minFED)#*100 + (uROS-minuROS)#
82  enum histoTypes { uROSEventLength = 0, uROSError = 1, TDCError = 4, TTSValues = 7 };
83 
84  // standard ME for monitoring of FED integrity
86 
87  //time histos for FEDs/uROS
88  std::map<std::string, std::map<int, DTTimeEvolutionHisto*> > fedTimeHistos;
89  // <key, histo> >
90  std::map<unsigned int, DTTimeEvolutionHisto*> urosTimeHistos;
91  //key = (fed-minFED)#*100 + (uROS-minuROS)#
92 
93  int nEventsLS;
94 
97 
98  int FEDIDmin;
99  int FEDIDmax;
100 
101  // Number of uROS per FED
102  const int NuROS = 12;
103 
104  // flag to toggle the creation of only the summaries (for HLT running)
105  int mode;
107 
108  // The label to retrieve the digis
110 };
111 
112 #endif
113 
114 /* Local Variables: */
115 /* show-trailing-whitespace: t */
116 /* truncate-lines: t */
117 /* End: */
eostools.ls
def ls(path, rec=False)
Definition: eostools.py:349
DTDataIntegrityTask::neventsFED
int neventsFED
Definition: DTDataIntegrityTask.h:95
dqm::impl::MonitorElement
Definition: MonitorElement.h:98
DTDataIntegrityTask::nevents
int nevents
Definition: DTDataIntegrityTask.h:69
DTDataIntegrityTask::fedHistos
std::map< std::string, std::map< int, MonitorElement * > > fedHistos
Definition: DTDataIntegrityTask.h:74
MainPageGenerator.link
link
Definition: MainPageGenerator.py:271
DTDataIntegrityTask::neventsuROS
int neventsuROS
Definition: DTDataIntegrityTask.h:96
DTDataIntegrityTask::fedTimeHistos
std::map< std::string, std::map< int, DTTimeEvolutionHisto * > > fedTimeHistos
Definition: DTDataIntegrityTask.h:88
DTDataIntegrityTask::DTDataIntegrityTask
DTDataIntegrityTask(const edm::ParameterSet &ps)
Definition: DTDataIntegrityTask.cc:33
edm::LuminosityBlock
Definition: LuminosityBlock.h:50
edm::Run
Definition: Run.h:45
DTDataIntegrityTask::NuROS
const int NuROS
Definition: DTDataIntegrityTask.h:102
printsummarytable.folder
folder
Definition: printsummarytable.py:7
edm::EDGetTokenT< DTuROSFEDDataCollection >
LuminosityBlock.h
DTDataIntegrityTask::~DTDataIntegrityTask
~DTDataIntegrityTask() override
Definition: DTDataIntegrityTask.cc:64
DTDataIntegrityTask::endLuminosityBlock
void endLuminosityBlock(const edm::LuminosityBlock &ls, const edm::EventSetup &es) override
Definition: DTDataIntegrityTask.cc:786
DQMOneEDAnalyzer
Definition: DQMOneEDAnalyzer.h:20
DTuROSControlData.h
DQMStore.h
DTDataIntegrityTask::FEDIDmin
int FEDIDmin
Definition: DTDataIntegrityTask.h:98
DTDataIntegrityTask::urosTimeHistos
std::map< unsigned int, DTTimeEvolutionHisto * > urosTimeHistos
Definition: DTDataIntegrityTask.h:90
DTDataIntegrityTask::uROSEventLength
Definition: DTDataIntegrityTask.h:82
DTDataIntegrityTask::processFED
void processFED(DTuROSFEDData &data, int fed)
Definition: DTDataIntegrityTask.cc:698
DQMOneEDAnalyzer.h
DTDataIntegrityTask::theDDU
int theDDU(int crate, int slot, int link, bool tenDDU)
Definition: DTDataIntegrityTask.cc:845
DTDataIntegrityTask::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: DTDataIntegrityTask.cc:80
DTDataIntegrityTask::bookHistosROS
void bookHistosROS(DQMStore::IBooker &, const int wheel, const int ros)
Definition: DTDataIntegrityTask.cc:304
DTDataIntegrityTask::summaryHistos
std::map< std::string, std::map< int, MonitorElement * > > summaryHistos
Definition: DTDataIntegrityTask.h:76
DTDataIntegrityTask::FEDIDmax
int FEDIDmax
Definition: DTDataIntegrityTask.h:99
DTDataIntegrityTask::fedIntegrityFolder
std::string fedIntegrityFolder
Definition: DTDataIntegrityTask.h:106
DTDataIntegrityTask::histoTypes
histoTypes
Definition: DTDataIntegrityTask.h:82
DTDataIntegrityTask::topFolder
std::string topFolder(bool isFEDIntegrity) const
Definition: DTDataIntegrityTask.cc:773
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
DTDataIntegrityTask::nEventsLS
int nEventsLS
Definition: DTDataIntegrityTask.h:93
DTDataIntegrityTask
Definition: DTDataIntegrityTask.h:35
DTDataIntegrityTask::analyze
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: DTDataIntegrityTask.cc:806
makeMuonMisalignmentScenario.wheel
wheel
Definition: makeMuonMisalignmentScenario.py:319
DTuROSROSData
Definition: DTuROSControlData.h:22
DTuROSFEDData
Definition: DTuROSControlData.h:103
edm::EventSetup
Definition: EventSetup.h:57
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
DTDataIntegrityTask::bookHistosuROS
void bookHistosuROS(DQMStore::IBooker &, const int fed, const int uRos)
Definition: DTDataIntegrityTask.cc:389
DTDataIntegrityTask::bookHistos
void bookHistos(DQMStore::IBooker &, const int fedMin, const int fedMax)
Definition: DTDataIntegrityTask.cc:119
DTDataIntegrityTask::TDCError
Definition: DTDataIntegrityTask.h:82
DTDataIntegrityTask::fedToken
edm::EDGetTokenT< DTuROSFEDDataCollection > fedToken
Definition: DTDataIntegrityTask.h:109
DTDataIntegrityTask::beginLuminosityBlock
void beginLuminosityBlock(const edm::LuminosityBlock &ls, const edm::EventSetup &es) override
Definition: DTDataIntegrityTask.cc:782
Frameworkfwd.h
DTDataIntegrityTask::urosHistos
std::map< unsigned int, MonitorElement * > urosHistos
Definition: DTDataIntegrityTask.h:78
DTDataIntegrityTask::TimeHistos
void TimeHistos(DQMStore::IBooker &, std::string histoType)
DTTimeEvolutionHisto
Definition: DTTimeEvolutionHisto.h:15
DTDataIntegrityTask::processuROS
void processuROS(DTuROSROSData &data, int fed, int uRos)
Definition: DTDataIntegrityTask.cc:424
DTDataIntegrityTask::TTSValues
Definition: DTDataIntegrityTask.h:82
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
dqm::implementation::IBooker
Definition: DQMStore.h:43
DTDataIntegrityTask::mode
int mode
Definition: DTDataIntegrityTask.h:105
ParameterSet.h
edm::Event
Definition: Event.h:73
DTDataIntegrityTask::nEventMonitor
MonitorElement * nEventMonitor
Definition: DTDataIntegrityTask.h:72
DTDataIntegrityTask::theROS
int theROS(int slot, int link)
Definition: DTDataIntegrityTask.cc:876
DTDataIntegrityTask::uROSError
Definition: DTDataIntegrityTask.h:82
DTDataIntegrityTask::doTimeHisto
bool doTimeHisto
Definition: DTDataIntegrityTask.h:67
DTDataIntegrityTask::hFEDEntry
MonitorElement * hFEDEntry
Definition: DTDataIntegrityTask.h:85
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37