X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6d0a1577e793ff234e7f12de5f13572685538d10..6bc18b576fa4a890d8b9916d292ca67dfbf60dd3:/include/simgrid/s4u/Storage.hpp diff --git a/include/simgrid/s4u/Storage.hpp b/include/simgrid/s4u/Storage.hpp index 1b1bb5dac2..85005c1259 100644 --- a/include/simgrid/s4u/Storage.hpp +++ b/include/simgrid/s4u/Storage.hpp @@ -7,6 +7,7 @@ #define INCLUDE_SIMGRID_S4U_STORAGE_HPP_ #include +#include #include #include #include @@ -16,18 +17,21 @@ #include namespace simgrid { -namespace xbt { -extern template class XBT_PUBLIC Extendable; -} namespace s4u { +#ifndef DOXYGEN /** @deprecated Engine::get_all_storages() */ XBT_ATTRIB_DEPRECATED_v322("Please use Engine::get_all_storages()") XBT_PUBLIC void getStorageList(std::map* whereTo); +#endif + +/** Storage represent the disk resources, usually associated to a given host */ class XBT_PUBLIC Storage : public simgrid::xbt::Extendable { +#ifndef DOXYGEN friend s4u::Engine; friend s4u::Io; friend simgrid::surf::StorageImpl; +#endif /* DOXYGEN */ public: explicit Storage(std::string name, surf::StorageImpl * pimpl); @@ -62,9 +66,12 @@ public: void set_data(void* data) { userdata_ = data; } void* get_data() { return userdata_; } - IoPtr io_init(sg_size_t size); + IoPtr io_init(sg_size_t size, s4u::Io::OpType type); + IoPtr read_async(sg_size_t size); sg_size_t read(sg_size_t size); + + IoPtr write_async(sg_size_t size); sg_size_t write(sg_size_t size); surf::StorageImpl* get_impl() { return pimpl_; }