/// <summary> /// Adds an outgoing transition. /// </summary> /// <param name="transition">The outgoing transition to add.</param> /// <remarks> /// This method is called from the local transition class constructor. /// </remarks> internal void addOutgoingTransition(NSFLocalTransition transition) { // Insert before first external transition foreach (NSFTransition outgoingTransition in outgoingTransitions) { if (outgoingTransition is NSFExternalTransition) { outgoingTransitions.Insert(outgoingTransitions.IndexOf(outgoingTransition), transition); return; } } outgoingTransitions.Add(transition); }
public TransitionOrderTest(String name) : base(name, new NSFEventThread(name)) { // Events event1 = new NSFEvent("Event1", this); event2 = new NSFEvent("Event2", this); event3 = new NSFEvent("Event3", this); // Regions and states, from outer to inner initialTest15 = new NSFInitialState("InitialTest16", this); state1 = new NSFCompositeState("State1", this, null, null); state2 = new NSFCompositeState("State2", this, null, null); intialState2 = new NSFInitialState("IntialState2", state2); state2_1 = new NSFCompositeState("State2_1", state2, null, state2_1ExitActions); state3 = new NSFCompositeState("State3", this, null, null); initialState3 = new NSFInitialState("InitialState3", state3); state3_1 = new NSFCompositeState("State3_1", state3, null, state3_1ExitActions); state4 = new NSFCompositeState("State4", this, null, null); errorState = new NSFCompositeState("Error", this, null, null); // Transitions, ordered internal, local, external initialTest15ToState1Transition = new NSFExternalTransition("InitialTest15ToState1", initialTest15, state1, null, null, null); state1ToState2Transition = new NSFExternalTransition("State1ToState2", state1, state2, event2, null, null); state1ReactionToEvent1 = new NSFInternalTransition("State1ReactionToEvent1", state1, event1, null, state1ReactionToEvent1Actions); state1ToErrorTransition = new NSFExternalTransition("State1ToError", state1, errorState, event1, null, null); state2ToState3Transition = new NSFExternalTransition("State2ToState3Transition", state2, state3, event2, null, null); state2ToErrorTransition = new NSFExternalTransition("State2ToErrorTransition", state2, errorState, event1, null, null); state2ToState2Transition = new NSFLocalTransition("State2ToState2Transition", state2, state2, event1, null, null); intialState2ToState2_1Transition = new NSFExternalTransition("intialState2ToState2_1Transition", intialState2, state2_1, null, null, null); state3ToState4Transition = new NSFExternalTransition("State3ToState4Transition", state3, state4, event2, null, null); state3ToState3Transition = new NSFLocalTransition("State3ToState3Transition", state3, state3, event1, null, null); state3ReactionToEvent1 = new NSFInternalTransition("state3ReactionToEvent1", state3, event1, null, state3ReactionToEvent1Actions); initialState3ToState3_1Transition = new NSFExternalTransition("InitialState3ToState3_1Transition", initialState3, state3_1, null, null, null); state3ToErrorTransition = new NSFExternalTransition("State3ToErrorTransition", state3, errorState, event3, null, null); }