CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
StreamerFileReader.h
Go to the documentation of this file.
1 #ifndef IOPool_Streamer_StreamerFileReader_h
2 #define IOPool_Streamer_StreamerFileReader_h
3 
5 
6 #include "boost/shared_ptr.hpp"
7 
8 #include <memory>
9 #include <string>
10 #include <vector>
11 
12 class EventMsgView;
13 class InitMsgView;
14 
15 namespace edm {
17  class EventPrincipal;
18  class EventSkipperByID;
19  struct InputSourceDescription;
20  class ParameterSet;
21  class StreamerInputFile;
23  public:
24  StreamerFileReader(ParameterSet const& pset, InputSourceDescription const& desc);
25  virtual ~StreamerFileReader();
26  virtual EventPrincipal* read();
27 
28  InitMsgView const* getHeader();
29  EventMsgView const* getNextEvent();
30  bool newHeader();
31  static void fillDescriptions(ConfigurationDescriptions& descriptions);
32 
33  private:
34  std::vector<std::string> streamerNames_; // names of Streamer files
35  std::auto_ptr<StreamerInputFile> streamReader_;
36  boost::shared_ptr<EventSkipperByID> eventSkipperByID_;
38  };
39 } //end-of-namespace-def
40 
41 #endif
42 
StreamerFileReader(ParameterSet const &pset, InputSourceDescription const &desc)
InitMsgView const * getHeader()
boost::shared_ptr< EventSkipperByID > eventSkipperByID_
std::vector< std::string > streamerNames_
virtual EventPrincipal * read()
static void fillDescriptions(ConfigurationDescriptions &descriptions)
std::auto_ptr< StreamerInputFile > streamReader_
EventMsgView const * getNextEvent()