12#ifndef ARCANE_ITEMINTERNALENUMERATOR_H
13#define ARCANE_ITEMINTERNALENUMERATOR_H
17#include "arcane/ItemInternalVectorView.h"
39class ItemInternalEnumerator
44 friend class ItemEnumerator;
48 ARCANE_DEPRECATED_REASON(
"Y2022: This class is deprecated. Use ItemEnumerator instead")
49 ItemInternalEnumerator(
const ItemInternalPtr* items,
const Int32* local_ids,
Integer n)
51 , m_local_ids(local_ids)
57 ARCANE_DEPRECATED_REASON(
"Y2022: This class is deprecated. Use ItemEnumerator instead")
59 : m_items(view._items().
data())
62 , m_count(view.
size())
65 ARCANE_DEPRECATED_REASON(
"Y2022: This class is deprecated. Use ItemEnumerator instead")
66 ItemInternalEnumerator(
const ItemInternalArrayView& items,
const Int32ConstArrayView& local_ids)
67 : m_items(items.data())
68 , m_local_ids(local_ids.data())
70 , m_count(local_ids.size())
75 ItemInternal* operator*()
const {
return m_items[m_local_ids[m_index]]; }
76 ItemInternal* operator->()
const {
return m_items[m_local_ids[m_index]]; }
77 inline void operator++() { ++m_index; }
78 inline bool operator()() {
return m_index < m_count; }
79 inline bool hasNext() {
return m_index < m_count; }
92 const ItemInternalPtr* m_items;
93 const Int32* ARCANE_RESTRICT m_local_ids;
constexpr const_pointer data() const noexcept
Pointeur sur la mémoire allouée.
Integer index() const
Indice courant de l'énumérateur.
Integer localId() const
localId() de l'entité courante.
Integer count() const
Nombre d'éléments de l'énumérateur.
Vue interne sur un tableau d'entités.
Int32ConstArrayView localIds() const
Tableau des numéros locaux des entités.
Integer size() const
Nombre d'éléments du vecteur.
Structure interne d'une entité de maillage.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Int32 Integer
Type représentant un entier.
ConstArrayView< Int32 > Int32ConstArrayView
Equivalent C d'un tableau à une dimension d'entiers 32 bits.
std::int32_t Int32
Type entier signé sur 32 bits.