diff --git a/VectoCore/VectoCore/Models/Simulation/ISimulatorFactoryFactory.cs b/VectoCore/VectoCore/Models/Simulation/ISimulatorFactoryFactory.cs index 50ae3f960f513050dfe7b4611240cb0f67ae1104..b4dbdd2b4cb617e928bf54284410f08b23e7b4a7 100644 --- a/VectoCore/VectoCore/Models/Simulation/ISimulatorFactoryFactory.cs +++ b/VectoCore/VectoCore/Models/Simulation/ISimulatorFactoryFactory.cs @@ -39,13 +39,14 @@ namespace TUGraz.VectoCore.Models.Simulation { ISimulatorFactory Factory( ExecutionMode mode, IInputDataProvider dataProvider, - IOutputDataWriter writer); + IOutputDataWriter writer, bool validate = true); ISimulatorFactory Factory(ExecutionMode mode, IInputDataProvider dataProvider, IOutputDataWriter writer, - IDeclarationReport declarationReport = null, - IVTPReport vtpReport = null, - bool validate = true); + IDeclarationReport declarationReport, + IVTPReport vtpReport, + bool validate = true + ); } } diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs index ef7444711877001fc6ee17bb7f367e7dca599125..8733715099fbd1371d573936ca03c34ddb0d216e 100644 --- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs +++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactory.cs @@ -71,8 +71,18 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory public ISimulatorFactory FollowUpSimulatorFactory { - get => CreateFollowUpSimulatorFactory ? _followingSimulatorFactoryCreator?.Invoke() : null; + get + { + if (!CreateFollowUpSimulatorFactory) + return null; + + + Log.Info("Starting next Simulation Step\n"); + return _followingSimulatorFactoryCreator?.Invoke(); + + } } + public bool CreateFollowUpSimulatorFactory { get; set; } = false; protected readonly ExecutionMode _mode; diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs index 56ad894eacbefb737a1b96523fe16cb06360bee1..cbc96b733c139f4b90cdd476be07b7d2e7019110 100644 --- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs +++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory/SimulatorFactoryDeclaration.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Configuration; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -28,9 +29,10 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory IOutputDataWriter writer, IDeclarationReport declarationReport, IVTPReport vtpReport, + bool validate, IXMLInputDataReader xmlInputDataReader, - ISimulatorFactoryFactory simulatorFactoryFactory, - bool validate) : base(ExecutionMode.Declaration, writer, validate) + ISimulatorFactoryFactory simulatorFactoryFactory + ) : base(ExecutionMode.Declaration, writer, validate) { _xmlInputDataReader = xmlInputDataReader; _simFactoryFactory = simulatorFactoryFactory; @@ -38,7 +40,20 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory if (_simulate) { CreateDeclarationDataReader(dataProvider, declarationReport, vtpReport); } - + } + + public SimulatorFactoryDeclaration(IInputDataProvider dataProvider, + IOutputDataWriter writer, IXMLInputDataReader xmlInputDataReader, + ISimulatorFactoryFactory simulatorFactoryFactory, bool validate) : this( + dataProvider: dataProvider, + declarationReport: null, + writer: writer, + vtpReport: null, + validate: true, + xmlInputDataReader: xmlInputDataReader, + simulatorFactoryFactory: simulatorFactoryFactory) + { + } private bool CanBeSimulated(IInputDataProvider dataProvider)