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.61 2011/11/17 17:35:40 mommsen 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 
19 
20 namespace toolbox {
21  namespace mem {
22  class Reference;
23  }
24 }
25 
26 namespace xgi {
27  class Input;
28  class Output;
29 }
30 
31 namespace stor {
32 
33  class DiskWriter;
34  class DQMEventProcessor;
35  class FragmentProcessor;
36 
37 
46  class StorageManager: public xdaq::Application
47  {
48 
49  public:
50 
51  StorageManager( xdaq::ApplicationStub* s );
52 
53 
54  private:
55 
56  StorageManager(StorageManager const&); // not implemented
57  StorageManager& operator=(StorageManager const&); // not implemented
58 
62  void bindI2OCallbacks();
63 
67  void receiveRegistryMessage(toolbox::mem::Reference *ref);
68 
72  void receiveDataMessage(toolbox::mem::Reference *ref);
73 
77  void receiveErrorDataMessage(toolbox::mem::Reference *ref);
78 
82  void receiveDQMMessage(toolbox::mem::Reference *ref);
83 
87  void receiveEndOfLumiSectionMessage(toolbox::mem::Reference *ref);
88 
93 
98  xoap::MessageReference handleFSMSoapMessage( xoap::MessageReference )
100 
101 
106 
110  void css(xgi::Input *in, xgi::Output *out)
112 
116  void defaultWebPage(xgi::Input *in, xgi::Output *out)
118 
122  void inputWebPage(xgi::Input *in, xgi::Output *out)
124 
130 
137 
142  void rbsenderWebPage(xgi::Input *in, xgi::Output *out)
144 
151 
156  throw( xgi::exception::Exception );
157 
164 
171 
178 
182  void bindConsumerCallbacks();
183 
188  throw( xgi::exception::Exception );
189 
194  throw( xgi::exception::Exception );
195 
200  throw( xgi::exception::Exception );
201 
206  throw( xgi::exception::Exception );
207 
212  throw( xgi::exception::Exception );
213 
218 
222  void startWorkerThreads();
223 
225 
226  boost::scoped_ptr<FragmentProcessor> fragmentProcessor_;
227  boost::scoped_ptr<DiskWriter> diskWriter_;
228  boost::scoped_ptr<DQMEventProcessor> dqmEventProcessor_;
229 
231  boost::scoped_ptr<ConsumerUtils_t> consumerUtils_;
232  boost::scoped_ptr<SMWebPageHelper> smWebPageHelper_;
233 
234  };
235 
236 } // namespace stor
237 
238 #endif // EventFilter_StorageManager_StorageManager_h
239 
240 
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)