StorageModel();
StorageModel(const StorageModel&) = delete;
StorageModel& operator=(const StorageModel&) = delete;
- ~StorageModel();
+ ~StorageModel() override;
- virtual StorageImpl* createStorage(const std::string& id, const std::string& type_id, const std::string& content_name,
+ virtual StorageImpl* createStorage(std::string& filename, int lineno, const std::string& id,
+ const std::string& type_id, const std::string& content_name,
const std::string& attach) = 0;
};
*/
class StorageImpl : public Resource, public xbt::PropertyHolder {
s4u::Storage piface_;
- lmm::Constraint* constraint_read_; /* Constraint for maximum write bandwidth*/
+ lmm::Constraint* constraint_read_; /* Constraint for maximum read bandwidth*/
lmm::Constraint* constraint_write_; /* Constraint for maximum write bandwidth*/
std::string typeId_;
~StorageImpl() override;
+ const s4u::Storage* get_iface() const { return &piface_; }
s4u::Storage* get_iface() { return &piface_; }
- const char* get_type() { return typeId_.c_str(); }
+ const char* get_type() const { return typeId_.c_str(); }
lmm::Constraint* get_read_constraint() const { return constraint_read_; }
lmm::Constraint* get_write_constraint() const { return constraint_write_; }
/** @brief Check if the Storage is used (if an action currently uses its resources) */
- bool is_used() override;
+ bool is_used() const override;
void apply_event(profile::Event* event, double value) override;