#include "surf/surfxml_parse_private.h"
#include "surf/random_mgr.h"
#include "instr/instr_private.h"
+#include "surf/surfxml_parse_values.h"
#define NO_MAX_DURATION -1.0
/* This enum used in the routing structure helps knowing in which situation we are. */
typedef enum {
- SURF_ROUTING_NULL = 0, /**< Indefined type */
+ SURF_ROUTING_NULL = 0, /**< Undefined type */
SURF_ROUTING_BASE, /**< Base case: use simple link lists for routing */
SURF_ROUTING_RECURSIVE /**< Recursive case: also return gateway informations */
} e_surf_routing_hierarchy_t;
routing_component_t root;
void *loopback;
size_t size_of_link;
- xbt_dynar_t(*get_route) (const char *src, const char *dst);
- xbt_dynar_t(*get_route_no_cleanup) (const char *src, const char *dst);
- xbt_dynar_t(*get_onelink_routes) (void);
- double (*get_latency) (const char *src, const char *dst);
- e_surf_network_element_type_t(*get_network_element_type) (const char
- *name);
+ xbt_dynar_t(*get_route) (const char *src, const char *dst);
+ xbt_dynar_t(*get_route_or_null) (const char *src, const char *dst);
+ xbt_dynar_t(*get_route_no_cleanup) (const char *src, const char *dst);
+ xbt_dynar_t(*get_onelink_routes) (void);
+ double (*get_latency) (const char *src, const char *dst);
+ void (*get_route_latency)(const char *src, const char *dst,
+ xbt_dynar_t *route, double *latency, int cleanup);
+ e_surf_network_element_type_t(*get_network_element_type) (const char *name);
void (*finalize) (void);
xbt_dynar_t last_route;
};