Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
StandaloneSubDomain.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2023 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/* StandaloneSubDomain.h (C) 2000-2023 */
9/* */
10/* Implémentation autonome d'un sous-domaine. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_LAUNCHER_STANDALONESUBDOMAIN_H
13#define ARCANE_LAUNCHER_STANDALONESUBDOMAIN_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/launcher/LauncherGlobal.h"
18
19#include "arcane/utils/Ref.h"
20#include "arcane/ArcaneTypes.h"
21
22/*---------------------------------------------------------------------------*/
23/*---------------------------------------------------------------------------*/
24
25namespace Arcane
26{
27
28/*---------------------------------------------------------------------------*/
29/*---------------------------------------------------------------------------*/
30/*!
31 * \brief Implémentation autonome d'un sous-domaine.
32 *
33 * L'instance de cette classe doit être créée par
34 * ArcaneLauncher::createStandaloneSubDomain().
35 *
36 * Une seule instance est autorisée.
37 *
38 * Cette classe utilise une sémantique par référence.
39 */
40class ARCANE_LAUNCHER_EXPORT StandaloneSubDomain
41{
42 friend class ArcaneLauncher;
43 class Impl;
44
45 public:
46
47 //! Constructeur non initialisé.
49
50 public:
51
52 //! Gestionnaire de trace associé.
53 ITraceMng* traceMng();
54
55 //! Sous-domaine.
56 ISubDomain* subDomain();
57
58 private:
59
60 Ref<Impl> m_p;
61
62 private:
63
64 void _checkIsInitialized();
65
66 private:
67
68 // Pour ArcaneLauncher.
69 void _initUniqueInstance(const String& case_file_name);
70 bool _isValid();
71 static void _notifyRemoveStandaloneSubDomain();
72};
73
74/*---------------------------------------------------------------------------*/
75/*---------------------------------------------------------------------------*/
76
77} // End namespace Arcane
78
79/*---------------------------------------------------------------------------*/
80/*---------------------------------------------------------------------------*/
81
82#endif
Classe de gestion de l'exécution.
Interface du gestionnaire d'un sous-domaine.
Definition ISubDomain.h:74
Implémentation autonome d'un sous-domaine.
Interface du gestionnaire de traces.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-