12#ifndef ARCANE_ITEMINFOLISTVIEW_H
13#define ARCANE_ITEMINFOLISTVIEW_H
17#include "arcane/core/ItemGenericInfoListView.h"
39class ARCANE_CORE_EXPORT ItemInfoListView
40:
public ItemGenericInfoListView
42 using BaseClass = ItemGenericInfoListView;
43 friend class mesh::ItemFamily;
45 friend ItemPairEnumerator;
46 friend ItemGenericInfoListView;
47 template <
int Extent>
friend class ItemConnectedListView;
48 template <
typename ItemType>
friend class ItemEnumeratorBaseT;
51 friend ItemVectorView;
55 ItemInfoListView() =
default;
76 inline Item operator[](
Int32 local_id)
const;
87 using BaseClass::m_flags;
88 using BaseClass::m_item_shared_info;
89 void _checkValid(eItemKind expected_kind);
97template <
typename ItemType>
98class ItemInfoListViewT
99:
public ItemInfoListView
103 ItemInfoListViewT() =
default;
107 : ItemInfoListView(family)
128class NodeInfoListView
129:
public ItemInfoListViewT<Node>
133 using BaseClass = ItemInfoListViewT<Node>;
137 NodeInfoListView() =
default;
150class EdgeInfoListView
151:
public ItemInfoListViewT<Edge>
155 using BaseClass = ItemInfoListViewT<Edge>;
159 EdgeInfoListView() =
default;
172class FaceInfoListView
173:
public ItemInfoListViewT<Face>
177 using BaseClass = ItemInfoListViewT<Face>;
181 FaceInfoListView() =
default;
190 constexpr ARCCORE_HOST_DEVICE
bool isSubDomainBoundary(FaceLocalId local_id)
const
192 return ItemFlags::isSubDomainBoundary(m_flags[local_id]);
194 constexpr ARCCORE_HOST_DEVICE
bool isSubDomainBoundaryOutside(FaceLocalId local_id)
const
196 return ItemFlags::isSubDomainBoundaryOutside(m_flags[local_id]);
198 constexpr ARCCORE_HOST_DEVICE
Int32 backCellIndex(FaceLocalId local_id)
const
202 constexpr ARCCORE_HOST_DEVICE
Int32 frontCellIndex(FaceLocalId local_id)
const
213class CellInfoListView
214:
public ItemInfoListViewT<Cell>
218 using BaseClass = ItemInfoListViewT<Cell>;
222 CellInfoListView() =
default;
235class ParticleInfoListView
236:
public ItemInfoListViewT<Particle>
240 using BaseClass = ItemInfoListViewT<Particle>;
244 ParticleInfoListView() =
default;
258:
public ItemInfoListViewT<DoF>
262 using BaseClass = ItemInfoListViewT<DoF>;
266 DoFInfoListView() =
default;
CellInfoListView(IItemFamily *family)
Construit une vue associée à la famille family.
DoFInfoListView(IItemFamily *family)
Construit une vue associée à la famille family.
EdgeInfoListView(IItemFamily *family)
Construit une vue associée à la famille family.
FaceInfoListView(IItemFamily *family)
Construit une vue associée à la famille family.
Interface d'une famille d'entités.
static constexpr Int32 backCellIndex(FlagType f)
Index dans la face la maille derrière.
static constexpr Int32 frontCellIndex(FlagType f)
Index dans la face la maille devant.
Vue sur les informations génériques d'une famille d'entités.
ItemInfoListViewT(IItemFamily *family)
Construit une vue associée à la famille family.
ItemType operator[](Int32 local_id) const
Entité associée du numéro local local_id.
ItemType operator[](ItemLocalId local_id) const
Entité associée du numéro local local_id.
Vue sur une liste pour obtenir des informations sur les entités.
IItemFamily * itemFamily() const
Famille associée.
void _checkValid(eItemKind expected_kind)
Vérifie que le genre d'entité correspond à celui attendu.
Index d'un Item dans une variable.
static eItemKind kind()
Genre de l'entité
Classe de base d'un élément de maillage.
NodeInfoListView(IItemFamily *family)
Construit une vue associée à la famille family.
ParticleInfoListView(IItemFamily *family)
Construit une vue associée à la famille family.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
std::int32_t Int32
Type entier signé sur 32 bits.