Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::ItemGroupInternal

Implémentation de la classe ItemGroupImpl. Plus de détails...

#include <arcane/core/internal/ItemGroupInternal.h>

+ Graphe de collaboration de Arcane::ItemGroupInternal:

Fonctions membres publiques

 ItemGroupInternal (IItemFamily *family, const String &name)
 
 ItemGroupInternal (IItemFamily *family, ItemGroupImpl *parent, const String &name)
 
const Stringname () const
 
const StringfullName () const
 
bool null () const
 
IMeshmesh () const
 
eItemKind kind () const
 
Integer maxLocalId () const
 
ItemInternalList items () const
 
ItemInfoListView itemInfoListView () const
 
Int32ArrayView itemsLocalId ()
 
Int32ConstArrayView itemsLocalId () const
 
Int32ArraymutableItemsLocalId ()
 
VariableArrayInt32variableItemsLocalid ()
 
Int64 timestamp () const
 
bool isContigous () const
 
void checkIsContigous ()
 Vérifie que les localIds() sont contigüs.
 
void updateTimestamp ()
 
void setNeedRecompute ()
 
void applySimdPadding ()
 Applique le padding pour la vectorisation.
 
void checkUpdateSimdPadding ()
 Remplit les derniers éléments du groupe pour avoir un vecteur SIMD complet.
 
bool isAllItems () const
 
bool isOwn () const
 
Int32 nbItem () const
 
void checkValid ()
 
void _removeItems (SmallSpan< const Int32 > items_local_id)
 
void notifyExtendObservers (const Int32ConstArrayView *info)
 
void notifyReduceObservers (const Int32ConstArrayView *info)
 
void notifyCompactObservers (const Int32ConstArrayView *info)
 
void notifyInvalidateObservers ()
 
void resetSubGroups ()
 
bool isUseV2ForApplyOperation () const
 

Attributs publics

ItemGroupImplInternal m_internal_api
 
IMeshm_mesh = nullptr
 Gestionnare de groupe associé
 
IItemFamilym_item_family = nullptr
 Famille associée.
 
ItemGroupImplm_parent = nullptr
 
String m_variable_name
 Groupe parent (groupe null si aucun)
 
String m_full_name
 Nom complet du groupe.
 
bool m_is_null = true
 true si le groupe est nul
 
eItemKind m_kind = IK_Unknown
 Genre de entités du groupe.
 
String m_name
 Nom du groupe.
 
bool m_is_own = false
 true si groupe local.
 
Int64 m_simd_timestamp = -1
 Temps de la derniere modification pour le calcul des infos SIMD.
 
ItemGroupImplm_own_group = nullptr
 Items owned by the subdomain.
 
ItemGroupImplm_ghost_group = nullptr
 Items not owned by the subdomain.
 
ItemGroupImplm_interface_group = nullptr
 Items on the boundary of two subdomains.
 
ItemGroupImplm_node_group = nullptr
 Groupe des noeuds.
 
ItemGroupImplm_edge_group = nullptr
 Groupe des arêtes.
 
ItemGroupImplm_face_group = nullptr
 Groupe des faces.
 
ItemGroupImplm_cell_group = nullptr
 Groupe des mailles.
 
ItemGroupImplm_inner_face_group = nullptr
 Groupe des faces internes.
 
ItemGroupImplm_outer_face_group = nullptr
 
ItemGroupImplm_active_cell_group = nullptr
 AMR.
 
ItemGroupImplm_own_active_cell_group = nullptr
 Groupe des mailles propres actives.
 
ItemGroupImplm_active_face_group = nullptr
 Groupe des faces actives.
 
ItemGroupImplm_own_active_face_group = nullptr
 Groupe des faces actives propres.
 
ItemGroupImplm_inner_active_face_group = nullptr
 Groupe des faces internes actives.
 
ItemGroupImplm_outer_active_face_group = nullptr
 Groupe des faces externes actives.
 
std::map< Integer, ItemGroupImpl * > m_level_cell_group
 Groupe des mailles de niveau.
 
std::map< Integer, ItemGroupImpl * > m_own_level_cell_group
 Groupe des mailles propres de niveau.
 
UniqueArray< ItemGroupImpl * > m_children_by_type
 Liste des fils de ce groupe par type d'entité
 
std::map< String, AutoRefT< ItemGroupImpl > > m_sub_groups
 Ensemble de tous les sous-groupes.
 
bool m_need_recompute = false
 Vrai si le groupe doit être recalculé
 
bool m_need_invalidate_on_recompute = false
 Vrai si l'on doit activer les invalidate observers en cas de recalcul.
 
bool m_transaction_mode = false
 Vrai si le groupe est en mode de transaction directe.
 
bool m_is_local_to_sub_domain = false
 Vrai si le groupe est local au sous-domaine.
 
IFunctorm_compute_functor = nullptr
 Fonction de calcul du groupe.
 
bool m_is_all_items = false
 Indique s'il s'agit du groupe de toutes les entités.
 
bool m_is_constituent_group = false
 Indique si le groupe est associé à un constituent (IMeshComponent)
 
SharedPtrT< GroupIndexTablem_group_index_table
 Table de hachage du local id des items vers leur position en enumeration.
 
Ref< IVariableSynchronizerm_synchronizer
 Synchronizer du groupe.
 
Int32UniqueArray m_items_index_in_all_group
 
std::map< const void *, IItemGroupObserver * > m_observers
 localids -> index (UNIQUEMENT ALLITEMS)
 
bool m_observer_need_info = false
 Synthése de besoin de observers en informations de transition.
 
UniqueArray< UniqueArray< Int32 > > m_children_by_type_ids
 Liste des localId() par type d'entité.
 
ItemTypeId m_unique_children_type { IT_NullType }
 Indique le type des entités du groupe.
 
Int64 m_children_by_type_ids_computed_timestamp = -1
 Timestamp indiquant quand a été calculé la liste des ids des enfants.
 
bool m_is_debug_apply_operation = false
 

Fonctions membres privées

void _notifyDirectRemoveItems (SmallSpan< const Int32 > removed_ids, Int32 nb_remaining)
 
void _init ()
 

Attributs privés

Int64 m_timestamp = -1
 Temps de la derniere modification.
 
UniqueArray< Int32 > m_local_buffer { MemoryUtils::getAllocatorForMostlyReadOnlyData() }
 
Array< Int32 > * m_items_local_id = &m_local_buffer
 Liste des numéros locaux des entités de ce groupe.
 
VariableArrayInt32m_variable_items_local_id = nullptr
 
bool m_is_contigous = false
 
bool m_is_check_simd_padding = true
 Vrai si les localIds sont consécutifs.
 
bool m_is_print_check_simd_padding = false
 
bool m_is_print_apply_simd_padding = false
 
bool m_is_print_stack_apply_simd_padding = false
 
bool m_use_v2_for_apply_operation = true
 Gestion pour applyOperation() Version 2.
 

Amis

class ItemGroupImplInternal
 

Description détaillée

Implémentation de la classe ItemGroupImpl.

Le container contenant la liste des entités du groupe est soit une variable dans le cas d'une groupe standard, soit un tableau simple dans le cas d'un groupe ayant un parent. En effet, les groupes ayant des parents sont des groupes générés dynamiquement (par exemple le groupe des entités propres) et ne sont donc pas toujours présents sur tous les sous-domaines (une variable doit toujours exister sur tous les sous-domaines). De plus, leur valeur n'a pas besoin d'être sauvée lors d'une protection.

A faire:
ajouter notion de groupe généré, avec les propriétés suivantes:
  • ces groupes ne doivent pas être transférés d'un sous-domaine à l'autre
  • ils ne peuvent pas être modifiés directement.

Définition à la ligne 51 du fichier ItemGroupInternal.h.

Documentation des constructeurs et destructeur

◆ ItemGroupInternal() [1/3]

Arcane::ItemGroupInternal::ItemGroupInternal ( )

Définition à la ligne 40 du fichier ItemGroupInternal.cc.

◆ ItemGroupInternal() [2/3]

Arcane::ItemGroupInternal::ItemGroupInternal ( IItemFamily family,
const String name 
)

Définition à la ligne 50 du fichier ItemGroupInternal.cc.

◆ ItemGroupInternal() [3/3]

Arcane::ItemGroupInternal::ItemGroupInternal ( IItemFamily family,
ItemGroupImpl parent,
const String name 
)

Définition à la ligne 66 du fichier ItemGroupInternal.cc.

◆ ~ItemGroupInternal()

Arcane::ItemGroupInternal::~ItemGroupInternal ( )

Définition à la ligne 83 du fichier ItemGroupInternal.cc.

Documentation des fonctions membres

◆ _init()

void Arcane::ItemGroupInternal::_init ( )
private

Définition à la ligne 98 du fichier ItemGroupInternal.cc.

◆ _notifyDirectRemoveItems()

void Arcane::ItemGroupInternal::_notifyDirectRemoveItems ( SmallSpan< const Int32 >  removed_ids,
Int32  nb_remaining 
)
private

Définition à la ligne 523 du fichier ItemGroupInternal.cc.

◆ _removeItems()

void Arcane::ItemGroupInternal::_removeItems ( SmallSpan< const Int32 >  items_local_id)

Définition à la ligne 358 du fichier ItemGroupInternal.cc.

◆ applySimdPadding()

void Arcane::ItemGroupInternal::applySimdPadding ( )

Applique le padding pour la vectorisation.

Définition à la ligne 290 du fichier ItemGroupInternal.cc.

Références Arccore::TraceAccessor::info(), et Arccore::TraceAccessor::traceMng().

Référencé par Arcane::ItemGroupImpl::shrinkMemory().

◆ checkIsContigous()

void Arcane::ItemGroupInternal::checkIsContigous ( )

Vérifie que les localIds() sont contigüs.

Définition à la ligne 265 du fichier ItemGroupInternal.cc.

Référencé par Arcane::ItemGroupImpl::checkLocalIdsAreContigous().

◆ checkUpdateSimdPadding()

void Arcane::ItemGroupInternal::checkUpdateSimdPadding ( )

Remplit les derniers éléments du groupe pour avoir un vecteur SIMD complet.

Pour que la vectorisation fonctionne il faut que le nombre d'éléments du groupe soit un multiple de la taille d'un vecteur SIMD. Si ce n'est pas le cas, on remplit les dernières valeurs du tableau des localId() avec le dernier élément.

Par exemple, on supporse une taille d'un vecteur SIMD de 8 (ce qui est le maximum actuellement avec l'AVX512) et un groupe grp de 13 éléments. Il faut donc remplit le groupe comme suit:

Int32 last_local_id = grp[12];
grp[13] = grp[14] = grp[15] = last_local_id.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120

A noter que la taille du groupe reste effectivement de 13 éléments. Le padding supplémentaire n'est que pour les itérations via ENUMERATE_SIMD. Comme le tableau des localId() est alloué avec l'allocateur d'alignement il est garanti que la mémoire allouée est suffisante pour faire le padding.

A faire:
Ne pas faire cela dans tous les checkNeedUpdate() mais mettre en place une méthode qui retourne un énumérateur spécifique pour la vectorisation.

Définition à la ligne 334 du fichier ItemGroupInternal.cc.

Références Arccore::TraceAccessor::info(), et Arccore::TraceAccessor::traceMng().

◆ checkValid()

void Arcane::ItemGroupInternal::checkValid ( )

Définition à la ligne 447 du fichier ItemGroupInternal.cc.

◆ fullName()

const String & Arcane::ItemGroupInternal::fullName ( ) const
inline

Définition à la ligne 65 du fichier ItemGroupInternal.h.

◆ isAllItems()

bool Arcane::ItemGroupInternal::isAllItems ( ) const
inline

Définition à la ligne 103 du fichier ItemGroupInternal.h.

◆ isContigous()

bool Arcane::ItemGroupInternal::isContigous ( ) const
inline

Définition à la ligne 79 du fichier ItemGroupInternal.h.

◆ isOwn()

bool Arcane::ItemGroupInternal::isOwn ( ) const
inline

Définition à la ligne 104 du fichier ItemGroupInternal.h.

◆ isUseV2ForApplyOperation()

bool Arcane::ItemGroupInternal::isUseV2ForApplyOperation ( ) const
inline

Définition à la ligne 185 du fichier ItemGroupInternal.h.

◆ itemInfoListView()

ItemInfoListView Arcane::ItemGroupInternal::itemInfoListView ( ) const

Définition à la ligne 157 du fichier ItemGroupInternal.cc.

◆ items()

ItemInternalList Arcane::ItemGroupInternal::items ( ) const

Définition à la ligne 137 du fichier ItemGroupInternal.cc.

◆ itemsLocalId() [1/2]

Int32ArrayView Arcane::ItemGroupInternal::itemsLocalId ( )
inline

Définition à la ligne 73 du fichier ItemGroupInternal.h.

◆ itemsLocalId() [2/2]

Int32ConstArrayView Arcane::ItemGroupInternal::itemsLocalId ( ) const
inline

Définition à la ligne 74 du fichier ItemGroupInternal.h.

◆ kind()

eItemKind Arcane::ItemGroupInternal::kind ( ) const
inline

Définition à la ligne 68 du fichier ItemGroupInternal.h.

◆ maxLocalId()

Int32 Arcane::ItemGroupInternal::maxLocalId ( ) const

Définition à la ligne 148 du fichier ItemGroupInternal.cc.

◆ mesh()

IMesh * Arcane::ItemGroupInternal::mesh ( ) const
inline

Définition à la ligne 67 du fichier ItemGroupInternal.h.

◆ mutableItemsLocalId()

Int32Array & Arcane::ItemGroupInternal::mutableItemsLocalId ( )
inline

Définition à la ligne 75 du fichier ItemGroupInternal.h.

◆ name()

const String & Arcane::ItemGroupInternal::name ( ) const
inline

Définition à la ligne 64 du fichier ItemGroupInternal.h.

◆ nbItem()

Int32 Arcane::ItemGroupInternal::nbItem ( ) const
inline

Définition à la ligne 105 du fichier ItemGroupInternal.h.

◆ notifyCompactObservers()

void Arcane::ItemGroupInternal::notifyCompactObservers ( const Int32ConstArrayView info)

Définition à la ligne 229 du fichier ItemGroupInternal.cc.

◆ notifyExtendObservers()

void Arcane::ItemGroupInternal::notifyExtendObservers ( const Int32ConstArrayView info)

Définition à la ligne 199 du fichier ItemGroupInternal.cc.

◆ notifyInvalidateObservers()

void Arcane::ItemGroupInternal::notifyInvalidateObservers ( )

Définition à la ligne 244 du fichier ItemGroupInternal.cc.

◆ notifyReduceObservers()

void Arcane::ItemGroupInternal::notifyReduceObservers ( const Int32ConstArrayView info)

Définition à la ligne 214 du fichier ItemGroupInternal.cc.

◆ null()

bool Arcane::ItemGroupInternal::null ( ) const
inline

Définition à la ligne 66 du fichier ItemGroupInternal.h.

◆ resetSubGroups()

void Arcane::ItemGroupInternal::resetSubGroups ( )

Définition à la ligne 168 du fichier ItemGroupInternal.cc.

◆ setNeedRecompute()

void Arcane::ItemGroupInternal::setNeedRecompute ( )
inline

Définition à la ligne 88 du fichier ItemGroupInternal.h.

◆ timestamp()

Int64 Arcane::ItemGroupInternal::timestamp ( ) const
inline

Définition à la ligne 78 du fichier ItemGroupInternal.h.

◆ updateTimestamp()

void Arcane::ItemGroupInternal::updateTimestamp ( )
inline

Définition à la ligne 82 du fichier ItemGroupInternal.h.

◆ variableItemsLocalid()

VariableArrayInt32 * Arcane::ItemGroupInternal::variableItemsLocalid ( )
inline

Définition à la ligne 76 du fichier ItemGroupInternal.h.

Documentation des fonctions amies et associées

◆ ItemGroupImplInternal

Définition à la ligne 53 du fichier ItemGroupInternal.h.

Documentation des données membres

◆ m_active_cell_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_active_cell_group = nullptr

AMR.

Groupe des mailles actives

Définition à la ligne 149 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::activeCellGroup().

◆ m_active_face_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_active_face_group = nullptr

Groupe des faces actives.

Définition à la ligne 151 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::activeFaceGroup().

◆ m_cell_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_cell_group = nullptr

Groupe des mailles.

Définition à la ligne 143 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::cellGroup().

◆ m_children_by_type

UniqueArray<ItemGroupImpl*> Arcane::ItemGroupInternal::m_children_by_type

Liste des fils de ce groupe par type d'entité

Définition à la ligne 158 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::_computeChildrenByType(), Arcane::ItemGroupImpl::_initChildrenByType(), et Arcane::ItemGroupImpl::applyOperation().

◆ m_children_by_type_ids

UniqueArray<UniqueArray<Int32> > Arcane::ItemGroupInternal::m_children_by_type_ids

Liste des localId() par type d'entité.

Définition à la ligne 210 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::_computeChildrenByTypeV2(), Arcane::ItemGroupImpl::_initChildrenByTypeV2(), et Arcane::ItemGroupImpl::applyOperation().

◆ m_children_by_type_ids_computed_timestamp

Int64 Arcane::ItemGroupInternal::m_children_by_type_ids_computed_timestamp = -1

Timestamp indiquant quand a été calculé la liste des ids des enfants.

Définition à la ligne 224 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::applyOperation().

◆ m_compute_functor

◆ m_edge_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_edge_group = nullptr

Groupe des arêtes.

Définition à la ligne 141 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::edgeGroup().

◆ m_face_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_face_group = nullptr

Groupe des faces.

Définition à la ligne 142 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::faceGroup().

◆ m_full_name

String Arcane::ItemGroupInternal::m_full_name

Nom complet du groupe.

Définition à la ligne 123 du fichier ItemGroupInternal.h.

◆ m_ghost_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_ghost_group = nullptr

Items not owned by the subdomain.

Définition à la ligne 138 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::ghostGroup().

◆ m_group_index_table

SharedPtrT<GroupIndexTable> Arcane::ItemGroupInternal::m_group_index_table

Table de hachage du local id des items vers leur position en enumeration.

Définition à la ligne 168 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::detachObserver(), et Arcane::ItemGroupImpl::localIdToIndex().

◆ m_inner_active_face_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_inner_active_face_group = nullptr

Groupe des faces internes actives.

Définition à la ligne 153 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::innerActiveFaceGroup().

◆ m_inner_face_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_inner_face_group = nullptr

Groupe des faces internes.

Définition à la ligne 144 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::innerFaceGroup().

◆ m_interface_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_interface_group = nullptr

Items on the boundary of two subdomains.

Définition à la ligne 139 du fichier ItemGroupInternal.h.

◆ m_internal_api

ItemGroupImplInternal Arcane::ItemGroupInternal::m_internal_api

Définition à la ligne 118 du fichier ItemGroupInternal.h.

◆ m_is_all_items

bool Arcane::ItemGroupInternal::m_is_all_items = false

Indique s'il s'agit du groupe de toutes les entités.

Définition à la ligne 166 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::destroy(), Arcane::ItemGroupImpl::isAllItems(), et Arcane::ItemGroupImpl::setIsAllItems().

◆ m_is_check_simd_padding

bool Arcane::ItemGroupInternal::m_is_check_simd_padding = true
private

Vrai si les localIds sont consécutifs.

Définition à la ligne 193 du fichier ItemGroupInternal.h.

◆ m_is_constituent_group

bool Arcane::ItemGroupInternal::m_is_constituent_group = false

Indique si le groupe est associé à un constituent (IMeshComponent)

Définition à la ligne 167 du fichier ItemGroupInternal.h.

◆ m_is_contigous

bool Arcane::ItemGroupInternal::m_is_contigous = false
private

Définition à la ligne 192 du fichier ItemGroupInternal.h.

◆ m_is_debug_apply_operation

bool Arcane::ItemGroupInternal::m_is_debug_apply_operation = false

Définition à la ligne 226 du fichier ItemGroupInternal.h.

◆ m_is_local_to_sub_domain

bool Arcane::ItemGroupInternal::m_is_local_to_sub_domain = false

Vrai si le groupe est local au sous-domaine.

Définition à la ligne 164 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::isLocalToSubDomain(), Arcane::ItemGroupImpl::needSynchronization(), et Arcane::ItemGroupImpl::setLocalToSubDomain().

◆ m_is_null

bool Arcane::ItemGroupInternal::m_is_null = true

true si le groupe est nul

Définition à la ligne 124 du fichier ItemGroupInternal.h.

◆ m_is_own

bool Arcane::ItemGroupInternal::m_is_own = false

◆ m_is_print_apply_simd_padding

bool Arcane::ItemGroupInternal::m_is_print_apply_simd_padding = false
private

Définition à la ligne 195 du fichier ItemGroupInternal.h.

◆ m_is_print_check_simd_padding

bool Arcane::ItemGroupInternal::m_is_print_check_simd_padding = false
private

Définition à la ligne 194 du fichier ItemGroupInternal.h.

◆ m_is_print_stack_apply_simd_padding

bool Arcane::ItemGroupInternal::m_is_print_stack_apply_simd_padding = false
private

Définition à la ligne 196 du fichier ItemGroupInternal.h.

◆ m_item_family

◆ m_items_index_in_all_group

Int32UniqueArray Arcane::ItemGroupInternal::m_items_index_in_all_group

Définition à la ligne 172 du fichier ItemGroupInternal.h.

◆ m_items_local_id

Array<Int32>* Arcane::ItemGroupInternal::m_items_local_id = &m_local_buffer
private

Liste des numéros locaux des entités de ce groupe.

Définition à la ligne 190 du fichier ItemGroupInternal.h.

◆ m_kind

eItemKind Arcane::ItemGroupInternal::m_kind = IK_Unknown

Genre de entités du groupe.

Définition à la ligne 125 du fichier ItemGroupInternal.h.

◆ m_level_cell_group

std::map<Integer, ItemGroupImpl*> Arcane::ItemGroupInternal::m_level_cell_group

Groupe des mailles de niveau.

Définition à la ligne 155 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::levelCellGroup().

◆ m_local_buffer

UniqueArray<Int32> Arcane::ItemGroupInternal::m_local_buffer { MemoryUtils::getAllocatorForMostlyReadOnlyData() }
private

Définition à la ligne 189 du fichier ItemGroupInternal.h.

◆ m_mesh

◆ m_name

String Arcane::ItemGroupInternal::m_name

Nom du groupe.

Définition à la ligne 126 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::localIdToIndex(), et Arcane::ItemGroupImpl::synchronizer().

◆ m_need_invalidate_on_recompute

bool Arcane::ItemGroupInternal::m_need_invalidate_on_recompute = false

Vrai si l'on doit activer les invalidate observers en cas de recalcul.

Définition à la ligne 162 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::_forceInvalidate(), et Arcane::ItemGroupImpl::endTransaction().

◆ m_need_recompute

◆ m_node_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_node_group = nullptr

Groupe des noeuds.

Définition à la ligne 140 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::nodeGroup().

◆ m_observer_need_info

bool Arcane::ItemGroupInternal::m_observer_need_info = false

◆ m_observers

std::map<const void*, IItemGroupObserver*> Arcane::ItemGroupInternal::m_observers

localids -> index (UNIQUEMENT ALLITEMS)

Observers du groupe

Définition à la ligne 174 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::attachObserver(), Arcane::ItemGroupImpl::destroy(), et Arcane::ItemGroupImpl::detachObserver().

◆ m_outer_active_face_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_outer_active_face_group = nullptr

Groupe des faces externes actives.

Définition à la ligne 154 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::outerActiveFaceGroup().

◆ m_outer_face_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_outer_face_group = nullptr

Groupe des faces externes

Définition à la ligne 145 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::outerFaceGroup().

◆ m_own_active_cell_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_own_active_cell_group = nullptr

Groupe des mailles propres actives.

Définition à la ligne 150 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::ownActiveCellGroup().

◆ m_own_active_face_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_own_active_face_group = nullptr

Groupe des faces actives propres.

Définition à la ligne 152 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::ownActiveFaceGroup().

◆ m_own_group

ItemGroupImpl* Arcane::ItemGroupInternal::m_own_group = nullptr

Items owned by the subdomain.

Définition à la ligne 137 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::ownGroup(), et Arcane::ItemGroupImpl::setOwn().

◆ m_own_level_cell_group

std::map<Integer, ItemGroupImpl*> Arcane::ItemGroupInternal::m_own_level_cell_group

Groupe des mailles propres de niveau.

Définition à la ligne 156 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::ownLevelCellGroup().

◆ m_parent

ItemGroupImpl* Arcane::ItemGroupInternal::m_parent = nullptr

Définition à la ligne 121 du fichier ItemGroupInternal.h.

◆ m_simd_timestamp

Int64 Arcane::ItemGroupInternal::m_simd_timestamp = -1

Temps de la derniere modification pour le calcul des infos SIMD.

Définition à la ligne 135 du fichier ItemGroupInternal.h.

◆ m_sub_groups

std::map<String, AutoRefT<ItemGroupImpl> > Arcane::ItemGroupInternal::m_sub_groups

◆ m_synchronizer

Ref<IVariableSynchronizer> Arcane::ItemGroupInternal::m_synchronizer

◆ m_timestamp

Int64 Arcane::ItemGroupInternal::m_timestamp = -1
private

Temps de la derniere modification.

Définition à la ligne 131 du fichier ItemGroupInternal.h.

◆ m_transaction_mode

bool Arcane::ItemGroupInternal::m_transaction_mode = false

◆ m_unique_children_type

ItemTypeId Arcane::ItemGroupInternal::m_unique_children_type { IT_NullType }

Indique le type des entités du groupe.

Si différent de IT_NullType, cela signifie que toutes les entités du groupe sont du même type et donc on il n'est pas nécessaire de calculer le localId() des entités par type. On utilise dans ce cas directement le groupe en paramètre des applyOperation().

Définition à la ligne 221 du fichier ItemGroupInternal.h.

Référencé par Arcane::ItemGroupImpl::_computeChildrenByTypeV2(), et Arcane::ItemGroupImpl::applyOperation().

◆ m_use_v2_for_apply_operation

bool Arcane::ItemGroupInternal::m_use_v2_for_apply_operation = true
private

Gestion pour applyOperation() Version 2.

Définition à la ligne 205 du fichier ItemGroupInternal.h.

◆ m_variable_items_local_id

VariableArrayInt32* Arcane::ItemGroupInternal::m_variable_items_local_id = nullptr
private

Définition à la ligne 191 du fichier ItemGroupInternal.h.

◆ m_variable_name

String Arcane::ItemGroupInternal::m_variable_name

Groupe parent (groupe null si aucun)

Nom de la variable contenant les indices des éléments du groupe

Définition à la ligne 122 du fichier ItemGroupInternal.h.


La documentation de cette classe a été générée à partir des fichiers suivants :