Helper class for FTILoop encapsulating the datapack operations between Engines in a simulation loop. More...
#include <datapack_handle.h>
Public Types | |
using | engine_interfaces_t = std::vector< EngineClientInterfaceSharedPtr > |
Public Member Functions | |
DataPackProcessor ()=delete | |
DataPackProcessor (SimulationDataManager *simulationDataManager) | |
virtual | ~DataPackProcessor ()=default |
virtual void | init (const jsonSharedPtr &simConfig, const engine_interfaces_t &engines)=0 |
Initializes the handler. More... | |
virtual void | updateDataPacksFromEngines (const std::vector< EngineClientInterfaceSharedPtr > &engines)=0 |
Request datapacks from engines. More... | |
virtual void | compute (const std::vector< EngineClientInterfaceSharedPtr > &engines)=0 |
Perform computations on datapacks. More... | |
virtual void | sendDataPacksToEngines (const std::vector< EngineClientInterfaceSharedPtr > &engines)=0 |
Send datapacks to engines. More... | |
virtual void | postEngineInit (const std::vector< EngineClientInterfaceSharedPtr > &) |
Performs post-engine-initialization DataPack operations. More... | |
virtual void | preEngineReset (const std::vector< EngineClientInterfaceSharedPtr > &) |
Performs pre-engine-reset DataPack operations. More... | |
virtual void | postEngineReset (const std::vector< EngineClientInterfaceSharedPtr > &) |
Performs post-engine-reset DataPack operations. More... | |
void | datapackCycle (const std::vector< EngineClientInterfaceSharedPtr > &engines) |
Execute sequentially the update, compute and send operations. More... | |
void | setSimulationTime (SimulationTime simulationTime) |
void | setSimulationIteration (unsigned long simulationIteration) |
Protected Attributes | |
SimulationDataManager * | _simulationDataManager |
SimulationTime | _simulationTime = SimulationTime::zero() |
unsigned long | _simulationIteration = 0L |
Helper class for FTILoop encapsulating the datapack operations between Engines in a simulation loop.
using DataPackProcessor::engine_interfaces_t = std::vector<EngineClientInterfaceSharedPtr> |
|
delete |
|
inline |
|
virtualdefault |
|
pure virtual |
Perform computations on datapacks.
engines | Engines that are been synchronize in the current loop |
Implemented in ComputationalGraphHandle, and TFManagerHandle.
|
inline |
Execute sequentially the update, compute and send operations.
engines | Engines that are been synchronize in the current loop |
clientData | Extra data coming from the NRP Client, will be passed to the status function |
|
pure virtual |
Initializes the handler.
simConfig | json object containing configuration information to initialize the handler |
engines | list of Engine clients participating in the simulation |
Implemented in ComputationalGraphHandle, and TFManagerHandle.
|
inlinevirtual |
Performs post-engine-initialization DataPack operations.
engines | Vector of engines for which the post-init step should be performed |
Reimplemented in TFManagerHandle.
|
inlinevirtual |
Performs post-engine-reset DataPack operations.
engines | Vector of engines for which the post-reset step should be performed |
Reimplemented in TFManagerHandle.
|
inlinevirtual |
Performs pre-engine-reset DataPack operations.
engines | Vector of engines for which the pre-init step should be performed |
Reimplemented in TFManagerHandle.
|
pure virtual |
Send datapacks to engines.
engines | Engines that are been synchronize in the current loop |
Implemented in ComputationalGraphHandle, and TFManagerHandle.
|
inline |
|
inline |
|
pure virtual |
Request datapacks from engines.
engines | Engines that are been synchronize in the current loop |
Implemented in ComputationalGraphHandle, and TFManagerHandle.
|
protected |
|
protected |
|
protected |