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

Skip to content
Snippets Groups Projects
Commit b9e53ce6 authored by Markus QUARITSCH's avatar Markus QUARITSCH
Browse files

refactoring: moving interfaces and dependent classes to interfaces project

parent de654829
No related branches found
No related tags found
No related merge requests found
Showing
with 470 additions and 452 deletions
Option Strict On
Namespace Electrics
Namespace DownstreamModules.Electrics
'Used by the Combined Alternator Form/Classes to accept user input for the combined alternators efficiency
'At different Current Demands
Public class AltUserInput
......
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace Electrics
'Originally was going to hold more than one value type.
Public Structure AlternatorMapValues
Public ReadOnly Efficiency As Double
Public Sub New(ByVal efficiency As Double)
Me.Efficiency = efficiency
End Sub
End Structure
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace DownstreamModules.Electrics
'Originally was going to hold more than one value type.
Public Structure AlternatorMapValues
Public ReadOnly Efficiency As Double
Public Sub New(ByVal efficiency As Double)
Me.Efficiency = efficiency
End Sub
End Structure
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace Electrics
Public Class ElectricConstants
'Anticipated Min and Max Allowable values for Powernet, normally 26.3 volts but could be 48 in the future.
Public Const PowenetVoltageMin As Double = 6
Public Const PowenetVoltageMax As Double = 50
'Duty Cycle IE Percentage of use
Public Const PhaseIdleTractionOnMin As Double = 0
Public Const PhaseIdleTractionMax As Double = 1
'Max Min Expected Consumption for a Single Consumer, negative values allowed as bonuses.
Public Const NonminalConsumerConsumptionAmpsMin As Integer = - 10
Public Const NominalConsumptionAmpsMax As Integer = 100
'Alternator
public const AlternatorPulleyEfficiencyMin as single = 0.1
public const AlternatorPulleyEfficiencyMax as single = 1
End Class
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace DownstreamModules.Electrics
Public Class ElectricConstants
'Anticipated Min and Max Allowable values for Powernet, normally 26.3 volts but could be 48 in the future.
Public Const PowenetVoltageMin As Double = 6
Public Const PowenetVoltageMax As Double = 50
'Duty Cycle IE Percentage of use
Public Const PhaseIdleTractionOnMin As Double = 0
Public Const PhaseIdleTractionMax As Double = 1
'Max Min Expected Consumption for a Single Consumer, negative values allowed as bonuses.
Public Const NonminalConsumerConsumptionAmpsMin As Integer = - 10
Public Const NominalConsumptionAmpsMax As Integer = 100
'Alternator
public const AlternatorPulleyEfficiencyMin as single = 0.1
public const AlternatorPulleyEfficiencyMax as single = 1
End Class
End Namespace

Namespace Electrics
Imports VectoAuxiliaries.Electrics
Namespace DownstreamModules.Electrics
Public Class Table4Row
Public RPM As Double
Public Efficiency As Double
Public Sub New(rpm As Double, eff As Double)
Me.RPM = rpm
Me.Efficiency = eff
End Sub
End Class
'Used By Combined Alternator.
'Model based on CombinedALTS_V02_Editable.xlsx
Public Interface IAlternator
......
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports TUGraz.VectoCommon.Utils
Namespace Electrics
Public Interface IAlternatorMap
Inherits IAuxiliaryEvent
''' <summary>
''' Initialise the map from supplied csv data
''' </summary>
''' <returns>Boolean - true if map is created successfully</returns>
''' <remarks></remarks>
Function Initialise() As Boolean
''' <summary>
''' Returns the alternator efficiency at given rpm
''' </summary>
''' <param name="rpm">alternator rotation speed</param>
''' <returns>Single</returns>
''' <remarks></remarks>
Function GetEfficiency(ByVal rpm As Double, ByVal amps As Ampere) As AlternatorMapValues
End Interface
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports TUGraz.VectoCommon.Utils
Namespace DownstreamModules.Electrics
Public Interface IAlternatorMap
Inherits IAuxiliaryEvent
''' <summary>
''' Initialise the map from supplied csv data
''' </summary>
''' <returns>Boolean - true if map is created successfully</returns>
''' <remarks></remarks>
Function Initialise() As Boolean
''' <summary>
''' Returns the alternator efficiency at given rpm
''' </summary>
''' <param name="rpm">alternator rotation speed</param>
''' <returns>Single</returns>
''' <remarks></remarks>
Function GetEfficiency(ByVal rpm As Double, ByVal amps As Ampere) As AlternatorMapValues
End Interface
End Namespace
\ No newline at end of file

Namespace Electrics
Namespace DownstreamModules.Electrics
Public Interface ICombinedAlternator
'Alternators List
Property Alternators As List(Of IAlternator)
......

Namespace Electrics
Namespace DownstreamModules.Electrics
'Reflects stored data in pesisted CombinedAlternator Map .AALT
Public Interface ICombinedAlternatorMapRow
Property AlternatorName As String
......

Imports TUGraz.VectoCommon.Utils
Namespace Electrics
Namespace DownstreamModules.Electrics
'Used by CombinedAlternator
Public Interface ICombinedAlternatorSignals
Property NumberOfAlternators As Integer
......
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports System.ComponentModel
Imports TUGraz.VectoCommon.Utils
Namespace Electrics
Public Interface IElectricalConsumer
Inherits INotifyPropertyChanged
Property Category As String
Property ConsumerName As String
Property BaseVehicle As Boolean
Property NominalConsumptionAmps As Double
Property PhaseIdle_TractionOn As Double
Property NumberInActualVehicle As Integer
Property PowerNetVoltage As Double
Property AvgConsumptionAmps As Double
Property Info As String
Function TotalAvgConumptionAmps(Optional PhaseIdle_TractionOnBasedOnCycle As Double = Nothing) As Ampere
Function TotalAvgConsumptionInWatts(Optional PhaseIdle_TractionOnBasedOnCycle As Double = 0.0) As Watt
End Interface
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports System.ComponentModel
Imports TUGraz.VectoCommon.Utils
Namespace DownstreamModules.Electrics
Public Interface IElectricalConsumer
Inherits INotifyPropertyChanged
Property Category As String
Property ConsumerName As String
Property BaseVehicle As Boolean
Property NominalConsumptionAmps As Double
Property PhaseIdle_TractionOn As Double
Property NumberInActualVehicle As Integer
Property PowerNetVoltage As Double
Property AvgConsumptionAmps As Double
Property Info As String
Function TotalAvgConumptionAmps(Optional PhaseIdle_TractionOnBasedOnCycle As Double = Nothing) As Ampere
Function TotalAvgConsumptionInWatts(Optional PhaseIdle_TractionOnBasedOnCycle As Double = 0.0) As Watt
End Interface
End Namespace
\ No newline at end of file
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports TUGraz.VectoCommon.Utils
Namespace Electrics
Public Interface IElectricalConsumerList
''' <summary>
''' List of Electrical Consumers
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
ReadOnly Property Items As List(Of IElectricalConsumer)
''' <summary>
''' Add New Electrical Consumer
''' </summary>
''' <param name="consumer"></param>
''' <remarks></remarks>
Sub AddConsumer(consumer As IElectricalConsumer)
''' <summary>
''' Remove Electrical Consumer
''' </summary>
''' <param name="consumer"></param>
''' <remarks></remarks>
Sub RemoveConsumer(consumer As IElectricalConsumer)
''' <summary>
''' Get Total Average Demand In Amps
''' </summary>
''' <param name="excludeOnBase">Exclude those on base vehicle</param>
''' <returns></returns>
''' <remarks></remarks>
Function GetTotalAverageDemandAmps(excludeOnBase As Boolean) As Ampere
''' <summary>
''' Door Actuation Time Fraction ( Total Time Spent Operational during cycle )
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property DoorDutyCycleFraction As Double
'Merge Info data from ElectricalConsumer in a Default set into live set
'This is required because the info is stored in the AAUX file and we do not want to use a persistance stored version.
Sub MergeInfoData()
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports TUGraz.VectoCommon.Utils
Namespace DownstreamModules.Electrics
Public Interface IElectricalConsumerList
''' <summary>
''' List of Electrical Consumers
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
ReadOnly Property Items As List(Of IElectricalConsumer)
''' <summary>
''' Add New Electrical Consumer
''' </summary>
''' <param name="consumer"></param>
''' <remarks></remarks>
Sub AddConsumer(consumer As IElectricalConsumer)
''' <summary>
''' Remove Electrical Consumer
''' </summary>
''' <param name="consumer"></param>
''' <remarks></remarks>
Sub RemoveConsumer(consumer As IElectricalConsumer)
''' <summary>
''' Get Total Average Demand In Amps
''' </summary>
''' <param name="excludeOnBase">Exclude those on base vehicle</param>
''' <returns></returns>
''' <remarks></remarks>
Function GetTotalAverageDemandAmps(excludeOnBase As Boolean) As Ampere
''' <summary>
''' Door Actuation Time Fraction ( Total Time Spent Operational during cycle )
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property DoorDutyCycleFraction As Double
'Merge Info data from ElectricalConsumer in a Default set into live set
'This is required because the info is stored in the AAUX file and we do not want to use a persistance stored version.
Sub MergeInfoData()
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports VectoAuxiliaries.Electrics
Namespace Electrics
Public Interface IElectricsUserInputsConfig
''' <summary>
''' Power Net Voltage - The supply voltage used on the vehilce.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property PowerNetVoltage As Double
''' <summary>
''' The Path for the Alternator map
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property AlternatorMap As String
''' <summary>
''' Alternator Gear Efficiency
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property AlternatorGearEfficiency As Double
''' <summary>
''' List of Electrical Consumers
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ElectricalConsumers As IElectricalConsumerList
''' <summary>
''' Door Actuation Time In Seconds ( Time Taken to Open/Close the door )
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property DoorActuationTimeSecond As Integer
''' <summary>
''' Result Card Taken During Idle.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ResultCardIdle As IResultCard
''' <summary>
''' Result Card Taken During Traction
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ResultCardTraction As IResultCard
''' <summary>
''' Result Card Taken During Overrun
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ResultCardOverrun As IResultCard
''' <summary>
''' Smart Electrical System
''' </summary>
''' <value></value>
''' <returns>True For Smart Electrical Systems/ False For non Smart.</returns>
''' <remarks></remarks>
Property SmartElectrical As Boolean
''' <summary>
''' Stored Energy Efficiency
''' </summary>
''' <value></value>
''' <returns>Stored Energy Efficiency</returns>
''' <remarks></remarks>
Property StoredEnergyEfficiency As Single
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace DownstreamModules.Electrics
Public Interface IElectricsUserInputsConfig
''' <summary>
''' Power Net Voltage - The supply voltage used on the vehilce.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property PowerNetVoltage As Double
''' <summary>
''' The Path for the Alternator map
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property AlternatorMap As String
''' <summary>
''' Alternator Gear Efficiency
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property AlternatorGearEfficiency As Double
''' <summary>
''' List of Electrical Consumers
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ElectricalConsumers As IElectricalConsumerList
''' <summary>
''' Door Actuation Time In Seconds ( Time Taken to Open/Close the door )
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property DoorActuationTimeSecond As Integer
''' <summary>
''' Result Card Taken During Idle.
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ResultCardIdle As IResultCard
''' <summary>
''' Result Card Taken During Traction
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ResultCardTraction As IResultCard
''' <summary>
''' Result Card Taken During Overrun
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property ResultCardOverrun As IResultCard
''' <summary>
''' Smart Electrical System
''' </summary>
''' <value></value>
''' <returns>True For Smart Electrical Systems/ False For non Smart.</returns>
''' <remarks></remarks>
Property SmartElectrical As Boolean
''' <summary>
''' Stored Energy Efficiency
''' </summary>
''' <value></value>
''' <returns>Stored Energy Efficiency</returns>
''' <remarks></remarks>
Property StoredEnergyEfficiency As Single
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports TUGraz.VectoCommon.Utils
Namespace Electrics
Public Interface IResultCard
''' <summary>
''' Returns a List of (SmartResult )
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
ReadOnly Property Results As List(Of SmartResult)
''' <summary>
''' Returns the Smart Current (A)
''' </summary>
''' <param name="Amps"></param>
''' <returns></returns>
''' <remarks>Defaults to 10 Amps if no readings present</remarks>
Function GetSmartCurrentResult(ByVal Amps As Ampere) As Ampere
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports TUGraz.VectoCommon.Utils
Imports VectoAuxiliaries.Electrics
Namespace DownstreamModules.Electrics
Public Interface IResultCard
''' <summary>
''' Returns a List of (SmartResult )
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
ReadOnly Property Results As List(Of SmartResult)
''' <summary>
''' Returns the Smart Current (A)
''' </summary>
''' <param name="Amps"></param>
''' <returns></returns>
''' <remarks>Defaults to 10 Amps if no readings present</remarks>
Function GetSmartCurrentResult(ByVal Amps As Ampere) As Ampere
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace Electrics
Public Class SmartResult
Implements IComparable(Of SmartResult)
Public Property Amps As Double
Public Property SmartAmps As Double
'Constructors
Public Sub new()
'An empty constructor is requried. Do not remove.
End Sub
Public Sub New(amps As Double, smartAmps As Double)
Me.Amps = amps
Me.SmartAmps = smartAmps
End Sub
'Comparison
Public Function CompareTo(other As SmartResult) As Integer Implements IComparable(Of SmartResult).CompareTo
If other.Amps > Me.Amps then return - 1
If other.Amps = Me.Amps then Return 0
Return 1
End Function
'Comparison Overrides
Public Overrides Function Equals(obj As Object) As Boolean
Dim other as SmartResult = Ctype(Obj, SmartResult)
Return Me.Amps = other.Amps
End Function
Public Overrides Function GetHashCode() As Integer
Return 0
End Function
End Class
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace DownstreamModules.Electrics
Public Class SmartResult
Implements IComparable(Of SmartResult)
Public Property Amps As Double
Public Property SmartAmps As Double
'Constructors
Public Sub new()
'An empty constructor is requried. Do not remove.
End Sub
Public Sub New(amps As Double, smartAmps As Double)
Me.Amps = amps
Me.SmartAmps = smartAmps
End Sub
'Comparison
Public Function CompareTo(other As SmartResult) As Integer Implements IComparable(Of SmartResult).CompareTo
If other.Amps > Me.Amps then return - 1
If other.Amps = Me.Amps then Return 0
Return 1
End Function
'Comparison Overrides
Public Overrides Function Equals(obj As Object) As Boolean
Dim other as SmartResult = Ctype(Obj, SmartResult)
Return Me.Amps = other.Amps
End Function
Public Overrides Function GetHashCode() As Integer
Return 0
End Function
End Class
End Namespace
Namespace Hvac
Namespace DownstreamModules.HVAC
Public Interface IEnvironmentalCondition
Function GetTemperature() As Double
Function GetSolar() As Double
......
Namespace Hvac

Namespace DownstreamModules.HVAC
Public Interface IEnvironmentalConditionsMap
Function Initialise() As Boolean
......
Imports TUGraz.VectoCommon.Utils
Namespace Hvac
Namespace DownstreamModules.HVAC
Public Interface IHVACConstants
''' <summary>
''' Diesel: 44800 [J/g]
......
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace Hvac
Public Interface IHVACSteadyStateModel
''' <summary>
''' Initialised Values From Map
''' </summary>
''' <param name="filePath"></param>
''' <param name="message"></param>
''' <returns>True if successfull, and False if not.</returns>
''' <remarks></remarks>
Function SetValuesFromMap(byval filePath As String, ByRef message As string) As Boolean
''' <summary>
''' HVAC Mechanical Load Power (W)
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property HVACMechanicalLoadPowerWatts As Single
''' <summary>
''' HVAC Electrical Load Power (W)
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property HVACElectricalLoadPowerWatts As Single
''' <summary>
''' HVAC Fuelling (L/H)
''' </summary>
''' <value></value>
''' <returns>Liters per hour</returns>
''' <remarks></remarks>
Property HVACFuellingLitresPerHour As single
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace DownstreamModules.HVAC
Public Interface IHVACSteadyStateModel
''' <summary>
''' Initialised Values From Map
''' </summary>
''' <param name="filePath"></param>
''' <param name="message"></param>
''' <returns>True if successfull, and False if not.</returns>
''' <remarks></remarks>
Function SetValuesFromMap(byval filePath As String, ByRef message As string) As Boolean
''' <summary>
''' HVAC Mechanical Load Power (W)
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property HVACMechanicalLoadPowerWatts As Single
''' <summary>
''' HVAC Electrical Load Power (W)
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property HVACElectricalLoadPowerWatts As Single
''' <summary>
''' HVAC Fuelling (L/H)
''' </summary>
''' <value></value>
''' <returns>Liters per hour</returns>
''' <remarks></remarks>
Property HVACFuellingLitresPerHour As single
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Imports VectoAuxiliaries.Pneumatics
Imports VectoAuxiliaries.Electrics
Imports VectoAuxiliaries.Hvac
Namespace Hvac
Public Interface IHVACUserInputsConfig
' Property SteadyStateModel As IHVACSteadyStateModel
''' <summary>
''' PathName of the Steady State Model File
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property SSMFilePath As String
Property BusDatabasePath As String
Property SSMDisabled As Boolean
End Interface
End Namespace
' Copyright 2017 European Union.
' Licensed under the EUPL (the 'Licence');
'
' * You may not use this work except in compliance with the Licence.
' * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl
' * Unless required by applicable law or agreed to in writing,
' software distributed under the Licence is distributed on an "AS IS" basis,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
'
' See the LICENSE.txt for the specific language governing permissions and limitations.
Namespace DownstreamModules.HVAC
Public Interface IHVACUserInputsConfig
' Property SteadyStateModel As IHVACSteadyStateModel
''' <summary>
''' PathName of the Steady State Model File
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Property SSMFilePath As String
Property BusDatabasePath As String
Property SSMDisabled As Boolean
End Interface
End Namespace
Namespace Hvac
Imports VectoAuxiliaries.Hvac
Namespace DownstreamModules.HVAC
Public Interface ISSMCalculate
......

Namespace Hvac
Imports VectoAuxiliaries.Hvac
Namespace DownstreamModules.HVAC
Public Interface ISSMGenInputs
......
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