148 static void arcaneInitialize();
162 static void arcaneFinalize();
170 static void setHasGarbageCollector();
178 static void setHasDotNETRuntime();
261 static bool hasDotNetWrapper();
269 static Real initializationTimeForAccelerator();
299 static void redirectSignals();
300 static bool isMasterIO() {
return m_is_master_io; }
301 static void setUseTestLogger(
bool v);
305 void build()
override;
306 void initialize()
override;
308 int execute()
override;
309 void doAbort()
override;
310 void setErrorCode(
int errcode)
override;
326 IDirectSubDomainExecuteFunctor* _directExecuteFunctor()
const {
return m_direct_sub_domain_execute_functor; }
330 IApplication* _application() {
return m_application; }
331 ApplicationBuildInfo& _applicationBuildInfo();
332 static int _internalRun(IDirectSubDomainExecuteFunctor* func);
337 IMainFactory* m_main_factory =
nullptr;
338 IApplication* m_application =
nullptr;
339 int m_error_code = 0;
340 IDirectSubDomainExecuteFunctor* m_direct_sub_domain_execute_functor =
nullptr;
341 static bool m_has_garbage_collector;
342 static bool m_is_master_io;
343 static bool m_is_use_test_logger;
344 static IMainFactory* m_default_main_factory;
345 static ArcaneMainExecutionOverrideFunctor* m_exec_override_functor;
349 static int _arcaneMain(
const ApplicationInfo&,IMainFactory*);
351 void _parseApplicationBuildInfoArgs();
356 static void _launchMissingInitException();
357 static void _checkHasInit();
358 static void _checkCreateDynamicLibraryLoader();
359 static int _runDotNet();
360 static void _checkAutoDetectMPI();
362 static void _setArcaneLibraryPath();
363 static int _initRuntimes();
364 static int _checkTestLoggerResult();
Classe pour gérer les appels aux mécanismes d'auto-détection des runtimes (MPI,Accélérateurs).
Classe de gestion de l'exécution.
static std::atomic< Int32 > m_nb_arcane_init
Nombre de fois que arcaneInitialize() a été appelé
bool hasGarbageCollector() const override
Indique que certains objets sont gérés via un ramasse miette.
void finalize() override
Effectue les dernières opérations avant destruction de l'instance.
IApplication * application() const override
Application.
static std::atomic< Int32 > m_is_init_done
1 si init terminé, 0 sinon
int errorCode() const override
Code d'erreur de l'exécution.
IMainFactory * mainFactory() const override
Fabrique principale.
Interface de la classe de gestion du code.
Interface d'un fonctor pour exécuter du code directement après la création d'un sous-domaine sans pas...
Manufacture des classes d'Arcane.