void load_deployment(std::string deploy);
protected:
- friend s4u::Host;
- friend s4u::Link;
- friend s4u::Storage;
+#ifndef DOXYGEN
+ friend Host;
+ friend Link;
+ friend Storage;
friend kernel::routing::NetPoint;
friend kernel::routing::NetZoneImpl;
friend kernel::resource::LinkImpl;
- void host_register(std::string name, simgrid::s4u::Host* host);
+ void host_register(std::string name, Host* host);
void host_unregister(std::string name);
- void link_register(std::string name, simgrid::s4u::Link* link);
+ void link_register(std::string name, Link* link);
void link_unregister(std::string name);
- void storage_register(std::string name, simgrid::s4u::Storage* storage);
+ void storage_register(std::string name, Storage* storage);
void storage_unregister(std::string name);
void netpoint_register(simgrid::kernel::routing::NetPoint* card);
void netpoint_unregister(simgrid::kernel::routing::NetPoint* card);
+#endif /*DOXYGEN*/
public:
size_t get_host_count();
+ /** @brief Returns the list of all hosts found in the platform */
std::vector<Host*> get_all_hosts();
std::vector<Host*> get_filtered_hosts(std::function<bool(Host*)> filter);
simgrid::s4u::Host* host_by_name(std::string name);
static s4u::Engine* instance_;
//////////////// Deprecated functions
+#ifndef DOXYGEN
public:
/** @deprecated See Engine::load_platform() */
XBT_ATTRIB_DEPRECATED_v323("Please use Engine::load_platform()") void loadPlatform(std::string platf)
/** @deprecated See Engine::get_host_count() */
XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_host_count()") size_t getHostCount() { return get_host_count(); }
/** @deprecated See Engine::get_all_hosts() */
- XBT_ATTRIB_DEPRECATED_v322("Please use Engine::get_all_hosts()") void getHostList(std::vector<Host*>* whereTo);
- /** @deprecated See Engine::get_all_hosts() */
XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_all_hosts()") std::vector<Host*> getAllHosts()
{
return get_all_hosts();
}
/** @deprecated See Engine::get_link_count() */
XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_link_count()") size_t getLinkCount() { return get_link_count(); }
- /** @deprecated See Engine::get_all_links() */
- XBT_ATTRIB_DEPRECATED_v322("Please use Engine::get_all_links()") void getLinkList(std::vector<Link*>* list);
/** @deprecated See Engine::get_link_list() */
XBT_ATTRIB_DEPRECATED_v323("Please use Engine::get_link_list()") std::vector<Link*> getAllLinks()
{
}
/** @deprecated See Engine::set_config() */
XBT_ATTRIB_DEPRECATED_v323("Please use Engine::set_config()") void setConfig(std::string str) { set_config(str); }
+#endif
};
/** Callback fired when the platform is created (ie, the xml file parsed),
/** Callback fired when the time cannot advance because of inter-actors deadlock */
extern XBT_PUBLIC xbt::signal<void(void)> on_deadlock;
+#ifndef DOXYGEN /* Internal use only, no need to expose it */
template <class T> XBT_PRIVATE void get_filtered_netzones_recursive(s4u::NetZone* current, std::vector<T*>* whereto)
{
static_assert(std::is_base_of<kernel::routing::NetZoneImpl, T>::value,
whereto->push_back(dynamic_cast<T*>(elem->get_impl()));
}
}
+#endif
}
} // namespace simgrid::s4u