Aggiunta parametrizzazione topic mqtt e nomi dei nodi ros

This commit is contained in:
2019-11-05 15:49:12 +01:00
parent 6b1012348c
commit 187c3ed9fc
7 changed files with 95 additions and 25 deletions

View File

@@ -4,23 +4,15 @@ RoboGlue_SHARED::RoboGlue_SHARED(QSettings *set){
settings=set;
//FIXME: inserire la lettura di quesste informazioni da un file
robotVariables.insert(std::pair<std::string, int>("RDY",1));
comSettings.subMap["commands"] = "roboglue_com/ros2com/commands";
comSettings.subMap["coordinates"] = "roboglue_com/ros2com/coordinates";
comSettings.subMap["state"] = "roboglue_com/ros2com/state";
comSettings.subMap["interface"] = "roboglue_com/ros2com/interface";
comSettings.pubMap["commands"] = "roboglue_com/com2ros/commands";
comSettings.pubMap["coordinates"] = "roboglue_com/com2ros/coordinates";
comSettings.pubMap["state"] = "roboglue_com/com2ros/state";
comSettings.pubMap["interface"] = "roboglue_com/com2ros/interface";
comSettings.nodeNames["relay"] = "roboglue_ros_relay";
comSettings.nodeNames["follower"] = "roboglue_ros_follower";
comSettings.nodeNames["recorder"] = "roboglue_ros_recorder";
}
////////////////////////////////////////////////////////////////
/////////////////////// RESTORE FUNCTIONS /////////////////////
/////////////////////////////////////////////////////////////
void RoboGlue_SHARED::restoreCommonSettings(){
settings->beginGroup("common");
settings->endGroup();
}
void RoboGlue_SHARED::restoreInitSettings(){
settings->beginGroup("init");
initSettings.size=settings->value("size").toSize();
@@ -61,6 +53,28 @@ void RoboGlue_SHARED::restoreComSettings() {
// TODO something
settings->endGroup();
settings->endGroup();
settings->beginGroup("ros");
comSettings.deadTime = settings->value("deadTime").toDouble();
settings->beginGroup("ros_nodes");
settings->beginGroup("mqtt_publishers");
comSettings.pubMap["commands"] = settings->value("commands").toString().toStdString();
comSettings.pubMap["coordinates"] = settings->value("coordinates").toString().toStdString();
comSettings.pubMap["state"] = settings->value("state").toString().toStdString();
comSettings.pubMap["interface"] = settings->value("interface").toString().toStdString();
settings->endGroup();
settings->beginGroup("mqtt_subscribers");
comSettings.subMap["commands"] = settings->value("commands").toString().toStdString();
comSettings.subMap["coordinates"] = settings->value("coordinates").toString().toStdString();
comSettings.subMap["state"] = settings->value("state").toString().toStdString();
comSettings.subMap["interface"] = settings->value("interface").toString().toStdString();
settings->endGroup();
settings->beginGroup("node_names");
comSettings.nodeNames["relay"] = settings->value("relay").toString().toStdString();
comSettings.nodeNames["follower"] = settings->value("follower").toString().toStdString();
comSettings.nodeNames["recorder"] = settings->value("recorder").toString().toStdString();
settings->endGroup();
settings->endGroup();
settings->endGroup();
}
void RoboGlue_SHARED::restoreGuiSettings() {
@@ -85,7 +99,6 @@ void RoboGlue_SHARED::restoreTrackSettings() {
void RoboGlue_SHARED::saveCommonSettings(){
settings->beginGroup("common");
settings->endGroup();
}
void RoboGlue_SHARED::saveInitSettings() {
@@ -99,11 +112,33 @@ void RoboGlue_SHARED::saveInitSettings() {
void RoboGlue_SHARED::saveComSettings() {
settings->beginGroup("robot");
settings->beginGroup("kine");
settings->setValue("maxreach", comSettings.kine.maxReach);
settings->setValue("prefix", comSettings.connection.prefix);
settings->setValue("suffix", comSettings.connection.suffix);
settings->beginGroup("kine");
settings->setValue("maxreach", comSettings.kine.maxReach);
settings->setValue("prefix", comSettings.connection.prefix);
settings->setValue("suffix", comSettings.connection.suffix);
settings->endGroup();
settings->endGroup();
settings->beginGroup("ros");
settings->setValue("deadTime", comSettings.deadTime);
settings->beginGroup("ros_nodes");
settings->beginGroup("mqtt_publishers");
settings->setValue("commands", QString().fromStdString(comSettings.pubMap.find("commands")->second));
settings->setValue("coordinates", QString().fromStdString(comSettings.pubMap.find("coordinates")->second));
settings->setValue("state", QString().fromStdString(comSettings.pubMap.find("state")->second));
settings->setValue("interface", QString().fromStdString(comSettings.pubMap.find("interface")->second));
settings->endGroup();
settings->beginGroup("mqtt_subscribers");
settings->setValue("commands", QString().fromStdString(comSettings.subMap.find("commands")->second));
settings->setValue("coordinates", QString().fromStdString(comSettings.subMap.find("coordinates")->second));
settings->setValue("state", QString().fromStdString(comSettings.subMap.find("state")->second));
settings->setValue("interface", QString().fromStdString(comSettings.subMap.find("interface")->second));
settings->endGroup();
settings->beginGroup("node_names");
settings->setValue("relay", QString().fromStdString(comSettings.nodeNames.find("relay")->second));
settings->setValue("follower", QString().fromStdString(comSettings.nodeNames.find("follower")->second));
settings->setValue("recorder", QString().fromStdString(comSettings.nodeNames.find("recorder")->second));
settings->endGroup();
settings->endGroup();
settings->endGroup();
}