12#ifndef ARCANE_ITEMCONNECTEDENUMERATORBASE_H
13#define ARCANE_ITEMCONNECTEDENUMERATORBASE_H
17#include "arcane/ItemInternalEnumerator.h"
18#include "arcane/Item.h"
53 : m_local_ids(
rhs._localIds().data())
54 , m_count(
rhs._localIds().size())
55 , m_local_id_offset(
rhs._localIdOffset())
75 return m_index < m_count;
79 constexpr bool hasNext()
const {
return m_index < m_count; }
82 constexpr Int32
count()
const {
return m_count; }
85 constexpr Int32
index()
const {
return m_index; }
91 constexpr Int32
localId()
const {
return m_local_id_offset + m_local_ids[m_index]; }
95 const Int32* ARCANE_RESTRICT m_local_ids =
nullptr;
98 Int32 m_local_id_offset = 0;
109template <
typename ItemType>
118 using LocalIdType =
typename ItemType::LocalIdType;
125 , m_item(NULL_ITEM_LOCAL_ID, ItemSharedInfo::nullInstance())
139 , m_item(NULL_ITEM_LOCAL_ID,
rhs.m_shared_info)
150 constexpr ItemType operator*()
const
152 m_item.m_local_id = m_local_id_offset + m_local_ids[m_index];
155 constexpr const ItemType* operator->()
const
157 m_item.m_local_id = m_local_id_offset + m_local_ids[m_index];
161 constexpr LocalIdType asItemLocalId()
const
163 return LocalIdType{ m_local_id_offset + m_local_ids[m_index] };
168 mutable ItemType m_item = ItemType(NULL_ITEM_LOCAL_ID,
nullptr);
Classe de base typeé des énumérateurs sur une liste d'entité connectées.
Classe de base des énumérateurs sur une liste d'entité connectées.
constexpr void operator++()
Incrémente l'index de l'énumérateur.
constexpr Int32 count() const
Nombre d'éléments de l'énumérateur.
constexpr bool operator()() const
Vrai si on n'a pas atteint la fin de l'énumérateur (index()<count())
constexpr ItemLocalId itemLocalId() const
localId() de l'entité courante.
constexpr Int32 localId() const
localId() de l'entité courante.
constexpr Int32 index() const
Indice courant de l'énumérateur.
constexpr bool hasNext() const
Vrai si on n'a pas atteint la fin de l'énumérateur (index()<count())
Enumérateur sur une liste typée d'entités connectées de type ItemType.
Enumérateur sur une liste d'entités connectées à une autre.
Index d'un Item dans une variable.
Structure interne partagée d'une entité de maillage.
Classe de base d'un élément de maillage.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Vue interne sur un tableau d'entités.
ConstArrayView< Int32 > constLocalIds() const
Tableau des numéros locaux des entités.
Vue constante d'un tableau de type T.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-