12#ifndef ARCANE_ITEMPAIRENUMERATOR_H
13#define ARCANE_ITEMPAIRENUMERATOR_H
17#include "arcane/Item.h"
18#include "arcane/ItemEnumerator.h"
50 inline void operator++()
54 inline bool hasNext()
const
56 return m_current < m_end;
58 inline Int32 itemLocalId()
const
60 return m_items_local_id[m_current];
62 inline Int32 index()
const
68 return { m_sub_items_shared_info, _ids() };
72 return Item(m_items_local_id[m_current], m_items_shared_info);
74 inline Integer nbSubItem()
const
76 return static_cast<Int32
>(m_indexes[m_current + 1] - m_indexes[m_current]);
89 ItemSharedInfo* m_items_shared_info = ItemSharedInfo::nullInstance();
90 ItemSharedInfo* m_sub_items_shared_info = ItemSharedInfo::nullInstance();
94 Item _currentItem()
const
96 return Item(m_items_local_id[m_current], m_items_shared_info);
98 ConstArrayView<Int32> _ids()
const
100 return ConstArrayView<Int32>(nbSubItem(), m_sub_items_local_id.
data() + m_indexes[m_current]);
110template <
typename ItemType>
123 inline ItemType operator*()
const
125 return ItemType(this->_currentItem());
137template <
typename ItemType,
typename SubItemType>
152 return { this->m_sub_items_shared_info, this->_ids() };
Index d'une entité ItemType dans une variable.
Index d'un Item dans une variable.
Enumérateur sur un tableau de tableaux d'entités du maillage de genre ItemType et SubItemType.
Enumérateur sur un tableau de tableaux d'entités du maillage de genre ItemType et SubItemType.
Enumérateur sur un tableau de tableaux d'entités du maillage.
Référence à un groupe d'un genre donné.
Tableau de listes d'entités.
Classe de base d'un élément de maillage.
Vue constante d'un tableau de type T.
constexpr __host__ __device__ pointer data() const noexcept
Pointeur sur le début de la vue.
Vue d'un tableau d'éléments de type T.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Real2 operator*(Real sca, const Real2Proxy &vec)
Multiplication par un scalaire.