refactoring: terms "current" and "full" changed for "local" and "global" respectively

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1122 f169173b-cf89-36c8-b27e-44dbe73f0c83
This commit is contained in:
matlabbe
2014-02-17 22:58:46 +00:00
parent 260493ac8f
commit 5dbf6678ce
7 changed files with 118 additions and 118 deletions
+3 -3
View File
@@ -86,8 +86,8 @@ public:
void setTimeThreshold(float maxTimeAllowed); // in ms
void triggerNewMap();
void generateGraph(const std::string & path, int id=0, int margin=5);
void generateTOROGraph(const std::string & path, bool optimized, bool full);
void generateDOTGraph(const std::string & path, int id=0, int margin=5);
void generateTOROGraph(const std::string & path, bool optimized, bool global);
void resetMemory(bool dbOverwritten = false);
void dumpPrediction() const;
void dumpData() const;
@@ -104,7 +104,7 @@ public:
std::map<int, Transform> & poses,
std::multimap<int, Link> & constraints,
bool optimized,
bool full) const;
bool global) const;
void getGraph(std::map<int, Transform> & poses,
std::multimap<int, Link> & constraints,
bool optimized,
+8 -8
View File
@@ -52,16 +52,16 @@ public:
kCmdResetMemory,
kCmdDumpMemory,
kCmdDumpPrediction,
kCmdGenerateGraph, // params: path
kCmdGenerateLocalGraph, // params: path, id, margin
kCmdGenerateTOROGraph, // params: path, optimized
kCmdGenerateTOROGraphFull, // params: path, optimized
kCmdGenerateDOTGraph, // params: path
kCmdGenerateDOTLocalGraph, // params: path, id, margin
kCmdGenerateTOROGraphLocal, // params: path, optimized
kCmdGenerateTOROGraphGlobal, // params: path, optimized
kCmdDeleteMemory, // params: path [optional]
kCmdCleanDataBuffer,
kCmdPublish3DMap, // params: optimized
kCmdPublish3DMapFull, // params: optimized
kCmdPublishGraphFull, // params: optimized
kCmdPublishGraph, // params: optimized
kCmdPublish3DMapLocal, // params: optimized
kCmdPublish3DMapGlobal, // params: optimized
kCmdPublishTOROGraphGlobal, // params: optimized
kCmdPublishTOROGraphLocal, // params: optimized
kCmdTriggerNewMap,
kCmdPause};
public:
+9 -9
View File
@@ -51,16 +51,16 @@ public:
kStateChangingParameters,
kStateDumpingMemory,
kStateDumpingPrediction,
kStateGeneratingGraph,
kStateGeneratingLocalGraph,
kStateGeneratingTOROGraph,
kStateGeneratingTOROGraphFull,
kStateGeneratingDOTGraph,
kStateGeneratingDOTLocalGraph,
kStateGeneratingTOROGraphLocal,
kStateGeneratingTOROGraphGlobal,
kStateDeletingMemory,
kStateCleanDataBuffer,
kStatePublishingMap,
kStatePublishingMapFull,
kStatePublishingGraph,
kStatePublishingGraphFull,
kStatePublishingMapLocal,
kStatePublishingMapGlobal,
kStatePublishingTOROGraphLocal,
kStatePublishingTOROGraphGlobal,
Graph,
kStateTriggeringMap
};
@@ -83,7 +83,7 @@ private:
void pushNewState(State newState, const ParametersMap & parameters = ParametersMap());
void setDataBufferSize(int size);
void publishMap(bool optimized, bool full) const;
void publishGraph(bool optimized, bool full) const;
void publishTOROGraph(bool optimized, bool full) const;
private:
UMutex _stateMutex;
+10 -10
View File
@@ -564,7 +564,7 @@ void Rtabmap::triggerNewMap()
}
}
void Rtabmap::generateGraph(const std::string & path, int id, int margin)
void Rtabmap::generateDOTGraph(const std::string & path, int id, int margin)
{
if(_memory)
{
@@ -596,7 +596,7 @@ void Rtabmap::generateGraph(const std::string & path, int id, int margin)
}
}
void Rtabmap::generateTOROGraph(const std::string & path, bool optimized, bool full)
void Rtabmap::generateTOROGraph(const std::string & path, bool optimized, bool global)
{
if(_memory && _memory->getLastWorkingSignature())
{
@@ -605,12 +605,12 @@ void Rtabmap::generateTOROGraph(const std::string & path, bool optimized, bool f
if(optimized)
{
this->optimizeCurrentMap(_memory->getLastWorkingSignature()->id(), full, poses, &constraints);
this->optimizeCurrentMap(_memory->getLastWorkingSignature()->id(), global, poses, &constraints);
}
else
{
std::map<int, int> ids = _memory->getNeighborsId(_memory->getLastWorkingSignature()->id(), 0, full?-1:0, true);
_memory->getMetricConstraints(uKeys(ids), poses, constraints, full);
std::map<int, int> ids = _memory->getNeighborsId(_memory->getLastWorkingSignature()->id(), 0, global?-1:0, true);
_memory->getMetricConstraints(uKeys(ids), poses, constraints, global);
}
util3d::saveTOROGraph(path, poses, constraints);
@@ -2110,23 +2110,23 @@ void Rtabmap::get3DMap(std::map<int, std::vector<unsigned char> > & images,
std::map<int, Transform> & poses,
std::multimap<int, Link> & constraints,
bool optimized,
bool full) const
bool global) const
{
if(_memory && _memory->getLastWorkingSignature())
{
if(optimized)
{
this->optimizeCurrentMap(_memory->getLastWorkingSignature()->id(), full, poses, &constraints);
this->optimizeCurrentMap(_memory->getLastWorkingSignature()->id(), global, poses, &constraints);
}
else
{
std::map<int, int> ids = _memory->getNeighborsId(_memory->getLastWorkingSignature()->id(), 0, full?-1:0, true);
_memory->getMetricConstraints(uKeys(ids), poses, constraints, full);
std::map<int, int> ids = _memory->getNeighborsId(_memory->getLastWorkingSignature()->id(), 0, global?-1:0, true);
_memory->getMetricConstraints(uKeys(ids), poses, constraints, global);
}
std::set<int> ids = _memory->getWorkingMem(); // STM + WM
ids.insert(_memory->getStMem().begin(), _memory->getStMem().end());
if(full)
if(global)
{
ids = _memory->getAllSignatureIds(); // STM + WM + LTM
}
+37 -37
View File
@@ -106,7 +106,7 @@ void RtabmapThread::publishMap(bool optimized, bool full) const
constraints));
}
void RtabmapThread::publishGraph(bool optimized, bool full) const
void RtabmapThread::publishTOROGraph(bool optimized, bool full) const
{
std::map<int, std::vector<unsigned char> > images;
std::map<int, std::vector<unsigned char> > depths;
@@ -178,16 +178,16 @@ void RtabmapThread::mainLoop()
case kStateDumpingPrediction:
_rtabmap->dumpPrediction();
break;
case kStateGeneratingGraph:
_rtabmap->generateGraph(parameters.at("path"));
case kStateGeneratingDOTGraph:
_rtabmap->generateDOTGraph(parameters.at("path"));
break;
case kStateGeneratingLocalGraph:
_rtabmap->generateGraph(parameters.at("path"), atoi(parameters.at("id").c_str()), atoi(parameters.at("margin").c_str()));
case kStateGeneratingDOTLocalGraph:
_rtabmap->generateDOTGraph(parameters.at("path"), atoi(parameters.at("id").c_str()), atoi(parameters.at("margin").c_str()));
break;
case kStateGeneratingTOROGraph:
case kStateGeneratingTOROGraphLocal:
_rtabmap->generateTOROGraph(parameters.at("path"), atoi(parameters.at("optimized").c_str())!=0, false);
break;
case kStateGeneratingTOROGraphFull:
case kStateGeneratingTOROGraphGlobal:
_rtabmap->generateTOROGraph(parameters.at("path"), atoi(parameters.at("optimized").c_str())!=0, true);
break;
case kStateDeletingMemory:
@@ -201,17 +201,17 @@ void RtabmapThread::mainLoop()
case kStateCleanDataBuffer:
this->clearBufferedData();
break;
case kStatePublishingMap:
case kStatePublishingMapLocal:
this->publishMap(atoi(parameters.at("optimized").c_str())!=0, false);
break;
case kStatePublishingMapFull:
case kStatePublishingMapGlobal:
this->publishMap(atoi(parameters.at("optimized").c_str())!=0, true);
break;
case kStatePublishingGraph:
this->publishGraph(atoi(parameters.at("optimized").c_str())!=0, false);
case kStatePublishingTOROGraphLocal:
this->publishTOROGraph(atoi(parameters.at("optimized").c_str())!=0, false);
break;
case kStatePublishingGraphFull:
this->publishGraph(atoi(parameters.at("optimized").c_str())!=0, true);
case kStatePublishingTOROGraphGlobal:
this->publishTOROGraph(atoi(parameters.at("optimized").c_str())!=0, true);
break;
case kStateTriggeringMap:
_rtabmap->triggerNewMap();
@@ -264,48 +264,48 @@ void RtabmapThread::handleEvent(UEvent* event)
ULOGGER_DEBUG("CMD_DUMP_PREDICTION");
pushNewState(kStateDumpingPrediction);
}
else if(cmd == RtabmapEventCmd::kCmdGenerateGraph)
else if(cmd == RtabmapEventCmd::kCmdGenerateDOTGraph)
{
UASSERT(!rtabmapEvent->getStr().empty());
ULOGGER_DEBUG("CMD_GENERATE_GRAPH");
ULOGGER_DEBUG("CMD_GENERATE_DOT_GRAPH");
ParametersMap param;
param.insert(ParametersPair("path", rtabmapEvent->getStr()));
pushNewState(kStateGeneratingGraph, param);
pushNewState(kStateGeneratingDOTGraph, param);
}
else if(cmd == RtabmapEventCmd::kCmdGenerateLocalGraph)
else if(cmd == RtabmapEventCmd::kCmdGenerateDOTLocalGraph)
{
std::list<std::string> values = uSplit(rtabmapEvent->getStr(), ';');
UASSERT(values.size() == 3);
ULOGGER_DEBUG("CMD_GENERATE_LOCAL_GRAPH");
ULOGGER_DEBUG("CMD_GENERATE_DOT_LOCAL_GRAPH");
ParametersMap param;
param.insert(ParametersPair("path", *values.begin()));
param.insert(ParametersPair("id", *(++values.begin())));
param.insert(ParametersPair("margin", *values.rbegin()));
pushNewState(kStateGeneratingLocalGraph, param);
pushNewState(kStateGeneratingDOTLocalGraph, param);
}
else if(cmd == RtabmapEventCmd::kCmdGenerateTOROGraph)
else if(cmd == RtabmapEventCmd::kCmdGenerateTOROGraphLocal)
{
UASSERT(!rtabmapEvent->getStr().empty());
ULOGGER_DEBUG("CMD_GENERATE_TORO_GRAPH");
ULOGGER_DEBUG("CMD_GENERATE_TORO_GRAPH_LOCAL");
ParametersMap param;
param.insert(ParametersPair("path", rtabmapEvent->getStr()));
param.insert(ParametersPair("optimized", uNumber2Str(rtabmapEvent->getInt())));
pushNewState(kStateGeneratingTOROGraph, param);
pushNewState(kStateGeneratingTOROGraphLocal, param);
}
else if(cmd == RtabmapEventCmd::kCmdGenerateTOROGraphFull)
else if(cmd == RtabmapEventCmd::kCmdGenerateTOROGraphGlobal)
{
UASSERT(!rtabmapEvent->getStr().empty());
ULOGGER_DEBUG("CMD_GENERATE_TORO_GRAPH_FULL");
ULOGGER_DEBUG("CMD_GENERATE_TORO_GRAPH_GLOBAL");
ParametersMap param;
param.insert(ParametersPair("path", rtabmapEvent->getStr()));
param.insert(ParametersPair("optimized", uNumber2Str(rtabmapEvent->getInt())));
pushNewState(kStateGeneratingTOROGraphFull, param);
pushNewState(kStateGeneratingTOROGraphGlobal, param);
}
else if(cmd == RtabmapEventCmd::kCmdDeleteMemory)
@@ -320,33 +320,33 @@ void RtabmapThread::handleEvent(UEvent* event)
ULOGGER_DEBUG("CMD_CLEAN_DATA_BUFFER");
pushNewState(kStateCleanDataBuffer);
}
else if(cmd == RtabmapEventCmd::kCmdPublish3DMap)
else if(cmd == RtabmapEventCmd::kCmdPublish3DMapLocal)
{
ULOGGER_DEBUG("CMD_PUBLISH_MAP");
ULOGGER_DEBUG("CMD_PUBLISH_MAP_LOCAL");
ParametersMap param;
param.insert(ParametersPair("optimized", uNumber2Str(rtabmapEvent->getInt())));
pushNewState(kStatePublishingMap, param);
pushNewState(kStatePublishingMapLocal, param);
}
else if(cmd == RtabmapEventCmd::kCmdPublish3DMapFull)
else if(cmd == RtabmapEventCmd::kCmdPublish3DMapGlobal)
{
ULOGGER_DEBUG("CMD_PUBLISH_MAP_FULL");
ULOGGER_DEBUG("CMD_PUBLISH_MAP_GLOBAL");
ParametersMap param;
param.insert(ParametersPair("optimized", uNumber2Str(rtabmapEvent->getInt())));
pushNewState(kStatePublishingMapFull, param);
pushNewState(kStatePublishingMapGlobal, param);
}
else if(cmd == RtabmapEventCmd::kCmdPublishGraph)
else if(cmd == RtabmapEventCmd::kCmdPublishTOROGraphLocal)
{
ULOGGER_DEBUG("CMD_PUBLISH_GRAPH");
ULOGGER_DEBUG("CMD_PUBLISH_TORO_GRAPH_LOCAL");
ParametersMap param;
param.insert(ParametersPair("optimized", uNumber2Str(rtabmapEvent->getInt())));
pushNewState(kStatePublishingGraph, param);
pushNewState(kStatePublishingTOROGraphLocal, param);
}
else if(cmd == RtabmapEventCmd::kCmdPublishGraphFull)
else if(cmd == RtabmapEventCmd::kCmdPublishTOROGraphGlobal)
{
ULOGGER_DEBUG("CMD_PUBLISH_GRAPH_FULL");
ULOGGER_DEBUG("CMD_PUBLISH_TORO_GRAPH_GLOBAL");
ParametersMap param;
param.insert(ParametersPair("optimized", uNumber2Str(rtabmapEvent->getInt())));
pushNewState(kStatePublishingGraphFull, param);
pushNewState(kStatePublishingTOROGraphGlobal, param);
}
else if(cmd == RtabmapEventCmd::kCmdTriggerNewMap)
{
+1 -1
View File
@@ -145,7 +145,7 @@ int main(int argc, char * argv[])
printf("Processing images completed. Loop closures found = %d\n", countLoopDetected);
// Generate a graph for visualization with Graphiz
rtabmap.generateGraph("Graph.dot");
rtabmap.generateDOTGraph("Graph.dot");
printf("Generated graph \"Graph.dot\", viewable with Graphiz using \"neato -Tpdf Graph.dot -o out.pdf\"\n");
// Cleanup... save database and logs
+50 -50
View File
@@ -2260,7 +2260,7 @@ void MainWindow::generateMap()
if(!path.isEmpty())
{
_graphSavingFileName = path;
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateGraph, path.toStdString())); // The event is automatically deleted by the EventsManager...
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateDOTGraph, path.toStdString())); // The event is automatically deleted by the EventsManager...
_ui->dockWidget_console->show();
_ui->widget_console->appendMsg(QString("Graph saved... Tip:\nneato -Tpdf \"%1\" -o out.pdf").arg(_graphSavingFileName).arg(_graphSavingFileName));
@@ -2300,7 +2300,7 @@ void MainWindow::generateLocalMap()
{
_graphSavingFileName = path;
QString str = path + QString(";") + QString::number(id) + QString(";") + QString::number(margin);
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateLocalGraph, str.toStdString())); // The event is automatically deleted by the EventsManager...
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateDOTLocalGraph, str.toStdString())); // The event is automatically deleted by the EventsManager...
_ui->dockWidget_console->show();
_ui->widget_console->appendMsg(QString("Graph saved... Tip:\nneato -Tpdf \"%1\" -o out.pdf").arg(_graphSavingFileName).arg(_graphSavingFileName));
@@ -2317,31 +2317,31 @@ void MainWindow::generateTOROMap()
}
QStringList items;
items.append("Current map optimized");
items.append("Current map not optimized");
items.append("Full map optimized");
items.append("Full map not optimized");
items.append("Local map optimized");
items.append("Local map not optimized");
items.append("Global map optimized");
items.append("Global map not optimized");
bool ok;
QString item = QInputDialog::getItem(this, tr("Parameters"), tr("Options:"), items, 0, false, &ok);
if(ok)
{
bool optimized=false, full=false;
if(item.compare("Current map optimized") == 0)
bool optimized=false, global=false;
if(item.compare("Local map optimized") == 0)
{
optimized = true;
}
else if(item.compare("Current map not optimized") == 0)
else if(item.compare("Local map not optimized") == 0)
{
}
else if(item.compare("Full map optimized") == 0)
else if(item.compare("Global map optimized") == 0)
{
full=true;
global=true;
optimized=true;
}
else if(item.compare("Full map not optimized") == 0)
else if(item.compare("Global map not optimized") == 0)
{
full=true;
global=true;
}
else
{
@@ -2352,18 +2352,18 @@ void MainWindow::generateTOROMap()
if(!path.isEmpty())
{
_toroSavingFileName = path;
if(full)
if(global)
{
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateTOROGraphFull, path.toStdString(), optimized?1:0));
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateTOROGraphGlobal, path.toStdString(), optimized?1:0));
}
else
{
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateTOROGraph, path.toStdString(), optimized?1:0));
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdGenerateTOROGraphLocal, path.toStdString(), optimized?1:0));
}
_ui->dockWidget_console->show();
_ui->widget_console->appendMsg(QString("TORO Graph saved (full=%1, optimized=%2)... %3")
.arg(full?"true":"false").arg(optimized?"true":"false").arg(_toroSavingFileName));
_ui->widget_console->appendMsg(QString("TORO Graph saved (global=%1, optimized=%2)... %3")
.arg(global?"true":"false").arg(optimized?"true":"false").arg(_toroSavingFileName));
}
}
@@ -2478,37 +2478,37 @@ void MainWindow::downloadAllClouds()
bool showAll = _state != kMonitoringPaused && _state != kMonitoring;
QStringList items;
items.append("Current map optimized");
items.append("Local map optimized");
if(showAll)
{
items.append("Current map not optimized");
items.append("Local map not optimized");
}
items.append("Full map optimized");
items.append("Global map optimized");
if(showAll)
{
items.append("Full map not optimized");
items.append("Global map not optimized");
}
bool ok;
QString item = QInputDialog::getItem(this, tr("Parameters"), tr("Options:"), items, showAll?2:1, false, &ok);
if(ok)
{
bool optimized=false, full=false;
if(item.compare("Current map optimized") == 0)
bool optimized=false, global=false;
if(item.compare("Local map optimized") == 0)
{
optimized = true;
}
else if(item.compare("Current map not optimized") == 0)
else if(item.compare("Local map not optimized") == 0)
{
}
else if(item.compare("Full map optimized") == 0)
else if(item.compare("Global map optimized") == 0)
{
full=true;
global=true;
optimized=true;
}
else if(item.compare("Full map not optimized") == 0)
else if(item.compare("Global map not optimized") == 0)
{
full=true;
global=true;
}
else
{
@@ -2519,15 +2519,15 @@ void MainWindow::downloadAllClouds()
_initProgressDialog->setAutoClose(true, 1);
_initProgressDialog->resetProgress();
_initProgressDialog->show();
_initProgressDialog->appendText(tr("Downloading the map (full=%1 ,optimized=%2)...")
.arg(full?"true":"false").arg(optimized?"true":"false"));
if(full)
_initProgressDialog->appendText(tr("Downloading the map (global=%1 ,optimized=%2)...")
.arg(global?"true":"false").arg(optimized?"true":"false"));
if(global)
{
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublish3DMapFull, optimized?1:0));
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublish3DMapGlobal, optimized?1:0));
}
else
{
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublish3DMap, optimized?1:0));
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublish3DMapLocal, optimized?1:0));
}
}
}
@@ -2537,37 +2537,37 @@ void MainWindow::downloadPoseGraph()
bool showAll = _state != kMonitoringPaused && _state != kMonitoring;
QStringList items;
items.append("Current map optimized");
items.append("Local map optimized");
if(showAll)
{
items.append("Current map not optimized");
items.append("Local map not optimized");
}
items.append("Full map optimized");
items.append("Global map optimized");
if(showAll)
{
items.append("Full map not optimized");
items.append("Global map not optimized");
}
bool ok;
QString item = QInputDialog::getItem(this, tr("Parameters"), tr("Options:"), items, showAll?2:1, false, &ok);
if(ok)
{
bool optimized=false, full=false;
if(item.compare("Current map optimized") == 0)
bool optimized=false, global=false;
if(item.compare("Local map optimized") == 0)
{
optimized = true;
}
else if(item.compare("Current map not optimized") == 0)
else if(item.compare("Local map not optimized") == 0)
{
}
else if(item.compare("Full map optimized") == 0)
else if(item.compare("Global map optimized") == 0)
{
full=true;
global=true;
optimized=true;
}
else if(item.compare("Full map not optimized") == 0)
else if(item.compare("Global map not optimized") == 0)
{
full=true;
global=true;
}
else
{
@@ -2578,15 +2578,15 @@ void MainWindow::downloadPoseGraph()
_initProgressDialog->setAutoClose(true, 1);
_initProgressDialog->resetProgress();
_initProgressDialog->show();
_initProgressDialog->appendText(tr("Downloading the graph (full=%1 ,optimized=%2)...")
.arg(full?"true":"false").arg(optimized?"true":"false"));
if(full)
_initProgressDialog->appendText(tr("Downloading the graph (global=%1 ,optimized=%2)...")
.arg(global?"true":"false").arg(optimized?"true":"false"));
if(global)
{
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublishGraphFull, optimized?1:0));
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublishTOROGraphGlobal, optimized?1:0));
}
else
{
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublishGraph, optimized?1:0));
this->post(new RtabmapEventCmd(RtabmapEventCmd::kCmdPublishTOROGraphLocal, optimized?1:0));
}
}
}