File indexing completed on 2023-10-25 09:33:37
0001 #ifndef IOPool_Streamer_StreamerFileReader_h
0002 #define IOPool_Streamer_StreamerFileReader_h
0003
0004 #include "IOPool/Streamer/interface/InitMessage.h"
0005 #include "IOPool/Streamer/interface/EventMessage.h"
0006
0007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0008
0009 #include <string>
0010 #include <iostream>
0011 #include <deque>
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 namespace edm {
0023 class StreamerInputFile;
0024 }
0025
0026 class WatcherStreamFileReader {
0027 public:
0028 WatcherStreamFileReader(edm::ParameterSet const& pset);
0029 ~WatcherStreamFileReader();
0030
0031 const InitMsgView* getHeader();
0032 const EventMsgView* getNextEvent();
0033 const bool newHeader();
0034
0035 edm::StreamerInputFile* getInputFile();
0036
0037 void closeFile();
0038
0039 private:
0040
0041
0042 std::string inputDir_;
0043
0044
0045
0046 std::vector<std::string> filePatterns_;
0047
0048
0049
0050 std::string inprocessDir_;
0051
0052
0053
0054 std::string processedDir_;
0055
0056
0057
0058 std::string corruptedDir_;
0059
0060
0061
0062 std::unique_ptr<edm::StreamerInputFile> streamerInputFile_;
0063
0064 std::string fileName_;
0065
0066 std::string tokenFile_;
0067
0068 int timeOut_;
0069
0070 std::deque<std::string> filesInQueue_;
0071
0072 bool end_;
0073
0074 int verbosity_;
0075 };
0076
0077 #endif