Send timing report when sending data in config validator
SkipTimingReport() is called by default in simulation_logger. We want
to send timing report while sending data on channels in
config_validator_lib so add flexibility for this.
Change-Id: I3193fad4725d67297175956311b79063d2771872
Signed-off-by: James Kuszmaul <james.kuszmaul@bluerivertech.com>
diff --git a/aos/util/simulation_logger.cc b/aos/util/simulation_logger.cc
index 24691ef..513fa65 100644
--- a/aos/util/simulation_logger.cc
+++ b/aos/util/simulation_logger.cc
@@ -4,13 +4,16 @@
namespace aos::util {
LoggerState::LoggerState(aos::SimulatedEventLoopFactory *factory,
- const aos::Node *node, std::string_view output_folder)
+ const aos::Node *node, std::string_view output_folder,
+ bool do_skip_timing_report)
: event_loop_(factory->MakeEventLoop("logger", node)),
namer_(std::make_unique<aos::logger::MultiNodeFilesLogNamer>(
absl::StrCat(output_folder, "/", logger::MaybeNodeName(node), "/"),
event_loop_.get())),
logger_(std::make_unique<aos::logger::Logger>(event_loop_.get())) {
- event_loop_->SkipTimingReport();
+ if (do_skip_timing_report) {
+ event_loop_->SkipTimingReport();
+ }
event_loop_->SkipAosLog();
event_loop_->OnRun([this]() { logger_->StartLogging(std::move(namer_)); });
}
@@ -18,23 +21,24 @@
std::vector<std::unique_ptr<LoggerState>> MakeLoggersForNodes(
aos::SimulatedEventLoopFactory *factory,
const std::vector<std::string> &nodes_to_log,
- std::string_view output_folder) {
+ std::string_view output_folder, bool do_skip_timing_report) {
std::vector<std::unique_ptr<LoggerState>> loggers;
for (const std::string &node : nodes_to_log) {
loggers.emplace_back(std::make_unique<LoggerState>(
factory, aos::configuration::GetNode(factory->configuration(), node),
- output_folder));
+ output_folder, do_skip_timing_report));
}
return loggers;
}
std::vector<std::unique_ptr<LoggerState>> MakeLoggersForAllNodes(
- aos::SimulatedEventLoopFactory *factory, std::string_view output_folder) {
+ aos::SimulatedEventLoopFactory *factory, std::string_view output_folder,
+ bool do_skip_timing_report) {
std::vector<std::unique_ptr<LoggerState>> loggers;
for (const aos::Node *node :
configuration::GetNodes(factory->configuration())) {
- loggers.emplace_back(
- std::make_unique<LoggerState>(factory, node, output_folder));
+ loggers.emplace_back(std::make_unique<LoggerState>(
+ factory, node, output_folder, do_skip_timing_report));
}
return loggers;
}