프로젝트

일반

사용자정보

개정판 660148be

ID660148bea7b4e3b4fb780c5b5ed7f3a87504fcd4
상위 c0faf1b5
하위 46ee2d18

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

issue #563: fix second runs sorting

Change-Id: I2a56165a49e4865e0495515c238557f6211209f5

차이점 보기:

DTI_PID/DTI_PID/LineNoTracer.py
796 796
                for fixed_run_info in fixed_run_infos:
797 797
                    fixed_run = fixed_run_info.run
798 798
                    if len(waiting_run.items) > 1 and len(fixed_run.items) > 1:
799
                        # waiting_run and fix_run have items more than 2
799 800
                        if waiting_run.items[0].is_connected(fixed_run.items[0]):
800 801
                            waiting_run_info.reverse()
801 802
                            fixed_run_infos.append(waiting_run_info)
......
817 818
                        else:
818 819
                            remain_count += 1
819 820
                    elif len(fixed_run.items) > 1:
821
                        # waiting_run is single line
820 822
                        if waiting_run.items[0].connectors[0].connectedItem is fixed_run.items[0]:
821 823
                            waiting_run_info.reverse()
822 824
                            fixed_run_infos.append(waiting_run_info)
......
838 840
                        else:
839 841
                            remain_count += 1
840 842
                    else:
841
                        if waiting_run.items[0].connectors[0].connectedItem is fixed_run.items[0] and fixed_run.items[0].connectors[0].connectedItem is waiting_run.items[0]:
843
                        if waiting_run.items[0].is_connected(fixed_run.items[0]) and fixed_run.items[0].connectors[0].connectedItem is waiting_run.items[0]:
842 844
                            waiting_run.reverse()
843 845
                            fixed_run_infos.append(waiting_run_info)
844 846
                            waiting_run_infos.pop(run_index)
845 847
                            break
846
                        elif waiting_run.items[0].connectors[0].connectedItem is fixed_run.items[0] and fixed_run.items[0].connectors[1].connectedItem is waiting_run.items[0]:
848
                        elif waiting_run.items[0].is_connected(fixed_run.items[0]) and fixed_run.items[0].connectors[1].connectedItem is waiting_run.items[0]:
847 849
                            fixed_run_infos.append(waiting_run_info)
848 850
                            waiting_run_infos.pop(run_index)
849 851
                            break
850
                        elif waiting_run.items[0].connectors[1].connectedItem is fixed_run.items[0] and fixed_run.items[0].connectors[1].connectedItem is waiting_run.items[0]:
852
                        elif waiting_run.items[0].is_connected(fixed_run.items[0]) and fixed_run.items[0].connectors[1].connectedItem is waiting_run.items[0]:
851 853
                            waiting_run.reverse()
852 854
                            fixed_run_infos.append(waiting_run_info)
853 855
                            waiting_run_infos.pop(run_index)
854 856
                            break
855
                        elif waiting_run.items[0].connectors[1].connectedItem is fixed_run.items[0] and fixed_run.items[0].connectors[0].connectedItem is waiting_run.items[0]:
857
                        elif waiting_run.items[0].is_connected(fixed_run.items[0]) and fixed_run.items[0].connectors[0].connectedItem is waiting_run.items[0]:
856 858
                            fixed_run_infos.append(waiting_run_info)
857 859
                            waiting_run_infos.pop(run_index)
858 860
                            break
......
867 869
        fixed_merged_run_infos = []
868 870
        waiting_mergerd_run_infos = []
869 871
        for index1 in range(len(waiting_run_infos)):
870
            if waiting_run_info[index1].consumed:
872
            if waiting_run_infos[index1].consumed:
871 873
                continue
872 874
            for index2 in range(len(waiting_run_infos)):
873
                if index1 == index2 or waiting_run_info[index2].consumed:
875
                if index1 == index2 or waiting_run_infos[index2].consumed:
874 876
                    continue
875 877

  
876
                result, merged_run, header = QEngineeringLineTracerRunItem.merge_if_possible(waiting_run_info[index1], waiting_run_info[index2])
878
                result, merged_run, header = QEngineeringLineTracerRunItem.merge_if_possible(waiting_run_infos[index1], waiting_run_infos[index2])
877 879
                if result:
878
                    waiting_run_info[index1].consumed = True
879
                    waiting_run_info[index2].consumed = True
880
                    waiting_run_infos[index1].consumed = True
881
                    waiting_run_infos[index2].consumed = True
880 882
                    if header:
881 883
                        waiting_mergerd_run_infos.append([index2, index1], merged_run)
882 884
                    else:
......
885 887
        
886 888
        while False:
887 889
            for index in range(len(waiting_run_infos)):
888
                if waiting_run_info[index].consumed:
890
                if waiting_run_infos[index].consumed:
889 891
                    continue
890 892

  
891 893
                for waiting_mergerd_run_info in waiting_mergerd_run_infos:
892
                    result, merged_run, header = QEngineeringLineTracerRunItem.merge_if_possible(waiting_mergerd_run_info[1], waiting_run_info[index1])
894
                    result, merged_run, header = QEngineeringLineTracerRunItem.merge_if_possible(waiting_mergerd_run_info[1], waiting_run_infos[index1])
893 895
                    if result:
894
                        waiting_run_info[index].consumed = True
896
                        waiting_run_infos[index].consumed = True
895 897
                        if header:
896 898
                            waiting_mergerd_run_infos.append(waiting_mergerd_run_info[0].insert(0, index), merged_run)
897 899
                        else:

내보내기 Unified diff

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