*/
XBT_PUBLIC_CLASS Engine
{
-private:
- ~Engine();
-
public:
/** Constructor, taking the command line parameters of your main function */
Engine(int* argc, char** argv);
+ ~Engine();
/** Finalize the default engine and all its dependencies */
static void shutdown();
/** @brief Load a deployment file and launch the actors that it contains */
void loadDeployment(const char* deploy);
- size_t hostCount();
- void hostList(std::vector<Host*> * whereTo);
+ size_t getHostCount();
+ void getHostList(std::vector<Host*> * whereTo);
+ size_t getLinkCount();
+ void getLinkList(std::vector<Link*> * list);
/** @brief Run the simulation */
void run();
static double getClock();
/** @brief Retrieve the engine singleton */
- static s4u::Engine* instance();
+ static s4u::Engine* getInstance();
/** @brief Retrieve the root netzone, containing all others */
- simgrid::s4u::NetZone* netRoot();
+ simgrid::s4u::NetZone* getNetRoot();
/** @brief Retrieve the netzone of the given name (or nullptr if not found) */
- simgrid::s4u::NetZone* netzoneByNameOrNull(const char* name);
+ simgrid::s4u::NetZone* getNetzoneByNameOrNull(const char* name);
/** @brief Retrieve the netcard of the given name (or nullptr if not found) */
- simgrid::kernel::routing::NetPoint* netpointByNameOrNull(const char* name);
- void netpointList(std::vector<simgrid::kernel::routing::NetPoint*> * list);
+ simgrid::kernel::routing::NetPoint* getNetpointByNameOrNull(std::string name);
+ void getNetpointList(std::vector<simgrid::kernel::routing::NetPoint*> * list);
void netpointRegister(simgrid::kernel::routing::NetPoint * card);
void netpointUnregister(simgrid::kernel::routing::NetPoint * card);
/** Returns whether SimGrid was initialized yet -- mostly for internal use */
static bool isInitialized();
+ /** @brief set a configuration variable
+ *
+ * Do --help on any simgrid binary to see the list of currently existing configuration variables (see @ref options).
+ *
+ * Example:
+ * e->setConfig("host/model","ptask_L07");
+ */
+ void setConfig(std::string str);
+
simgrid::kernel::EngineImpl* pimpl;
private: