00001 #ifndef MF_LOG_READER_H
00002 #define MF_LOG_READER_H
00003
00004 #include <fstream>
00005 #include <string>
00006
00007 #include "fhiclcpp/fwd.h"
00008 #include "messagefacility/MessageLogger/MessageLogger.h"
00009
00010 #include <boost/regex.hpp>
00011
00012 #include "mfextensions/Receivers/MVReceiver.hh"
00013
00014 namespace mfviewer {
00020 class LogReader : public MVReceiver {
00021 Q_OBJECT
00022 public:
00027 explicit LogReader(fhicl::ParameterSet pset);
00028
00032 virtual ~LogReader();
00033
00037 void run();
00038
00043 qt_mf_msg read_next();
00044
00045 private:
00046 std::ifstream log_;
00047 size_t pos_;
00048
00049 std::string filename_;
00050 int counter_;
00051
00052 boost::regex metadata_1;
00053
00054 boost::smatch what_;
00055 };
00056 }
00057
00058 #endif