Combo-specifici hack: Consider a TBR with less than 60 seconds left as completed
when determining whether to set a new TBR. Setting a new TBR overrides an running TBR if any, so this won't fail on the Combo. Without this, a TBR mostly runs out 20 seconds after a loop iteration (when receiving a SGV), so for that almost 5 minutes to TBR is set. Note that this is Combo-specific and needs to be revised when integrating this with mainline.
This commit is contained in:
parent
3bd865a870
commit
0029fdad01
2 changed files with 10 additions and 1 deletions
|
@ -252,6 +252,11 @@ public class TemporaryBasal implements Interval {
|
|||
return Math.round(msecs / 60f / 1000);
|
||||
}
|
||||
|
||||
public int getPlannedRemainingSeconds() {
|
||||
Float remainingMin = (end() - System.currentTimeMillis()) / 1000f;
|
||||
return remainingMin.intValue();
|
||||
}
|
||||
|
||||
public int getPlannedRemainingMinutes() {
|
||||
float remainingMin = (end() - System.currentTimeMillis()) / 1000f / 60;
|
||||
return (remainingMin < 0) ? 0 : Math.round(remainingMin);
|
||||
|
@ -280,6 +285,8 @@ public class TemporaryBasal implements Interval {
|
|||
", isAbsolute=" + isAbsolute +
|
||||
", isFakeExtended=" + isFakeExtended +
|
||||
", netExtendedRate=" + netExtendedRate +
|
||||
", minutesRemaining=" + getPlannedRemainingMinutes() +
|
||||
", secondsRemaining=" + getPlannedRemainingSeconds() +
|
||||
'}';
|
||||
}
|
||||
|
||||
|
|
|
@ -263,7 +263,9 @@ public class TreatmentsPlugin implements PluginBase, TreatmentsInterface {
|
|||
|
||||
@Override
|
||||
public boolean isTempBasalInProgress() {
|
||||
return getTempBasalFromHistory(System.currentTimeMillis()) != null;
|
||||
TemporaryBasal tempBasalFromHistory = getTempBasalFromHistory(System.currentTimeMillis());
|
||||
log.debug("activeTempbasal: " + tempBasalFromHistory);
|
||||
return tempBasalFromHistory != null && tempBasalFromHistory.getPlannedRemainingSeconds() > 60;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Reference in a new issue