Arcane  v3.16.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
GhostLayerFromConnectivityComputer.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/* GhostLayerFromConnectivityComputer.h (C) 2000-2015 */
9/* */
10/* Implémentation d'une politique de création de fantômes pour une connectivité */
11/*------------------------------------------------------------------------------*/
12#ifndef ARCANE_DOF_GHOSTLAYERFROMCONNECTIVITYCOMPUTER_H
13#define ARCANE_DOF_GHOSTLAYERFROMCONNECTIVITYCOMPUTER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/ArrayView.h"
18#include "arcane/utils/ITraceMng.h"
19
20#include "arcane/ArcaneTypes.h"
21#include "arcane/IExtraGhostItemsBuilder.h"
22#include "arcane/IItemConnectivity.h"
23
24#include "arcane/mesh/DoFFamily.h"
25#include "arcane/mesh/ItemConnectivity.h"
26#include "arcane/mesh/IItemConnectivityGhostPolicy.h"
27
28/*---------------------------------------------------------------------------*/
29/*---------------------------------------------------------------------------*/
30
31ARCANE_BEGIN_NAMESPACE
32
33/*---------------------------------------------------------------------------*/
34/*---------------------------------------------------------------------------*/
55class ARCANE_MESH_EXPORT GhostLayerFromConnectivityComputer
57{
58public:
59
62
63 GhostLayerFromConnectivityComputer() : m_connectivity(NULL), m_trace_mng(NULL) {}
64
67
68public:
69
72 Int32ConstArrayView sharedItems(const Integer rank, const String& family_name);
73 Int32ConstArrayView sharedItemsConnectedItems(const Integer rank, const String& family_name);
74 void updateConnectivity(Int32ConstArrayView ghost_items, Int64ConstArrayView ghost_items_connected_items);
75
76
77protected:
78 IItemConnectivity* m_connectivity;
79 ITraceMng* m_trace_mng;
80 SharedArray<Int32SharedArray> m_shared_items;
81 SharedArray<Int32SharedArray> m_shared_items_connected_items;
82
83private:
84
85 void _computeSharedItems();
86};
87
88/*---------------------------------------------------------------------------*/
89/*---------------------------------------------------------------------------*/
90
91ARCANE_END_NAMESPACE
92
93/*---------------------------------------------------------------------------*/
94/*---------------------------------------------------------------------------*/
95
96#endif
virtual Int32ConstArrayView sharedItems(const Integer rank, const String &family_name)=0
donne les local_ids des items de la famille family_name partagés pour la connectivité avec le process...
virtual Int32ConstArrayView communicatingRanks()=0
Rangs des sous-domaines avec lesquels on communique.
virtual Int32ConstArrayView sharedItemsConnectedItems(const Integer rank, const String &family_name)=0
donne les local_ids des items de la famille family_name connectés avec les sharedItems(rank).
virtual void updateConnectivity(Int32ConstArrayView ghost_items, Int64ConstArrayView ghost_items_connected_items)=0
mets à jour la connectivité en connectant les items fantômes ajoutés..
Interface pour gérer une connectivité.
Interface du gestionnaire de traces.
Vecteur 1D de données avec sémantique par référence.
Chaîne de caractères unicode.
Int32 Integer
Type représentant un entier.
ConstArrayView< Int32 > Int32ConstArrayView
Equivalent C d'un tableau à une dimension d'entiers 32 bits.
Definition UtilsTypes.h:569
ConstArrayView< Int64 > Int64ConstArrayView
Equivalent C d'un tableau à une dimension d'entiers 64 bits.
Definition UtilsTypes.h:567