QString FlowControl::getSummary(QString sep) const { QString out; QTextStream ts(&out); ts << "sendRate: "<<sendRate()<<sep; ts << "mode: "<<(Good==mode?"GOOD":"BAD")<<sep; ts << "penaltyTime: "<<penalty_time<<sep; ts << "goodTime: "<<good_conditions_time<<sep; ts << "penaltyRed: "<<penalty_reduction_accumulator<<sep; return out; }
void SensorCommunicator::publish() { RAIILock lock(&sensorMutex); minotaur_common::UltrasonicData msg; ros::Rate sendRate(50); for(int i = 0; i < sensorController.count(); ++i) { try { msg.sensorID = i; msg.distance = sensorController.getDistance(i); sensorDataPub.publish(msg); } catch (const nxt::TimeoutException &e) { ROS_WARN("SensorCommunicator: %s.", e.what()); } catch (const std::exception &e) { ROS_ERROR("SensorCommunicator: %s.", e.what()); } catch (...) { ROS_ERROR("SensorCommunicator: Caught unknown error (publish())."); } sendRate.sleep(); } }