************/
class DiskImpl : public Resource, public surf::PropertyHolder {
bool currently_destroying_ = false;
+ s4u::Host* host_ = nullptr;
+ s4u::Disk piface_;
+ double read_bw_;
+ double write_bw_;
public:
DiskImpl(Model* model, const std::string& name, kernel::lmm::System* maxmin_system, double read_bw, double bwrite_bw);
~DiskImpl() override;
/** @brief Public interface */
- s4u::Disk piface_;
+ s4u::Disk* get_iface() { return &piface_; }
+ double get_read_bandwidth() { return read_bw_; }
+ double get_write_bandwidth() { return write_bw_; }
/** @brief Check if the Storage is used (if an action currently uses its resources) */
bool is_used() override;
void turn_on() override;
void turn_off() override;
+ s4u::Host* get_host() { return host_; }
+ void set_host(s4u::Host* host) { host_ = host; }
+
void destroy(); // Must be called instead of the destructor
virtual DiskAction* io_start(sg_size_t size, s4u::Io::OpType type) = 0;
virtual DiskAction* read(sg_size_t size) = 0;