12#ifndef ARCANE_ENTRYPOINT_H
13#define ARCANE_ENTRYPOINT_H
17#include "arcane/utils/String.h"
18#include "arcane/utils/FunctorWithAddress.h"
19#include "arcane/IEntryPoint.h"
58 : m_module(module), m_name(name), m_caller(caller), m_where(where),
65 IModule* module()
const {
return m_module; }
66 const String& name()
const {
return m_name; }
67 IFunctor* caller()
const {
return m_caller; }
68 const String& where ()
const {
return m_where; }
69 int property()
const {
return m_property; }
70 bool isDestroyCaller()
const {
return m_is_destroy_caller; }
79 bool m_is_destroy_caller;
113 void executeEntryPoint()
override;
114 Real totalCPUTime()
const override;
115 Real lastCPUTime()
const override;
116 Real totalElapsedTime()
const override;
117 Real lastElapsedTime()
const override;
120 Integer
nbCall()
const override {
return m_nb_call; }
122 int property()
const override {
return m_property; }
134 Integer m_nb_call = 0;
135 bool m_is_destroy_caller =
false;
148 void _getAddressForHyoda(
void* =
nullptr);
165template<
typename ModuleType>
inline void
188template<
typename ModuleType>
inline void
Informations pour construire un point d'entrée.
EntryPointBuildInfo(IModule *module, const String &name, IFunctor *caller, const String &where, int property, bool is_destroy_caller)
Informations de construction d'un point d'entrée.
Point d'entrée d'un module.
String where() const override
Retourne l'endroit ou est appelé le point d'entrée.
IModule * module() const override
Retourne le module associé au point d'entrée.
static EntryPoint * create(const EntryPointBuildInfo &bi)
Construit et retourne un point d'entrée.
String name() const override
Retourne le nom du point d'entrée.
String fullName() const override
Nom complet (avec le module) du point d'entrée. Ce nom est unique.
Integer nbCall() const override
Retourne le nombre de fois que le point d'entrée a été exécuté
String m_where
Endroit de l'appel.
int property() const override
Retourne les propriétés du point d'entrée.
String m_full_name
Nom du point d'entrée.
ISubDomain * subDomain() const override
Retourne le gestionnaire principal.
String m_name
Nom du point d'entrée.
Interface d'un point d'entrée d'un module.
Interface du gestionnaire d'un sous-domaine.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
void addEntryPoint(ModuleType *module, const char *name, void(ModuleType::*func)(), const String &where=IEntryPoint::WComputeLoop, int property=IEntryPoint::PNone)
Routine template permettant de référencer un point d'entrée dans un module.