/* 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"
-#include "network_interface.hpp"
-#include "src/instr/instr_private.h"
-#include "plugins/energy.hpp"
-#include "virtual_machine.hpp"
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(surf_kernel);
*********/
static simgrid::surf::HostImpl *get_casted_host(sg_host_t host){ //FIXME: killme
- return host->extension<simgrid::surf::HostImpl>();
+ return host->pimpl_;
}
-static simgrid::surf::VirtualMachine *get_casted_vm(sg_host_t host){
- return static_cast<simgrid::surf::VirtualMachine*>(host->extension<simgrid::surf::HostImpl>());
+static simgrid::surf::VirtualMachineImpl* get_casted_vm(sg_host_t host)
+{
+ return static_cast<simgrid::surf::VirtualMachineImpl*>(host->pimpl_);
}
extern double NOW;
/* Physical models MUST be resolved first */
XBT_DEBUG("Looking for next event in physical models");
- double next_event_phy = surf_host_model->next_occuring_event(NOW);
+ double next_event_phy = surf_host_model->nextOccuringEvent(NOW);
if ((time_delta < 0.0 || next_event_phy < time_delta) && next_event_phy >= 0.0) {
time_delta = next_event_phy;
}
if (surf_vm_model != nullptr) {
XBT_DEBUG("Looking for next event in virtual models");
- double next_event_virt = surf_vm_model->next_occuring_event(NOW);
+ double next_event_virt = surf_vm_model->nextOccuringEvent(NOW);
if ((time_delta < 0.0 || next_event_virt < time_delta) && next_event_virt >= 0.0)
time_delta = next_event_virt;
}
next_event_date = future_evt_set->next_date();
XBT_DEBUG("Next TRACE event: %f", next_event_date);
- if(! surf_network_model->next_occuring_event_isIdempotent()){ // NS3, I see you
+ if(! surf_network_model->nextOccuringEventIsIdempotent()){ // NS3, I see you
if (next_event_date!=-1.0 && time_delta!=-1.0) {
time_delta = MIN(next_event_date - NOW, time_delta);
} else {
XBT_DEBUG("Run the NS3 network at most %fs", time_delta);
// run until min or next flow
- model_next_action_end = surf_network_model->next_occuring_event(time_delta);
+ model_next_action_end = surf_network_model->nextOccuringEvent(time_delta);
XBT_DEBUG("Min for network : %f", model_next_action_end);
if(model_next_action_end>=0.0)
return model->getRunningActionSet()->size();
}
-void surf_vm_model_create(const char *name, sg_host_t ind_phys_host){
- surf_vm_model->createVM(name, ind_phys_host);
-}
-
-surf_action_t surf_network_model_communicate(surf_network_model_t model, sg_host_t src, sg_host_t dst, double size, double rate){
- return model->communicate(src->pimpl_netcard, dst->pimpl_netcard, size, rate);
-}
-
surf_action_t surf_host_sleep(sg_host_t host, double duration){
return host->pimpl_cpu->sleep(duration);
}
}
surf_file_t surf_storage_action_get_file(surf_action_t action){
- return static_cast<simgrid::surf::StorageAction*>(action)->p_file;
+ return static_cast<simgrid::surf::StorageAction*>(action)->file_;
}