private void ButtonExcelGenerateFromData_Click(object sender, EventArgs e) { int readerCounter = 1; UHFReader R1 = null; UHFReader R2 = null; foreach (Device d in dc.Devices) { if (d is UHFReader) { if (readerCounter == 1) { R1 = (d as UHFReader); } else { R2 = (d as UHFReader); } readerCounter++; } } string readsDuration = ""; if (stopWatch != null) { readsDuration = String.Format("{0:#}", stopWatch.Elapsed.TotalMilliseconds); } ExcelMediator.GenerateFileFromData(R1, R2, readsDuration); }
/// <summary> /// Closes Excel resources if any is being used, then closes form and application /// </summary> /// <param name="e"></param> protected override void OnFormClosed(FormClosedEventArgs e) { ExcelMediator.Close(); base.OnFormClosed(e); Environment.Exit(0); }
private void CheckBoxUseExcel_CheckedChanged(object sender, EventArgs e) { if (checkBoxExcelUseExcel.Checked) { ExcelMediator.ExcelPrep(); } else { ExcelMediator.Close(); } }
/// <summary> /// Starts read process. /// <para>A thread is created for each device process.</para> /// <para>A thread is created for the algorithm, that applies the mathematical model.</para> /// </summary> /// <param name="devicesConnected"></param> public void StartReads(List <Device> devicesConnected) { ClearUIGridMetaTagsDel(); if (devicesConnected != null) { Devices = devicesConnected; } LogUsedDevicesAndMMInformation(); onReads = true; #region create threads for devices for (int i = 0; i < Devices.Count; i++) { if (!Devices[i].Connected) { continue; } if (Devices[i] is UHFReader) { UHFReader r = (Devices[i] as UHFReader); r.Reset(); #region create thread ParameterizedThreadStart processTaskThread = delegate { UseResource(r, readerCounter++, UpdateUIGridMetaTagsDel); }; Thread deviceThread = new Thread(processTaskThread) { Name = String.Format("R{0}", i) }; #endregion deviceThread.Start(); threadsUsed.Add(deviceThread); ExcelMediator.ExcelProcessForRSSIs(r, i + 1); } else if (Devices[i] is LaserModule) { LaserModule l = (Devices[i] as LaserModule); #region create thread ParameterizedThreadStart processTaskThread = delegate { UseResource(l, -1, null); }; Thread deviceThread = new Thread(processTaskThread) { Name = String.Format("L{0}", i) }; #endregion deviceThread.Start(); threadsUsed.Add(deviceThread); } else if (Devices[i] is Servo) { Servo s = (Devices[i] as Servo); #region create thread ParameterizedThreadStart processTaskThread = delegate { UseResource(s, -1, null); }; Thread deviceThread = new Thread(processTaskThread) { Name = String.Format("S{0}", i) }; #endregion deviceThread.Start(); threadsUsed.Add(deviceThread); } } #endregion #region create algorithm thread if (useMM) { ParameterizedThreadStart processTaskThreadForAlgorithm = delegate { UseResourceForAlgorithm(Devices, RunAlgorithm); }; Thread algorithmThread = new Thread(processTaskThreadForAlgorithm) { Name = "M" }; algorithmThread.Start(); threadsUsed.Add(algorithmThread); } #endregion #region send tags to Excel ExcelMediator.ExcelProcessForTagsPosition(WriteLog); #endregion }