/************
* Resource *
************/
+DiskImpl* DiskImpl::set_host(s4u::Host* host)
+{
+ host_ = host;
+ return this;
+}
DiskImpl* DiskImpl::set_read_bandwidth(double read_bw)
{
/** @brief Public interface */
const s4u::Disk* get_iface() const { return &piface_; }
s4u::Disk* get_iface() { return &piface_; }
+ DiskImpl* set_host(s4u::Host* host);
s4u::Host* get_host() const { return host_; }
- void set_host(s4u::Host* host) { host_ = host; }
DiskImpl* set_read_bandwidth(double read_bw);
double get_read_bandwidth() const { return read_bw_; }
Disk* Host::create_disk(const std::string& name, double read_bandwidth, double write_bandwidth)
{
- auto pimpl = surf_disk_model->create_disk(name, read_bandwidth, write_bandwidth);
- pimpl->set_host(this);
- return pimpl->get_iface();
+ return surf_disk_model->create_disk(name, read_bandwidth, write_bandwidth)->set_host(this)->get_iface();
}
void Host::add_disk(const Disk* disk)