Arcane  v4.1.1.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::ItemGroupSubPartsByType

Gestion des sous-parties d'un groupe suivant le type de ses éléments. Plus de détails...

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

+ Graphe de collaboration de Arcane::ItemGroupSubPartsByType:

Fonctions membres publiques

 ItemGroupSubPartsByType (ItemGroupInternal *igi)
 
void setImpl (ItemGroupImpl *group_impl)
 
void clear ()
 
void applyOperation (IItemOperationByBasicType *operation)
 
bool isUseV2ForApplyOperation () const
 
void _computeChildrenByTypeV1 ()
 

Fonctions membres privées

void _initChildrenByTypeV2 ()
 
void _computeChildrenByTypeV2 ()
 
void _initChildrenByTypeV1 ()
 

Attributs privés

bool m_use_v2_for_apply_operation = true
 Vrai si on utilise la version 2 de la gestion pour applyOperation().
 
UniqueArray< UniqueArray< Int32 > > m_children_by_type_ids
 Liste des localId() par type d'entité.
 
UniqueArray< ItemGroupImpl * > m_children_by_type
 Liste des fils de ce groupe 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
 
ItemGroupInternalm_group_internal = nullptr
 
ItemGroupImplm_group_impl = nullptr
 A supprimer quand la version V1 sera supprimée.
 

Description détaillée

Gestion des sous-parties d'un groupe suivant le type de ses éléments.

Cette classe permet de récupérer la sous-partie d'un groupe correspondante à un type basique (entité dont ItemTypeId est inférieur à NB_BASIC_ITEM_TYPE.

Il existe deux implémentations de cette fonctionnalité.

La première version, qui est obsolète et plus utilisé par défaut, utilise un ItemGroup par type d'entité. La seconde utilise juste un tableau de ItemLocalId pour chaque partie. De plus, si tous les éléments du groupe sont de même type (par exemple un IT_Quad4 si on utilise un maillage cartésien 2D), alors on utilise directement la liste des localId() de l'instance.

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

Documentation des constructeurs et destructeur

◆ ItemGroupSubPartsByType()

Arcane::ItemGroupSubPartsByType::ItemGroupSubPartsByType ( ItemGroupInternal * igi)
explicit

Définition à la ligne 31 du fichier ItemGroupSubPartsByType.cc.

Documentation des fonctions membres

◆ _computeChildrenByTypeV1()

void Arcane::ItemGroupSubPartsByType::_computeChildrenByTypeV1 ( )

Définition à la ligne 1406 du fichier ItemGroupImpl.cc.

◆ _computeChildrenByTypeV2()

void Arcane::ItemGroupSubPartsByType::_computeChildrenByTypeV2 ( )
private

Définition à la ligne 60 du fichier ItemGroupSubPartsByType.cc.

◆ _initChildrenByTypeV1()

void Arcane::ItemGroupSubPartsByType::_initChildrenByTypeV1 ( )
private

Définition à la ligne 1724 du fichier ItemGroupImpl.cc.

◆ _initChildrenByTypeV2()

void Arcane::ItemGroupSubPartsByType::_initChildrenByTypeV2 ( )
private

Définition à la ligne 46 du fichier ItemGroupSubPartsByType.cc.

◆ applyOperation()

void Arcane::ItemGroupSubPartsByType::applyOperation ( IItemOperationByBasicType * operation)

Définition à la ligne 1216 du fichier ItemGroupImpl.cc.

◆ clear()

void Arcane::ItemGroupSubPartsByType::clear ( )
inline

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

◆ isUseV2ForApplyOperation()

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

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

◆ setImpl()

void Arcane::ItemGroupSubPartsByType::setImpl ( ItemGroupImpl * group_impl)
inline

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

Documentation des données membres

◆ m_children_by_type

UniqueArray<ItemGroupImpl*> Arcane::ItemGroupSubPartsByType::m_children_by_type
private

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

Ce champ est utilisé avec la version 1 qui demande de créer un groupe par sous-type.

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

◆ m_children_by_type_ids

UniqueArray<UniqueArray<Int32> > Arcane::ItemGroupSubPartsByType::m_children_by_type_ids
private

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

Ce champ est utilisé avec la version 2.

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

◆ m_children_by_type_ids_computed_timestamp

Int64 Arcane::ItemGroupSubPartsByType::m_children_by_type_ids_computed_timestamp = -1
private

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

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

◆ m_group_impl

ItemGroupImpl* Arcane::ItemGroupSubPartsByType::m_group_impl = nullptr
private

A supprimer quand la version V1 sera supprimée.

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

◆ m_group_internal

ItemGroupInternal* Arcane::ItemGroupSubPartsByType::m_group_internal = nullptr
private

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

◆ m_is_debug_apply_operation

bool Arcane::ItemGroupSubPartsByType::m_is_debug_apply_operation = false
private

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

◆ m_unique_children_type

ItemTypeId Arcane::ItemGroupSubPartsByType::m_unique_children_type { IT_NullType }
private

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 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 104 du fichier ItemGroupInternal.h.

◆ m_use_v2_for_apply_operation

bool Arcane::ItemGroupSubPartsByType::m_use_v2_for_apply_operation = true
private

Vrai si on utilise la version 2 de la gestion pour applyOperation().

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


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