]> AND Public Git Repository - simgrid.git/blobdiff - include/simgrid/s4u/Engine.hpp
Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
add user friendly wrapper to set priorities on I/Os
[simgrid.git] / include / simgrid / s4u / Engine.hpp
index fdffcc15582d30c88cd781e526770619d5bff4a6..7856a1f48e112f889fa0d897b3ef01c92a9bec0b 100644 (file)
@@ -41,7 +41,7 @@ public:
 #endif
 
   /** Finalize the default engine and all its dependencies */
-  static void shutdown();
+  void shutdown();
 
   /** Run the simulation after initialization */
   void run() const;
@@ -51,16 +51,10 @@ public:
   /** @brief Retrieve the engine singleton */
   static s4u::Engine* get_instance();
   static s4u::Engine* get_instance(int* argc, char** argv);
+  static bool has_instance() { return instance_ != nullptr; }
 
   void load_platform(const std::string& platf) const;
 
-#ifndef DOXYGEN
-  XBT_ATTRIB_DEPRECATED_v330("Please change the return code of your actors to void") void register_function(
-      const std::string& name, int (*code)(int, char**));
-  XBT_ATTRIB_DEPRECATED_v330("Please change the return code of your actors to void") void register_default(
-      int (*code)(int, char**));
-#endif
-
   void register_function(const std::string& name, const std::function<void(int, char**)>& code);
   void register_function(const std::string& name, const std::function<void(std::vector<std::string>)>& code);
   void register_function(const std::string& name, const kernel::actor::ActorCodeFactory& factory);
@@ -172,6 +166,8 @@ public:
     return res;
   }
 
+  kernel::EngineImpl* get_impl() const { return pimpl; }
+
   /** Returns whether SimGrid was initialized yet -- mostly for internal use */
   static bool is_initialized();
   /** @brief set a configuration variable