I've retrieved the entities by the type of "eye-bot" and I want to cast them to CEyeBotEntity objects. In order to do so, I've used the code listed below.
Code: Select all
// get the entities
CSpace::TMapPerType& tEntityMap =
CSimulator::GetInstance().GetLoopFunctions().GetSpace().GetEntitiesByType(
"eye-bot");
// loop over the entities
for(CSpace::TMapPerType::iterator it = tEntityMap.begin();
it != tEntityMap.end();
++it) {
// cast the entity to an eye-bot entity
CEyeBotEntity& cEyebotEnt = *any_cast<CEyeBotEntity*>(it->second);
}
So I have run the c++filt command on the error:[INFO] Loaded library "/argos3/build_simulator/core/libargos3core_simulator.so"
[INFO] Loaded library "/argos3/build_simulator/testing/libtest_footbot_controller.so"
[INFO] Loaded library "/argos3/build_simulator/testing/libtest_eyebot_controller.so"
[FATAL] Can't load library "/argos3/build_simulator/testing/libtest_loop_functions.so" even after trying to add extensions for shared library (so) and module library (so):
/argos3/build_simulator/testing/libtest_loop_functions.so: /argos3/build_simulator/plugins/simulator/visualizations/qt-opengl/libargos3plugin_simulator_qtopengl.so: undefined symbol: _ZTIN5argos13CEyeBotEntityE
/argos3/build_simulator/testing/libtest_loop_functions.so.so: /argos3/build_simulator/testing/libtest_loop_functions.so.so: cannot open shared object file: No such file or directory
/argos3/build_simulator/testing/libtest_loop_functions.so.so: OK
Code: Select all
c++filt _ZTIN5argos13CEyeBotEntityE
Which I think it indicates that he can't find the CEyeBotEntity, or am I wrong?typeinfo for argos::CEyeBotEntity
I have the same issue with the CEPuckEntity and the CSpiriEntity objects.
But oddly enough, I do not have this issue with the CFootBotEntity

Do you know what might cause this issue?
Sincerely yours,
Ewout Merckx.