private void DD_clear_MLH() { MLHData.clear(ref MLH_first); MLHLeftData.clear(); MLHRightData.clear(); AC_results.Clear(); AC_results_wrong.Clear(); AC_left_results.Clear(); AC_left_results_wrong.Clear(); AC_right_results.Clear(); AC_right_results_wrong.Clear(); MLH_left_stop_flag = false; MLH_right_stop_flag = false; }
private (bool, int) MLH_left_check_stop() { int[] queue_temp = MLHLeftData.pre_size.ToArray(); if (queue_temp.Length > 0 && curr_acuity_size == queue_temp[queue_temp.Length - 1]) { MLHLeftData.single_repeat_num++; } else { MLHLeftData.single_repeat_num = 0; } if (MLHLeftData.pre_size.Contains(curr_acuity_size)) { MLHLeftData.double_repeat_num++; } else { MLHLeftData.double_repeat_num = 0; //MLHLeftData.pre_size.Enqueue(curr_acuity_size); } if (queue_temp.Length == 0 || curr_acuity_size != queue_temp[queue_temp.Length - 1]) { MLHLeftData.pre_size.Enqueue(curr_acuity_size); while (MLHLeftData.pre_size.Count > 2) { MLHLeftData.pre_size.Dequeue(); } } if (MLHLeftData.single_repeat_num > 3) { return(true, curr_acuity_size); } if (MLHLeftData.double_repeat_num > 5) { return(true, MLHLeftData.get_queue_maxsize()); } return(false, 0); }