-/* Copyright (c) 2013-2018. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2013-2019. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
#define STORAGE_N11_HPP_
namespace simgrid {
-namespace surf {
+namespace kernel {
+namespace resource {
/***********
* Classes *
class StorageN11Model : public StorageModel {
public:
- StorageImpl* createStorage(std::string id, std::string type_id, std::string content_name,
- std::string attach) override;
+ StorageN11Model();
+ StorageImpl* createStorage(const std::string& id, const std::string& type_id, const std::string& content_name,
+ const std::string& attach) override;
double next_occuring_event(double now) override;
void update_actions_state(double now, double delta) override;
};
class StorageN11 : public StorageImpl {
public:
- StorageN11(StorageModel* model, std::string name, kernel::lmm::System* maxminSystem, double bread, double bwrite,
- std::string type_id, std::string content_name, sg_size_t size, std::string attach);
+ StorageN11(StorageModel* model, const std::string& name, kernel::lmm::System* maxminSystem, double bread,
+ double bwrite, const std::string& type_id, const std::string& content_name, sg_size_t size,
+ const std::string& attach);
virtual ~StorageN11() = default;
- StorageAction* read(sg_size_t size);
- StorageAction* write(sg_size_t size);
+ StorageAction* io_start(sg_size_t size, s4u::Io::OpType type) override;
+ StorageAction* read(sg_size_t size) override;
+ StorageAction* write(sg_size_t size) override;
};
/**********
class StorageN11Action : public StorageAction {
public:
- StorageN11Action(kernel::resource::Model* model, double cost, bool failed, StorageImpl* storage,
- e_surf_action_storage_type_t type);
+ StorageN11Action(Model* model, double cost, bool failed, StorageImpl* storage, s4u::Io::OpType type);
void suspend() override;
void cancel() override;
void resume() override;
void update_remains_lazy(double now) override;
};
-}
-}
-
+} // namespace resource
+} // namespace kernel
+} // namespace simgrid
#endif /* STORAGE_N11_HPP_ */