using System; using System.Collections.Generic; using Wayne.Lib; using Wayne.Lib.StateEngine; using Wayne.Lib.StateEngine.Generic; namespace SinochemInternetPlusApp.States.CarPlateMode { class Composite : CompositeState { protected override void ConfigureCompositeStateMachine() { CONFIGURATION.Config(StateMachine.StateTransitionLookup); } public override void UnhandledEvent(StateEngineEvent stateEngineEvent, ref Transition transition) { base.UnhandledEvent(stateEngineEvent, ref transition); if (stateEngineEvent.Type.Equals(EventType.CardReaderAck)) { var genericEvent = stateEngineEvent as GenericEvent; if (genericEvent != null && genericEvent.EventArgs != null) { if (genericEvent.EventArgs.Ack.MessageSeqNumber == Main.IdleStateCardReaderSqNo) genericEvent.Handled = true; } } } } }