return static_cast<HostPtr>(surf_host_resource_priv(resource));
}
-static RoutingEdgePtr get_casted_routing(surf_resource_t resource){
- return static_cast<RoutingEdgePtr>(surf_routing_resource_priv(resource));
-}
-
static VMPtr get_casted_vm(surf_resource_t resource){
return static_cast<VMPtr>(surf_host_resource_priv(resource));
}
}
void surf_as_cluster_set_backbone(AS_t as, void* backbone){
- static_cast<AsClusterPtr>(as)->p_backbone = static_cast<NetworkLinkPtr>(backbone);
+ static_cast<AsClusterPtr>(as)->p_backbone = static_cast<Link*>(backbone);
}
const char *surf_model_name(surf_model_t model){
void surf_vm_destroy(surf_resource_t resource){
/* Before clearing the entries in host_lib, we have to pick up resources. */
VMPtr vm = get_casted_vm(resource);
- RoutingEdgePtr routing = get_casted_routing(resource);
char* name = xbt_dict_get_elm_key(resource);
/* We deregister objects from host_lib, without invoking the freeing callback
* of each level.
* including MSG_HOST_LEVEL and others. We should unregister only what we know.
*/
sg_host_surfcpu_destroy((sg_host_t)resource);
- xbt_lib_unset(host_lib, name, ROUTING_HOST_LEVEL, 0);
+ sg_host_edge_destroy((sg_host_t)resource,1);
xbt_lib_unset(host_lib, name, SURF_HOST_LEVEL, 0);
/* TODO: comment out when VM storage is implemented. */
// xbt_lib_unset(host_lib, name, SURF_STORAGE_LEVEL, 0);
delete vm;
- delete routing;
}
void surf_vm_suspend(surf_resource_t vm){
return get_casted_vm(vm)->setAffinity(sg_host_surfcpu(cpu), mask);
}
-int surf_network_link_is_shared(surf_cpp_resource_t link){
- return static_cast<NetworkLinkPtr>(link)->isShared();
-}
-
-double surf_network_link_get_bandwidth(surf_cpp_resource_t link){
- return static_cast<NetworkLinkPtr>(link)->getBandwidth();
-}
-
-double surf_network_link_get_latency(surf_cpp_resource_t link){
- return static_cast<NetworkLinkPtr>(link)->getLatency();
-}
-
xbt_dict_t surf_storage_get_content(surf_resource_t resource){
return static_cast<StoragePtr>(surf_storage_resource_priv(resource))->getContent();
}