X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/eadbe829389f23151f79257824f3164d7801bbc7..75e8b2ae65722d849ef899616de7091286ec91f5:/src/s4u/s4u_Storage.cpp diff --git a/src/s4u/s4u_Storage.cpp b/src/s4u/s4u_Storage.cpp index 0be7985d0f..8b9a4ecb38 100644 --- a/src/s4u/s4u_Storage.cpp +++ b/src/s4u/s4u_Storage.cpp @@ -36,24 +36,24 @@ Storage* Storage::by_name_or_null(const std::string& name) return Engine::get_instance()->storage_by_name_or_null(name); } -const char* Storage::get_type() +const char* Storage::get_type() const { return pimpl_->typeId_.c_str(); } -std::unordered_map* Storage::get_properties() +const std::unordered_map* Storage::get_properties() const { - return simix::simcall([this] { return pimpl_->get_properties(); }); + return pimpl_->get_properties(); } -const char* Storage::get_property(const std::string& key) +const char* Storage::get_property(const std::string& key) const { return this->pimpl_->get_property(key); } void Storage::set_property(const std::string& key, const std::string& value) { - simix::simcall([this, &key, &value] { this->pimpl_->set_property(key, value); }); + kernel::actor::simcall([this, &key, &value] { this->pimpl_->set_property(key, value); }); } IoPtr Storage::io_init(sg_size_t size, Io::OpType type) @@ -73,7 +73,6 @@ sg_size_t Storage::read(sg_size_t size) IoPtr Storage::write_async(sg_size_t size) { - return IoPtr(io_init(size, Io::OpType::WRITE)->start()); } @@ -97,13 +96,13 @@ sg_size_t Storage::write(sg_size_t size) * * This functions checks whether a storage is a valid pointer or not and return its name. */ -const char* sg_storage_get_name(sg_storage_t storage) +const char* sg_storage_get_name(const_sg_storage_t storage) { xbt_assert((storage != nullptr), "Invalid parameters"); return storage->get_cname(); } -const char* sg_storage_get_host(sg_storage_t storage) +const char* sg_storage_get_host(const_sg_storage_t storage) { xbt_assert((storage != nullptr), "Invalid parameters"); return storage->get_host()->get_cname(); @@ -114,15 +113,15 @@ const char* sg_storage_get_host(sg_storage_t storage) * @param storage a storage * @return a dict containing the properties */ -xbt_dict_t sg_storage_get_properties(sg_storage_t storage) +xbt_dict_t sg_storage_get_properties(const_sg_storage_t storage) { xbt_assert((storage != nullptr), "Invalid parameters (storage is nullptr)"); xbt_dict_t as_dict = xbt_dict_new_homogeneous(xbt_free_f); - std::unordered_map* props = storage->get_properties(); + const std::unordered_map* props = storage->get_properties(); if (props == nullptr) return nullptr; for (auto const& elm : *props) { - xbt_dict_set(as_dict, elm.first.c_str(), xbt_strdup(elm.second.c_str()), nullptr); + xbt_dict_set(as_dict, elm.first.c_str(), xbt_strdup(elm.second.c_str())); } return as_dict; } @@ -146,7 +145,7 @@ void sg_storage_set_property_value(sg_storage_t storage, const char* name, const * @param name a property name * @return value of a property (or nullptr if property not set) */ -const char* sg_storage_get_property_value(sg_storage_t storage, const char* name) +const char* sg_storage_get_property_value(const_sg_storage_t storage, const char* name) { return storage->get_property(name); } @@ -173,7 +172,7 @@ xbt_dynar_t sg_storages_as_dynar() return res; } -void* sg_storage_get_data(sg_storage_t storage) +void* sg_storage_get_data(const_sg_storage_t storage) { xbt_assert((storage != nullptr), "Invalid parameters"); return storage->get_data();