NRP - Gazebo Communicator on the NRP side. Converts DataPackInterface classes from/to JSON objects. More...
#include <engine_json_nrp_client.h>
Public Member Functions | |
| EngineJSONNRPClient (nlohmann::json &config, ProcessLauncherInterface::unique_ptr &&launcher) | |
| Constructor. More... | |
| EngineJSONNRPClient (const std::string &serverAddress, nlohmann::json &config, ProcessLauncherInterface::unique_ptr &&launcher) | |
| Constructor. More... | |
| virtual | ~EngineJSONNRPClient () override=default |
| virtual pid_t | launchEngine () override |
| Launch the engine. More... | |
| virtual void | sendDataPacksToEngine (const datapacks_set_t &dataPacks) override |
| Sends datapacks to engine. More... | |
| virtual const std::vector< std::string > | engineProcStartParams () const override |
| Get all Engine Process Startup parameters. More... | |
| virtual datapacks_vector_t | getDataPacksFromEngine (const datapack_identifiers_set_t &requestedDataPackIds) override |
| Gets requested datapacks from engine. More... | |
Public Member Functions inherited from EngineClient< ENGINE, SCHEMA > | |
| EngineClient (nlohmann::json &engineConfig, ProcessLauncherInterface::unique_ptr &&launcher) | |
| Constructor. More... | |
| ~EngineClient () override=default | |
| const std::string | engineName () const override final |
| Get Engine Name. More... | |
| SimulationTime | getEngineTimestep () const override final |
| Get engine timestep. More... | |
| const nlohmann::json & | engineConfig () const override final |
| Get Engine Configuration. More... | |
| nlohmann::json & | engineConfig () override final |
| Get Engine Configuration. More... | |
| const std::string | engineSchema () const override final |
| Get json schema for this engine type. More... | |
| SimulationTime | getEngineTime () const override |
| Returns current engine (simulation) time. More... | |
| void | runLoopStepAsync (SimulationTime timeStep) override |
| Concrete implementation of EngineClientInterface::runLoopStepAsync() More... | |
| void | runLoopStepAsyncGet (SimulationTime timeOut) override |
| Concrete implementation of EngineClientInterface::runLoopStepAsyncGet() More... | |
Public Member Functions inherited from EngineClientInterface | |
| EngineClientInterface (ProcessLauncherInterface::unique_ptr &&launcher) | |
| virtual | ~EngineClientInterface () |
| virtual void | initialize ()=0 |
| Initialize engine. More... | |
| virtual void | reset ()=0 |
| Reset engine. More... | |
| virtual void | shutdown ()=0 |
| Shutdown engine. More... | |
Protected Member Functions | |
| nlohmann::json | sendInitCommand (const nlohmann::json &data) |
| Send an initialization command. More... | |
| nlohmann::json | sendResetCommand (const nlohmann::json &data) |
| Send a reset command. More... | |
| nlohmann::json | sendShutdownCommand (const nlohmann::json &data) |
| Send a shutdown command. More... | |
| std::string | waitForRegistration (unsigned int numTries, unsigned int waitTime) const |
| Wait for the engine registration server to receive a call from the engine. More... | |
Protected Member Functions inherited from EngineClient< ENGINE, SCHEMA > | |
| virtual void | resetEngineTime () |
| template<class T > | |
| void | setDefaultProperty (std::string key, T value) |
| Attempts to set a default value for a property in the engine configuration. If the property has been already set either in the engine configuration file or from the engine schema, its value is not overwritten. More... | |
Additional Inherited Members | |
Public Types inherited from EngineClient< ENGINE, SCHEMA > | |
| using | engine_t = ENGINE |
Public Types inherited from PtrTemplates< EngineClientInterface > | |
| using | shared_ptr = std::shared_ptr< EngineClientInterface > |
| using | const_shared_ptr = std::shared_ptr< const EngineClientInterface > |
| using | unique_ptr = std::unique_ptr< EngineClientInterface > |
| using | const_unique_ptr = std::unique_ptr< const EngineClientInterface > |
Protected Attributes inherited from EngineClientInterface | |
| ProcessLauncherInterface::unique_ptr | _process |
| Process Launcher. Will be used to stop process at end. More... | |
NRP - Gazebo Communicator on the NRP side. Converts DataPackInterface classes from/to JSON objects.
| ENGINE_INTERFACE | Class derived from GeneralInterface. Currently either PhysicsInterface or BrainInterface |
|
inline |
Constructor.
| config | Engine Config |
| launcher | Process launcher |
|
inline |
Constructor.
| serverAddress | Server Address to send requests to |
| config | Engine Config |
| launcher | Process launcher |
|
overridevirtualdefault |
|
inlineoverridevirtual |
Get all Engine Process Startup parameters.
Implements EngineClientInterface.
|
inlineoverridevirtual |
Gets requested datapacks from engine.
| datapackNames | All requested datapack ids |
| Throws | on error |
Implements EngineClientInterface.
|
inlineoverridevirtual |
Launch the engine.
Reimplemented from EngineClientInterface.
|
inlineoverridevirtual |
Sends datapacks to engine.
| datapacksArray | Array of datapacks that will be send to the engine |
| Throws | on error |
Implements EngineClientInterface.
|
inlineprotected |
Send an initialization command.
| data | Data that should be passed to the engine |
|
inlineprotected |
Send a reset command.
| data | Data that should be passed to the engine |
|
inlineprotected |
Send a shutdown command.
| data | Data that should be passed to the engine |
|
inlineprotected |
Wait for the engine registration server to receive a call from the engine.
| numTries | Number of times to check the registration server for an address |
| waitTime | Wait time (in seconds) between checks |