public FiniteAutomataTransitionAbstract(IFiniteAutomataState statestart, IFiniteAutomataState stateend)
     : base()
 {
     if (statestart.Automata != stateend.Automata) { new FiniteAutomataException(); };
     _statestart = statestart;
     _stateend = stateend;
     _automata = statestart.Automata;
     Automata.Transitions.addObject(this);
 }
 public FiniteAutomataDebugger(IFiniteAutomata automata)
     : base()
 {
     _automata = automata;
 }
 public FiniteAutomataProcessorAbstract(IFiniteAutomata automata)
     : base()
 {
     _automata = automata;
 }
 public FiniteAutomataStateAbstract(IFiniteAutomata automata, string ID)
     : base(ID)
 {
     _automata = automata;
     Automata.States.addObject(this);
 }
 public static IFiniteAutomataState GenerateAutomataState(IFiniteAutomata automata, string ID)
 {
     return new FiniteAutomataStateBasic(automata, ID);
 }
 public static IFiniteAutomataDebugger GenerateAutomataDebugger(IFiniteAutomata automata)
 {
     return new FiniteAutomataDebugger(automata);
 }
 public FiniteAutomataStateBasic(IFiniteAutomata automata, string ID)
     : base(automata, ID)
 {
 }
 public FiniteAutomataProcessorBasic(IFiniteAutomata automata)
     : base(automata)
 {
 }