CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_9_patch3/src/EventFilter/SMProxyServer/interface/DQMEventMsg.h

Go to the documentation of this file.
00001 // $Id: DQMEventMsg.h,v 1.2 2011/03/07 15:41:54 mommsen Exp $
00003 
00004 #ifndef EventFilter_SMProxyServer_DQMEventMsg_h
00005 #define EventFilter_SMProxyServer_DQMEventMsg_h
00006 
00007 #include "EventFilter/StorageManager/interface/DQMKey.h"
00008 #include "EventFilter/StorageManager/interface/QueueID.h"
00009 #include "IOPool/Streamer/interface/DQMEventMessage.h"
00010 
00011 #include <boost/shared_ptr.hpp>
00012 #include <vector>
00013 
00014 namespace smproxy {
00015 
00025   class DQMEventMsg
00026   {
00027   public:
00028     
00029     DQMEventMsg();
00030     DQMEventMsg(const DQMEventMsgView&);
00031 
00035     void tagForDQMEventConsumers(const stor::QueueIDs&);
00036 
00040     const stor::QueueIDs& getDQMEventConsumerTags() const;
00041 
00045     const stor::DQMKey& dqmKey() const;
00046 
00050     size_t memoryUsed() const;
00051     
00055     unsigned long totalDataSize() const;
00056 
00060     unsigned char* dataLocation() const;
00061 
00065     bool empty() const;
00066 
00070     bool faulty() const;
00071 
00072 
00073   private:
00074     typedef std::vector<unsigned char> DQMEventMsgBuffer;
00075     boost::shared_ptr<DQMEventMsgBuffer> buf_;
00076     bool faulty_;
00077 
00078     stor::QueueIDs queueIDs_;
00079     stor::DQMKey dqmKey_;
00080   };
00081   
00082 } // namespace smproxy
00083 
00084 #endif // EventFilter_SMProxyServer_DQMEventMsg_h 
00085 
00086 
00087 
00088 // emacs configuration
00089 // Local Variables: -
00090 // mode: c++ -
00091 // c-basic-offset: 2 -
00092 // indent-tabs-mode: nil -
00093 // End: -