Arcane
v3.16.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
ExtraGhostParticlesBuilder.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
/* ExtraGhostParticlesBuilder.h (C) 2000-2024 */
9
/* */
10
/* Construction des mailles fantômes supplémentaires. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_MESH_EXTRAGHOSTPARTICLESBUILDER_H
13
#define ARCANE_MESH_EXTRAGHOSTPARTICLESBUILDER_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/utils/TraceAccessor.h"
18
#include "arcane/utils/Array.h"
19
20
#include "arcane/mesh/MeshGlobal.h"
21
22
/*---------------------------------------------------------------------------*/
23
/*---------------------------------------------------------------------------*/
24
25
namespace
Arcane
26
{
27
class
IExtraGhostParticlesBuilder
;
28
}
29
30
/*---------------------------------------------------------------------------*/
31
/*---------------------------------------------------------------------------*/
32
33
namespace
Arcane::mesh
34
{
35
36
/*---------------------------------------------------------------------------*/
37
/*---------------------------------------------------------------------------*/
38
39
class
DynamicMesh
;
40
class
ParticleFamily
;
41
42
/*---------------------------------------------------------------------------*/
43
/*---------------------------------------------------------------------------*/
47
class
ExtraGhostParticlesBuilder
48
:
public
TraceAccessor
49
{
50
public
:
51
52
explicit
ExtraGhostParticlesBuilder(
DynamicMesh
*
mesh
);
53
54
public
:
55
56
void
computeExtraGhostParticles();
57
void
addExtraGhostParticlesBuilder(
IExtraGhostParticlesBuilder
* builder);
58
void
removeExtraGhostParticlesBuilder(
IExtraGhostParticlesBuilder
* builder);
59
bool
hasBuilder()
const
;
60
61
private
:
62
63
DynamicMesh
* m_mesh =
nullptr
;
64
UniqueArray<IExtraGhostParticlesBuilder*>
m_builders;
65
66
private
:
67
68
void
_computeForFamily(
ParticleFamily
* particle_family);
69
};
70
71
/*---------------------------------------------------------------------------*/
72
/*---------------------------------------------------------------------------*/
73
74
}
// End namespace Arcane::mesh
75
76
/*---------------------------------------------------------------------------*/
77
/*---------------------------------------------------------------------------*/
78
79
#endif
Arcane::IExtraGhostParticlesBuilder
Interface d'un constructeur de mailles fantômes "extraordinaires".
Definition
IExtraGhostParticlesBuilder.h:39
Arcane::TraceAccessor::TraceAccessor
TraceAccessor(ITraceMng *m)
Construit un accesseur via le gestionnaire de trace m.
Definition
TraceAccessor.cc:27
Arcane::UniqueArray
Vecteur 1D de données avec sémantique par valeur (style STL).
Definition
arccore/src/collections/arccore/collections/Array.h:1844
Arcane::mesh::DynamicMesh
Implémentation d'un maillage.
Definition
DynamicMesh.h:97
Arcane::mesh::ParticleFamily
Famille de particules.
Definition
ParticleFamily.h:42
Arcane::mesh
AMR.
Definition
ArcaneTypes.h:566
Arcane
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Definition
AcceleratorGlobal.h:36
arcane
mesh
ExtraGhostParticlesBuilder.h
Généré le Lundi 31 Mars 2025 02:53:10 pour Arcane par
1.13.2