Arcane
v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
VariableBuildInfo.h
1
// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2
//-----------------------------------------------------------------------------
3
// Copyright 2000-2024 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
/* VariableBuildInfo.h (C) 2000-2024 */
9
/* */
10
/* Informations pour construire une variable. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_VARIABLEBUILDINFO_H
13
#define ARCANE_VARIABLEBUILDINFO_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/utils/String.h"
18
#include "arcane/core/MeshHandle.h"
19
20
/*---------------------------------------------------------------------------*/
21
/*---------------------------------------------------------------------------*/
22
23
namespace
Arcane
24
{
25
26
/*---------------------------------------------------------------------------*/
27
/*---------------------------------------------------------------------------*/
28
29
class
IModule;
30
class
ISubDomain;
31
class
IMesh;
32
class
IItemFamily;
33
class
IVariableMng;
34
class
VariablePrivate;
35
class
IDataFactoryMng;
36
37
/*---------------------------------------------------------------------------*/
38
/*---------------------------------------------------------------------------*/
42
class
ARCANE_CORE_EXPORT
VariableBuildInfo
43
{
44
public
:
45
46
// Pour accéder au constructeur par défaut.
47
friend
class
NullVariableBuildInfo
;
48
// TEMPORAIRE Pour accéder à _subDomain(). A supprimer par la suite.
49
friend
class
VariablePrivate
;
50
51
private
:
52
54
struct
NullTag
55
{};
56
57
public
:
58
66
VariableBuildInfo
(
IModule
* m,
const
String
& name,
int
property=0);
67
76
VariableBuildInfo
(
ISubDomain
*
sub_domain
,
const
String
& name,
int
property=0);
77
86
VariableBuildInfo
(
IVariableMng
*
variable_mng
,
const
String
& name,
int
property=0);
87
96
VariableBuildInfo
(
IMesh
* mesh,
const
String
& name,
int
property=0);
97
106
VariableBuildInfo
(
const
MeshHandle
&
mesh_handle
,
const
String
& name,
int
property=0);
107
116
VariableBuildInfo
(
IModule
* m,
const
String
& name,
117
const
String
&
item_family_name
,
int
property=0);
118
128
VariableBuildInfo
(
IMesh
* mesh,
const
String
& name,
129
const
String
&
item_family_name
,
int
property=0);
130
140
VariableBuildInfo
(
const
MeshHandle
&
mesh_handle
,
const
String
& name,
141
const
String
&
item_family_name
,
int
property=0);
142
152
VariableBuildInfo
(
ISubDomain
*
sd
,
const
String
& name,
const
String
&
mesh_name
,
153
const
String
&
item_family_name
,
int
property=0);
154
164
VariableBuildInfo
(
IVariableMng
*
variable_mng
,
const
String
& name,
const
String
&
mesh_name
,
165
const
String
&
item_family_name
,
int
property=0);
166
175
VariableBuildInfo
(
IItemFamily
* family,
const
String
& name,
int
property=0);
176
186
VariableBuildInfo
(
IModule
* m,
const
String
& name,
187
const
String
&
item_family_name
,
188
const
String
&
item_group_name
,
int
property=0);
189
200
VariableBuildInfo
(
IMesh
* mesh,
const
String
& name,
201
const
String
&
item_family_name
,
202
const
String
&
item_group_name
,
int
property=0);
203
214
VariableBuildInfo
(
const
MeshHandle
&
mesh_handle
,
const
String
& name,
215
const
String
&
item_family_name
,
216
const
String
&
item_group_name
,
int
property=0);
217
228
VariableBuildInfo
(
ISubDomain
*
sd
,
const
String
& name,
229
const
String
&
mesh_name
,
230
const
String
&
item_family_name
,
231
const
String
&
item_group_name
,
int
property=0);
232
243
VariableBuildInfo
(
IVariableMng
*
variable_mng
,
const
String
& name,
244
const
String
&
mesh_name
,
245
const
String
&
item_family_name
,
246
const
String
&
item_group_name
,
int
property=0);
247
248
private
:
249
250
explicit
VariableBuildInfo
(
const
NullTag
&);
251
252
public
:
253
254
ARCCORE_DEPRECATED_2020(
"Do not use this method. Try to get ISubDomain from another way"
)
255
ISubDomain
* subDomain()
const
{
return
m_sub_domain; }
256
257
public
:
258
259
IVariableMng
* variableMng()
const
;
260
IDataFactoryMng
* dataFactoryMng()
const
;
261
ITraceMng
* traceMng()
const
;
262
IModule
* module()
const
{
return
m_module; }
263
IMesh* mesh()
const
{
return
m_mesh_handle.mesh(); }
264
const
MeshHandle& meshHandle()
const
{
return
m_mesh_handle; }
265
const
String& name()
const
{
return
m_name; }
266
const
String& itemFamilyName()
const
{
return
m_item_family_name; }
267
const
String& itemGroupName()
const
{
return
m_item_group_name; }
268
const
String& meshName()
const
{
return
m_mesh_name; }
269
int
property()
const
{
return
m_property; }
270
bool
isNull()
const
{
return
m_is_null; }
271
272
private
:
273
274
ISubDomain
* m_sub_domain =
nullptr
;
275
IModule
* m_module =
nullptr
;
276
MeshHandle
m_mesh_handle
;
277
String
m_name
;
278
String
m_item_family_name
;
279
String
m_item_group_name
;
280
String
m_mesh_name
;
281
int
m_property = 0;
282
bool
m_is_null =
false
;
283
284
private
:
285
286
void
_init();
287
ISubDomain
* _subDomain()
const
{
return
m_sub_domain; }
288
};
289
290
/*---------------------------------------------------------------------------*/
291
/*---------------------------------------------------------------------------*/
298
class
ARCANE_CORE_EXPORT
NullVariableBuildInfo
299
:
public
VariableBuildInfo
300
{
301
public
:
302
303
NullVariableBuildInfo
()
304
:
VariableBuildInfo
(
NullTag
{})
305
{}
306
};
307
308
/*---------------------------------------------------------------------------*/
309
/*---------------------------------------------------------------------------*/
310
311
}
// End namespace Arcane
312
313
/*---------------------------------------------------------------------------*/
314
/*---------------------------------------------------------------------------*/
315
316
#endif
317
Arcane::IDataFactoryMng
Interface du gestionnaire de fabrique d'une donnée.
Definition
IDataFactoryMng.h:40
Arcane::IItemFamily
Interface d'une famille d'entités.
Definition
IItemFamily.h:111
Arcane::IMesh
Definition
IMesh.h:59
Arcane::IModule
Interface d'un module.
Definition
IModule.h:39
Arcane::ISubDomain
Interface du gestionnaire d'un sous-domaine.
Definition
ISubDomain.h:74
Arcane::IVariableMng
Interface du gestionnaire de variables.
Definition
IVariableMng.h:57
Arcane::LimaWrapper
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition
Lima.cc:120
Arcane::MeshHandle
Handle sur un maillage.
Definition
MeshHandle.h:47
Arcane::NullVariableBuildInfo
Constructeur pour une variable nulle.
Definition
VariableBuildInfo.h:300
Arcane::VariableBuildInfo
Paramètres nécessaires à la construction d'une variable.
Definition
VariableBuildInfo.h:43
Arcane::VariableBuildInfo::m_item_group_name
String m_item_group_name
Nom du groupe d'entité support.
Definition
VariableBuildInfo.h:279
Arcane::VariableBuildInfo::m_mesh_name
String m_mesh_name
Nom du maillage associé à la variable.
Definition
VariableBuildInfo.h:280
Arcane::VariableBuildInfo::m_mesh_handle
MeshHandle m_mesh_handle
Handle sur le maillage.
Definition
VariableBuildInfo.h:276
Arcane::VariableBuildInfo::m_item_family_name
String m_item_family_name
Nom de la famille d'entité
Definition
VariableBuildInfo.h:278
Arcane::VariableBuildInfo::m_name
String m_name
Nom de la variable.
Definition
VariableBuildInfo.h:277
Arcane::VariablePrivate
Definition
Variable.cc:79
Arccore::ITraceMng
Interface du gestionnaire de traces.
Definition
arccore/src/trace/arccore/trace/ITraceMng.h:156
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
AcceleratorGlobal.h:36
Arcane::VariableBuildInfo::NullTag
Tag pour un VariableBuildInfo nul.
Definition
VariableBuildInfo.h:55
arcane
core
VariableBuildInfo.h
Généré le Lundi 18 Novembre 2024 03:01:06 pour Arcane par
1.9.8