15 RouteTracker(
Net&,
const std::vector<WideSegment_25>&,
const std::vector<Via>&);
19 const std::vector<WideSegment_25> &mSegs;
20 const std::vector<Via> &mVias;
21 std::map<Point_25, std::set<const Via *>> mPoint2Vias;
22 std::vector<std::list<WideSegment_25>> mTracks;
23 std::map<Point_2, std::set<uint>> mPoint2Tracks;
24 std::map<Point_25, Pin *> mPt2Pin;
26 void mergeTracks(uint t, uint u);
27 void eraseFront(uint t);
28 void eraseBack(uint t);
30 uint tryAppend(std::set<uint>&,
const WideSegment_25&, uint except = std::numeric_limits<uint>::max());
32 bool tryConnectTracks(uint t, uint u);
33 bool canAddVia(
const Point_25 &v,
int z)
const;
34 void makeConnections();
35 void addConnection(
Pin *, std::vector<WideSegment_25>&, std::vector<Via>&,
Pin *);