Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Commit 4d2792f8 authored by Franz KOBER josef's avatar Franz KOBER josef
Browse files

added different auxiliary types

parent e15c205d
No related branches found
No related tags found
No related merge requests found
......@@ -1068,6 +1068,15 @@ namespace TUGraz.VectoCommon.Resources {
}
}
/// <summary>
/// Looks up a localized string similar to Clutch.
/// </summary>
public static string BusAux_Clutch {
get {
return ResourceManager.GetString("BusAux_Clutch", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to ElectricSystem.
/// </summary>
......
......@@ -1980,6 +1980,9 @@
<data name="CIF_OutputDataType_Exempted_CompletedBusOutputType" xml:space="preserve">
<value>Exempted_CompletedBusOutputType</value>
</data>
<data name="BusAux_Clutch" xml:space="preserve">
<value>Clutch</value>
</data>
<data name="ElectricMachine_P2_5GearRatios_Gear_Attr" xml:space="preserve">
<value>gear</value>
</data>
......
......@@ -196,4 +196,126 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
#endregion
}
public class VIFAuxiliaryHevPType : VIFAuxiliaryType
{
public VIFAuxiliaryHevPType(IVIFReportFactory vifFactory) : base(vifFactory) { }
#region Overrides of VIFAuxiliaryHevSType
public override XElement GetElement(IDeclarationInputDataProvider inputData)
{
var aux = inputData.JobInputData.Vehicle.Components.BusAuxiliaries;
if (aux != null)
return null;
return new XElement(_vif + XMLNames.Component_Auxiliaries,
new XElement(_vif + XMLNames.ComponentDataWrapper,
new XAttribute(_xsi + "type", "vif:AUX_HEV-P_PrimaryBusType"),
new XElement(_vif + XMLNames.BusAux_Fan,
new XElement(_vif + XMLNames.Auxiliaries_Auxiliary_Technology, aux.FanTechnology)),
GetSteeringPumpElement(aux.SteeringPumpTechnology),
GetElectricSystem(aux.ElectricSupply),
GetPneumaticSystem(aux.PneumaticSupply, aux.PneumaticConsumers),
GetHvac(aux.HVACAux)
));
}
#endregion
#region Overrides of VIFAuxiliaryHevSType
protected override XElement GetPneumaticSystem(IPneumaticSupplyDeclarationData pSupply, IPneumaticConsumersDeclarationData pConsumer)
{
return new XElement(_vif + XMLNames.BusAux_PneumaticSystem,
new XElement(_vif + XMLNames.Bus_SizeOfAirSupply, pSupply.CompressorSize),
new XElement(_vif + XMLNames.CompressorDrive, pSupply.CompressorDrive.GetLabel()),
new XElement(_vif + XMLNames.BusAux_Clutch, pSupply.Clutch),
new XElement(_vif + XMLNames.Bus_CompressorRatio, pSupply.Ratio.ToXMLFormat(3)),
new XElement(_vif + XMLNames.BusAux_PneumaticSystem_SmartcompressionSystem, pSupply.SmartAirCompression),
new XElement(_vif + XMLNames.BusAux_PneumaticSystem_SmartRegenerationSystem, pSupply.SmartRegeneration),
new XElement(_vif + XMLNames.Bus_AirsuspensionControl, GetXMLAirsuspensionControl(pConsumer.AirsuspensionControl)),
new XElement(_vif + XMLNames.BusAux_PneumaticSystem_SCRReagentDosing, pConsumer.AdBlueDosing == ConsumerTechnology.Pneumatically)
);
}
#endregion
}
public class VIFAuxiliaryIEPCType : VIFAuxiliaryType
{
public VIFAuxiliaryIEPCType(IVIFReportFactory vifFactory) : base(vifFactory) { }
#region Implementation of IXmlTypeWriter
public override XElement GetElement(IDeclarationInputDataProvider inputData)
{
var aux = inputData.JobInputData.Vehicle.Components.BusAuxiliaries;
if (aux != null)
return null;
return new XElement(_vif + XMLNames.Component_Auxiliaries,
new XElement(_vif + XMLNames.ComponentDataWrapper,
new XAttribute(_xsi + "type", "vif:AUX_IEPC_PrimaryBusType"),
GetSteeringPumpElement(aux.SteeringPumpTechnology),
GetPneumaticSystem(aux.PneumaticSupply, aux.PneumaticConsumers),
GetHvac(aux.HVACAux)
));
}
#endregion
#region Overrides of VIFAuxiliaryType
protected override XElement GetPneumaticSystem(IPneumaticSupplyDeclarationData pSupply, IPneumaticConsumersDeclarationData pConsumer)
{
return new XElement(_vif + XMLNames.BusAux_PneumaticSystem,
new XElement(_vif + XMLNames.CompressorDrive, pSupply.CompressorDrive.GetLabel()),
new XElement(_vif + XMLNames.Bus_SmartRegenerationSystem, pSupply.SmartRegeneration),
new XElement(_vif + XMLNames.Bus_AirsuspensionControl, GetXMLAirsuspensionControl(pConsumer.AirsuspensionControl)),
new XElement(_vif + XMLNames.BusAux_PneumaticSystem_SCRReagentDosing, pConsumer.AdBlueDosing == ConsumerTechnology.Pneumatically)
);
}
protected override XElement GetHvac(IHVACBusAuxiliariesDeclarationData hvac)
{
return new XElement(new XElement(_vif + XMLNames.BusAux_HVAC,
new XElement(_vif + XMLNames.Bus_AdjustableCoolantThermostat, hvac.AdjustableCoolantThermostat)));
}
#endregion
}
public class VIFAuxiliaryPEVType : VIFAuxiliaryIEPCType
{
public VIFAuxiliaryPEVType(IVIFReportFactory vifFactory) : base(vifFactory) { }
#region Overrides of VIFAuxiliaryType
public override XElement GetElement(IDeclarationInputDataProvider inputData)
{
var aux = inputData.JobInputData.Vehicle.Components.BusAuxiliaries;
if (aux != null)
return null;
return new XElement(_vif + XMLNames.Component_Auxiliaries,
new XElement(_vif + XMLNames.ComponentDataWrapper,
new XAttribute(_xsi + "type", "vif:AUX_PEV_PrimaryBusType"),
GetSteeringPumpElement(aux.SteeringPumpTechnology),
GetPneumaticSystem(aux.PneumaticSupply, aux.PneumaticConsumers),
GetHvac(aux.HVACAux)
));
}
#endregion
}
}
\ No newline at end of file
......@@ -28,22 +28,22 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
#endregion
#region Components
IXmlTypeWriter GetAdasType();
IXmlTypeWriter GetAngelDriveType();
IXmlTypeWriter GetAuxiliaryType();
IXmlTypeWriter GetAuxiliaryHevSType();
IXmlTypeWriter GetAuxiliaryHevPType();
IXmlTypeWriter GetAuxiliaryIEPCType();
IXmlTypeWriter GetAuxiliaryPEVType();
IXmlTypeWriter GetAxlegearType();
IXmlTypeWriter GetAxleWheelsType();
IXmlTypeWriter GetBoostingLimitationsType();
IXmlTypeWriter GetElectricEnergyStorageType();
IXmlTypeWriter GetElectricMachineGENType();
IXmlElectricMachineSystemType GetElectricMachineSystemMeasuredType();
IXmlElectricMachineSystemType GetElectricMachineSystemIHPCMeasuredType();
IXmlElectricMachineSystemType GetElectricMachineSystemStandardValueType();
IXmlElectricMachineSystemType GetElectricMachineSystemType();
IXmlTypeWriter GetElectricMachineType();
IXmlTypeWriter GetElectricMotorTorqueLimitsType();
IXmlTypeWriter GetEngineType();
......@@ -67,7 +67,6 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
IReportOutputGroup GetIepcVehicleGroup();
IReportOutputGroup GetPEVVehicleGroup();
#endregion
}
......
......@@ -88,6 +88,15 @@ namespace TUGraz.VectoCore.OutputData.XML.DeclarationReports.VehicleInformationF
Bind<IXmlTypeWriter>().To<VIFAuxiliaryHevSType>().When(AccessedViaVIFFactory)
.NamedLikeFactoryMethod((IVIFReportFactory f) => f.GetAuxiliaryHevSType());
Bind<IXmlTypeWriter>().To<VIFAuxiliaryHevPType>().When(AccessedViaVIFFactory)
.NamedLikeFactoryMethod((IVIFReportFactory f) => f.GetAuxiliaryHevPType());
Bind<IXmlTypeWriter>().To<VIFAuxiliaryIEPCType>().When(AccessedViaVIFFactory)
.NamedLikeFactoryMethod((IVIFReportFactory f) => f.GetAuxiliaryIEPCType());
Bind<IXmlTypeWriter>().To<VIFAuxiliaryPEVType>().When(AccessedViaVIFFactory)
.NamedLikeFactoryMethod((IVIFReportFactory f) => f.GetAuxiliaryPEVType());
Bind<IXmlTypeWriter>().To<VIFAxlegearType>().When(AccessedViaVIFFactory)
.NamedLikeFactoryMethod((IVIFReportFactory f) => f.GetAxlegearType());
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment