CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_4/src/EventFilter/StorageManager/src/EventStreamHttpReader.h

Go to the documentation of this file.
00001 // $Id: EventStreamHttpReader.h,v 1.29 2011/09/02 08:13:31 mommsen Exp $
00003 
00004 #ifndef StorageManager_EventStreamHttpReader_h
00005 #define StorageManager_EventStreamHttpReader_h
00006 
00007 #include "DQMServices/Core/interface/DQMStore.h"
00008 #include "EventFilter/StorageManager/interface/EventConsumerRegistrationInfo.h"
00009 #include "EventFilter/StorageManager/interface/EventServerProxy.h"
00010 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00011 #include "FWCore/Framework/interface/InputSourceDescription.h"
00012 #include "IOPool/Streamer/interface/StreamerInputSource.h"
00013 
00014 
00015 namespace edm
00016 {
00034   class EventStreamHttpReader : public edm::StreamerInputSource
00035   {
00036   public:
00037     EventStreamHttpReader
00038     (
00039       edm::ParameterSet const&,
00040       edm::InputSourceDescription const&
00041     );
00042     virtual ~EventStreamHttpReader() {};
00043 
00044     virtual EventPrincipal* read();
00045 
00046   private:
00047     void readHeader();
00048     void initializeDQMStore();
00049     
00050     stor::EventServerProxy<stor::EventConsumerRegistrationInfo> eventServerProxy_;
00051     DQMStore* dqmStore_;
00052     bool dqmStoreAvailabiltyChecked_;
00053 
00054     const bool dropOldLumisectionEvents_;
00055     const std::string consumerName_;
00056     unsigned int totalDroppedEvents_;
00057     unsigned int lastLS_;
00058 
00059   };
00060 
00061 } // namespace edm
00062 
00063 #endif // StorageManager_EventStreamHttpReader_h
00064