54 lines
1.5 KiB
Swift
54 lines
1.5 KiB
Swift
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
|
|
}
|
|
}
|
|
}
|