CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ConsumerUtils.h
Go to the documentation of this file.
1 // $Id: ConsumerUtils.h,v 1.10 2011/08/22 14:20:16 mommsen Exp $
3 
4 #ifndef EventFilter_StorageManager_ConsumerUtils_h
5 #define EventFilter_StorageManager_ConsumerUtils_h
6 
15 
17 
18 #include <boost/shared_ptr.hpp>
19 
20 namespace xgi
21 {
22  class Input;
23  class Output;
24 }
25 
26 namespace smproxy
27 {
28  class EventMsg;
29 }
30 
31 namespace stor
32 {
33  class ConsumerID;
34 
35 
44  template<typename Configuration_t, typename EventQueueCollection_t>
46  {
47 
48  public:
49 
51  (
52  boost::shared_ptr<Configuration_t>,
56  boost::shared_ptr<EventQueueCollection_t>,
59  );
60 
65 
70 
75 
80 
85 
86 
87  private:
88 
93 
98 
103 
108 
113 
118 
123  bool addRegistrationInfo(const RegPtr) const;
124 
129 
133  void writeNotReady(xgi::Output*) const;
134 
138  void writeEmptyBuffer(xgi::Output*) const;
139 
143  void writeDone(xgi::Output*) const;
144 
148  void writeErrorString(xgi::Output*, const std::string) const;
149 
153  void writeHTTPHeaders(xgi::Output*) const;
154 
159 
164 
168  void writeConsumerEvent(xgi::Output*, const stor::I2OChain&) const;
169  void writeConsumerEvent(xgi::Output*, const smproxy::EventMsg&) const;
170 
175 
176 
177  boost::shared_ptr<Configuration_t> configuration_;
181  boost::shared_ptr<EventQueueCollection_t> eventQueueCollection_;
184  };
185 
186 } // namespace stor
187 
188 #endif // EventFilter_StorageManager_ConsumerUtils_h
189 
190 
void processConsumerEventRequest(xgi::Input *, xgi::Output *) const
void processConsumerHeaderRequest(xgi::Input *, xgi::Output *) const
#define Input(cl)
Definition: vmac.h:189
boost::shared_ptr< RegistrationInfoBase > RegPtr
void processDQMConsumerRegistrationRequest(xgi::Input *, xgi::Output *) const
bool addRegistrationInfo(const RegPtr) const
ConsumerUtils(boost::shared_ptr< Configuration_t >, RegistrationCollectionPtr, RegistrationQueuePtr, InitMsgCollectionPtr, boost::shared_ptr< EventQueueCollection_t >, DQMEventQueueCollectionPtr, AlarmHandlerPtr)
DQMEventQueueCollectionPtr dqmEventQueueCollection_
EventConsRegPtr parseEventConsumerRegistration(xgi::Input *) const
void writeConsumerHeader(xgi::Output *, const InitMsgSharedPtr) const
InitMsgCollectionPtr initMsgCollection_
void writeHTTPHeaders(xgi::Output *) const
boost::shared_ptr< stor::EventConsumerRegistrationInfo > EventConsRegPtr
void writeDone(xgi::Output *) const
boost::shared_ptr< InitMsgBuffer > InitMsgSharedPtr
boost::shared_ptr< EventQueueCollection_t > eventQueueCollection_
void writeConsumerEvent(xgi::Output *, const stor::I2OChain &) const
boost::shared_ptr< RegistrationCollection > RegistrationCollectionPtr
DQMEventConsRegPtr parseDQMEventConsumerRegistration(xgi::Input *) const
boost::shared_ptr< DQMEventQueueCollection > DQMEventQueueCollectionPtr
boost::shared_ptr< InitMsgCollection > InitMsgCollectionPtr
void writeEmptyBuffer(xgi::Output *) const
void writeNotReady(xgi::Output *) const
ConsumerID getConsumerId(xgi::Input *) const
boost::shared_ptr< AlarmHandler > AlarmHandlerPtr
Definition: AlarmHandler.h:116
RegistrationQueuePtr registrationQueue_
boost::shared_ptr< Configuration_t > configuration_
void writeConsumerRegistration(xgi::Output *, const ConsumerID) const
void writeErrorString(xgi::Output *, const std::string) const
EventConsRegPtr createEventConsumerRegistrationInfo(xgi::Input *, xgi::Output *) const
RegistrationCollectionPtr registrationCollection_
#define Output(cl)
Definition: vmac.h:193
void processConsumerRegistrationRequest(xgi::Input *, xgi::Output *) const
AlarmHandlerPtr alarmHandler_
boost::shared_ptr< RegistrationQueue > RegistrationQueuePtr
bool createEventConsumerQueue(EventConsRegPtr) const
boost::shared_ptr< stor::DQMEventConsumerRegistrationInfo > DQMEventConsRegPtr
bool createDQMEventConsumerQueue(DQMEventConsRegPtr) const
DQMEventConsRegPtr createDQMEventConsumerRegistrationInfo(xgi::Input *, xgi::Output *) const
void processDQMConsumerEventRequest(xgi::Input *, xgi::Output *) const
void writeDQMConsumerEvent(xgi::Output *, const DQMEventMsgView &) const