프로젝트

일반

사용자정보

개정판 191b4efb

ID191b4efb0ad82bcf39a148cf4c41f406e2ee992c
상위 b4dbcc45
하위 a1842d07, 91a08862

함의성이(가) 5년 이상 전에 추가함

issue #563: fourth step on going

Change-Id: I1b572403c5c83ac2c11217fe1ec1f7195df5b3bd

차이점 보기:

DTI_PID/DTI_PID/LineNoTracer.py
1001 1001
                break
1002 1002

  
1003 1003
        # fixed run merge
1004
        '''
1004 1005
        consumed_count_past = 0
1006
        for index1 in range(len(fixed_run_infos)):
1007
            if fixed_run_infos[index1].consumed:
1008
                continue
1009
            for index2 in range(len(fixed_run_infos)):
1010
                if index1 == index2 or fixed_run_infos[index2].consumed:
1011
                    continue
1012

  
1013
                result, merged_run_info, header, reverse = QEngineeringLineTracerRunItem.merge_and_sort_if_possible(fixed_run_infos[index1], fixed_run_infos[index2])
1014
                if result:
1015
                    fixed_run_infos[index1].consumed = True
1016
                    fixed_run_infos[index2].consumed = True
1017
                    consumed_count_past += 2
1018
                    if header:
1019
                        waiting_merged_run_infos.append([[fixed_run_infos[index2], fixed_run_infos[index1]], merged_run_info])
1020
                    else:
1021
                        waiting_merged_run_infos.append([[fixed_run_infos[index1], fixed_run_infos[index2]], merged_run_info])
1022
                    break
1023
        
1024
        while True:
1025
            consumed_count = 0
1026
            for index in range(len(fixed_run_infos)):
1027
                if fixed_run_infos[index].consumed:
1028
                    consumed_count += 1
1029
                    continue
1030

  
1031
                for waiting_merged_run_info in waiting_merged_run_infos:
1032
                    result, merged_run_info, header, reverse = QEngineeringLineTracerRunItem.merge_and_sort_if_possible(waiting_merged_run_info[1], fixed_run_infos[index])
1033
                    if result:
1034
                        fixed_run_infos[index].consumed = True
1035
                        consumed_count += 1
1036
                        if header:
1037
                            waiting_merged_run_info[0].insert(0, fixed_run_infos[index])
1038
                            waiting_merged_run_info[1] = merged_run_info
1039
                        else:
1040
                            waiting_merged_run_info[0].append(fixed_run_infos[index])
1041
                            waiting_merged_run_info[1] = merged_run_info
1042
                        break
1005 1043

  
1044
            if consumed_count_past == consumed_count:
1045
                break
1046
            else:
1047
                consumed_count_past = consumed_count
1048

  
1049
        while True:
1050
            merged = False
1051
            for index1 in range(len(waiting_merged_run_infos)):
1052
                waiting_merged_run_info1 = waiting_merged_run_infos[index1]
1053
                for index2 in range(len(waiting_merged_run_infos)):
1054
                    if index1 == index2:
1055
                        continue
1056
                    waiting_merged_run_info2 = waiting_merged_run_infos[index2]
1057
                    result, merged_run_info, header, reverse = QEngineeringLineTracerRunItem.merge_and_sort_if_possible(waiting_merged_run_info1[1], waiting_merged_run_info2[1])
1058
                    if result:
1059
                        if header:
1060
                            if reverse:
1061
                                for waiting_run_info in waiting_merged_run_info2[0]:
1062
                                    waiting_run_info.reverse()
1063
                                waiting_merged_run_info2[0].reverse()
1064
                                waiting_merged_run_info2[0].extend(waiting_merged_run_info1[0])
1065
                            waiting_merged_run_info1[0] = waiting_merged_run_info2[0]
1066
                            waiting_merged_run_info1[1] = merged_run_info
1067
                        else:
1068
                            if reverse:
1069
                                for waiting_run_info in waiting_merged_run_info2[0]:
1070
                                    waiting_run_info.reverse()
1071
                                waiting_merged_run_info2[0].reverse()
1072
                            waiting_merged_run_info1[0].extend(waiting_merged_run_info2[0])
1073
                            waiting_merged_run_info1[1] = merged_run_info
1074
                        merged = True
1075
                        break
1076
                if merged:
1077
                    waiting_merged_run_infos.pop(index2)
1078
                    break
1079
            if not merged:
1080
                break
1081
        '''
1006 1082

  
1007 1083
    except Exception as ex:
1008 1084
        from App import App 

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)