/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
-#include "plugins/energy.hpp"
#include "src/instr/instr_private.h"
#include "src/plugins/vm/VirtualMachineImpl.hpp"
-#include "src/surf/HostImpl.hpp"
-#include "src/surf/network_interface.hpp"
-#include "surf_interface.hpp"
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(surf_kernel);
* TOOLS *
*********/
-static simgrid::surf::VirtualMachineImpl* get_casted_vm(sg_host_t host)
-{
- return static_cast<simgrid::surf::VirtualMachineImpl*>(host->pimpl_);
-}
-
extern double NOW;
void surf_presolve()
return host->pimpl_->fileMove(fd, fullpath);
}
-void surf_vm_suspend(sg_host_t vm){
- get_casted_vm(vm)->suspend();
-}
-
-void surf_vm_resume(sg_host_t vm){
- get_casted_vm(vm)->resume();
-}
-
-void surf_vm_save(sg_host_t vm){
- get_casted_vm(vm)->save();
-}
-
-void surf_vm_restore(sg_host_t vm){
- get_casted_vm(vm)->restore();
-}
-
-void surf_vm_migrate(sg_host_t vm, sg_host_t ind_vm_ws_dest){
- get_casted_vm(vm)->migrate(ind_vm_ws_dest);
-}
-
-sg_host_t surf_vm_get_pm(sg_host_t vm){
- return get_casted_vm(vm)->getPm();
-}
-
-void surf_vm_set_bound(sg_host_t vm, double bound){
- get_casted_vm(vm)->setBound(bound);
-}
-
xbt_dict_t surf_storage_get_content(surf_resource_t resource){
return static_cast<simgrid::surf::Storage*>(surf_storage_resource_priv(resource))->getContent();
}