cleanups in routing
- Make the link field of sg_platf_route_cbarg_t a vector<Link*>
instead of a dynar.
- This dynar used to contain sometimes links (when computing the
RouteAndLatency) and sometimes link names (when parsing).
- When parsing, the AS were in charge of checking that the links
which names are given exist. Now, the parsing code has to deal with
its own mess, to pass the expected Link*.
The situation around this data structure is still very messy because:
- src and dst are the names while src_gw and dst_gw are the netcards
- not all the fields are used in all usages:
- src/dst not used in data stored in floyd/dijkstra
- gw_* not used when adding a route (only for ASroute)
- gw_* not used in the data stored in floyd/dijkstra but in the
return value of getRouteAndLatency for these models.
Ultimately, this data structure should be limited to the xml world,
and proper replacement designed for each situations.
21 files changed: