Explorar el Código

Added 5 new XPM variables to Settings.
auto_isf
autoisf_hourlychange
autoisf_max
smb_delivery_ratio
smb_max_range_extension.

(cherry picked from commit 083a925eca68ca5991eeaf2ed8f5f4463dcc11da)

Jon Mårtensson hace 5 años
padre
commit
59ac775173

+ 10 - 0
FreeAPS/Sources/Models/Preferences.swift

@@ -6,6 +6,11 @@ struct Preferences: JSON {
     var currentBasalSafetyMultiplier: Decimal = 4
     var autosensMax: Decimal = 1.2
     var autosensMin: Decimal = 0.7
+    var autoisf: Bool = true
+    var autoISFhourlyChange: Decimal = 0.25
+    var autoISFmax: Decimal = 1.4
+    var smbDeliveryRatio: Decimal = 0.65
+    var smbMaxRangeExtension: Decimal = 2.0
     var rewindResetsAutosens: Bool = true
     var highTemptargetRaisesSensitivity: Bool = false
     var lowTemptargetLowersSensitivity: Bool = false
@@ -50,6 +55,11 @@ extension Preferences {
         case currentBasalSafetyMultiplier = "current_basal_safety_multiplier"
         case autosensMax = "autosens_max"
         case autosensMin = "autosens_min"
+        case autoisf = "auto_isf"
+        case autoISFhourlyChange = "autoisf_hourlychange"
+        case autoISFmax = "autoisf_max"
+        case smbDeliveryRatio = "sms_delivery_ratio"
+        case smbMaxRangeExtension = "smb_max_range_extension"
         case rewindResetsAutosens = "rewind_resets_autosens"
         case highTemptargetRaisesSensitivity = "high_temptarget_raises_sensitivity"
         case lowTemptargetLowersSensitivity = "low_temptarget_lowers_sensitivity"

+ 30 - 0
FreeAPS/Sources/Modules/PreferencesEditor/PreferencesEditorViewModel.swift

@@ -90,6 +90,12 @@ extension PreferencesEditor {
                     settable: self
                 ),
                 Field(
+                    displayName: "Enable Auto ISF",
+                    keypath: \.autoisf,
+                    value: preferences.autoisf,
+                    settable: self
+                ),
+                Field(
                     displayName: "Advanced Target Adjustments",
                     keypath: \.advTargetAdjustments,
                     value: preferences.advTargetAdjustments,
@@ -207,6 +213,30 @@ extension PreferencesEditor {
                     settable: self
                 ),
                 Field(
+                    displayName: "Auto ISF Hourly Max Change",
+                    keypath: \.autoISFhourlyChange,
+                    value: preferences.autoISFhourlyChange,
+                    settable: self
+                ),
+                Field(
+                    displayName: "Auto ISF Max",
+                    keypath: \.autoISFmax,
+                    value: preferences.autoISFmax,
+                    settable: self
+                ),
+                Field(
+                    displayName: "SMB Max Range Extension",
+                    keypath: \.smbMaxRangeExtension,
+                    value: preferences.smbMaxRangeExtension,
+                    settable: self
+                ),
+                Field(
+                    displayName: "SMB Delivery Ratio",
+                    keypath: \.smbDeliveryRatio,
+                    value: preferences.smbDeliveryRatio,
+                    settable: self
+                ),
+                Field(
                     displayName: "Half Basal Exercise Target",
                     keypath: \.halfBasalExerciseTarget,
                     value: preferences.halfBasalExerciseTarget,