#include "simgrid/kernel/routing/NetPoint.hpp"
#include "simgrid/s4u/Engine.hpp"
#include "simgrid/s4u/Host.hpp"
+#include "src/kernel/EngineImpl.hpp"
#include "src/kernel/lmm/maxmin.hpp"
#include "src/surf/xml/platf.hpp"
#include "surf/surf.hpp"
void surf_disk_model_init_default()
{
- /* FIXME[donassolo]: this smells bad, but works
- * (the constructor saves its pointer in all_existing_models and models_by_type :O).
- * We need a manager for these models */
- new simgrid::kernel::resource::DiskS19Model();
+ auto disk_model = std::make_unique<simgrid::kernel::resource::DiskS19Model>();
+ simgrid::kernel::EngineImpl::get_instance()->add_model(simgrid::kernel::resource::Model::Type::DISK,
+ std::move(disk_model), true);
}
namespace simgrid {
DiskS19Model::DiskS19Model()
{
- all_existing_models.push_back(this);
- models_by_type[simgrid::kernel::resource::Model::Type::DISK].push_back(this);
}
DiskImpl* DiskS19Model::create_disk(const std::string& name, double read_bandwidth, double write_bandwidth)