/// <summary> /// Invoked by the decoding thread to indicate that it has completed. /// </summary> /// <param name="success">To indicate if the decoding process was successful.</param> /// <param name="postProcess">The results after post porcessing the results from record level Viterbi inference.</param> /// <param name="filePath">The path to the phone's memory file.</param> /// <param name="phoneInfo">Stores the manufacturer, model etc. information about the phone.</param> public void EndWork(bool success, PostProcessor postProcess, string filePath, PhoneInfo phoneInfo) { if (Terminating) { return; } if (MainForm.Program.InvokeRequired) { EndWorkCallback cb = new EndWorkCallback(EndWork); this.Invoke(cb, new object[] { success, postProcess, filePath, phoneInfo }); } else { this.workerThread = null; if (success) { this.postProcess = postProcess; this.filePath = filePath; this.phoneInfo = phoneInfo; labelStatus9.Text = String.Format("Calls={0}, Addresses={1}, SMS={2}, Images={3}", postProcess.callLogFields.Count, postProcess.addressBookFields.Count, postProcess.smsFields.Count, postProcess.imageBlocks.Count); } else { this.postProcess = null; HideChecksAbdSteps(); } EnableDisableFields(); } }
/// <summary> /// Invoked by the decoding thread to indicate that it has completed. /// </summary> /// <param name="success">To indicate if the decoding process was successful.</param> /// <param name="postProcess">The results after post porcessing the results from record level Viterbi inference.</param> /// <param name="filePath">The path to the phone's memory file.</param> /// <param name="phoneInfo">Stores the manufacturer, model etc. information about the phone.</param> public void EndWork(bool success, PostProcessor postProcess, string filePath, PhoneInfo phoneInfo) { if (Terminating) return; if (MainForm.Program.InvokeRequired) { EndWorkCallback cb = new EndWorkCallback(EndWork); this.Invoke(cb, new object[] {success, postProcess, filePath, phoneInfo}); } else { this.workerThread = null; if (success) { this.postProcess = postProcess; this.filePath = filePath; this.phoneInfo = phoneInfo; labelStatus9.Text = String.Format("Calls={0}, Addresses={1}, SMS={2}, Images={3}", postProcess.callLogFields.Count, postProcess.addressBookFields.Count, postProcess.smsFields.Count, postProcess.imageBlocks.Count); } else { this.postProcess = null; HideChecksAbdSteps(); } EnableDisableFields(); } }