de.jaetzold.util
Class TransitionMatrixStateDecider
java.lang.Object
|
+--de.jaetzold.util.TransitionMatrixStateDecider
- All Implemented Interfaces:
- StateDecider
- Direct Known Subclasses:
- RCXRawSwitchStateDecider, RCXRotationCountStateDecider
- public class TransitionMatrixStateDecider
- extends Object
- implements StateDecider
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TransitionMatrixStateDecider
public TransitionMatrixStateDecider()
TransitionMatrixStateDecider
public TransitionMatrixStateDecider(StateDecider[] matrix)
TransitionMatrixStateDecider
public TransitionMatrixStateDecider(int[][] matrix)
nextStateValue
public double nextStateValue(double actualState,
double value)
- Description copied from interface:
StateDecider
- Return the next state. The result may depend on the given actualState and the current value but is allowed to depend on anything else. Be sure to have
isCacheable()
return a correct result then.
- Specified by:
nextStateValue
in interface StateDecider
- Following copied from interface:
de.jaetzold.util.StateDecider
- See Also:
StateDecider.isCacheable()
isCacheable
public boolean isCacheable()
- Description copied from interface:
StateDecider
- Tells whether this instance will in the future produce the same state for the same value argument, independent of the actualState.
This can be false first and then true at a later time, but it is not legal to return false here after a return of true in the past, because the true answer before was wrong then.
- Specified by:
isCacheable
in interface StateDecider
- Following copied from interface:
de.jaetzold.util.StateDecider
- Returns:
- true if this instance guarantees, that any further call to nextStateValue() with the same value-argument returns the same state
getDeciders
public StateDecider getDeciders(int index)
getDeciders
public StateDecider[] getDeciders()
setDeciders
public void setDeciders(int index,
StateDecider decider)
throws PropertyVetoException
setDeciders
public void setDeciders(StateDecider[] matrix)
throws PropertyVetoException