-
- /**
- * @brief Get the content of the current Storage
- *
- * @return A xbt_dict_t with path as keys and size in bytes as values
- */
- virtual std::map<std::string, sg_size_t>* getContent();
-
- /**
- * @brief Get the available size in bytes of the current Storage
- *
- * @return The available size in bytes of the current Storage
- */
- virtual sg_size_t getFreeSize();
-
- /**
- * @brief Get the used size in bytes of the current Storage
- *
- * @return The used size in bytes of the current Storage
- */
- virtual sg_size_t getUsedSize();
- virtual sg_size_t getSize() { return size_; }
- virtual std::string getHost() { return attach_; }
-
- std::map<std::string, sg_size_t>* parseContent(std::string filename);
- static std::unordered_map<std::string, StorageImpl*>* storagesMap() { return StorageImpl::storages; }
-
- lmm_constraint_t constraintWrite_; /* Constraint for maximum write bandwidth*/
- lmm_constraint_t constraintRead_; /* Constraint for maximum write bandwidth*/
-
- std::string typeId_;
- sg_size_t usedSize_ = 0;
-
-private:
- sg_size_t size_;
- static std::unordered_map<std::string, StorageImpl*>* storages;
- std::map<std::string, sg_size_t>* content_;
- // Name of the host to which this storage is attached. Only used at platform parsing time, then the interface stores
- // the Host directly.
- std::string attach_;