| | |
| | | @Autowired |
| | | private StationTaskTraceRegistry stationTaskTraceRegistry; |
| | | |
| | | public synchronized List<NavigateNode> calcOptimalPathByStationId(Integer startStationId, |
| | | Integer endStationId, |
| | | Integer currentTaskNo, |
| | | Double pathLenFactor) { |
| | | public List<NavigateNode> calcOptimalPathByStationId(Integer startStationId, |
| | | Integer endStationId, |
| | | Integer currentTaskNo, |
| | | Double pathLenFactor) { |
| | | return calcPathByStationId(startStationId, endStationId, currentTaskNo, pathLenFactor, StationPathCalcMode.OPTIMAL); |
| | | } |
| | | |
| | | public synchronized List<NavigateNode> calcReachablePathByStationId(Integer startStationId, Integer endStationId) { |
| | | public List<NavigateNode> calcReachablePathByStationId(Integer startStationId, Integer endStationId) { |
| | | return calcPathByStationId(startStationId, endStationId, null, null, StationPathCalcMode.REACHABILITY); |
| | | } |
| | | |
| | | public synchronized List<List<NavigateNode>> calcCandidatePathByStationId(Integer startStationId, |
| | | Integer endStationId, |
| | | Integer currentTaskNo, |
| | | Double pathLenFactor) { |
| | | public List<List<NavigateNode>> calcCandidatePathByStationId(Integer startStationId, |
| | | Integer endStationId, |
| | | Integer currentTaskNo, |
| | | Double pathLenFactor) { |
| | | StationPathResolvedPolicy resolvedPolicy = resolveStationPathPolicy(startStationId, endStationId); |
| | | StationPathSearchContext context = buildStationPathSearchContext( |
| | | startStationId, |
| | |
| | | return normalizeCandidatePaths(orderedPathList); |
| | | } |
| | | |
| | | public synchronized Map<Integer, Set<Integer>> loadUndirectedStationGraphSnapshot() { |
| | | public Map<Integer, Set<Integer>> loadUndirectedStationGraphSnapshot() { |
| | | Map<Integer, Set<Integer>> graph = loadUndirectedStationGraph(); |
| | | Map<Integer, Set<Integer>> snapshot = new HashMap<>(); |
| | | for (Map.Entry<Integer, Set<Integer>> entry : graph.entrySet()) { |
| | |
| | | return snapshot; |
| | | } |
| | | |
| | | private synchronized List<NavigateNode> calcPathByStationId(Integer startStationId, |
| | | Integer endStationId, |
| | | Integer currentTaskNo, |
| | | Double pathLenFactor, |
| | | StationPathCalcMode calcMode) { |
| | | private List<NavigateNode> calcPathByStationId(Integer startStationId, |
| | | Integer endStationId, |
| | | Integer currentTaskNo, |
| | | Double pathLenFactor, |
| | | StationPathCalcMode calcMode) { |
| | | StationPathResolvedPolicy resolvedPolicy = resolveStationPathPolicy(startStationId, endStationId); |
| | | if (calcMode != StationPathCalcMode.REROUTE) { |
| | | List<NavigateNode> directPath = findStationDirectPath( |
| | |
| | | return normalizeStationPath(list); |
| | | } |
| | | |
| | | public synchronized List<NavigateNode> calcByTrackSiteNo(int lev, Integer startTrackSiteNo, Integer endTrackSiteNo) { |
| | | public List<NavigateNode> calcByTrackSiteNo(int lev, Integer startTrackSiteNo, Integer endTrackSiteNo) { |
| | | NavigateSolution navigateSolution = new NavigateSolution(); |
| | | List<List<NavigateNode>> rgvTrackMap = navigateSolution.getRgvTrackMap(lev); |
| | | |
| | |
| | | return fitlerList; |
| | | } |
| | | |
| | | public synchronized List<NavigateNode> findLiftStationList(int lev) { |
| | | public List<NavigateNode> findLiftStationList(int lev) { |
| | | NavigateSolution navigateSolution = new NavigateSolution(); |
| | | List<List<NavigateNode>> stationMap = navigateSolution.getStationMap(lev); |
| | | |