12#ifndef ARCANE_ANYITEM_ANYITEMGROUP_H
13#define ARCANE_ANYITEM_ANYITEMGROUP_H
22#include "arcane/ItemGroup.h"
23#include "arcane/ItemInfoListView.h"
24#include "arcane/anyitem/AnyItemGlobal.h"
25#include "arcane/anyitem/AnyItemPrivate.h"
30namespace Arcane::AnyItem
49 , m_is_partial(
false) {}
50 ItemGroup group()
const {
return m_group; }
51 bool isPartial()
const {
return m_is_partial; }
65 this->m_is_partial =
true;
81 return ItemCompatibility::_itemInternal(v);
100 , m_items(m_info.group->itemInfoListView()), m_local_ids(m_info.group->itemsLocalId().data())
101 , m_index(0), m_count(m_info.group->size()), m_is_partial(info.is_partial) { }
105 , m_items(e.m_items), m_local_ids(e.m_local_ids)
106 , m_index(e.m_index), m_count(e.m_count), m_is_partial(e.m_is_partial) {}
116 inline bool hasNext() {
return m_index<m_count; }
118 inline Integer
count()
const {
return m_count; }
121 inline Integer
varIndex()
const {
return (m_is_partial)?m_index:m_local_ids[m_index]; }
124 inline Integer
localId()
const {
return m_info.local_id_offset+m_index; }
127 inline Integer
groupIndex()
const {
return m_info.group_index; }
136 const Int32* ARCANE_RESTRICT m_local_ids;
149 : m_current(std::begin(groups))
150 , m_end(std::end(groups)) {}
152 : m_current(e.m_current)
154 inline bool hasNext()
const {
return m_current != m_end; }
155 inline void operator++() { m_current++; }
160 inline Integer groupIndex()
const {
return m_current->group_index; }
Outil pour construire un groupe.
Enumérateur des blocs d'items.
BlockItemEnumerator enumerator()
Enumérateur d'un bloc d'items.
Groupe AnyItem Agglomération de groupe Arcane + informations {partiel ou non} pour les variables Cons...
Group(const Private::GroupIndexMapping &groups)
Construction à partir d'une table Groupe - offset (issue de la famille)
Integer size() const
Nombre de groupes aggrégés.
Enumerator enumerator() const
Enumérateur du groupe.
const Private::GroupIndexMapping & m_groups
Table Groupe - offset.
Outil pour construire un groupe pour une variable partielle.
Groupe d'entités de maillage.
Vue sur une liste pour obtenir des informations sur les entités.
Structure interne d'une entité de maillage.
Classe de base d'un élément de maillage.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Integer size() const
Nombre d'éléments du vecteur.
Itérateur sur les classes tableau de Arccore.