CMS 3D CMS Logo

DQModule.h
Go to the documentation of this file.
1 #ifndef DQModule_h
2 #define DQModule_h
3 
4 /*
5  * file: DQModule.h
6  * Author: Viktor Khristenko
7  * date: 13.10.2015
8  */
9 
12 
13 #include <iostream>
14 #include <string>
15 #include <vector>
16 
17 namespace hcaldqm {
18  // Module Types:
19  // 1) Tasks - process every event
20  // 2) Clients - get loaded into the Harvester and processed sequentially
21  // used only for Online/Offline World Harvesting. Prefer standalone
22  // Harvesters
23  // 3) Harvester - Client Manager - per lumi processing
24  enum ModuleType { fTask = 0, fHarvester = 1, fClient = 2, nModuleType = 3 };
25 
26  enum ProcessingType { fOnline = 0, fOffline = 1, fLocal = 2, nProcessingType = 3 };
27 
28  std::string const pTypeNames[nProcessingType] = {"Online", "Offline", "Local"};
29 
30  class DQModule {
31  public:
32  DQModule(edm::ParameterSet const &);
33  virtual ~DQModule() noexcept(false) {}
34 
35  protected:
36  // Member variables
37  // @name - module's name
38  // @ptype - Processing Type
39  // @mtype - Module Type
40  // @ctype - Calibration Type of the Module. All we want is 0 or 1
44  int _debug;
45 
49 
50  int _evsTotal;
51  int _evsPerLS;
53  int _maxLS;
55  };
56 } // namespace hcaldqm
57 
58 #endif
Definition: Logger.h:6
ProcessingType
Definition: DQModule.h:26
ModuleType _mtype
Definition: DQModule.h:42
ProcessingType _ptype
Definition: DQModule.h:43
virtual ~DQModule()(false)
Definition: DQModule.h:33
ModuleType
Definition: DQModule.h:24
Logger _logger
Definition: DQModule.h:54
std::string _name
Definition: DQModule.h:41
#define noexcept
std::string _subsystem
Definition: DQModule.h:48
std::string _runkeyName
Definition: DQModule.h:47
std::string const pTypeNames[nProcessingType]
Definition: DQModule.h:28
DQModule(edm::ParameterSet const &)
Definition: DQModule.cc:5