Class ConditionalRTIndicator
java.lang.Object
com.wualabs.qtsurfer.engine.indicators.core.AbstractRTIndicator
com.wualabs.qtsurfer.engine.indicators.core.AbstractDecorableRTIndicator
com.wualabs.qtsurfer.engine.indicators.numeric.ConditionalRTIndicator
- All Implemented Interfaces:
Resettable, RTIndicator
Allow to apply a predicate function to update or not from a RTIndicator
-
Constructor Summary
ConstructorsConstructorDescriptionConditionalRTIndicator(@NonNull RTIndicator indicator, @NonNull Predicate<RTIndicator> predicate, @NonNull RTIndicator thenIndicator) ConditionalRTIndicator(@NonNull RTIndicator indicator, @NonNull Predicate<RTIndicator> predicate, @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) -
Method Summary
Modifier and TypeMethodDescriptionstatic ConditionalRTIndicatorequal(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator) static ConditionalRTIndicatorequal(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) static Predicate<RTIndicator> static ConditionalRTIndicatorgreatOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator) static ConditionalRTIndicatorgreatOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) static Predicate<RTIndicator> greatOrEqual(@NonNull Number coefficient) static ConditionalRTIndicatorgreatThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator) static ConditionalRTIndicatorgreatThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) static Predicate<RTIndicator> static ConditionalRTIndicatorlessOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator) static ConditionalRTIndicatorlessOrEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) static Predicate<RTIndicator> lessOrEqual(@NonNull Number coefficient) static ConditionalRTIndicatorlessThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator) static ConditionalRTIndicatorlessThan(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) static Predicate<RTIndicator> static ConditionalRTIndicatornotEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator) static ConditionalRTIndicatornotEqual(RTIndicator indicator, @NonNull Number coefficient, @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) static Predicate<RTIndicator> final doubleupdate(double newValue) Updates the source indicator, then tests the predicate against it.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
-
ConditionalRTIndicator
public ConditionalRTIndicator(@NonNull @NonNull RTIndicator indicator, @NonNull @NonNull Predicate<RTIndicator> predicate, @NonNull @NonNull RTIndicator thenIndicator) -
ConditionalRTIndicator
public ConditionalRTIndicator(@NonNull @NonNull RTIndicator indicator, @NonNull @NonNull Predicate<RTIndicator> predicate, @NonNull @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator)
-
-
Method Details
-
update
public final double update(double newValue) Updates the source indicator, then tests the predicate against it. If the predicate passes, the updated value is forwarded to the thenIndicator. Otherwise, it is forwarded to the elseIndicator (if present), or the current value is retained unchanged.- Specified by:
updatein interfaceRTIndicator- Overrides:
updatein classAbstractRTIndicator- Parameters:
newValue- the new input value- Returns:
- the value from the selected branch indicator, or the unchanged current value
-
equal
-
notEqual
-
lessThan
-
lessOrEqual
-
greatThan
-
greatOrEqual
-
equal
public static ConditionalRTIndicator equal(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator) -
equal
public static ConditionalRTIndicator equal(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) -
notEqual
public static ConditionalRTIndicator notEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator) -
notEqual
public static ConditionalRTIndicator notEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) -
lessThan
public static ConditionalRTIndicator lessThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator) -
lessThan
public static ConditionalRTIndicator lessThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) -
lessOrEqual
public static ConditionalRTIndicator lessOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator) -
lessOrEqual
public static ConditionalRTIndicator lessOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) -
greatThan
public static ConditionalRTIndicator greatThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator) -
greatThan
public static ConditionalRTIndicator greatThan(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator) -
greatOrEqual
public static ConditionalRTIndicator greatOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator) -
greatOrEqual
public static ConditionalRTIndicator greatOrEqual(RTIndicator indicator, @NonNull @NonNull Number coefficient, @NonNull @NonNull RTIndicator thenIndicator, RTIndicator elseIndicator)
-