14#include "arcane/core/ItemInternal.h"
16#include "arcane/utils/NotImplementedException.h"
17#include "arcane/utils/FatalErrorException.h"
18#include "arcane/utils/Iostream.h"
19#include "arcane/utils/TraceInfo.h"
20#include "arcane/utils/CheckedConvert.h"
22#include "arcane/core/IItemFamily.h"
23#include "arcane/core/IItemFamilyTopologyModifier.h"
24#include "arcane/core/ItemPrinter.h"
35ItemInternalConnectivityList ItemInternalConnectivityList::nullInstance;
40void impl::MutableItemBase::
41_checkUniqueId(
Int64 new_uid)
const
44 ARCANE_FATAL(
"Bad unique id - new_uid={0} local_id={1} current={2}",
67 if (m_unique_id>2147483647)
68 ARCANE_FATAL(
"Unique id is too big to be converted to a Int32");
69 return (Int32)(m_unique_id);
100 while (
top_it->nbHParent())
102 ARCANE_ASSERT((!
top_it->null()),(
"topHParent Problem!"));
103 ARCANE_ASSERT((
top_it->level() == 0),(
"topHParent Problem"));
111topHParentBase()
const
114 while (
top_it.nbHParent())
116 ARCANE_ASSERT((!
top_it.null()),(
"topHParent Problem!"));
117 ARCANE_ASSERT((
top_it.level() == 0),(
"topHParent Problem"));
127 ItemInternal* top_it =
this;
128 while (top_it->nbHParent())
129 top_it = top_it->_internalHParent(0);
130 ARCANE_ASSERT((!top_it->null()),(
"topHParent Problem!"));
131 ARCANE_ASSERT((top_it->level() == 0),(
"topHParent Problem"));
141 ARCANE_ASSERT((this->
hasHChildren()), (
"item has non-child!"));
143 if (this->hChildId(
c) == local_id)
154 ARCANE_ASSERT((this->
hasHChildren()), (
"item has non-child!"));
156 if (this->_internalHChild(
c) ==
iitem)
171 const Int32 local_id = cell.
localId();
175 return ItemInternalVectorView(
m_shared_info->m_items->m_cell_shared_info,local_ids,0);
181void impl::MutableItemBase::
182_setFaceInfos(
Int32 mod_flags)
185 face_flags &= ~II_InterfaceFlags;
186 face_flags |= mod_flags;
235bool ItemInternalVectorView::
240 if (!m_local_ids.
empty()){
241 auto* items_data = _items().
data();
#define ARCANE_FATAL(...)
Macro envoyant une exception FatalErrorException.
Tableau d'items de types quelconques.
Classe de base pour les entités du maillage.
ItemUniqueId uniqueId() const
Numéro unique de l'entité
Integer nbCell() const
Nombre de mailles connectées à l'entité (pour les noeuds, arêtes et faces)
Int32 m_local_id
Numéro local (au sous-domaine) de l'entité.
Int32 flags() const
Flags de l'entité
bool hasHChildren() const
Int32 whichChildAmI(Int32 local_id) const
Int32 nbHChildren() const
Nombre d'enfants pour l'AMR.
ItemSharedInfo * m_shared_info
Infos partagées entre toutes les entités ayant les mêmes caractéristiques.
Int32 localId() const
Numéro local (au sous-domaine) de l'entité
@ II_FrontCellIsFirst
La première maille de l'entité est la maille devant.
@ II_HasBackCell
L'entité a une maille derrière.
@ II_Boundary
L'entité est sur la frontière.
@ II_HasFrontCell
L'entité a une maille devant.
@ II_BackCellIsFirst
La première maille de l'entité est la maille derrière.
Vue interne sur un tableau d'entités.
Structure interne d'une entité de maillage.
Int32 whichChildAmI(const ItemInternal *iitem) const
const ItemInternal * topHParent() const
AMR.
Type d'une entité (Item).
static ItemTypeId fromInteger(Int64 v)
Créé une instance à partir d'un entier.
Identifiant unique d'une entité.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
void _setFaceBackAndFrontCells(Int32 back_cell_lid, Int32 front_cell_lid)
Pour une face, positionne à la fois la back cell et la front cell.
void setFlags(Int32 f)
Positionne les flags de l'entité
void unsetUniqueId()
Annule l'uniqueId a la valeur NULL_ITEM_UNIQUE_ID.
constexpr bool empty() const noexcept
true si le tableau est vide (size()==0)
constexpr const_pointer data() const noexcept
Pointeur sur la mémoire allouée.
std::ostream & operator<<(std::ostream &o, eExecutionPolicy exec_policy)
Affiche le nom de la politique d'exécution.
Int16 toInt16(Int64 v)
Converti un Int64 en un Int16.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-