Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
IEntryPoint.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2022 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* IEntryPoint.h (C) 2000-2022 */
9/* */
10/* Interface du point d'entrée d'un module. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_IENTRYPOINT_H
13#define ARCANE_IENTRYPOINT_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18#include "arcane/Timer.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25class IModule;
26
27/*---------------------------------------------------------------------------*/
28/*---------------------------------------------------------------------------*/
33class ARCANE_CORE_EXPORT IEntryPoint
34{
35 public:
36
42 static const char* const WComputeLoop;
44 static const char* const WBuild;
46 static const char* const WInit;
48 static const char* const WContinueInit;
50 static const char* const WStartInit;
52 static const char* const WRestore;
54 static const char* const WOnMeshChanged;
56 static const char* const WOnMeshRefinement;
58 static const char* const WExit;
60
64 enum
65 {
66 PNone = 0,
73 PAutoLoadBegin = 1,
80 PAutoLoadEnd = 2
81 };
82
83 public:
84
85 virtual ~IEntryPoint() = default;
86
87 public:
88
90 virtual String name() const = 0;
91
93 virtual String fullName() const = 0;
94
95 public:
96
98 ARCANE_DEPRECATED_REASON("Y2022: Do not use this method. Try to get 'ISubDomain' from another way")
99 virtual ISubDomain* subDomain() const = 0;
100
102 virtual IModule* module() const = 0;
103
105 virtual void executeEntryPoint() = 0;
106
113 virtual Real totalCPUTime() const = 0;
114
121 virtual Real lastCPUTime() const = 0;
122
124 virtual Real totalElapsedTime() const = 0;
125
127 virtual Real lastElapsedTime() const = 0;
128
133 ARCANE_DEPRECATED_REASON("Y2022: Use totalElapsedTime() instead")
134 virtual Real totalTime(Timer::eTimerType) const = 0;
135
140 ARCANE_DEPRECATED_REASON("Y2022: Use lastElapsedTime() instead")
141 virtual Real lastTime(Timer::eTimerType) const = 0;
142
144 virtual Integer nbCall() const = 0;
145
147 virtual String where() const = 0;
148
150 virtual int property() const = 0;
151};
152
153/*---------------------------------------------------------------------------*/
154/*---------------------------------------------------------------------------*/
155
156} // End namespace Arcane
157
158/*---------------------------------------------------------------------------*/
159/*---------------------------------------------------------------------------*/
160
161#endif
162
Interface d'un point d'entrée d'un module.
Definition IEntryPoint.h:34
static const char *const WComputeLoop
appelé pendant la boucle de calcul
Definition IEntryPoint.h:42
static const char *const WBuild
appelé pour la construction du module
Definition IEntryPoint.h:44
static const char *const WStartInit
appelé pendant l'initialisation d'un nouveau cas
Definition IEntryPoint.h:50
static const char *const WRestore
appelé pour restaurer les variables lors d'un retour arrière
Definition IEntryPoint.h:52
static const char *const WOnMeshRefinement
appelé après un raffinement de maillage
Definition IEntryPoint.h:56
virtual String fullName() const =0
Nom complet (avec le module) du point d'entrée. Ce nom est unique.
static const char *const WOnMeshChanged
appelé après un changement de maillage
Definition IEntryPoint.h:54
static const char *const WContinueInit
appelé pendant l'initialisation d'une reprise
Definition IEntryPoint.h:48
static const char *const WInit
appelé pendant l'initialisation
Definition IEntryPoint.h:46
virtual String name() const =0
Retourne le nom du point d'entrée.
virtual ~IEntryPoint()=default
Libère les ressources.
Interface d'un module.
Definition IModule.h:39
Interface du gestionnaire d'un sous-domaine.
Definition ISubDomain.h:74
Vue typée sur une liste d'entités d'une connectivité.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Gestion d'un timer.
Definition Timer.h:62
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-