Simulator should be modified to support both Engine and EngineMultirobot. The same goes for Viewer.
In the current implementation of Engine, some base methods are explicitly forbidden, which is a bad practice. Instead, it should be overloaded to raise an exception when appropriate, so that the API remains compatible. In this way, it should be possible to use indifferently Engine or EngineMultirobot in simulator, addSystem instead of initialized...
Once this limitation would be alleviated for Simulator, it should be suite straightfoward to adapt Viewer to support it, even though it is not clear how to deal with multiple robot. Looping over systems coule be done as an inner loop or an outer loop. Indeed, at replay, a multi-robots system is just a set of Independent single-robot systems.
Simulator
should be modified to support both Engine and EngineMultirobot. The same goes forViewer
.In the current implementation of Engine, some base methods are explicitly forbidden, which is a bad practice. Instead, it should be overloaded to raise an exception when appropriate, so that the API remains compatible. In this way, it should be possible to use indifferently
Engine
orEngineMultirobot
in simulator,addSystem
instead ofinitialized
...Once this limitation would be alleviated for Simulator, it should be suite straightfoward to adapt
Viewer
to support it, even though it is not clear how to deal with multiple robot. Looping over systems coule be done as an inner loop or an outer loop. Indeed, at replay, a multi-robots system is just a set of Independent single-robot systems.