Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:12:04

0001 //
0002 //    File: JEventProcessor_danarest.h
0003 // Created: Mon Jul 1 09:08:37 EDT 2012
0004 // Creator: Richard Jones
0005 //
0006 
0007 #ifndef _JEventProcessor_regressiontest_
0008 #define _JEventProcessor_regressiontest_
0009 
0010 #include <string>
0011 #include <map>
0012 #include <ostream>
0013 #include <istream>
0014 
0015 #include <JANA/JEventProcessor.h>
0016 
0017 
0018 class JEventProcessor_regressiontest : public JEventProcessor
0019 {
0020 public:
0021     void Init() override;
0022     void BeginRun(const std::shared_ptr<const JEvent>& event) override;
0023     void Process(const std::shared_ptr<const JEvent>& event) override;
0024     void EndRun() override;
0025     void Finish() override;
0026 
0027 private:
0028     std::mutex m_mutex;
0029 
0030     bool interactive = true;
0031     bool have_old_log_file = false;
0032     std::ifstream old_log_file;
0033     std::string old_log_file_name = "regression_log_old.tsv";
0034     std::ofstream new_log_file;
0035     std::string new_log_file_name = "regression_log_new.tsv";
0036     std::ifstream blacklist_file;
0037     std::string blacklist_file_name = "blacklist.tsv";
0038     std::set<std::string> blacklist;
0039     std::map<std::string, int> discrepancy_counts;
0040 
0041     std::vector<JFactory*> GetFactoriesTopologicallyOrdered(const JEvent& event);
0042     std::pair<std::string, int> ParseFactorySummary(std::string line);
0043 };
0044 
0045 #endif // _JEventProcessor_regressiontest_