- double sim_time_ms = globals->get_sim_time_sec() * 1000;
- for (unsigned int i = 0; i < _logs.size(); i++) {
- if ((sim_time_ms - _logs[i].last_time_ms) >= _logs[i].interval_ms) {
- _logs[i].last_time_ms = sim_time_ms;
- (*_logs[i].output) << sim_time_ms;
- for (unsigned int j = 0; j < _logs[i].nodes.size(); j++) {
- (*_logs[i].output) << _logs[i].delimiter
+ double sim_time_sec = globals->get_sim_time_sec();
+ double sim_time_ms = sim_time_sec * 1000;
+ for (unsigned int i = 0; i < _logs.size(); i++) {
+ while ((sim_time_ms - _logs[i].last_time_ms) >= _logs[i].interval_ms) {
+ _logs[i].last_time_ms += _logs[i].interval_ms;
+ (*_logs[i].output) << sim_time_sec;
+ for (unsigned int j = 0; j < _logs[i].nodes.size(); j++) {
+ (*_logs[i].output) << _logs[i].delimiter