2 #include "ErrorHandler/MessageAnalyzer/ma_function_is_syncd.h"
3 #include "ErrorHandler/MessageAnalyzer/ma_condition.h"
5 #include <boost/lexical_cast.hpp>
7 using namespace novadaq::errorhandler;
18 ma_func_is_syncd::evaluate(
ma_condition const& cond, ma_cond_domain)
20 std::string time_str = cond.get_msg_group(1);
21 std::string source = cond.get_msg_source();
27 time = boost::lexical_cast<uint64_t>(time_str);
29 catch (boost::bad_lexical_cast&)
31 return boost::any(
true);
36 if (sync_time.empty() || sync_time.find(source) != sync_time.end())
43 sync_time.insert(std::make_pair(source, time));
44 return boost::any(
false);
49 sync_time.insert(std::make_pair(source, time));
51 if (time < min) min = time;
52 if (time > max) max = time;
55 return boost::any(
true);
57 return boost::any(
false);