14#include "arcane/core/UnstructuredMeshConnectivity.h"
16#include "arcane/utils/FatalErrorException.h"
18#include "arcane/core/IMesh.h"
19#include "arcane/core/IItemFamily.h"
20#include "arcane/core/internal/IItemFamilyInternal.h"
34inline constexpr Int32 _IDX(
Node*) {
return ItemInternalConnectivityList::NODE_IDX; }
35inline constexpr Int32 _IDX(
Edge*) {
return ItemInternalConnectivityList::EDGE_IDX; }
36inline constexpr Int32 _IDX(
Face*) {
return ItemInternalConnectivityList::FACE_IDX; }
37inline constexpr Int32 _IDX(
Cell*) {
return ItemInternalConnectivityList::CELL_IDX; }
39template<
typename ConnectivityView>
inline void
40_internalInit(ConnectivityView& cview,
IMesh*
mesh)
42 using ItemType1 =
typename ConnectivityView::ItemType1Type;
43 using ItemType2 =
typename ConnectivityView::ItemType2Type;
50 auto item_index_type = _IDX((ItemType2*)
nullptr);
51 auto container_view = clist->containerView(item_index_type);
59void UnstructuredMeshConnectivityView::
64 _internalInit(m_cell_node_connectivity_view,mesh);
65 _internalInit(m_cell_edge_connectivity_view,mesh);
66 _internalInit(m_cell_face_connectivity_view,mesh);
68 _internalInit(m_face_node_connectivity_view,mesh);
69 _internalInit(m_face_edge_connectivity_view,mesh);
70 _internalInit(m_face_cell_connectivity_view,mesh);
72 _internalInit(m_node_edge_connectivity_view,mesh);
73 _internalInit(m_node_face_connectivity_view,mesh);
74 _internalInit(m_node_cell_connectivity_view,mesh);
76 _internalInit(m_edge_node_connectivity_view,mesh);
77 _internalInit(m_edge_face_connectivity_view,mesh);
78 _internalInit(m_edge_cell_connectivity_view,mesh);
84void UnstructuredMeshConnectivityView::
88 ARCANE_FATAL(
"Can not use unitialised UnstructuredMeshConnectivityView.\n"
89 "Call the method setMesh() before");
#define ARCANE_FATAL(...)
Macro envoyant une exception FatalErrorException.
Interface d'une famille d'entités.
Classe de base d'une vue sur une connectivité non structurée.
Informations de connectivité, pour une famille d'entité, permettant la transition entre les anciennes...
static eItemKind kind()
Genre de l'entité
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
eItemKind
Genre d'entité de maillage.
std::int32_t Int32
Type entier signé sur 32 bits.