diff --git a/VectoCommon/VectoCommon/BusAuxiliaries/IPneumaticUserInputsConfig.cs b/VectoCommon/VectoCommon/BusAuxiliaries/IPneumaticUserInputsConfig.cs index aaa7b17d7a58bca1d8ba3847d6438ed9cda2baf5..90a8b9a0d1518811f95e58efac4df21efb53d941 100644 --- a/VectoCommon/VectoCommon/BusAuxiliaries/IPneumaticUserInputsConfig.cs +++ b/VectoCommon/VectoCommon/BusAuxiliaries/IPneumaticUserInputsConfig.cs @@ -29,27 +29,7 @@ namespace TUGraz.VectoCommon.BusAuxiliaries Pneumatically, } - public static class ConsumerTechnologyHelper - { - public static ConsumerTechnology Parse(string technology) - { - switch (technology.ToLowerInvariant()) { - case "mechanically": - case "mechanic": - return ConsumerTechnology.Mechanically; - case "electrically": - case "electric": - case "electronically": - return ConsumerTechnology.Electrically; - case "pneumatically": - case "pneumatic": - return ConsumerTechnology.Pneumatically; - default: - return ConsumerTechnology.Unknown; - } - } - } - + public static class ConsumerTechnologyHelper { public static ConsumerTechnology Parse(string technology) diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs index dd41bb937f3be38a869bc722fe504e4bbfb78975..cf329f934f631be13551886d281d772db989792c 100644 --- a/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs +++ b/VectoCommon/VectoCommon/Resources/XMLNames.Designer.cs @@ -402,8 +402,7 @@ namespace TUGraz.VectoCommon.Resources { } } - - /// <summary> + /// <summary> /// Looks up a localized string similar to AdBlueDosing. /// </summary> public static string Bus_AdBlueDosing { @@ -493,15 +492,6 @@ namespace TUGraz.VectoCommon.Resources { } } - /// <summary> - /// Looks up a localized string similar to DoorDriveTechnology. - /// </summary> - public static string Bus_DoorDriveTechnology { - get { - return ResourceManager.GetString("Bus_DoorDriveTechnology", resourceCulture); - } - } - /// <summary> /// Looks up a localized string similar to DoubleGlasing. /// </summary> @@ -718,6 +708,159 @@ namespace TUGraz.VectoCommon.Resources { } } + /// <summary> + /// Looks up a localized string similar to ElectricSystem. + /// </summary> + public static string BusAux_ElectricSystem { + get { + return ResourceManager.GetString("BusAux_ElectricSystem", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to ratio. + /// </summary> + public static string BusAux_ElectricSystem_Alternator_Ratio_Attr { + get { + return ResourceManager.GetString("BusAux_ElectricSystem_Alternator_Ratio_Attr", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to AlternatorTechnology. + /// </summary> + public static string BusAux_ElectricSystem_AlternatorTechnology { + get { + return ResourceManager.GetString("BusAux_ElectricSystem_AlternatorTechnology", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to ResultCards. + /// </summary> + public static string BusAux_ElectricSystem_ResultCards { + get { + return ResourceManager.GetString("BusAux_ElectricSystem_ResultCards", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to SmartElectrics. + /// </summary> + public static string BusAux_ElectricSystem_SmartElectrics { + get { + return ResourceManager.GetString("BusAux_ElectricSystem_SmartElectrics", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to PneumaticSystem. + /// </summary> + public static string BusAux_PneumaticSystem { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to AdBlueDosing. + /// </summary> + public static string BusAux_PneumaticSystem_AdBlueDosing { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem_AdBlueDosing", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to AirsuspensionControl. + /// </summary> + public static string BusAux_PneumaticSystem_AirsuspensionControl { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem_AirsuspensionControl", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to CompressorRatio. + /// </summary> + public static string BusAux_PneumaticSystem_CompressorRatio { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem_CompressorRatio", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to SizeOfAirSupply. + /// </summary> + public static string BusAux_PneumaticSystem_CompressorSize { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem_CompressorSize", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to DoorDriveTechnology. + /// </summary> + public static string BusAux_PneumaticSystem_DoorDriveTechnology { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem_DoorDriveTechnology", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to SmartCompressionSystem. + /// </summary> + public static string BusAux_PneumaticSystem_SmartcompressionSystem { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem_SmartcompressionSystem", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to SmartRegenerationSystem. + /// </summary> + public static string BusAux_PneumaticSystem_SmartRegenerationSystem { + get { + return ResourceManager.GetString("BusAux_PneumaticSystem_SmartRegenerationSystem", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to Entry. + /// </summary> + public static string BusAux_ResultCard_Entry { + get { + return ResourceManager.GetString("BusAux_ResultCard_Entry", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to Idle. + /// </summary> + public static string BusAux_ResultCard_Idle { + get { + return ResourceManager.GetString("BusAux_ResultCard_Idle", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to Overrun. + /// </summary> + public static string BusAux_ResultCard_Overrun { + get { + return ResourceManager.GetString("BusAux_ResultCard_Overrun", resourceCulture); + } + } + + /// <summary> + /// Looks up a localized string similar to Traction. + /// </summary> + public static string BusAux_ResultCard_Traction { + get { + return ResourceManager.GetString("BusAux_ResultCard_Traction", resourceCulture); + } + } + /// <summary> /// Looks up a localized string similar to AirDrag. /// </summary> @@ -2590,6 +2733,15 @@ namespace TUGraz.VectoCommon.Resources { } } + /// <summary> + /// Looks up a localized string similar to status. + /// </summary> + public static string Result_Status { + get { + return ResourceManager.GetString("Result_Status", resourceCulture); + } + } + /// <summary> /// Looks up a localized string similar to current. /// </summary> @@ -2607,16 +2759,7 @@ namespace TUGraz.VectoCommon.Resources { return ResourceManager.GetString("ResultCard_Entry_SmartCurrent_Attr", resourceCulture); } } - - /// <summary> - /// Looks up a localized string similar to status. - /// </summary> - public static string Result_Status { - get { - return ResourceManager.GetString("Result_Status", resourceCulture); - } - } - + /// <summary> /// Looks up a localized string similar to RetarderLossMap. /// </summary> diff --git a/VectoCommon/VectoCommon/Resources/XMLNames.resx b/VectoCommon/VectoCommon/Resources/XMLNames.resx index dc80551895e785b501f4656447f31a6692e8406f..b5be7241f61adfabc16eda3b414046ad4de493bd 100644 --- a/VectoCommon/VectoCommon/Resources/XMLNames.resx +++ b/VectoCommon/VectoCommon/Resources/XMLNames.resx @@ -1257,9 +1257,6 @@ <data name="Bus_EntranceHeight" xml:space="preserve"> <value>EntranceHeight</value> </data> - <data name="Bus_DoorDriveTechnology" xml:space="preserve"> - <value>DoorDriveTechnology</value> - </data> <data name="Bus_LowerDeck" xml:space="preserve"> <value>LowerDeck</value> </data> @@ -1341,9 +1338,6 @@ <data name="Bus_AdBlueDosing" xml:space="preserve"> <value>AdBlueDosing</value> </data> - <data name="Bus_DoorDriveTechnology" xml:space="preserve"> - <value>DoorDriveTechnology</value> - </data> <data name="Vehicle_Clutch" xml:space="preserve"> <value>Clutch</value> </data> diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs index 4b5dc14286ca5302bd7c3458b7a6ef48565909d7..60bb2950a32ab8f6c5eb2b4d4e11287fbf1f4ffd 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationBusAuxiliariesDataProvider.cs @@ -5,8 +5,6 @@ using System.Windows.Forms; using System.Xml; using System.Xml.Linq; using TUGraz.VectoCommon.BusAuxiliaries; -using Castle.Core.Internal; -using TUGraz.VectoCommon.BusAuxiliaries; using TUGraz.VectoCommon.InputData; using TUGraz.VectoCommon.Resources; using TUGraz.VectoCommon.Utils; @@ -27,30 +25,23 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider public static readonly string QUALIFIED_XSD_TYPE = XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE); - private const string RATIO_ATTRIBUTE = "ratio"; - private const string CURRENT_ATTRIBUTE = "current"; - private const string SMART_CURRENT_ATTRIBUTE = "smartCurrent"; - private const string IDLE_NODE_NAME = "Idle"; - private const string TRANSACTION_NODE_NAME = "Traction"; - private const string OVERRUN_NODE_NAME = "Overrun"; - - public XMLDeclarationBusAuxiliariesDataProviderV26( + public XMLDeclarationPrimaryBusAuxiliariesDataProviderV26( IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(componentNode) { } #region Implementation of IBusAuxiliariesDeclarationData - public XmlNode XMLSource + public virtual XmlNode XMLSource { get { return BaseNode; } } - public string FanTechnology + public virtual string FanTechnology { get { return GetNode(new[] { "Fan", XMLNames.Auxiliaries_Auxiliary_Technology }).InnerText; } } - public IList<string> SteeringPumpTechnology + public virtual IList<string> SteeringPumpTechnology { get { return GetNodes(new[] { "SteeringPump", XMLNames.Auxiliaries_Auxiliary_Technology }) @@ -58,27 +49,27 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider } } - public IElectricSupplyDeclarationData ElectricSupply + public virtual IElectricSupplyDeclarationData ElectricSupply { get { return this; } } - public IElectricConsumersDeclarationData ElectricConsumers + public virtual IElectricConsumersDeclarationData ElectricConsumers { get { return null; } } - public IPneumaticSupplyDeclarationData PneumaticSupply + public virtual IPneumaticSupplyDeclarationData PneumaticSupply { get { return this; } } - public IPneumaticConsumersDeclarationData PneumaticConsumers + public virtual IPneumaticConsumersDeclarationData PneumaticConsumers { get { return this; } } - public IHVACBusAuxiliariesDeclarationData HVACAux + public virtual IHVACBusAuxiliariesDeclarationData HVACAux { get { return this; } } @@ -87,7 +78,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider #region Implementation of IElectricSupplyDeclarationData - public IList<IAlternatorDeclarationInputData> Alternators + public virtual IList<IAlternatorDeclarationInputData> Alternators { get { return GetNodes(new[] { XMLNames.BusAux_ElectricSystem, XMLNames.BusAux_ElectricSystem_AlternatorTechnology }) @@ -98,17 +89,17 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider } } - public bool SmartElectrics + public virtual bool SmartElectrics { get { return GetBool(new[] { XMLNames.BusAux_ElectricSystem, XMLNames.BusAux_ElectricSystem_SmartElectrics }); } } - public Watt MaxAlternatorPower + public virtual Watt MaxAlternatorPower { get { return ElementExists("MaxAlternatorPower") ? GetDouble("MaxAlternatorPower").SI<Watt>() : null; } } - public WattSecond ElectricStorageCapacity + public virtual WattSecond ElectricStorageCapacity { get { return ElementExists("ElectricStorageCapacity") @@ -122,7 +113,7 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider #region Implementation of IPneumaticConsumersDeclarationData - public ConsumerTechnology AirsuspensionControl + public virtual ConsumerTechnology AirsuspensionControl { get { return ConsumerTechnologyHelper.Parse( @@ -130,16 +121,17 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider } } - public ConsumerTechnology AdBlueDosing + public virtual ConsumerTechnology AdBlueDosing { get { - return ConsumerTechnologyHelper.Parse( - GetString( - new[] { XMLNames.BusAux_PneumaticSystem, XMLNames.BusAux_PneumaticSystem_AdBlueDosing })); + return GetBool( + new[] { XMLNames.BusAux_PneumaticSystem, XMLNames.BusAux_PneumaticSystem_AdBlueDosing }) + ? ConsumerTechnology.Pneumatically + : ConsumerTechnology.Electrically; } } - public ConsumerTechnology DoorDriveTechnology + public virtual ConsumerTechnology DoorDriveTechnology { get { return ConsumerTechnologyHelper.Parse( @@ -151,24 +143,26 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider #region Implementation of IPneumaticSupplyDeclarationData - public double Ratio + public virtual string Clutch { get { return GetString(new[] { XMLNames.BusAux_PneumaticSystem, "Clutch" }); } } + + public virtual double Ratio { get { return GetDouble(new[] { XMLNames.BusAux_PneumaticSystem, XMLNames.BusAux_PneumaticSystem_CompressorRatio }); } } - public string CompressorSize + public virtual string CompressorSize { get { return GetString(new[] { XMLNames.BusAux_PneumaticSystem, XMLNames.BusAux_PneumaticSystem_CompressorSize }); } } - public bool SmartAirCompression + public virtual bool SmartAirCompression { get { return GetBool(new[] { XMLNames.BusAux_PneumaticSystem, XMLNames.BusAux_PneumaticSystem_SmartcompressionSystem }); } } - public bool SmartRegeneration + public virtual bool SmartRegeneration { get { return GetBool(new[] { XMLNames.BusAux_PneumaticSystem, XMLNames.BusAux_PneumaticSystem_SmartRegenerationSystem }); @@ -179,83 +173,152 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider #region Implementation of IHVACBusAuxiliariesDeclarationData - public BusHVACSystemConfiguration SystemConfiguration + public virtual BusHVACSystemConfiguration SystemConfiguration { get { return BusHVACSystemConfiguration.Unknown; } } - public ACCompressorType CompressorTypeDriver + public virtual ACCompressorType CompressorTypeDriver { get { return ACCompressorType.None; } } - public ACCompressorType CompressorTypePassenger + public virtual ACCompressorType CompressorTypePassenger { get { return ACCompressorType.None; } } - public Watt AuxHeaterPower + public virtual Watt AuxHeaterPower { get { return 0.SI<Watt>(); } } - public bool DoubleGlasing + public virtual bool DoubleGlasing { get { return false; } } - public bool HeatPump + public virtual bool HeatPump { get { return false; } } - public bool AdjustableCoolantThermostat + public virtual bool AdjustableCoolantThermostat { get { return GetBool(new[] { "HVAC", "AdjustableCoolantThermostat" }); } } - public bool AdjustableAuxiliaryHeater + public virtual bool AdjustableAuxiliaryHeater { get { return false; } } - public bool EngineWasteGasHeatExchanger + public virtual bool EngineWasteGasHeatExchanger { get { return GetBool(new[] { "HVAC", "EngineWasteGasHeatExchanger" }); } } - public bool SeparateAirDistributionDucts + public virtual bool SeparateAirDistributionDucts { get { return false; } } - BrakelightsLED = GetBool(XMLNames.Bus_Brakelights), - InteriorLightsLED = GetBool(XMLNames.Bus_Interiorlights) - }; + + #endregion + } + + public class XMLDeclarationCompleteBusAuxiliariesDataProviderV26 : XMLDeclarationPrimaryBusAuxiliariesDataProviderV26, IElectricConsumersDeclarationData + { + public new static XNamespace NAMESPACE_URI = XMLDefinitions.DECLARATION_DEFINITIONS_NAMESPACE_URI_V26; + + public new const string XSD_TYPE = "CompletedVehicleAuxiliaryDataDeclarationType"; + + public new static readonly string QUALIFIED_XSD_TYPE = XMLHelper.CombineNamespace(NAMESPACE_URI.NamespaceName, XSD_TYPE); + + public XMLDeclarationCompleteBusAuxiliariesDataProviderV26( + IXMLDeclarationVehicleData vehicle, XmlNode componentNode, string sourceFile) : base(vehicle, componentNode, sourceFile) { } + + #region Implementation of IBusAuxiliariesDeclarationData + + + + public override IList<string> SteeringPumpTechnology { get { return null; } } + + + public override IElectricConsumersDeclarationData ElectricConsumers + { + get { + return this; } } - public IPneumaticSupplyDeclarationData PneumaticSupply { get { return null; } } - - public IPneumaticConsumersDeclarationData PneumaticConsumers { get { return null;} } - - public IHVACBusAuxiliariesDeclarationData HVACAux - { - get - { - var hvac = new HVACBusAuxiliariesDeclarationData - { - SystemConfiguration = GetString(XMLNames.Bus_SystemConfiguration).ToInt(), - CompressorType = new CompressorType(GetString(XMLNames.Bus_DriverAC), GetString(XMLNames.Bus_PassengerAC)), - AuxHeaterPower = GetString(XMLNames.Bus_AuxiliaryHeaterPower).ToDouble().SI<Watt>(), - DoubleGlasing = GetBool(XMLNames.Bus_DoubleGlasing), - HeatPump = GetBool(XMLNames.Bus_HeatPump), - AdjustableAuxiliaryHeater = GetBool(XMLNames.Bus_AdjustableAuxiliaryHeater), - SeparateAirDistributionDucts = GetBool(XMLNames.Bus_SeparateAirDistributionDucts) - }; - return hvac; - } + public override IPneumaticSupplyDeclarationData PneumaticSupply { get { return null; } } + + public override IPneumaticConsumersDeclarationData PneumaticConsumers { get { return null; } } + + public override BusHVACSystemConfiguration SystemConfiguration + { + get { return BusHVACSystemConfigurationHelper.Parse(GetString(XMLNames.Bus_SystemConfiguration)); } + } + + public override ACCompressorType CompressorTypeDriver + { + get { return ACCompressorTypeExtensions.ParseEnum(GetString(XMLNames.Bus_DriverAC)); } + } + + public override ACCompressorType CompressorTypePassenger + { + get { return ACCompressorTypeExtensions.ParseEnum(GetString(XMLNames.Bus_PassengerAC)); } } + public override Watt AuxHeaterPower + { + get { return GetDouble(XMLNames.Bus_AuxiliaryHeaterPower).SI<Watt>(); } + } + + public override bool DoubleGlasing + { + get { return GetBool(XMLNames.Bus_DoubleGlasing); } + } + + public override bool HeatPump + { + get { return GetBool(XMLNames.Bus_HeatPump); } + } + + public override bool AdjustableCoolantThermostat + { + get { return GetBool(new[] { "HVAC", XMLNames.Bus_AdjustableCoolantThermostat }); } + } + + public override bool AdjustableAuxiliaryHeater + { + get { return GetBool(XMLNames.Bus_AdjustableAuxiliaryHeater); } + } + + public override bool EngineWasteGasHeatExchanger + { + get { return false; } + } + + public override bool SeparateAirDistributionDucts + { + get { return GetBool(XMLNames.Bus_SeparateAirDistributionDucts); } + } + + #endregion + + #region Implementation of IElectricConsumersDeclarationData + + public virtual bool InteriorLightsLED { get { return GetBool(new[] { "LEDLights", XMLNames.Bus_Interiorlights }); } } + + public virtual bool DayrunninglightsLED { get { return GetBool(new[] { "LEDLights", XMLNames.Bus_Dayrunninglights }); } } + + public virtual bool PositionlightsLED { get { return GetBool(new[] { "LEDLights", XMLNames.Bus_Positionlights }); } } + + public virtual bool HeadlightsLED { get { return GetBool(new[] { "LEDLights", XMLNames.Bus_Headlights }); } } + + public virtual bool BrakelightsLED { get { return GetBool(new[] { "LEDLights", XMLNames.Bus_Brakelights }); } } + #endregion } } diff --git a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs index 58be885d890d4844c5ce7398ae3dee9401722980..0f032381a2df296ce2a16d6cf0cb2fd702cc97ec 100644 --- a/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs +++ b/VectoCore/VectoCore/InputData/FileIO/XML/Declaration/DataProvider/XMLDeclarationVehicleDataProvider.cs @@ -761,9 +761,9 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider public bool LowEntry { get { return GetBool(XMLNames.Bus_LowEntry); } } - public Meter EntranceHeight { get { return GetDouble(XMLNames.Bus_EntranceHeight).SI<Meter>(); } } + public override Meter EntranceHeight { get { return GetDouble(XMLNames.Bus_EntranceHeight).SI<Meter>(); } } - public string DoorDriveTechnology { get { return GetString(XMLNames.Bus_DoorDriveTechnology); } } + public virtual string DoorDriveTechnology { get { return GetString(XMLNames.BusAux_PneumaticSystem_DoorDriveTechnology); } } #region Overrides of AbstractXMLResource @@ -899,6 +899,8 @@ namespace TUGraz.VectoCore.InputData.FileIO.XML.Declaration.DataProvider } public IXMLComponentReader ComponentReader { get; set; } + public Meter EntranceHeight { get; } + public IVehicleComponentsDeclaration Components { get diff --git a/VectoCore/VectoCore/InputData/Impl/InputData.cs b/VectoCore/VectoCore/InputData/Impl/InputData.cs index d4d0fbfff2599ec1d8e50d4c8647e3d4b85cf85f..c943212056662cd3b6c18df1b40ef5997caa69ce 100644 --- a/VectoCore/VectoCore/InputData/Impl/InputData.cs +++ b/VectoCore/VectoCore/InputData/Impl/InputData.cs @@ -213,89 +213,6 @@ namespace TUGraz.VectoCore.InputData.Impl } - public class ResultCardEntry : IResultCardEntry - { - public ResultCardEntry(Ampere current, Ampere smartCurrent) - { - Current = current; - SmartCurrent = smartCurrent; - } - - #region Implementation of IResultCardEntry - - public virtual Ampere Current { get; } - public virtual Ampere SmartCurrent { get; } - - #endregion - } - - public class ElectricConsumersDeclarationData : IElectricConsumersDeclarationData - { - public bool InteriorLightsLED { get; internal set; } - public bool DayrunninglightsLED { get; internal set; } - public bool PositionlightsLED { get; internal set; } - public bool HeadlightsLED { get; internal set; } - public bool BrakelightsLED { get; internal set; } - } - - public class ElectricSupplyDeclarationData : IElectricSupplyDeclarationData - { - public IList<IAlternatorDeclarationInputData> Alternators { get; internal set; } - public IResultCardDeclarationInputData ResultCards { get; internal set; } - public bool SmartElectrics { get; internal set; } - } - - - public class HVACBusAuxiliariesDeclarationData : IHVACBusAuxiliariesDeclarationData - { - public bool AdjustableAuxiliaryHeater { get; internal set; } - - public bool AdjustableCoolantThermostat { get; internal set; } - - public Watt AuxHeaterPower { get; internal set; } - - public ICompressorType CompressorType { get; internal set; } - - public bool DoubleGlasing { get; internal set; } - - public bool EngineWasteGasHeatExchanger { get; internal set; } - - public bool HeatPump { get; internal set; } - - public bool SeparateAirDistributionDucts { get; internal set; } - - public int SystemConfiguration { get; internal set; } - } - - public class CompressorType : ICompressorType - { - public string DriverAC { get; } - public string PassengerAC { get; } - public CompressorType(string driverAC, string passengerAC) - { - DriverAC = driverAC; - PassengerAC = passengerAC; - } - } - - public class PneumaticConsumersDeclarationData : IPneumaticConsumersDeclarationData - { - public ConsumerTechnology AirsuspensionControl { get; internal set; } - public ConsumerTechnology AdBlueDosing { get; internal set; } - public ConsumerTechnology DoorDriveTechnology { get; internal set; } - } - - - public class PneumaticSupplyDeclarationData : IPneumaticSupplyDeclarationData - { - public string Clutch { get; internal set; } - public double Ratio { get; internal set; } - public string CompressorSize { get; internal set; } - public bool SmartAirCompression { get; internal set; } - public bool SmartRegeneration { get; internal set; } - } - - public class ResultInputData : IResultsInputData { public string Status { get; internal set; } diff --git a/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.6_Buses.xsd b/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.6_Buses.xsd index 73a1be6cd18121b9ba84bb31832ed5e42e35151f..07e7ca455602c0ec9b01da2652a032936502cd98 100644 --- a/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.6_Buses.xsd +++ b/VectoCore/VectoCore/Resources/XSD/VectoDeclarationDefinitions.2.6_Buses.xsd @@ -282,17 +282,6 @@ </xs:simpleType> </xs:element> </xs:sequence> - </xs:element> - <xs:element name="Overrun"> - <xs:complexType> - <xs:sequence> - <xs:element name="Entry" type="tns:ResultCardEntryType" minOccurs="2" maxOccurs="unbounded"/> - </xs:sequence> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:element> </xs:sequence> </xs:complexType> </xs:element> @@ -632,26 +621,6 @@ <xs:enumeration value="mechanically"/> </xs:restriction> </xs:simpleType> - <xs:complexType name="ResultCardEntryType"> - <xs:attribute name="current" type="v1.0:Double2" use="required"/> - <xs:attribute name="smartCurrent" type="v1.0:Double2" use="required"/> - </xs:complexType> - <xs:simpleType name="PneumaticSystemTechnologyType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="Small"/> - <xs:enumeration value="Medium Supply 1-stage"/> - <xs:enumeration value="Medium Supply 2-stage"/> - <xs:enumeration value="Large Supply 1-stage"/> - <xs:enumeration value="Large Supply 2-stage"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="PneumaticSystemClutchTypeType"> - <xs:restriction base="xs:string"> - <xs:enumeration value="none"/> - <xs:enumeration value="visco"/> - <xs:enumeration value="mechanically"/> - </xs:restriction> - </xs:simpleType> <xs:complexType name="ResultCardsType"> <xs:sequence> <xs:element name="Idle"> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/example_heavyBus_PIF.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/example_heavyBus_PIF.xml index 1030f2f24a6f1c89f3d02862d8690c5c054be8ab..b9a2197424a0a2f0647332271ecb90b7e32d63af 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/example_heavyBus_PIF.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/example_heavyBus_PIF.xml @@ -224,20 +224,9 @@ xsi:schemaLocation="urn:tugraz:ivt:VectoAPI:PrimaryVehicleInformation E:\QUAM\Wo <ElectricSystem> <AlternatorTechnology ratio="1.000">default</AlternatorTechnology> <SmartElectrics>false</SmartElectrics> - <ResultCards> - <Idle> - <Entry current="0.00" smartCurrent="0.00"/> - <Entry current="100.00" smartCurrent="120.00"/> - </Idle> - <Traction> - <Entry current="0.00" smartCurrent="0.00"/> - <Entry current="100.00" smartCurrent="120.00"/> - </Traction> - <Overrun> - <Entry current="0.00" smartCurrent="0.00"/> - <Entry current="100.00" smartCurrent="120.00"/> - </Overrun> - </ResultCards> + <MaxAlternatorPower>10000</MaxAlternatorPower> + <ElectricStorageCapacity>800</ElectricStorageCapacity> + </ElectricSystem> <PneumaticSystem> <SizeOfAirSupply>Small</SizeOfAirSupply> <Clutch>none</Clutch> diff --git a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/vecto_vehicle-primary_heavyBus.xml b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/vecto_vehicle-primary_heavyBus.xml index 34a2711cfd053ce0984ade596bbb39e84153b00d..e4a6d99d426647add3978e1b34e6667846d4fa50 100644 --- a/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/vecto_vehicle-primary_heavyBus.xml +++ b/VectoCore/VectoCoreTest/TestData/XML/XMLReaderDeclaration/SchemaVersion2.6_Buses/vecto_vehicle-primary_heavyBus.xml @@ -3266,20 +3266,8 @@ <ElectricSystem> <AlternatorTechnology ratio="1.000">default</AlternatorTechnology> <SmartElectrics>false</SmartElectrics> - <ResultCards> - <Idle> - <Entry current="0.00" smartCurrent="0.00"/> - <Entry current="100.00" smartCurrent="120.00"/> - </Idle> - <Traction> - <Entry current="0.00" smartCurrent="1.00"/> - <Entry current="100.00" smartCurrent="120.00"/> - </Traction> - <Overrun> - <Entry current="0.00" smartCurrent="0.00"/> - <Entry current="100.00" smartCurrent="120.00"/> - </Overrun> - </ResultCards> + <MaxAlternatorPower>10000</MaxAlternatorPower> + <ElectricStorageCapacity>800</ElectricStorageCapacity> </ElectricSystem> <PneumaticSystem> <SizeOfAirSupply>Large Supply 2-stage</SizeOfAirSupply> diff --git a/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs b/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs index fd31271326c60fa036e147f06a310e5e2c93e3c6..d978c2685369edca65f5282e9e692cfef07db0c3 100644 --- a/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs +++ b/VectoCore/VectoCoreTest/XML/XMLCompleteBusReaderTest.cs @@ -7,6 +7,7 @@ using System.Threading.Tasks; using System.Xml; using Ninject; using NUnit.Framework; +using TUGraz.VectoCommon.BusAuxiliaries; using TUGraz.VECTO; using TUGraz.VectoCommon.Exceptions; using TUGraz.VectoCommon.Models; @@ -103,9 +104,9 @@ namespace TUGraz.VectoCore.Tests.XML var havacAux = components.BusAuxiliaries.HVACAux; Assert.IsNotNull(havacAux); - Assert.AreEqual(7, havacAux.SystemConfiguration); - Assert.AreEqual("2-stage", havacAux.CompressorType.DriverAC); - Assert.AreEqual("3-stage", havacAux.CompressorType.PassengerAC); + Assert.AreEqual(BusHVACSystemConfiguration.Configuration7, havacAux.SystemConfiguration); + Assert.AreEqual(ACCompressorType.TwoStage, havacAux.CompressorTypeDriver); + Assert.AreEqual(ACCompressorType.FourStage, havacAux.CompressorTypePassenger); Assert.AreEqual(0.SI<Watt>(), havacAux.AuxHeaterPower); Assert.IsTrue(havacAux.DoubleGlasing); Assert.IsFalse(havacAux.HeatPump); diff --git a/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleBusReaderTest.cs b/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleBusReaderTest.cs index f46b01ac4240dd8be4770eacb8d8bbf6d627b2aa..2c483cb650d46b54a25d3e18529f4ab62fc8e88e 100644 --- a/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleBusReaderTest.cs +++ b/VectoCore/VectoCoreTest/XML/XMLPrimaryVehicleBusReaderTest.cs @@ -267,23 +267,23 @@ namespace TUGraz.VectoCore.Tests.XML Assert.AreEqual(1.0000, auxiliaries.ElectricSupply.Alternators[0].Ratio); Assert.AreEqual(false, auxiliaries.ElectricSupply.SmartElectrics); - Assert.AreEqual(2, auxiliaries.ElectricSupply.ResultCards.Idle.Count); - Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Idle[0].Current.Value()); - Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Idle[0].SmartCurrent.Value()); - Assert.AreEqual(100.00, auxiliaries.ElectricSupply.ResultCards.Idle[1].Current.Value()); - Assert.AreEqual(120.00, auxiliaries.ElectricSupply.ResultCards.Idle[1].SmartCurrent.Value()); - - Assert.AreEqual(2, auxiliaries.ElectricSupply.ResultCards.Traction.Count); - Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Traction[0].Current.Value()); - Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Traction[0].SmartCurrent.Value()); - Assert.AreEqual(100.00, auxiliaries.ElectricSupply.ResultCards.Traction[1].Current.Value()); - Assert.AreEqual(120.00, auxiliaries.ElectricSupply.ResultCards.Traction[1].SmartCurrent.Value()); - - Assert.AreEqual(2, auxiliaries.ElectricSupply.ResultCards.Overrun.Count); - Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Overrun[0].Current.Value()); - Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Overrun[0].SmartCurrent.Value()); - Assert.AreEqual(100.00, auxiliaries.ElectricSupply.ResultCards.Overrun[1].Current.Value()); - Assert.AreEqual(120.00, auxiliaries.ElectricSupply.ResultCards.Overrun[1].SmartCurrent.Value()); + //Assert.AreEqual(2, auxiliaries.ElectricSupply.ResultCards.Idle.Count); + //Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Idle[0].Current.Value()); + //Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Idle[0].SmartCurrent.Value()); + //Assert.AreEqual(100.00, auxiliaries.ElectricSupply.ResultCards.Idle[1].Current.Value()); + //Assert.AreEqual(120.00, auxiliaries.ElectricSupply.ResultCards.Idle[1].SmartCurrent.Value()); + + //Assert.AreEqual(2, auxiliaries.ElectricSupply.ResultCards.Traction.Count); + //Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Traction[0].Current.Value()); + //Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Traction[0].SmartCurrent.Value()); + //Assert.AreEqual(100.00, auxiliaries.ElectricSupply.ResultCards.Traction[1].Current.Value()); + //Assert.AreEqual(120.00, auxiliaries.ElectricSupply.ResultCards.Traction[1].SmartCurrent.Value()); + + //Assert.AreEqual(2, auxiliaries.ElectricSupply.ResultCards.Overrun.Count); + //Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Overrun[0].Current.Value()); + //Assert.AreEqual(0.00, auxiliaries.ElectricSupply.ResultCards.Overrun[0].SmartCurrent.Value()); + //Assert.AreEqual(100.00, auxiliaries.ElectricSupply.ResultCards.Overrun[1].Current.Value()); + //Assert.AreEqual(120.00, auxiliaries.ElectricSupply.ResultCards.Overrun[1].SmartCurrent.Value()); } private void TestPneumaticSystem(IPneumaticSupplyDeclarationData supply,