NRP Core  1.4.1
PythonEngineJSONNRPClient Class Reference

PythonJSONEngine client. More...

#include <python_engine_json_nrp_client.h>

Inheritance diagram for PythonEngineJSONNRPClient:
PythonEngineJSONNRPClientBase< PythonEngineJSONNRPClient, PythonConfigConst::EngineSchema > EngineJSONNRPClient< PythonEngineJSONNRPClient, SCHEMA > EngineClient< PythonEngineJSONNRPClient, SCHEMA > EngineClientInterface PtrTemplates< EngineClientInterface >

Public Member Functions

 PythonEngineJSONNRPClient (nlohmann::json &config, ProcessLauncherInterface::unique_ptr &&launcher)
 
- Public Member Functions inherited from PythonEngineJSONNRPClientBase< PythonEngineJSONNRPClient, PythonConfigConst::EngineSchema >
 PythonEngineJSONNRPClientBase (nlohmann::json &config, ProcessLauncherInterface::unique_ptr &&launcher)
 
virtual ~PythonEngineJSONNRPClientBase () override
 
virtual void initialize () override
 Initialize engine. More...
 
virtual void reset () override
 Reset engine. More...
 
virtual void shutdown () override
 Shutdown engine. More...
 
- Public Member Functions inherited from EngineJSONNRPClient< PythonEngineJSONNRPClient, SCHEMA >
 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 datapacks_vector_t getDataPacksFromEngine (const datapack_identifiers_set_t &requestedDataPackIds) override
 Gets requested datapacks from engine. More...
 
- Public Member Functions inherited from EngineClient< PythonEngineJSONNRPClient, 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::jsonengineConfig () const override final
 Get Engine Configuration. More...
 
nlohmann::jsonengineConfig () 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 const std::string engineName () const =0
 Get Engine Name. More...
 
virtual const nlohmann::jsonengineConfig () const =0
 Get engine config data. More...
 
virtual const std::vector< std::string > engineProcStartParams () const =0
 Get all Engine Process Startup parameters. More...
 
virtual SimulationTime getEngineTimestep () const =0
 Get engine timestep. More...
 
virtual SimulationTime getEngineTime () const =0
 Get current engine time. More...
 
virtual const std::string engineSchema () const =0
 Get json schema for this specific engine type. More...
 

Additional Inherited Members

- Public Types inherited from EngineClient< PythonEngineJSONNRPClient, SCHEMA >
using engine_t = PythonEngineJSONNRPClient
 
- 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 Member Functions inherited from EngineJSONNRPClient< PythonEngineJSONNRPClient, SCHEMA >
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< PythonEngineJSONNRPClient, SCHEMA >
virtual void resetEngineTime ()
 
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...
 
- Protected Attributes inherited from EngineClientInterface
ProcessLauncherInterface::unique_ptr _process
 Process Launcher. Will be used to stop process at end. More...
 

Detailed Description

PythonJSONEngine client.

Constructor & Destructor Documentation

◆ PythonEngineJSONNRPClient()

PythonEngineJSONNRPClient::PythonEngineJSONNRPClient ( nlohmann::json config,
ProcessLauncherInterface::unique_ptr &&  launcher 
)
inline

The documentation for this class was generated from the following file: