Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS has been phased out. To see alternatives please check here

Skip to content
Snippets Groups Projects
Commit d5bd613a authored by Markus Quaritsch's avatar Markus Quaritsch
Browse files

adding new column for correct sorting, change signature of writeSumData...

adding new column for correct sorting, change signature of writeSumData passing job number and run-number
parent 996cdd10
Branches
Tags
No related merge requests found
......@@ -156,7 +156,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
var current = i++;
var builder = new PowertrainBuilder(modContainer, (modData) => {
if (SumData != null) {
SumData.Write(modData, string.Format("{0}-{1}", JobNumber, current), d);
SumData.Write(modData, JobNumber, current, d);
//SumData.Write(modContainer, d.JobName, string.Format("{0}-{1}", JobNumber, current),
// d.Cycle.Name + Constants.FileExtensions.CycleFile, mass, loading, volume ?? 0.SI<CubicMeter>(), gearCount);
}
......
......@@ -30,6 +30,7 @@
*/
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Runtime.CompilerServices;
......@@ -52,6 +53,8 @@ namespace TUGraz.VectoCore.OutputData
public class SummaryDataContainer : LoggingObject, IDisposable
{
// ReSharper disable InconsistentNaming
public const string INTERNAL_PREFIX = "INTERNAL";
public const string SORT = INTERNAL_PREFIX + " Sorting";
public const string JOB = "Job [-]";
public const string INPUTFILE = "Input File [-]";
public const string CYCLE = "Cycle [-]";
......@@ -197,6 +200,7 @@ namespace TUGraz.VectoCore.OutputData
_table = new DataTable();
_table.Columns.AddRange(new[] {
Tuple.Create(SORT, typeof(int)),
Tuple.Create(JOB, typeof(string)),
Tuple.Create(INPUTFILE, typeof(string)),
Tuple.Create(CYCLE, typeof(string)),
......@@ -276,7 +280,13 @@ namespace TUGraz.VectoCore.OutputData
public virtual void Finish()
{
if (_sumWriter != null) {
_sumWriter.WriteSumData(new DataView(_table, "", JOB, DataViewRowState.CurrentRows).ToTable());
var view = new DataView(_table, "", SORT, DataViewRowState.CurrentRows).ToTable();
var toRemove =
view.Columns.Cast<DataColumn>().Where(column => column.ColumnName.StartsWith(INTERNAL_PREFIX)).ToList();
foreach (var dataColumn in toRemove) {
view.Columns.Remove(dataColumn);
}
_sumWriter.WriteSumData(view);
}
}
......@@ -286,12 +296,13 @@ namespace TUGraz.VectoCore.OutputData
[MethodImpl(MethodImplOptions.Synchronized)]
//public virtual void Write(IModalDataContainer modData, string jobFileName, string jobName, string cycleFileName,
// Kilogram vehicleMass, Kilogram vehicleLoading, CubicMeter cargoVolume, uint gearCount)
public virtual void Write(IModalDataContainer modData, string current, VectoRunData runData)
public virtual void Write(IModalDataContainer modData, int jobNr, int runNr, VectoRunData runData)
{
var row = _table.NewRow();
_table.Rows.Add(row);
row[JOB] = ReplaceNotAllowedCharacters(current);
row[SORT] = jobNr * 1000 + runNr;
row[JOB] = string.Format("{0}-{1}", jobNr, runNr); //ReplaceNotAllowedCharacters(current);
row[INPUTFILE] = ReplaceNotAllowedCharacters(runData.JobName);
row[CYCLE] = ReplaceNotAllowedCharacters(runData.Cycle.Name + Constants.FileExtensions.CycleFile);
......
......@@ -73,7 +73,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
var sumWriter = new SummaryDataContainer(fileWriter);
var container = new VehicleContainer(ExecutionMode.Declaration, modData,
(modalData) => sumWriter.Write(modalData, "AuxWriteSumFile", new MockRunData()));
(modalData) => sumWriter.Write(modalData, 0, 0, new MockRunData()));
var data = DrivingCycleDataReader.ReadFromFile(@"TestData\Cycles\LongHaul_short.vdri", CycleType.DistanceBased, false);
new MockDrivingCycle(container, data);
......
......@@ -37,7 +37,7 @@ namespace TUGraz.VectoCore.Tests.Models.Simulation
{
public class MockSumWriter : SummaryDataContainer
{
public override void Write(IModalDataContainer modData, string jobFileName, VectoRunData runData) {}
public override void Write(IModalDataContainer modData, int jobNr, int runNr, VectoRunData runData) {}
public override void Finish() {}
}
......
......@@ -159,7 +159,7 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponent
new FileOutputWriter(string.Format("AT_Vehicle_Drive-TC_{0}-{1}", cycleName,
gbxType == GearboxType.ATSerial ? "ser" : "ps")));
((VehicleContainer)run.GetContainer()).WriteSumData = (modData) =>
sumWriter.Write(run.GetContainer().ModalData, string.Format("{0}-{1}", 0, 0), run.GetContainer().RunData);
sumWriter.Write(run.GetContainer().ModalData, 0, 0, run.GetContainer().RunData);
run.Run();
sumWriter.Finish();
Assert.IsTrue(run.FinishedWithoutErrors);
......
......@@ -82,7 +82,7 @@ namespace TUGraz.VectoCore.Tests.Reports
modData.CommitSimulationStep();
}
sumWriter.Write(modData, "testSumCalc", new MockRunData());
sumWriter.Write(modData, 0, 0, new MockRunData());
modData.Finish(VectoRun.Status.Success);
sumWriter.Finish();
......@@ -140,7 +140,7 @@ namespace TUGraz.VectoCore.Tests.Reports
modData.CommitSimulationStep();
}
sumWriter.Write(modData, "testSumCalc", new MockRunData());
sumWriter.Write(modData, 0, 0, new MockRunData());
modData.Finish(VectoRun.Status.Success);
sumWriter.Finish();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment