X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2c35f563c1eb2624079c12f7ab27453e809ff599..078b9d03609d4f0072a2d968f792bbdd9a1fe08d:/src/surf/HostImpl.cpp diff --git a/src/surf/HostImpl.cpp b/src/surf/HostImpl.cpp index f1a1b1ed4d..1b96df7f04 100644 --- a/src/surf/HostImpl.cpp +++ b/src/surf/HostImpl.cpp @@ -81,9 +81,9 @@ HostImpl::HostImpl(s4u::Host* host) : piface_(host) HostImpl::~HostImpl() { /* All processes should be gone when the host is turned off (by the end of the simulation). */ - if (not process_list_.empty()) { + if (not actor_list_.empty()) { std::string msg = std::string("Shutting down host, but it's not empty:"); - for (auto const& process : process_list_) + for (auto const& process : actor_list_) msg += "\n\t" + std::string(process.get_name()); SIMIX_display_process_status(); @@ -121,8 +121,8 @@ void HostImpl::turn_on() /** Kill all actors hosted here */ void HostImpl::turn_off() { - if (not process_list_.empty()) { - for (auto& actor : process_list_) { + if (not actor_list_.empty()) { + for (auto& actor : actor_list_) { XBT_DEBUG("Killing Actor %s@%s on behalf of %s which turned off that host.", actor.get_cname(), actor.get_host()->get_cname(), SIMIX_process_self()->get_cname()); SIMIX_process_self()->kill(&actor); @@ -142,13 +142,13 @@ void HostImpl::turn_off() std::vector HostImpl::get_all_actors() { std::vector res; - for (auto& actor : process_list_) + for (auto& actor : actor_list_) res.push_back(actor.ciface()); return res; } size_t HostImpl::get_actor_count() { - return process_list_.size(); + return actor_list_.size(); } std::vector HostImpl::get_disks() @@ -159,6 +159,23 @@ std::vector HostImpl::get_disks() return disks; } +void HostImpl::add_disk(s4u::Disk* disk) +{ + disks_.push_back(disk->get_impl()); +} + +void HostImpl::remove_disk(const std::string& disk_name) +{ + auto position = disks_.begin(); + for (auto const& d : disks_) { + if (d->get_name() == disk_name) { + disks_.erase(position); + break; + } + position++; + } +} + std::vector HostImpl::get_attached_storages() { std::vector storages;