public void StartExperiment(string jsonParams) { bool IsParamsReadable = false; if (es.Equals(ExperimentState.IsStopped)) { es = ExperimentState.IsStarting; ToConsole("Starting. Reading experiment parameters..."); try { initialiseExperimentalParameters(jsonParams); IsParamsReadable = true; } catch (ExperimentalParametersException) //Catch weird parameters from UI that would crash the experiment { ToConsole("Could not interpret experiment parameters. Please check and try again."); IsParamsReadable = false; } if (IsParamsReadable) { dataArchive = new List <DataSet>(); experimentThread = new Thread(new ThreadStart(run)); experimentThread.Start(); es = ExperimentState.IsRunning; ToConsole("Thread started. Running experiment sequence."); //Data should be coming in here; As fake data, generate a point every 0.5 seconds. } } }
public void StartExperiment(string jsonParams) { if (es.Equals(ExperimentState.IsStopped)) { es = ExperimentState.IsStarting; initialiseExperimentalParameters(jsonParams); experimentThread = new Thread(new ThreadStart(run)); experimentThread.Start(); es = ExperimentState.IsRunning; //Data should be coming in here; As fake data, generate a point every 0.5 seconds. } }