CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DQMEventProcessor.h
Go to the documentation of this file.
1 // $Id: DQMEventProcessor.h,v 1.9 2012/04/20 10:48:18 mommsen Exp $
3 
4 #ifndef EventFilter_StorageManager_DQMEventProcessor_h
5 #define EventFilter_StorageManager_DQMEventProcessor_h
6 
7 #include "toolbox/lang/Class.h"
8 #include "toolbox/task/WaitingWorkLoop.h"
9 #include "xdaq/Application.h"
10 
11 #include <boost/shared_ptr.hpp>
12 
17 
18 
19 namespace stor {
20 
21  class QueueID;
22  class StatisticsReporter;
23 
24 
39  class DQMEventProcessor : public toolbox::lang::Class
40  {
41  public:
42 
43  DQMEventProcessor(xdaq::Application*, SharedResourcesPtr sr);
44 
46 
53  bool processDQMEvents(toolbox::task::WorkLoop*);
54 
58  void startWorkLoop(std::string workloopName);
59 
60 
61  private:
62 
63  //Prevent copying of the DQMEventProcessor
66 
71  void processNextDQMEvent();
72 
76  void endOfRun();
77 
78 
79  xdaq::Application* app_;
81 
82  boost::posix_time::time_duration timeout_;
86 
87  toolbox::task::WorkLoop* processWL_;
88 
90 
91  };
92 
93 } // namespace stor
94 
95 #endif // EventFilter_StorageManager_DQMEventProcessor_h
96 
97 
toolbox::task::WorkLoop * processWL_
boost::shared_ptr< SharedResources > SharedResourcesPtr
SharedResourcesPtr sharedResources_
bool processDQMEvents(toolbox::task::WorkLoop *)
DQMEventProcessor & operator=(DQMEventProcessor const &)
void startWorkLoop(std::string workloopName)
DQMEventStore< I2OChain, DataSenderMonitorCollection, AlarmHandler > dqmEventStore_
xdaq::Application * app_
unsigned int discardDQMUpdatesForOlderLS_
boost::posix_time::time_duration timeout_
DQMEventProcessor(xdaq::Application *, SharedResourcesPtr sr)