2016-06-15 21:47:26 +02:00
|
|
|
package info.nightscout.androidaps.interfaces;
|
|
|
|
|
2018-03-20 22:09:22 +01:00
|
|
|
import info.nightscout.androidaps.data.Profile;
|
|
|
|
|
2016-06-15 21:47:26 +02:00
|
|
|
/**
|
|
|
|
* Created by mike on 15.06.2016.
|
|
|
|
*/
|
2016-06-20 20:45:55 +02:00
|
|
|
public interface ConstraintsInterface {
|
2016-06-19 13:17:16 +02:00
|
|
|
|
2018-03-19 18:45:23 +01:00
|
|
|
Constraint<Boolean> isLoopInvokationAllowed(Constraint<Boolean> value);
|
2016-06-27 18:48:48 +02:00
|
|
|
|
2018-03-19 18:45:23 +01:00
|
|
|
Constraint<Boolean> isClosedLoopAllowed(Constraint<Boolean> value);
|
2016-06-27 18:48:48 +02:00
|
|
|
|
2018-03-19 22:36:08 +01:00
|
|
|
Constraint<Boolean> isAutosensModeEnabled(Constraint<Boolean> value);
|
2016-06-27 18:48:48 +02:00
|
|
|
|
2018-03-19 22:59:25 +01:00
|
|
|
Constraint<Boolean> isAMAModeEnabled(Constraint<Boolean> value);
|
2016-06-27 18:48:48 +02:00
|
|
|
|
2018-03-19 23:14:04 +01:00
|
|
|
Constraint<Boolean> isSMBModeEnabled(Constraint<Boolean> value);
|
2017-12-31 12:24:51 +01:00
|
|
|
|
2018-03-20 22:09:22 +01:00
|
|
|
Constraint<Double> applyBasalConstraints(Constraint<Double> absoluteRate, Profile profile);
|
2016-06-27 18:48:48 +02:00
|
|
|
|
2018-03-21 20:24:02 +01:00
|
|
|
Constraint<Integer> applyBasalPercentConstraints(Constraint<Integer> percentRate, Profile profile);
|
2016-06-20 21:43:29 +02:00
|
|
|
|
2018-03-21 23:01:30 +01:00
|
|
|
Constraint<Double> applyBolusConstraints(Constraint<Double> insulin);
|
2016-06-27 18:48:48 +02:00
|
|
|
|
2018-03-22 10:31:07 +01:00
|
|
|
Constraint<Integer> applyCarbsConstraints(Constraint<Integer> carbs);
|
2016-06-27 18:48:48 +02:00
|
|
|
|
|
|
|
Double applyMaxIOBConstraints(Double maxIob);
|
|
|
|
|
2016-06-15 21:47:26 +02:00
|
|
|
}
|