/* Computes the consumption so far. Called lazily on need. */
void HostEnergy::update()
{
- simgrid::surf::HostImpl* surf_host = host->extension<simgrid::surf::HostImpl>();
+ simgrid::surf::HostImpl* surf_host = host->pimpl_;
double start_time = this->last_updated;
double finish_time = surf_get_clock();
double cpu_load;
/* **************************** events callback *************************** */
static void onCreation(simgrid::s4u::Host& host) {
- simgrid::surf::HostImpl* surf_host = host.extension<simgrid::surf::HostImpl>();
- if (dynamic_cast<simgrid::surf::VirtualMachine*>(surf_host)) // Ignore virtual machines
+ if (dynamic_cast<simgrid::surf::VirtualMachine*>(host.pimpl_)) // Ignore virtual machines
return;
host.extension_set(new HostEnergy(&host));
}
sg_host_t sghost = sg_host_by_name(name);
if(sghost == nullptr)
continue;
- simgrid::surf::HostImpl *host = sghost->extension<simgrid::surf::HostImpl>();
+ simgrid::surf::HostImpl* host = sghost->pimpl_;
simgrid::surf::VirtualMachine *vm = dynamic_cast<simgrid::surf::VirtualMachine*>(host);
if (vm) // If it's a VM, take the corresponding PM
- host = vm->getPm()->extension<simgrid::surf::HostImpl>();
+ host = vm->getPm()->pimpl_;
HostEnergy *host_energy = host->piface_->extension<HostEnergy>();
}
static void onHostStateChange(simgrid::s4u::Host &host) {
- simgrid::surf::HostImpl* surf_host = host.extension<simgrid::surf::HostImpl>();
- if (dynamic_cast<simgrid::surf::VirtualMachine*>(surf_host)) // Ignore virtual machines
+ if (dynamic_cast<simgrid::surf::VirtualMachine*>(host.pimpl_)) // Ignore virtual machines
return;
HostEnergy *host_energy = host.extension<HostEnergy>();
static void onHostDestruction(simgrid::s4u::Host& host) {
// Ignore virtual machines
- simgrid::surf::HostImpl* surf_host = host.extension<simgrid::surf::HostImpl>();
- if (dynamic_cast<simgrid::surf::VirtualMachine*>(surf_host))
+ if (dynamic_cast<simgrid::surf::VirtualMachine*>(host.pimpl_))
return;
HostEnergy *host_energy = host.extension<HostEnergy>();
host_energy->update();