RouteAlgorithmBase

m_pFwdGraph:SearchGraph *

m_pBwdGraph:SearchGraph *

m_pCostModel:ICostModelBase *


+Next():bool

+Relax(popEdgeInfo:PopEdgeInfo&):bool

...

IRouteGenerator

m_pRouteAlgorithm:RouteAlgorithmBase*

m_pODFinder:ODFinder*

+SetAlgoritm(algorithm:RouteAlgorithmBase*):void

+GenerateRoute():virtual bool

...

PedestrianBidirRouteAlgorithm

...

...

composed

PersonliazationRouteAlgorithm

...

...

derived

derived

BiDirRouteAlgorithm

m_requestRouteCount:int

+routeFromTo:void

-SelectGraph():void

-Meet():bool

...

ODFinder

m_pUserInfo:tn::shared_ptr<USERINFO>

m_vod_candidates:std::vector<ODCandidate>


+Derive():bool

+SetUserInfo():void

+DeriveDestinationByFeatureIDs():void

+DeriveDestinationByDistances():void

+OptimizeDestinationCandidates():void

+


BidirRouteGenerator

...

+GenerateRoute():bool

...

derived

SearchGraph

m_visitedTable:ReuseableVector<RouteItem, 15>

m_currQueueItem:QUEUE_ITEM

m_qRoute: MaxPriorityQueue<QUEUE_ITEM>::type

m_pTravelNetwork:TravelNetwork*

+PQ_Add():void

+PQ_POP():void

+Hashmap_Add():void

+HashMap_Find():void

+Hashmap_Update():void

composed

derived

ICostModelBase

+ CalculateEdgeTravelCost(): virtual bool

+CalculateEdgeTurnCost(): virtual void

+CalculateEdgeTravelETT():virtual double

+CalculateEdgeTurnETT():virtual double

...

composed

FastestCostModel

+ CalculateEdgeTravelCost(): virtual bool

+CalculateEdgeTurnCost(): virtual void

+CalculateEdgeTravelETT():virtual double

+CalculateEdgeTurnETT():virtual double

derived

ECOCostModel

+ CalculateEdgeTravelCost(): virtual bool

+CalculateEdgeTurnCost(): virtual void

+CalculateEdgeTravelETT():virtual double

+CalculateEdgeTurnETT():virtual double

derived

TravelNetwork

m_nNextEdgeCount:int

m_vNextEdge:ReuseableVector<DirectedEdgeId, 10>

+SetCurrent():int

+Next():bool

composed

CRoutingMap

m_instatnce:static CRoutingMap*


+instance():void

+GetSegment():SRouteSegment*

stategy

stategy

2019-09-05 08:58:06 0 34
这里是评论

相关推荐