Arcane
v3.15.3.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
ICaseOptions.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
/* ICaseOptions.h (C) 2000-2023 */
9
/* */
10
/* Options du jeu de donnés. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_ICASEOPTIONS_H
13
#define ARCANE_ICASEOPTIONS_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/CaseOptionTypes.h"
18
19
/*---------------------------------------------------------------------------*/
20
/*---------------------------------------------------------------------------*/
21
22
namespace
Arcane
23
{
24
25
/*---------------------------------------------------------------------------*/
26
/*---------------------------------------------------------------------------*/
27
/*!
28
* \internal
29
* \brief Interface d'une liste d'options du jeu de données.
30
*
31
* Cette interface est gérée par un compteur de référence et ne doit pas
32
* être détruite explictement.
33
*/
34
class
ARCANE_CORE_EXPORT
ICaseOptions
35
{
36
ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS
();
37
38
protected
:
39
40
virtual
~ICaseOptions
() =
default
;
41
42
public
:
43
44
//! Vrai nom (non traduit) de l'élément.
45
virtual
String
rootTagTrueName
()
const
= 0;
46
47
//! Nom de l'élément dans le langage du jeu de données.
48
virtual
String
rootTagName
()
const
= 0;
49
50
//! Nom dans la langue \a lang de l'option. Retourne \a rootTagTrueName() si pas de traduction.
51
virtual
String
translatedName
(
const
String
&
lang
)
const
= 0;
52
53
ARCCORE_DEPRECATED_2019(
"Use read(eCaseOptionReadPhase) instead"
)
54
virtual
void
read(
bool
is_phase1
) = 0;
55
56
/*!
57
* \brief Effectue la lecture de la phase \a read_phase des options.
58
*/
59
virtual
void
read(
eCaseOptionReadPhase
read_phase
) = 0;
60
61
virtual
void
addInvalidChildren(
XmlNodeList
&) = 0;
62
63
virtual
void
printChildren(
const
String
&
lang
,
int
indent) = 0;
64
65
//! Retourne le service associé ou `nullptr` s'il n'y en a pas.
66
virtual
IServiceInfo
* caseServiceInfo()
const
= 0;
67
68
//! Retourne le module associé ou `nullptr` s'il n'y en a pas.
69
virtual
IModule
* caseModule()
const
= 0;
70
71
/*!
72
* \internal
73
* \brief Associe le service \a m à ce jeu de données.
74
*/
75
virtual
void
setCaseServiceInfo(
IServiceInfo
*
m
) = 0;
76
77
/*!
78
* \internal
79
* \brief Associe le module \a m à ce jeu de données.
80
*/
81
virtual
void
setCaseModule(
IModule
*
m
) = 0;
82
83
/*!
84
* \internal
85
* \brief Ajoute à la liste \a col tous les options filles.
86
*/
87
virtual
void
deepGetChildren(
Array
<
CaseOptionBase
*>&
col
) = 0;
88
89
virtual
ICaseOptionList
* configList() = 0;
90
91
virtual
const
ICaseOptionList
* configList()
const
= 0;
92
93
//! Fonction indiquant l'état d'activation de l'option
94
virtual
ICaseFunction
* activateFunction() = 0;
95
96
/*!
97
* \brief Indique si l'option est présente dans le jeu de données.
98
*
99
* Une option peut ne pas apparaître si elle ne contient que des
100
* options ayant une valeur par défaut.
101
*/
102
virtual
bool
isPresent()
const
= 0;
103
104
/*!
105
* \internal
106
* \brief Ajoute une traduction pour le nom de l'option.
107
*
108
* Ajoute le nom \a name de l'option correspondant au langage \a lang.
109
* Si une traduction existe déjà pour ce langage, elle est remplacée par
110
* celle-ci.
111
*/
112
virtual
void
addAlternativeNodeName(
const
String
&
lang
,
const
String
& name) = 0;
113
114
virtual
ICaseMng
* caseMng()
const
= 0;
115
virtual
ITraceMng
* traceMng()
const
= 0;
116
/*!
117
* \brief Sous-domain associé.
118
*
119
* \deprecated Ne plus utiliser cette méthode car à terme une option
120
* pourra exister sans sous-domaine.
121
*/
122
ARCCORE_DEPRECATED_2019("
Do
not
use
subDomain().
Try
to
get subDomain
from
an
other
way
.")
123
virtual
ISubDomain
* subDomain()
const
= 0;
124
ARCCORE_DEPRECATED_2019("
Use
meshHandle().mesh()
instead
")
125
virtual
IMesh
* mesh()
const
= 0;
126
virtual
MeshHandle
meshHandle()
const
= 0;
127
ARCANE_DEPRECATED_REASON("
Y2023
:
use
caseMng()->caseDocument()
instead
.")
128
virtual
ICaseDocument
* caseDocument()
const
= 0;
129
virtual
ICaseDocumentFragment
* caseDocumentFragment()
const
= 0;
130
131
/*!
132
* \internal
133
* Détache l'option de son parent.
134
*/
135
virtual
void
detach() = 0;
136
137
//! Applique le visiteur sur cette option
138
virtual
void
visit(
ICaseDocumentVisitor
*
visitor
)
const
= 0;
139
140
//! Nom complet au format XPath correspondant à rootElement()
141
virtual
String
xpathFullName()
const
= 0;
142
143
public
:
144
145
virtual
Ref
<
ICaseOptions
> toReference() = 0;
146
};
147
148
/*---------------------------------------------------------------------------*/
149
/*---------------------------------------------------------------------------*/
150
/*!
151
* \internal
152
* \brief Interface d'une liste d'options présente plusieurs fois.
153
*/
154
class
ARCANE_CORE_EXPORT
ICaseOptionsMulti
155
{
156
public
:
157
158
virtual
~ICaseOptionsMulti
() {}
159
160
public
:
161
162
virtual
void
multiAllocate(
const
XmlNodeList
&) =0;
163
virtual
ICaseOptions
* toCaseOptions() =0;
164
virtual
void
addChild(
ICaseOptionList
* v) =0;
165
virtual
Integer nbChildren()
const
=0;
166
virtual
ICaseOptionList
* child(Integer index)
const
=0;
167
};
168
169
/*---------------------------------------------------------------------------*/
170
/*---------------------------------------------------------------------------*/
171
172
extern
"C++"
ARCANE_CORE_EXPORT
ISubDomain
*
173
_arcaneDeprecatedGetSubDomain(
ICaseOptions
*
opt
);
174
175
/*---------------------------------------------------------------------------*/
176
/*---------------------------------------------------------------------------*/
177
178
}
// End namespace Arcane
179
180
/*---------------------------------------------------------------------------*/
181
/*---------------------------------------------------------------------------*/
182
183
#endif
ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS
#define ARCCORE_DECLARE_REFERENCE_COUNTED_INCLASS_METHODS()
Macro pour déclarer les méthodes virtuelles gérant les compteurs de référence.
Definition
RefDeclarations.h:198
Arcane::CaseOptionBase
Classe de base d'une option du jeu de donnée.
Definition
CaseOptionBase.h:51
Arcane::ICaseDocumentFragment
Definition
ICaseDocument.h:40
Arcane::ICaseDocumentVisitor
Interface du visiteur pour une option du jeu de données.
Definition
ICaseDocumentVisitor.h:43
Arcane::ICaseDocument
Definition
ICaseDocument.h:102
Arcane::ICaseFunction
Definition
ICaseFunction.h:46
Arcane::ICaseMng
Interface du gestionnaire de cas.
Definition
ICaseMng.h:56
Arcane::ICaseOptionList
Definition
ICaseOptionList.h:38
Arcane::ICaseOptionsMulti
Definition
ICaseOptions.h:155
Arcane::ICaseOptions
Definition
ICaseOptions.h:35
Arcane::ICaseOptions::rootTagTrueName
virtual String rootTagTrueName() const =0
Vrai nom (non traduit) de l'élément.
Arcane::ICaseOptions::rootTagName
virtual String rootTagName() const =0
Nom de l'élément dans le langage du jeu de données.
Arcane::ICaseOptions::translatedName
virtual String translatedName(const String &lang) const =0
Nom dans la langue lang de l'option. Retourne rootTagTrueName() si pas de traduction.
Arcane::IMesh
Definition
IMesh.h:59
Arcane::IModule
Interface d'un module.
Definition
IModule.h:39
Arcane::IServiceInfo
Interface des informations d'un service ou d'un module.
Definition
IServiceInfo.h:37
Arcane::ISubDomain
Interface du gestionnaire d'un sous-domaine.
Definition
ISubDomain.h:74
Arcane::MeshHandle
Handle sur un maillage.
Definition
MeshHandle.h:47
Arcane::XmlNodeList
Liste de noeuds d'un arbre DOM.
Definition
XmlNodeList.h:33
Arccore::Array
Classe de base des vecteurs 1D de données.
Definition
arccore/src/collections/arccore/collections/Array.h:1007
Arccore::ITraceMng
Interface du gestionnaire de traces.
Definition
arccore/src/trace/arccore/trace/ITraceMng.h:156
Arccore::Ref
Référence à une instance.
Definition
arccore/src/base/arccore/base/Ref.h:143
Arccore::String
Chaîne de caractères unicode.
Definition
arccore/src/base/arccore/base/String.h:70
Arcane
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Definition
AbstractCaseDocumentVisitor.cc:20
Arcane::eCaseOptionReadPhase
eCaseOptionReadPhase
Phases de la lecture.
Definition
CaseOptionTypes.h:37
arcane
core
ICaseOptions.h
Généré le Lundi 10 Février 2025 02:47:08 pour Arcane par
1.9.8