CMS 3D CMS Logo

StreamerFileReader.h
Go to the documentation of this file.
1 #ifndef IOPool_Streamer_StreamerFileReader_h
2 #define IOPool_Streamer_StreamerFileReader_h
3 
6 
7 #include <memory>
8 #include <string>
9 #include <vector>
10 
11 class EventMsgView;
12 class InitMsgView;
13 
14 namespace edm {
16  class EventPrincipal;
17  class EventSkipperByID;
18  class FileCatalogItem;
19  struct InputSourceDescription;
20  class ParameterSet;
21  class StreamerInputFile;
23  public:
25  ~StreamerFileReader() override;
26 
27  static void fillDescriptions(ConfigurationDescriptions& descriptions);
28 
29  private:
30  InitMsgView const* getHeader();
31  EventMsgView const* getNextEvent();
32  bool newHeader();
33 
34  Next checkNext() override;
35  void skip(int toSkip) override;
36  void genuineReadFile() override;
37  void genuineCloseFile() override;
38  void reset_() override;
39 
40  std::shared_ptr<EventSkipperByID const> eventSkipperByID() const { return get_underlying_safe(eventSkipperByID_); }
41  std::shared_ptr<EventSkipperByID>& eventSkipperByID() { return get_underlying_safe(eventSkipperByID_); }
42 
43  std::vector<FileCatalogItem> streamerNames_; // names of Streamer files
47  bool isFirstFile_ = true;
48  };
49 } // namespace edm
50 
51 #endif
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::StreamerInputSource
Definition: StreamerInputSource.h:31
edm::StreamerFileReader::eventSkipperByID
std::shared_ptr< EventSkipperByID > & eventSkipperByID()
Definition: StreamerFileReader.h:41
edm::InputSourceDescription
Definition: InputSourceDescription.h:20
edm::get_underlying_safe
constexpr std::shared_ptr< T > & get_underlying_safe(propagate_const< std::shared_ptr< T >> &iP)
Definition: get_underlying_safe.h:41
edm::StreamerFileReader::getNextEvent
EventMsgView const * getNextEvent()
Definition: StreamerFileReader.cc:103
edm::StreamerFileReader::reset_
void reset_() override
Definition: StreamerFileReader.cc:28
EventMsgView
Definition: EventMessage.h:72
edm::StreamerFileReader::~StreamerFileReader
~StreamerFileReader() override
Definition: StreamerFileReader.cc:26
edm::StreamerFileReader::newHeader
bool newHeader()
Definition: StreamerFileReader.cc:91
edm::propagate_const
Definition: propagate_const.h:32
edm::StreamerFileReader::skip
void skip(int toSkip) override
Definition: StreamerFileReader.cc:59
StreamerInputSource.h
edm::StreamerFileReader::streamReader_
edm::propagate_const< std::unique_ptr< StreamerInputFile > > streamReader_
Definition: StreamerFileReader.h:44
edm::StreamerFileReader::StreamerFileReader
StreamerFileReader(ParameterSet const &pset, InputSourceDescription const &desc)
Definition: StreamerFileReader.cc:15
edm::StreamerFileReader::fillDescriptions
static void fillDescriptions(ConfigurationDescriptions &descriptions)
Definition: StreamerFileReader.cc:110
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
edm::StreamerFileReader
Definition: StreamerFileReader.h:22
edm::StreamerFileReader::checkNext
Next checkNext() override
Definition: StreamerFileReader.cc:46
edm::ParameterSet
Definition: ParameterSet.h:47
ParameterSet
Definition: Functions.h:16
edm::StreamerFileReader::genuineReadFile
void genuineReadFile() override
Definition: StreamerFileReader.cc:77
edm::StreamerFileReader::getHeader
InitMsgView const * getHeader()
Definition: StreamerFileReader.cc:93
edm::RawInputSource::Next
Next
Definition: RawInputSource.h:24
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
edm::StreamerFileReader::eventSkipperByID_
edm::propagate_const< std::shared_ptr< EventSkipperByID > > eventSkipperByID_
Definition: StreamerFileReader.h:45
ConfigurationDescriptions
edm::StreamerFileReader::eventSkipperByID
std::shared_ptr< EventSkipperByID const > eventSkipperByID() const
Definition: StreamerFileReader.h:40
edm::StreamerFileReader::streamerNames_
std::vector< FileCatalogItem > streamerNames_
Definition: StreamerFileReader.h:43
edm::StreamerFileReader::initialNumberOfEventsToSkip_
int initialNumberOfEventsToSkip_
Definition: StreamerFileReader.h:46
edm::StreamerFileReader::isFirstFile_
bool isFirstFile_
Definition: StreamerFileReader.h:47
get_underlying_safe.h
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
InitMsgView
Definition: InitMessage.h:61
edm::StreamerFileReader::genuineCloseFile
void genuineCloseFile() override
Definition: StreamerFileReader.cc:72