Arcane
v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
TiedInterfaceMng.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
/* TiedInterfaceMng.h (C) 2000-2010 */
9
/* */
10
/* Gestionnaire des interfaces liées. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_MESH_TIEDINTERFACEMNG_H
13
#define ARCANE_MESH_TIEDINTERFACEMNG_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/utils/TraceAccessor.h"
18
#include "arcane/utils/List.h"
19
20
#include "arcane/mesh/MeshGlobal.h"
21
22
#include "arcane/VariableTypes.h"
23
24
/*---------------------------------------------------------------------------*/
25
/*---------------------------------------------------------------------------*/
26
27
ARCANE_BEGIN_NAMESPACE
28
29
/*---------------------------------------------------------------------------*/
30
/*---------------------------------------------------------------------------*/
31
32
class
IMesh;
33
class
XmlNode;
34
class
IMeshPartitionConstraint;
35
36
/*---------------------------------------------------------------------------*/
37
/*---------------------------------------------------------------------------*/
38
39
ARCANE_MESH_BEGIN_NAMESPACE
40
41
/*---------------------------------------------------------------------------*/
42
/*---------------------------------------------------------------------------*/
43
44
class
DynamicMesh;
45
class
TiedInterface;
46
47
/*---------------------------------------------------------------------------*/
48
/*---------------------------------------------------------------------------*/
52
class
TiedInterfaceMng
53
:
public
TraceAccessor
54
{
55
public
:
56
57
TiedInterfaceMng
(DynamicMesh* mesh);
58
virtual
~TiedInterfaceMng
();
59
60
public
:
61
62
void
computeTiedInterfaces(
const
XmlNode
&
mesh_node
);
63
void
prepareTiedInterfacesForDump();
64
void
readTiedInterfacesFromDump();
65
bool
hasTiedInterface()
66
{
67
return
!m_tied_interfaces.empty();
68
}
69
TiedInterfaceCollection
tiedInterfaces()
70
{
71
return
m_tied_interfaces;
72
}
73
74
ISubDomain
* subDomain() {
return
m_sub_domain; }
75
ConstArrayView<TiedInterface*>
trueTiedInterfaces()
76
{
77
return
m_true_tied_interfaces;
78
}
79
80
private
:
81
82
DynamicMesh* m_mesh;
83
ISubDomain
* m_sub_domain;
84
String
m_name;
85
86
private
:
87
88
TiedInterfaceList
m_tied_interfaces;
89
VariableArrayInt64
m_tied_interface_items_info;
90
VariableArrayReal2
m_tied_interface_nodes_iso;
91
VariableArrayString
m_tied_interface_face_groups;
92
UniqueArray<TiedInterface*>
m_true_tied_interfaces;
93
IMeshPartitionConstraint
* m_tied_constraint;
94
95
private
:
96
97
void
_deleteTiedInterfaces();
98
void
_applyTiedInterfaceStructuration(
TiedInterface
*
tied_interface
);
99
};
100
101
/*---------------------------------------------------------------------------*/
102
/*---------------------------------------------------------------------------*/
103
104
ARCANE_MESH_END_NAMESPACE
105
ARCANE_END_NAMESPACE
106
107
/*---------------------------------------------------------------------------*/
108
/*---------------------------------------------------------------------------*/
109
110
#endif
Arcane::Collection< ITiedInterface * >
Arcane::IMeshPartitionConstraint
Interface d'une contrainte de partitionnement d'un maillage.
Definition
IMeshPartitionConstraint.h:36
Arcane::ISubDomain
Interface du gestionnaire d'un sous-domaine.
Definition
ISubDomain.h:74
Arcane::LimaWrapper
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition
Lima.cc:120
Arcane::List< ITiedInterface * >
Arcane::TiedInterfaceMng
Implémentation du gestionnaire d'interfaces liées.
Definition
TiedInterfaceMng.h:54
Arcane::TiedInterface
Informations sur les semi-conformitées du maillage.
Definition
TiedInterface.h:69
Arcane::VariableRefArrayT< Int64 >
Arcane::XmlNode
Noeud d'un arbre DOM.
Definition
XmlNode.h:51
Arccore::String
Chaîne de caractères unicode.
Definition
arccore/src/base/arccore/base/String.h:70
Arccore::TraceAccessor
Classe d'accès aux traces.
Definition
arccore/src/trace/arccore/trace/TraceAccessor.h:39
arcane
mesh
TiedInterfaceMng.h
Généré le Lundi 18 Novembre 2024 03:01:41 pour Arcane par
1.9.8