Index: DamEngine/trunk/src/Deltares.DamEngine.Interface/FillXmlOutputFromDam.cs =================================================================== diff -u -r1388 -r1565 --- DamEngine/trunk/src/Deltares.DamEngine.Interface/FillXmlOutputFromDam.cs (.../FillXmlOutputFromDam.cs) (revision 1388) +++ DamEngine/trunk/src/Deltares.DamEngine.Interface/FillXmlOutputFromDam.cs (.../FillXmlOutputFromDam.cs) (revision 1565) @@ -20,8 +20,9 @@ // All rights reserved. using Deltares.DamEngine.Data.General; -using Deltares.DamEngine.Data.Standard.Logging; +using Deltares.DamEngine.Data.General.TimeSeries; using Deltares.DamEngine.Io.XmlOutput; +using TimeSerie = Deltares.DamEngine.Io.XmlOutput.TimeSerie; namespace Deltares.DamEngine.Interface { @@ -345,6 +346,69 @@ jobtel++; } } + if (damProjectData.OutputTimeSerieCollection != null) + { + output.Results.OperationalOuputTimeSeries = new TimeSerie[damProjectData.OutputTimeSerieCollection.Series.Count]; + TransferOutputTimeSeries(damProjectData.OutputTimeSerieCollection, output.Results.OperationalOuputTimeSeries); + } } + + private static void TransferOutputTimeSeries(TimeSerieCollection outputTimeSerieCollection, TimeSerie[] outputTimeSeries) + { + int timeSerieIndex = 0; + foreach (var damTimeSerie in outputTimeSerieCollection.Series) + { + TimeSerie outputTimeSerie = new TimeSerie(); + outputTimeSerie.Entries = new TimeSerieEntries(); + outputTimeSerie.Entries.TimeSerieEntry = new TimeSerieEntriesTimeSerieEntry[damTimeSerie.Entries.Count]; + outputTimeSerie.TimeStep = new TimeSerieTimeStep(); + outputTimeSerie.LocationId = damTimeSerie.LocationId; + outputTimeSerie.ParameterId = damTimeSerie.ParameterId; + outputTimeSerie.ForecastDateTime = damTimeSerie.ForecastDateTime; + outputTimeSerie.Type = damTimeSerie.Type; + outputTimeSerie.StartDateTime = damTimeSerie.StartDateTime; + outputTimeSerie.EndDateTime = damTimeSerie.EndDateTime; + outputTimeSerie.MissVal = damTimeSerie.MissVal; + outputTimeSerie.LongName = damTimeSerie.LongName; + outputTimeSerie.StationName = damTimeSerie.StationName; + outputTimeSerie.Units = damTimeSerie.Units; + outputTimeSerie.SourceOrganisation = damTimeSerie.SourceOrganisation; + outputTimeSerie.SourceSystem = damTimeSerie.SourceSystem; + outputTimeSerie.FileDescription = damTimeSerie.FileDescription; + outputTimeSerie.Region = damTimeSerie.Region; + outputTimeSerie.TimeStep.Multiplier = damTimeSerie.TimeStep.Multiplier; + outputTimeSerie.TimeStep.Divider = damTimeSerie.TimeStep.Divider; + outputTimeSerie.TimeStep.MultiplierSpecified1 = damTimeSerie.TimeStep.MultiplierSpecified; + outputTimeSerie.TimeStep.DividerSpecified1 = damTimeSerie.TimeStep.DividerSpecified; + outputTimeSerie.TimeStep.TimeStepUnit = ConversionHelper.ConvertToInputTimeStepUnit(damTimeSerie.TimeStep.Unit); + int timeSerieEntryIndex = 0; + foreach (var timestepEntry in damTimeSerie.Entries) + { + TimeSerieEntriesTimeSerieEntryStochastValue stochastValue = null; + if (timestepEntry.StochastValue != null) + { + stochastValue = new TimeSerieEntriesTimeSerieEntryStochastValue() + { + Distribution = timestepEntry.StochastValue.Distribution, + Mean = timestepEntry.StochastValue.Mean, + StandardDeviation = timestepEntry.StochastValue.StandardDeviation + }; + } + TimeSerieEntriesTimeSerieEntry timeStep = new TimeSerieEntriesTimeSerieEntry() + { + DateTime = timestepEntry.DateTime, + Value = timestepEntry.Value, + BasisFileNameWMF = timestepEntry.BasisFileName, + Flagnietechtgebruikt = timestepEntry.Flag, + RelativeCalculationPathName = timestepEntry.RelativeCalculationPathName, + StochastValue = stochastValue + }; + outputTimeSerie.Entries.TimeSerieEntry[timeSerieEntryIndex] = timeStep; + timeSerieEntryIndex++; + } + outputTimeSeries[timeSerieIndex] = outputTimeSerie; + timeSerieIndex++; + } + } } }