~AsImpl() override;
public:
- /** @brief attach the given host to that AS */
- void attachHost(s4u::Host * host);
+ /** @brief Make an host within that AS */
+ simgrid::s4u::Host* createHost(const char* name, std::vector<double>* speedPerPstate, int coreAmount);
/**
* @brief Probe the routing path between two points
*/
virtual void getRouteAndLatency(NetCard *src, NetCard *dst, sg_platf_route_cbarg_t into, double *latency)=0;
/** @brief retrieves the list of all routes of size 1 (of type src x dst x Link) */
- virtual xbt_dynar_t getOneLinkRoutes();
- std::vector<surf::Link*> *getBypassRoute(routing::NetCard *src, routing::NetCard *dst);
+ virtual void getOneLinkRoutes(xbt_dynar_t accumulator);
+ /* returns whether we found a bypass path */
+ bool getBypassRoute(routing::NetCard * src, routing::NetCard * dst,
+ /* OUT */ std::vector<surf::Link*> * links, double* latency);
virtual void getGraph(xbt_graph_t graph, xbt_dict_t nodes, xbt_dict_t edges)=0;
- static void getRouteRecursive(routing::NetCard *src, routing::NetCard *dst, /* OUT */ std::vector<surf::Link*> * links, double *latency);
-
+ static void getRouteRecursive(routing::NetCard * src, routing::NetCard * dst,
+ /* OUT */ std::vector<surf::Link*> * links, double* latency);
enum class RoutingMode {
unset = 0, /**< Undefined type */