CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
StorageManager.h
Go to the documentation of this file.
1 // $Id: StorageManager.h,v 1.62 2013/01/07 11:30:00 eulisse Exp $
3 
4 #ifndef EventFilter_StorageManager_StorageManager_h
5 #define EventFilter_StorageManager_StorageManager_h
6 
7 #include <string>
8 
9 #include "boost/scoped_ptr.hpp"
10 
14 
15 #include "xdaq/Application.h"
16 #include "xgi/exception/Exception.h"
17 #include "xoap/MessageReference.h"
18 #include "i2o/Method.h"
19 
20 
21 namespace toolbox {
22  namespace mem {
23  class Reference;
24  }
25 }
26 
27 namespace xgi {
28  class Input;
29  class Output;
30 }
31 
32 namespace stor {
33 
34  class DiskWriter;
35  class DQMEventProcessor;
36  class FragmentProcessor;
37 
38 
47  class StorageManager: public xdaq::Application
48  {
49 
50  public:
51 
52  StorageManager( xdaq::ApplicationStub* s );
53 
54 
55  private:
56 
57  StorageManager(StorageManager const&); // not implemented
58  StorageManager& operator=(StorageManager const&); // not implemented
59 
63  void bindI2OCallbacks();
64 
68  void receiveRegistryMessage(toolbox::mem::Reference *ref) throw (i2o::exception::Exception);
69 
73  void receiveDataMessage(toolbox::mem::Reference *ref) throw (i2o::exception::Exception);
74 
78  void receiveErrorDataMessage(toolbox::mem::Reference *ref) throw (i2o::exception::Exception);
79 
83  void receiveDQMMessage(toolbox::mem::Reference *ref) throw (i2o::exception::Exception);
84 
88  void receiveEndOfLumiSectionMessage(toolbox::mem::Reference *ref) throw (i2o::exception::Exception);
89 
94 
99  xoap::MessageReference handleFSMSoapMessage( xoap::MessageReference )
101 
102 
107 
111  void css(xgi::Input *in, xgi::Output *out)
113 
117  void defaultWebPage(xgi::Input *in, xgi::Output *out)
119 
123  void inputWebPage(xgi::Input *in, xgi::Output *out)
125 
131 
138 
143  void rbsenderWebPage(xgi::Input *in, xgi::Output *out)
145 
152 
157  throw( xgi::exception::Exception );
158 
165 
172 
179 
183  void bindConsumerCallbacks();
184 
189  throw( xgi::exception::Exception );
190 
195  throw( xgi::exception::Exception );
196 
201  throw( xgi::exception::Exception );
202 
207  throw( xgi::exception::Exception );
208 
213  throw( xgi::exception::Exception );
214 
219 
223  void startWorkerThreads();
224 
226 
227  boost::scoped_ptr<FragmentProcessor> fragmentProcessor_;
228  boost::scoped_ptr<DiskWriter> diskWriter_;
229  boost::scoped_ptr<DQMEventProcessor> dqmEventProcessor_;
230 
232  boost::scoped_ptr<ConsumerUtils_t> consumerUtils_;
233  boost::scoped_ptr<SMWebPageHelper> smWebPageHelper_;
234 
235  };
236 
237 } // namespace stor
238 
239 #endif // EventFilter_StorageManager_StorageManager_h
240 
241 
StorageManager(xdaq::ApplicationStub *s)
void processConsumerRegistrationRequest(xgi::Input *in, xgi::Output *out)
#define Input(cl)
Definition: vmac.h:189
boost::scoped_ptr< DQMEventProcessor > dqmEventProcessor_
void receiveEndOfLumiSectionMessage(toolbox::mem::Reference *ref)
boost::scoped_ptr< DiskWriter > diskWriter_
void inputWebPage(xgi::Input *in, xgi::Output *out)
void receiveDataMessage(toolbox::mem::Reference *ref)
ConsumerUtils< Configuration, EventQueueCollection > ConsumerUtils_t
void consumerStatisticsPage(xgi::Input *in, xgi::Output *out)
boost::shared_ptr< SharedResources > SharedResourcesPtr
SharedResourcesPtr sharedResources_
boost::scoped_ptr< FragmentProcessor > fragmentProcessor_
void consumerListWebPage(xgi::Input *in, xgi::Output *out)
void processConsumerHeaderRequest(xgi::Input *in, xgi::Output *out)
void fileStatisticsWebPage(xgi::Input *in, xgi::Output *out)
void rbsenderDetailWebPage(xgi::Input *in, xgi::Output *out)
void storedDataWebPage(xgi::Input *in, xgi::Output *out)
uint16_t mem[nChs][nEvts]
StorageManager & operator=(StorageManager const &)
void css(xgi::Input *in, xgi::Output *out)
void dqmEventStatisticsWebPage(xgi::Input *in, xgi::Output *out)
tuple out
Definition: dbtoconf.py:99
void processDQMConsumerEventRequest(xgi::Input *in, xgi::Output *out)
void receiveErrorDataMessage(toolbox::mem::Reference *ref)
#define Output(cl)
Definition: vmac.h:193
void rbsenderWebPage(xgi::Input *in, xgi::Output *out)
void processDQMConsumerRegistrationRequest(xgi::Input *in, xgi::Output *out)
void receiveRegistryMessage(toolbox::mem::Reference *ref)
void defaultWebPage(xgi::Input *in, xgi::Output *out)
void processConsumerEventRequest(xgi::Input *in, xgi::Output *out)
void throughputWebPage(xgi::Input *in, xgi::Output *out)
xoap::MessageReference handleFSMSoapMessage(xoap::MessageReference)
boost::scoped_ptr< ConsumerUtils_t > consumerUtils_
boost::scoped_ptr< SMWebPageHelper > smWebPageHelper_
void receiveDQMMessage(toolbox::mem::Reference *ref)