private void pushTrigger(State.TriggerType type, String parameter) { if (parameter == null) { throw new ArgumentNullException(); } lock (queuedTriggerLock) queuedTrigger = new State.Trigger(type, parameter); }
public void TransitionTo(State state, State.Trigger trigger = null) { Console.WriteLine("STATE: " + state.GetType().Name); statusQueryInterval = DefaultStatusQueryInterval; currentState = state; currentState.Enter(trigger); stateChangedFlag = true; }
public State.Trigger PopTrigger(State.TriggerType type) { State.Trigger trigger = null; lock (queuedTriggerLock) { if (queuedTrigger != null && queuedTrigger.Type == type) { trigger = queuedTrigger; queuedTrigger = null; } } return(trigger); }
private void pushTrigger(State.TriggerType type) { lock (queuedTriggerLock) queuedTrigger = new State.Trigger(type); }
private void clearTrigger() { lock (queuedTriggerLock) queuedTrigger = null; }