private void tmrSimulation_Tick(object sender, EventArgs e)
        {
            k++;
            _simTickTime += TimeSpan.FromMilliseconds(tmrSimulation.Interval);
            s.Tick();

            // Update goal listview (test pass/fail)
            UpdateGoalList(); // Test Oracle

            PrintSimulationStatus(s.GetMonitoringText());
        }
        private bool LoadSimulatorLibrary(FileInfo simulatorFile)
        {
            Assembly simFile;

            try
            {
                simFile = Assembly.LoadFrom(simulatorFile.FullName);

                //Type[] mod = simFile.GetTypes();
                Type mainType;

                foreach (Type t in simFile.GetTypes())
                {
                    if (t.Name == "ScenarioMain")
                    {
                        mainType = t;

                        s                       = (Simulator)simFile.CreateInstance(mainType.FullName);
                        s.OnLogUpdate          += Simulator_OnLogUpdate;
                        s.OnSimulationComplete += Simulator_OnSimulationComplete;
                        tsLabel.Text            = "Ready";

                        _fSimulator = simulatorFile;
                        EnableSimulator(true);
                        _simulationStatus = SIMULATION_STATUS.READY;

                        PrintSimulationStatus(s.GetMonitoringText());

                        return(true);
                    }
                }
            }
            catch (Exception)
            {
                // Error loading simulator file
            }

            return(false);
        }
        private bool LoadSimulatorLibrary(FileInfo simulatorFile)
        {
            Assembly simFile;

            try
            {
                simFile = Assembly.LoadFrom(simulatorFile.FullName);

                //Type[] mod = simFile.GetTypes();
                Type mainType;

                foreach (Type t in simFile.GetTypes())
                {
                    if (t.Name == "ScenarioMain")
                    {
                        mainType = t;

                        s = (Simulator)simFile.CreateInstance(mainType.FullName);
                        s.OnLogUpdate += Simulator_OnLogUpdate;
                        s.OnSimulationComplete += Simulator_OnSimulationComplete;
                        tsLabel.Text = "Ready";

                        _fSimulator = simulatorFile;
                        EnableSimulator(true);
                        _simulationStatus = SIMULATION_STATUS.READY;

                        PrintSimulationStatus(s.GetMonitoringText());

                        return true;
                    }
                }
            }
            catch (Exception)
            {
                // Error loading simulator file
            }

            return false;
        }