.. index:: pair: class; FTILoop .. _doxid-class_f_t_i_loop: class FTILoop ============= .. toctree:: :hidden: Overview ~~~~~~~~ Manages simulation loop. Runs physics and brain interface, and synchronizes them via Transfer Functions. :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class FTILoop: public :ref:`PtrTemplates` { public: // construction :target:`FTILoop`(); :target:`FTILoop`( :ref:`jsonSharedPtr` config, :ref:`DataPackProcessor::engine_interfaces_t` engines, :ref:`SimulationDataManager`* simulationDataManager ); // methods void :ref:`initLoop`(); void :ref:`resetLoop`(); void :ref:`shutdownLoop`(); void :ref:`waitForEngines`(); void :ref:`runLoop`(:ref:`SimulationTime` runLoopTime); :ref:`SimulationTime` :ref:`getSimTime`() const; }; Inherited Members ----------------- .. ref-code-block:: cpp :class: doxyrest-overview-inherited-code-block public: // typedefs typedef std::shared_ptr :ref:`shared_ptr`; typedef std::shared_ptr :ref:`const_shared_ptr`; typedef std::unique_ptr :ref:`unique_ptr`; typedef std::unique_ptr :ref:`const_unique_ptr`; .. _details-class_f_t_i_loop: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Manages simulation loop. Runs physics and brain interface, and synchronizes them via Transfer Functions. Methods ------- .. index:: pair: function; initLoop .. _doxid-class_f_t_i_loop_1a985fac90b7663ea39391d095ff1c160b: .. ref-code-block:: cpp :class: doxyrest-title-code-block void initLoop() Initialize engines before running loop. .. index:: pair: function; resetLoop .. _doxid-class_f_t_i_loop_1ac0523f0fa4026b4b2c1ec622d5655465: .. ref-code-block:: cpp :class: doxyrest-title-code-block void resetLoop() Reset engines of the loop. .. index:: pair: function; shutdownLoop .. _doxid-class_f_t_i_loop_1a1ec08d246fbbd1003b43e5110fe4ef56: .. ref-code-block:: cpp :class: doxyrest-title-code-block void shutdownLoop() Shutdown engines. .. index:: pair: function; waitForEngines .. _doxid-class_f_t_i_loop_1a1a7629f68486377809cd2c20c768b648: .. ref-code-block:: cpp :class: doxyrest-title-code-block void waitForEngines() Blocks until all running Engines finishe their execution. .. index:: pair: function; runLoop .. _doxid-class_f_t_i_loop_1adedc0d66c8e286e31c3b00dcd9ee46dc: .. ref-code-block:: cpp :class: doxyrest-title-code-block void runLoop(:ref:`SimulationTime` runLoopTime) Runs simulation for a total of runLoopTime (in s) .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - runLoopTime - Time (in s) to run simulation. At end, will run TransceiverFunctions .. index:: pair: function; getSimTime .. _doxid-class_f_t_i_loop_1a61e3bc08a20c2a09e45858c1d17c2277: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`SimulationTime` getSimTime() const Get Simulation Time (in seconds) .. rubric:: Returns: Returns time passed in simulation (in seconds)