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.8.4.1 2011/03/07 11:33:04 mommsen Exp $
3 
4 #ifndef EventFilter_StorageManager_ConsumerUtils_h
5 #define EventFilter_StorageManager_ConsumerUtils_h
6 
16 
18 
19 #include <boost/shared_ptr.hpp>
20 
21 namespace xgi
22 {
23  class Input;
24  class Output;
25 }
26 
27 namespace stor
28 {
29  class ConsumerID;
30 
31 
40  template<typename Configuration_t, typename EventQueueCollection_t>
42  {
43 
44  public:
45 
47  (
48  boost::shared_ptr<Configuration_t>,
52  boost::shared_ptr<EventQueueCollection_t>,
55  );
56 
61 
66 
71 
76 
81 
82 
83  private:
84 
89 
94 
99 
104 
109 
114 
119  bool addRegistrationInfo(const RegPtr) const;
120 
125 
129  void writeNotReady(xgi::Output*) const;
130 
134  void writeEmptyBuffer(xgi::Output*) const;
135 
139  void writeDone(xgi::Output*) const;
140 
144  void writeErrorString(xgi::Output*, const std::string) const;
145 
149  void writeHTTPHeaders(xgi::Output*) const;
150 
155 
160 
164  void writeConsumerEvent(xgi::Output*, const stor::I2OChain&) const;
165  void writeConsumerEvent(xgi::Output*, const smproxy::EventMsg&) const;
166 
171 
172 
173  boost::shared_ptr<Configuration_t> configuration_;
177  boost::shared_ptr<EventQueueCollection_t> eventQueueCollection_;
180  };
181 
182 } // namespace stor
183 
184 #endif // EventFilter_StorageManager_ConsumerUtils_h
185 
186 
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:91
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