Class ClampPredicateRTIndicator
java.lang.Object
com.wualabs.qtsurfer.engine.indicators.core.AbstractRTIndicator
com.wualabs.qtsurfer.engine.indicators.core.AbstractDecorableRTIndicator
com.wualabs.qtsurfer.engine.indicators.numeric.ClampPredicateRTIndicator
- All Implemented Interfaces:
Resettable, RTIndicator
Allow to apply a predicate function to colapse/clamp to a single value
-
Constructor Summary
ConstructorsConstructorDescriptionClampPredicateRTIndicator(@NonNull RTIndicator indicator, @NonNull Predicate<Double> clampPredicate, @NonNull Number clampValue) -
Method Summary
Modifier and TypeMethodDescriptionstatic ClampPredicateRTIndicatorabsEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorabsGreatOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorabsGreatThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorabsLessOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorabsLessThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorabsNotEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorequal(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) doublestatic ClampPredicateRTIndicatorgreatOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorgreatThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorlessOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatorlessThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) static ClampPredicateRTIndicatornotEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull Number clampValue) final doubleupdate(double newValue) Updates the decorated indicator and tests the result against the clamp predicate.Methods inherited from class AbstractDecorableRTIndicator
getIndicator, getIndicatorValueMethods inherited from class AbstractRTIndicator
equals, getDisplayHint, getMeta, getValue, hashCode, hide, isPoison, reset, setValue, toString, toString, withDisplayHint, withMeta
-
Constructor Details
-
ClampPredicateRTIndicator
public ClampPredicateRTIndicator(@NonNull @NonNull RTIndicator indicator, @NonNull @NonNull Predicate<Double> clampPredicate, @NonNull @NonNull Number clampValue)
-
-
Method Details
-
clampTo
-
update
public final double update(double newValue) Updates the decorated indicator and tests the result against the clamp predicate. If the predicate matches, the output is replaced with the fixed clamp value; otherwise, the indicator's actual value is used.- Specified by:
updatein interfaceRTIndicator- Overrides:
updatein classAbstractRTIndicator- Parameters:
newValue- the new input value- Returns:
- the clamped value if predicate matches, otherwise the indicator's computed value
-
equal
public static ClampPredicateRTIndicator equal(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
absEqual
public static ClampPredicateRTIndicator absEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
notEqual
public static ClampPredicateRTIndicator notEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
absNotEqual
public static ClampPredicateRTIndicator absNotEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
lessThan
public static ClampPredicateRTIndicator lessThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
absLessThan
public static ClampPredicateRTIndicator absLessThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
lessOrEqual
public static ClampPredicateRTIndicator lessOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
absLessOrEqual
public static ClampPredicateRTIndicator absLessOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
greatThan
public static ClampPredicateRTIndicator greatThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
absGreatThan
public static ClampPredicateRTIndicator absGreatThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
greatOrEqual
public static ClampPredicateRTIndicator greatOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
absGreatOrEqual
public static ClampPredicateRTIndicator absGreatOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull Number clampValue) -
getClampValue
public double getClampValue()
-