feat: Adds furnace heating interpolations.
All checks were successful
CI / Ubuntu (push) Successful in 11m23s
All checks were successful
CI / Ubuntu (push) Successful in 11m23s
This commit is contained in:
53
Sources/Models/FurnaceInterpolation.swift
Normal file
53
Sources/Models/FurnaceInterpolation.swift
Normal file
@@ -0,0 +1,53 @@
|
||||
public enum FurnaceInterpolation {
|
||||
|
||||
public struct Request: Codable, Equatable, Sendable {
|
||||
|
||||
public let elevation: Int?
|
||||
public let winterDesignTemperature: Int
|
||||
public let heatLoss: Int
|
||||
public let inputRating: Int
|
||||
public let afue: Double
|
||||
|
||||
public init(
|
||||
elevation: Int? = nil,
|
||||
winterDesignTemperature: Int,
|
||||
heatLoss: Int,
|
||||
inputRating: Int,
|
||||
afue: Double
|
||||
) {
|
||||
self.elevation = elevation
|
||||
self.winterDesignTemperature = winterDesignTemperature
|
||||
self.heatLoss = heatLoss
|
||||
self.inputRating = inputRating
|
||||
self.afue = afue
|
||||
}
|
||||
}
|
||||
|
||||
public struct Response: Codable, Equatable, Sendable {
|
||||
|
||||
public let failed: Bool
|
||||
public let failures: [String]?
|
||||
public let altitudeAdjustmentMultiplier: Double?
|
||||
public let capacityAsPercentOfLoad: Int
|
||||
public let oversizingLimit: Int
|
||||
public let undersizingLimit: Int
|
||||
public let outputCapacity: Int
|
||||
|
||||
public init(
|
||||
failures: [String]? = nil,
|
||||
altitudeAdjustmentMultiplier: Double? = nil,
|
||||
capacityAsPercentOfLoad: Int,
|
||||
oversizingLimit: Int,
|
||||
undersizingLimit: Int,
|
||||
outputCapacity: Int
|
||||
) {
|
||||
self.failed = failures == nil ? false : !failures!.isEmpty
|
||||
self.failures = failures
|
||||
self.altitudeAdjustmentMultiplier = altitudeAdjustmentMultiplier
|
||||
self.capacityAsPercentOfLoad = capacityAsPercentOfLoad
|
||||
self.oversizingLimit = oversizingLimit
|
||||
self.undersizingLimit = undersizingLimit
|
||||
self.outputCapacity = outputCapacity
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user