Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IGraphModifier2.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/* IGraphModifier2.h (C) 2011-2011 */
9/* */
10/* Interface d'un outil de modification du graphe d'un maillage */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_IGRAPHMODIFIER2_H
13#define ARCANE_IGRAPHMODIFIER2_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22ARCANE_BEGIN_NAMESPACE
23
24/*---------------------------------------------------------------------------*/
25/*---------------------------------------------------------------------------*/
26/*!
27 * \brief Interface d'un graphe du maillage
28 */
29class ARCANE_CORE_EXPORT IGraphModifier2
30{
31 public:
32
33 virtual ~IGraphModifier2() {} //<! Lib�re les ressources
34
35 public:
36
37
38 //! Ajout de liaisons dans le graphe avec un nombre fixe de noeuds dual par liaison
39 virtual void addLinks(Integer nb_link,
40 Integer nb_dual_nodes_per_link,
41 Int64ConstArrayView links_infos) =0;
42
43 //! Ajout de noeuds duaux dans le graphe avec un type fixe d'item dual par noeud
44 virtual void addDualNodes(Integer graph_nb_dual_node,
45 Integer dual_node_kind,
46 Int64ConstArrayView dual_nodes_infos) = 0;
47
48 //! Ajout de noeuds duaux dans le graphe avec le type du noeud dans le tableau infos
49 virtual void addDualNodes(Integer graph_nb_dual_node,
50 Int64ConstArrayView dual_nodes_infos) = 0;
51
52 //! Suppression de noeuds duaux dans le graphe
53 virtual void removeDualNodes(Int32ConstArrayView dual_node_local_ids) =0;
54
55 //! Suppression de liaisons duaux dans le graphe
56 virtual void removeLinks(Int32ConstArrayView link_local_ids) =0;
57
58 //! Suppression des DualNodes et Links connectés aux mailles qui vont être supprimees
59 virtual void removeConnectedItemsFromCells(Int32ConstArrayView cell_local_ids) =0;
60
61 virtual void endUpdate() =0;
62
63 virtual void updateAfterMeshChanged() =0;
64
65};
66
67/*---------------------------------------------------------------------------*/
68/*---------------------------------------------------------------------------*/
69
70ARCANE_END_NAMESPACE
71
72/*---------------------------------------------------------------------------*/
73/*---------------------------------------------------------------------------*/
74#endif
75
Interface d'un graphe du maillage.
virtual void addDualNodes(Integer graph_nb_dual_node, Integer dual_node_kind, Int64ConstArrayView dual_nodes_infos)=0
Ajout de noeuds duaux dans le graphe avec un type fixe d'item dual par noeud.
virtual void addDualNodes(Integer graph_nb_dual_node, Int64ConstArrayView dual_nodes_infos)=0
Ajout de noeuds duaux dans le graphe avec le type du noeud dans le tableau infos.
virtual void removeDualNodes(Int32ConstArrayView dual_node_local_ids)=0
Suppression de noeuds duaux dans le graphe.
virtual void addLinks(Integer nb_link, Integer nb_dual_nodes_per_link, Int64ConstArrayView links_infos)=0
Ajout de liaisons dans le graphe avec un nombre fixe de noeuds dual par liaison.
virtual void removeConnectedItemsFromCells(Int32ConstArrayView cell_local_ids)=0
Suppression des DualNodes et Links connectés aux mailles qui vont être supprimees.
virtual void removeLinks(Int32ConstArrayView link_local_ids)=0
Suppression de liaisons duaux dans le graphe.
Vue constante d'un tableau de type T.