Arcane
v3.15.3.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
AbstractItemFamilyTopologyModifier.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
/* AbstractItemFamilyTopologyModifier.h (C) 2000-2020 */
9
/* */
10
/* Modification de la topologie des entités d'une famille. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_MESH_ABSTRACTITEMFAMILYTOPOLOGYMODIFIER_H
13
#define ARCANE_MESH_ABSTRACTITEMFAMILYTOPOLOGYMODIFIER_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/utils/TraceAccessor.h"
18
19
#include "arcane/IItemFamilyTopologyModifier.h"
20
21
#include "arcane/mesh/MeshGlobal.h"
22
23
/*---------------------------------------------------------------------------*/
24
/*---------------------------------------------------------------------------*/
25
26
namespace
Arcane::mesh
27
{
28
29
/*---------------------------------------------------------------------------*/
30
/*---------------------------------------------------------------------------*/
35
class
ARCANE_MESH_EXPORT
AbstractItemFamilyTopologyModifier
36
:
public
TraceAccessor
37
,
public
IItemFamilyTopologyModifier
38
{
39
public
:
40
41
AbstractItemFamilyTopologyModifier
(
IItemFamily
*
afamily
);
42
virtual
~AbstractItemFamilyTopologyModifier
() {}
//<! Libère les ressources
43
44
public
:
45
47
IItemFamily
* family()
const override
;
48
49
public
:
50
51
void
replaceNode(
ItemLocalId
item_lid
,Integer index,
ItemLocalId
new_node_lid
)
override
;
52
void
replaceEdge(
ItemLocalId
item_lid
,Integer index,
ItemLocalId
new_edge_lid
)
override
;
53
void
replaceFace(
ItemLocalId
item_lid
,Integer index,
ItemLocalId
new_face_lid
)
override
;
54
void
replaceCell(
ItemLocalId
item_lid
,Integer index,
ItemLocalId
new_cell_lid
)
override
;
55
void
replaceHParent(
ItemLocalId
item_lid
,Integer index,
ItemLocalId
new_hparent_lid
)
override
;
56
void
replaceHChild(
ItemLocalId
item_lid
,Integer index,
ItemLocalId
new_hchild_lid
)
override
;
57
58
void
findAndReplaceNode(
ItemLocalId
item_lid
,
ItemLocalId
old_node_lid
,
59
ItemLocalId
new_node_lid
)
override
;
60
void
findAndReplaceEdge(
ItemLocalId
item_lid
,
ItemLocalId
old_edge_lid
,
61
ItemLocalId
new_edge_lid
)
override
;
62
void
findAndReplaceFace(
ItemLocalId
item_lid
,
ItemLocalId
old_face_lid
,
63
ItemLocalId
new_face_lid
)
override
;
64
void
findAndReplaceCell(
ItemLocalId
item_lid
,
ItemLocalId
old_cell_lid
,
65
ItemLocalId
new_cell_lid
)
override
;
66
67
private
:
68
69
IItemFamily
* m_family;
70
71
void
_throwNotSupported();
72
inline
Int32 _getItemIndex(
const
Int32* items,Integer nb_item,Int32 local_id);
73
inline
Int32 _getItemIndex(
ItemVectorView
items,Int32 local_id);
74
};
75
76
/*---------------------------------------------------------------------------*/
77
/*---------------------------------------------------------------------------*/
78
79
}
// End namespace Arcane::mesh
80
81
/*---------------------------------------------------------------------------*/
82
/*---------------------------------------------------------------------------*/
83
84
#endif
Arcane::IItemFamilyTopologyModifier
Interface de modification de la topologie des entités d'une famille.
Definition
IItemFamilyTopologyModifier.h:43
Arcane::IItemFamily
Interface d'une famille d'entités.
Definition
IItemFamily.h:111
Arcane::ItemLocalId
Index d'un Item dans une variable.
Definition
ItemLocalId.h:41
Arcane::ItemVectorView
Vue sur un vecteur d'entités.
Definition
ItemVectorView.h:227
Arcane::LimaWrapper
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition
Lima.cc:149
Arcane::mesh::AbstractItemFamilyTopologyModifier
Modification de la topologie des entités d'une famille.
Definition
AbstractItemFamilyTopologyModifier.h:38
Arccore::TraceAccessor
Classe d'accès aux traces.
Definition
arccore/src/trace/arccore/trace/TraceAccessor.h:39
Arcane::mesh
AMR.
Definition
CartesianGridDimension.h:32
arcane
mesh
AbstractItemFamilyTopologyModifier.h
Généré le Lundi 10 Février 2025 02:51:13 pour Arcane par
1.9.8