Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IMeshUniqueIdMng.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/* IMeshUniqueIdMng.h (C) 2000-2022 */
9/* */
10/* Interface du gestionnaire de numérotation des uniqueId() d'un maillage. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_IMESHUNIQUEIDMNG_H
13#define ARCANE_IMESHUNIQUEIDMNG_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27/*!
28 * \internal
29 *
30 * Interface du gestionnaire de numérotation des uniqueId() des entités
31 * d'un maillage.
32 *
33 * Ce gestionnaire permet de gérer le calcul des uniqueId() des entités
34 * du maillages qui sont implicitement créées comme les faces ou les arêtes.
35 */
36class ARCANE_CORE_EXPORT IMeshUniqueIdMng
37{
38 public:
39
40 //! Libère les ressources
41 virtual ~IMeshUniqueIdMng() =default;
42
43 public:
44
45 /*!
46 * \brief Positionne la version de la numérotation des faces.
47 *
48 * Les valeurs valides sont 0, 1, 2 et 3. La valeur par défaut est 1.
49 * Si la version vaut 0 alors il n'y a pas de renumérotation. En parallèle,
50 * il faut alors que les uniqueId() des faces soient cohérents entre
51 * les sous-domaines.
52 */
53 virtual void setFaceBuilderVersion(Integer n) =0;
54
55 //! Version de la numérotation des faces.
56 virtual Integer faceBuilderVersion() const =0;
57
58 /*!
59 * \brief Positionne la version de la numérotation des arêtes.
60 *
61 * Les valeurs valides sont 0, 1 et 2. La valeur 1 fonctionne quel que
62 * soit le nombre de mailles mais il faut que le maillage soit lu par
63 * un seul processeur. La valeur 2 ne fonctionne que si le maximum des
64 * uniqueId() des noeuds ne dépasse pas 2^31.
65 *
66 * Si la version vaut 0 alors il n'y a pas de renumérotation. En parallèle,
67 * il faut alors que les uniqueId() des faces soient cohérents entre
68 * les sous-domaines.
69 */
70 virtual void setEdgeBuilderVersion(Integer n) =0;
71
72 //! Version de la numérotation des arêtes
73 virtual Integer edgeBuilderVersion() const =0;
74};
75
76/*---------------------------------------------------------------------------*/
77/*---------------------------------------------------------------------------*/
78
79} // End namespace Arcane
80
81/*---------------------------------------------------------------------------*/
82/*---------------------------------------------------------------------------*/
83
84#endif
virtual void setFaceBuilderVersion(Integer n)=0
Positionne la version de la numérotation des faces.
virtual void setEdgeBuilderVersion(Integer n)=0
Positionne la version de la numérotation des arêtes.
virtual Integer edgeBuilderVersion() const =0
Version de la numérotation des arêtes.
virtual Integer faceBuilderVersion() const =0
Version de la numérotation des faces.
virtual ~IMeshUniqueIdMng()=default
Libère les ressources.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-