com.yobotics.simulationconstructionset.util.statemachines
Class StateMachine

java.lang.Object
  extended by com.yobotics.simulationconstructionset.util.statemachines.StateMachine

public class StateMachine
extends java.lang.Object


Constructor Summary
StateMachine(java.lang.String name, java.lang.String switchTimeName, java.lang.Class<? extends java.lang.Enum<?>> enumType, DoubleYoVariable t, YoVariableRegistry registry)
           
 
Method Summary
 void addState(State state)
           
 void attachStateChangedListener(StateChangedListener listener)
           
 void checkTransitionConditions()
           
 void checkTransitionConditionsThoroughly()
           
 void doAction()
           
 State getCurrentState()
           
 java.lang.Enum<?> getCurrentStateEnum()
           
 State getState(java.lang.Enum<?> stateEnum)
           
 EnumYoVariable<?> getStateYoVariable()
           
 java.lang.String getStateYoVariableName()
           
 java.lang.String getSwitchTimeName()
           
 boolean inCurrentStateForDuration(double duration)
           
 boolean isCurrentState(java.lang.Enum<?> stateEnum)
           
 void setCurrentState(java.lang.Enum<?> nextStateEnum)
           
 double timeInCurrentState()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

StateMachine

public StateMachine(java.lang.String name,
                    java.lang.String switchTimeName,
                    java.lang.Class<? extends java.lang.Enum<?>> enumType,
                    DoubleYoVariable t,
                    YoVariableRegistry registry)
Method Detail

getStateYoVariableName

public java.lang.String getStateYoVariableName()

getSwitchTimeName

public java.lang.String getSwitchTimeName()

attachStateChangedListener

public void attachStateChangedListener(StateChangedListener listener)

addState

public void addState(State state)

setCurrentState

public void setCurrentState(java.lang.Enum<?> nextStateEnum)

isCurrentState

public boolean isCurrentState(java.lang.Enum<?> stateEnum)

timeInCurrentState

public double timeInCurrentState()

inCurrentStateForDuration

public boolean inCurrentStateForDuration(double duration)

doAction

public void doAction()

getCurrentState

public State getCurrentState()

getCurrentStateEnum

public java.lang.Enum<?> getCurrentStateEnum()

getState

public State getState(java.lang.Enum<?> stateEnum)

checkTransitionConditions

public void checkTransitionConditions()

checkTransitionConditionsThoroughly

public void checkTransitionConditionsThoroughly()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getStateYoVariable

public EnumYoVariable<?> getStateYoVariable()