Index: DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlOutput.cs =================================================================== diff -u -r1221 -r1565 --- DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlOutput.cs (.../FillDamFromXmlOutput.cs) (revision 1221) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlOutput.cs (.../FillDamFromXmlOutput.cs) (revision 1565) @@ -23,13 +23,15 @@ using System.Linq; using Deltares.DamEngine.Data.General; using Deltares.DamEngine.Data.General.Results; +using Deltares.DamEngine.Data.General.TimeSeries; using Deltares.DamEngine.Data.Geometry; using Deltares.DamEngine.Data.Geotechnics; using Deltares.DamEngine.Data.RegionalAssessmentResults; using Deltares.DamEngine.Data.Standard; using Deltares.DamEngine.Data.Standard.Logging; using Deltares.DamEngine.Io.XmlOutput; using DesignResult = Deltares.DamEngine.Io.XmlOutput.DesignResult; +using TimeSerie = Deltares.DamEngine.Io.XmlOutput.TimeSerie; namespace Deltares.DamEngine.Interface { @@ -62,9 +64,64 @@ CreateLocationResultsOutput(output, damProjectData); } } + if (output.Results.OperationalOuputTimeSeries != null) + { + damProjectData.OutputTimeSerieCollection = new TimeSerieCollection(); + TransferOutputTimeSeries(output.Results.OperationalOuputTimeSeries, damProjectData.OutputTimeSerieCollection); + } return damProjectData; } + private static void TransferOutputTimeSeries(TimeSerie[] outputTimeSeries, TimeSerieCollection outputTimeSerieCollection) + { + foreach (var outputTimeSerie in outputTimeSeries) + { + var timeSerie = outputTimeSerieCollection.AddNewSeries(outputTimeSerie.LocationId); + timeSerie.ParameterId = outputTimeSerie.ParameterId; + timeSerie.ForecastDateTime = outputTimeSerie.ForecastDateTime; + timeSerie.Type = outputTimeSerie.Type; + timeSerie.StartDateTime = outputTimeSerie.StartDateTime; + timeSerie.EndDateTime = outputTimeSerie.EndDateTime; + timeSerie.MissVal = outputTimeSerie.MissVal; + timeSerie.LongName = outputTimeSerie.LongName; + timeSerie.StationName = outputTimeSerie.StationName; + timeSerie.Units = outputTimeSerie.Units; + timeSerie.SourceOrganisation = outputTimeSerie.SourceOrganisation; + timeSerie.SourceSystem = outputTimeSerie.SourceSystem; + timeSerie.FileDescription = outputTimeSerie.FileDescription; + timeSerie.Region = outputTimeSerie.Region; + timeSerie.TimeStep.Multiplier = outputTimeSerie.TimeStep.Multiplier; + timeSerie.TimeStep.Divider = outputTimeSerie.TimeStep.Divider; + timeSerie.TimeStep.MultiplierSpecified = outputTimeSerie.TimeStep.MultiplierSpecified1; + timeSerie.TimeStep.DividerSpecified = outputTimeSerie.TimeStep.DividerSpecified1; + timeSerie.TimeStep.Unit = ConversionHelper.ConvertToTimeStepUnit(outputTimeSerie.TimeStep.TimeStepUnit); + for (int i = 0; i < outputTimeSerie.Entries.TimeSerieEntry.Length; i++) + { + var entry = outputTimeSerie.Entries.TimeSerieEntry[i]; + Stochast stochastValue = null; + if (entry.StochastValue != null) + { + stochastValue = new Stochast() + { + Distribution = entry.StochastValue.Distribution, + Mean = entry.StochastValue.Mean, + StandardDeviation = entry.StochastValue.StandardDeviation + }; + } + TimeSerieEntry timeSerieEntry = new TimeSerieEntry() + { + DateTime = entry.DateTime, + Value = entry.Value, + BasisFileName = entry.BasisFileNameWMF, + Flag = entry.Flagnietechtgebruikt, + RelativeCalculationPathName = entry.RelativeCalculationPathName, + StochastValue = stochastValue + }; + timeSerie.Entries.Add(timeSerieEntry); + } + } + } + private static void CreateDesignResultsOutput(Output output, DamProjectData damProjectData) { // Design results