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 a834823b authored by Franz KOBER josef's avatar Franz KOBER josef
Browse files

started with report for Mockup

parent 9090b603
No related branches found
No related tags found
No related merge requests found
...@@ -41,6 +41,7 @@ using TUGraz.VectoCore.OutputData.XML; ...@@ -41,6 +41,7 @@ using TUGraz.VectoCore.OutputData.XML;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9;
using TUGraz.VectoCore.OutputData.XML.ComponentWriter; using TUGraz.VectoCore.OutputData.XML.ComponentWriter;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1;
using TUGraz.VectoCore.OutputData.XML.Engineering; using TUGraz.VectoCore.OutputData.XML.Engineering;
using TUGraz.VectoCore.OutputData.XML.GroupWriter; using TUGraz.VectoCore.OutputData.XML.GroupWriter;
...@@ -92,6 +93,8 @@ namespace TUGraz.VectoCore ...@@ -92,6 +93,8 @@ namespace TUGraz.VectoCore
LoadModule<MRFNinjectModule>(); LoadModule<MRFNinjectModule>();
LoadModule<CIFNinjectModule>(); LoadModule<CIFNinjectModule>();
LoadModule<VIFNinjectModule>();
#if (MOCKUP) //TODO: add second constant for release #if (MOCKUP) //TODO: add second constant for release
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCommon.Resources;
using TUGraz.VectoCore.Models.Declaration;
using TUGraz.VectoCore.Models.Simulation.Data;
namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1
{
public abstract class AbstractVIFReport : IXMLPrimaryVehicleReport
{
private XDocument _report;
private XNamespace _tns;
protected readonly IVIFReportFactory _vifFactory;
protected XNamespace xsi = XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance");
public static XNamespace VIF => XNamespace.Get("urn:tugraz:ivt:VectoAPI:DeclarationOutput:VehicleInterimFile:v0.1");
public abstract string OutputDataType { get; }
protected XElement Vehicle { get; set; }
protected XElement Results { get; set; }
protected AbstractVIFReport(IVIFReportFactory vifFactory)
{
_vifFactory = vifFactory;
}
public abstract void InitializeVehicleData(IDeclarationInputDataProvider inputData);
#region Implementation of IXMLPrimaryVehicleReport
public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
{
InitializeVehicleData(modelData.InputData);
Results = new XElement(VIF + XMLNames.Report_Results);
}
private List<XMLDeclarationReport.ResultEntry> results = new List<XMLDeclarationReport.ResultEntry>();
public void WriteResult(XMLDeclarationReport.ResultEntry result)
{
results.Add(result);
}
public void GenerateReport(XElement fullReportHash)
{
//ToDo add missing namespaces and
Report = new XDocument(new XElement(VIF + "VectoOutputMultistep",
new XAttribute("xmlns", VIF),
new XAttribute(XNamespace.Xmlns + "xsi", xsi)),
Vehicle,
Results
);
}
public XDocument Report { get; protected set; }
public XNamespace Tns => _tns;
#endregion
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCommon.Models;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportGroupWriter;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1
{
public interface IVIFReportFactory
{
IXMLPrimaryVehicleReport GetVIFReport(VehicleCategory vehicleType, VectoSimulationJobType jobType,
ArchitectureID archId, bool exempted, bool iepc, bool ihpc);
#region Vehicle
IXmlTypeWriter GetConventionalLorryVehicleType();
#endregion
#region Components
IXmlTypeWriter GetAdasType();
IXmlTypeWriter GetAngelDriveType();
IXmlTypeWriter GetAuxiliaryType();
IXmlTypeWriter GetAxlegearType();
IXmlTypeWriter GetAxleWheelsType();
IXmlTypeWriter GetBoostingLimitationsType();
IXmlTypeWriter GetElectricMotorTorqueLimitsType();
IXmlTypeWriter GetEngineType();
IXmlTypeWriter GetTorqueConvertType();
IXmlTypeWriter GetTorqueLimitsType();
IXmlTypeWriter GetTransmissionType();
#endregion
#region Groups
IReportOutputGroup GetConventionalVehicleGroup();
IReportOutputGroup GetPrimaryBusGeneralParameterGroup();
IReportOutputGroup GetPrimaryBusChassisParameterGroup();
IReportOutputGroup GetPrimaryBusRetarderParameterGroup();
IReportOutputGroup GetPrimaryBusXeVParameterGroup();
IReportOutputGroup GetHevIepcSVehicleGroup();
IReportOutputGroup GetHevSxVehicleGroup();
IReportOutputGroup GetIepcVehicleGroup();
IReportOutputGroup GetPEVVehicleGroup();
#endregion
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TUGraz.VectoCommon.InputData;
namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1.VIFReport
{
internal class PrimaryVIFReportBase : AbstractVIFReport
{
private string _outputDataType;
public PrimaryVIFReportBase(IVIFReportFactory vifFactory) : base(vifFactory) { }
#region Overrides of AbstractVIFReport
public override string OutputDataType => _outputDataType;
public override void InitializeVehicleData(IDeclarationInputDataProvider inputData)
{
//Vehicle
//InputDataSignature
//ManufacturerRecordSignature
//Results
//ApplicationInformation
throw new NotImplementedException();
}
#endregion
}
}
...@@ -3,19 +3,111 @@ using System.Collections.Generic; ...@@ -3,19 +3,111 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using TUGraz.VectoCommon.InputData;
using TUGraz.VectoCommon.Models;
using TUGraz.VectoCore; using TUGraz.VectoCore;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportGroupWriter;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1;
using TUGraz.VectoMockup.Reports;
namespace TUGraz.VectoMockup.Ninject namespace TUGraz.VectoMockup.Ninject
{ {
internal class VIFMockupModulen : AbstractNinjectModule internal class VIFMockupModule : AbstractNinjectModule
{ {
#region Overrides of NinjectModule #region Overrides of NinjectModule
public override void Load() public override void Load()
{ {
Kernel.Bind<IVIFReportFactory>().To<MockupVIFReportFactory>()
.WhenInjectedExactlyInto<MockupReportFactory>().InSingletonScope();
}
#endregion
public class MockupVIFReportFactory : IVIFReportFactory
{
private IVIFReportFactory _vifReportFactoryImplementation;
public MockupVIFReportFactory(IVIFReportFactory vifReportFactoryImplementation)
{
_vifReportFactoryImplementation = vifReportFactoryImplementation;
}
#region Implementation of IVIFReportFactory
public IXMLPrimaryVehicleReport GetVIFReport(VehicleCategory vehicleType, VectoSimulationJobType jobType, ArchitectureID archId,
bool exempted, bool iepc, bool ihpc)
{
return new MockupVIFReport(
_vifReportFactoryImplementation.GetVIFReport(vehicleType, jobType, archId, exempted, iepc, ihpc));
}
public IXmlTypeWriter GetConventionalLorryVehicleType()
{
return _vifReportFactoryImplementation.GetConventionalLorryVehicleType();
}
public IXmlTypeWriter GetTorqueConvertType()
{
return _vifReportFactoryImplementation.GetTorqueConvertType();
}
public IXmlTypeWriter GetTorqueLimitsType()
{
return _vifReportFactoryImplementation.GetTorqueLimitsType();
}
public IXmlTypeWriter GetTransmissionType()
{
return _vifReportFactoryImplementation.GetTransmissionType();
}
public IReportOutputGroup GetConventionalVehicleGroup()
{
return _vifReportFactoryImplementation.GetConventionalVehicleGroup();
}
public IReportOutputGroup GetPrimaryBusGeneralParameterGroup()
{
throw new NotImplementedException();
}
public IXmlTypeWriter GetAdasType()
{
return _vifReportFactoryImplementation.GetAdasType();
}
public IXmlTypeWriter GetAngelDriveType()
{
return _vifReportFactoryImplementation.GetAngelDriveType();
}
public IXmlTypeWriter GetAuxiliaryType()
{
return _vifReportFactoryImplementation.GetAuxiliaryType();
}
public IXmlTypeWriter GetAxlegearType()
{
return _vifReportFactoryImplementation.GetAxlegearType();
}
public IXmlTypeWriter GetAxleWheelsType()
{
return _vifReportFactoryImplementation.GetAxleWheelsType();
}
public IXmlTypeWriter GetEngineType()
{
return _vifReportFactoryImplementation.GetEngineType();
} }
#endregion #endregion
} }
}
} }
...@@ -10,6 +10,7 @@ using TUGraz.VectoCore.OutputData; ...@@ -10,6 +10,7 @@ using TUGraz.VectoCore.OutputData;
using TUGraz.VectoCore.OutputData.XML; using TUGraz.VectoCore.OutputData.XML;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.CustomerInformationFile.CustomerInformationFile_0_9;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter; using TUGraz.VectoCore.OutputData.XML.DeclarationReports.ManufacturerReport.ManufacturerReport_0_9.ManufacturerReportXMLTypeWriter;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile.VehicleInformationFile_0_1;
namespace TUGraz.VectoMockup.Reports namespace TUGraz.VectoMockup.Reports
{ {
...@@ -17,6 +18,7 @@ namespace TUGraz.VectoMockup.Reports ...@@ -17,6 +18,7 @@ namespace TUGraz.VectoMockup.Reports
{ {
private readonly IManufacturerReportFactory _mrfFactory; private readonly IManufacturerReportFactory _mrfFactory;
private readonly ICustomerInformationFileFactory _cifFactory; private readonly ICustomerInformationFileFactory _cifFactory;
private readonly IVIFReportFactory _vifFactory;
#region Implementation of IXMLDeclarationReportFactory #region Implementation of IXMLDeclarationReportFactory
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
using TUGraz.VectoCore.Models.Declaration;
using TUGraz.VectoCore.Models.Simulation.Data;
using TUGraz.VectoCore.OutputData.XML;
using TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationFile;
namespace TUGraz.VectoMockup.Reports
{
public class MockupVIFReport : IXMLPrimaryVehicleReport, IXMLMockupReport
{
private XDocument _report;
private XNamespace _tns;
public MockupVIFReport(IXMLPrimaryVehicleReport vifReport)
{
}
//private XDocument _report;
//private VectoRunData _modelData;
//#region Implementation of IXMLMockupReport
//public void WriteMockupResult(XMLDeclarationReport.ResultEntry resultValue)
//{
// throw new NotImplementedException();
//}
//public void WriteMockupSummary(XMLDeclarationReport.ResultEntry resultValue)
//{
// throw new NotImplementedException();
//}
//#endregion
//#region Implementation of IXMLMultistageReport
//public void Initialize(VectoRunData modelData)
//{
// _modelData = modelData;
//}
//public XDocument Report => _report;
//public void GenerateReport()
//{
// throw new NotImplementedException();
//}
//#endregion
#region Implementation of IXMLPrimaryVehicleReport
public void Initialize(VectoRunData modelData, List<List<FuelData.Entry>> fuelModes)
{
throw new NotImplementedException();
}
public void WriteResult(XMLDeclarationReport.ResultEntry result)
{
throw new NotImplementedException();
}
public void GenerateReport(XElement fullReportHash)
{
throw new NotImplementedException();
}
public XDocument Report => _report;
public XNamespace Tns => _tns;
#endregion
#region Implementation of IXMLMockupReport
public void WriteMockupResult(XMLDeclarationReport.ResultEntry resultValue)
{
}
public void WriteMockupSummary(XMLDeclarationReport.ResultEntry resultValue)
{
}
#endregion
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment