Arcane  v3.16.4.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
ITiedInterface.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2025 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/* ITiedInterface.h (C) 2000-2025 */
9/* */
10/* Interface d'une classe gérant une semi-conformité du maillage. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_ITIEDINTERFACE_H
13#define ARCANE_CORE_ITIEDINTERFACE_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/MultiArray2View.h"
19#include "arcane/core/TiedNode.h"
20#include "arcane/core/TiedFace.h"
21
22/*---------------------------------------------------------------------------*/
23/*---------------------------------------------------------------------------*/
24
25namespace Arcane
26{
27
28/*---------------------------------------------------------------------------*/
29/*---------------------------------------------------------------------------*/
30
31typedef ConstMultiArray2View<TiedNode> TiedInterfaceNodeList;
32typedef ConstMultiArray2View<TiedFace> TiedInterfaceFaceList;
33
34/*---------------------------------------------------------------------------*/
35/*---------------------------------------------------------------------------*/
36/*!
37 * \ingroup Mesh
38 * \brief Interface d'un classe gérant une semi-conformité du maillage.
39 */
41{
42 public:
43
44 virtual ~ITiedInterface() = default; //!< Libère les ressources
45
46 public:
47
48 /*!
49 * \brief Groupe contenant les faces maîtres.
50 *
51 * Il s'agit d'un groupe contenant uniquement les entités
52 * propres à ce sous-domaine.
53 */
54 virtual FaceGroup masterInterface() const = 0;
55
56 //! Nom du groupe contenant les mailles maîtres
57 virtual String masterInterfaceName() const = 0;
58
59 /*!
60 * \brief Groupe contenant les faces esclaves.
61 *
62 * Il s'agit d'un groupe contenant uniquement les entités
63 * propres à ce sous-domaine.
64 */
65 virtual FaceGroup slaveInterface() const = 0;
66
67 //! Nom du groupe contenant les mailles esclaves
68 virtual String slaveInterfaceName() const = 0;
69
70 //! Liste des informations sur les noeuds esclaves d'une face maître
71 virtual TiedInterfaceNodeList tiedNodes() const = 0;
72
73 //! Liste des informations sur les faces esclaves d'une face maître
74 virtual TiedInterfaceFaceList tiedFaces() const = 0;
75};
76
77/*---------------------------------------------------------------------------*/
78/*---------------------------------------------------------------------------*/
79
80} // namespace Arcane
81
82/*---------------------------------------------------------------------------*/
83/*---------------------------------------------------------------------------*/
84
85#endif
86
Déclarations des types généraux de Arcane.
Vue constante sur un MultiArray2.
Interface d'un classe gérant une semi-conformité du maillage.
virtual String slaveInterfaceName() const =0
Nom du groupe contenant les mailles esclaves.
virtual TiedInterfaceFaceList tiedFaces() const =0
Liste des informations sur les faces esclaves d'une face maître.
virtual FaceGroup masterInterface() const =0
Groupe contenant les faces maîtres.
virtual FaceGroup slaveInterface() const =0
Groupe contenant les faces esclaves.
virtual TiedInterfaceNodeList tiedNodes() const =0
Liste des informations sur les noeuds esclaves d'une face maître.
virtual String masterInterfaceName() const =0
Nom du groupe contenant les mailles maîtres.
virtual ~ITiedInterface()=default
Libère les ressources.
Chaîne de caractères unicode.
ItemGroupT< Face > FaceGroup
Groupe de faces.
Definition ItemTypes.h:178
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-