Tableau associatif de ItemInternal. Plus de détails...
#include <arcane/mesh/ItemInternalMap.h>
Classes | |
class | LookupData |
Types publics | |
using | Arcane = LegacyImpl::Data |
using | ValueType = ItemInternal * |
Fonctions membres publiques | |
bool | add (Int64 key, ItemInternal *v) |
Ajoute la valeur v correspondant à la clé key. | |
void | clear () |
Supprime tous les éléments de la table. | |
Int32 | count () const |
Nombre d'éléments de la table. | |
void | remove (Int64 key) |
Supprime la valeur associée à la clé key. | |
bool | hasKey (Int64 key) |
true si une valeur avec la clé id est présente | |
void | resize (Int32 new_size, bool use_prime=false) |
Redimensionne la table de hachage. | |
void | notifyUniqueIdsChanged () |
Notifie que les numéros uniques des entités ont changés. | |
template<class Lambda > | |
void | eachItem (const Lambda &lambda) |
Fonction template pour itérer sur les entités de l'instance. | |
Int32 | nbBucket () const |
Nombre de buckets. | |
impl::ItemBase | tryFind (Int64 key) const |
Retourne l'entité associée à key si trouvé ou l'entité nulle sinon. | |
Int32 | tryFindLocalId (Int64 key) const |
Retourne le localId() associé à key si trouvé ou NULL_ITEM_LOCAL_ID sinon aucun. | |
impl::ItemBase | findItem (Int64 uid) const |
Retourne l'entité de numéro unique uid. | |
Int32 | findLocalId (Int64 uid) const |
Retourne le numéro local de l'entité de numéro unique uid. | |
void | checkValid () const |
Data * | lookup (Int64 key) |
const Data * | lookup (Int64 key) const |
ConstArrayView< BaseData * > | buckets () const |
BaseData * | lookupAdd (Int64 id, ItemInternal *value, bool &is_add) |
BaseData * | lookupAdd (Int64 uid) |
ItemInternal * | lookupValue (Int64 uid) const |
ItemInternal * | operator[] (Int64 uid) const |
Attributs publics statiques | |
static constexpr bool | UseNewImpl = 0 |
Types privés | |
using | LegacyImpl = HashTableMapT< Int64, ItemInternal * > |
using | NewImpl = impl::HashTableMap2< Int64, ItemInternal * > |
using | BaseData = LegacyImpl::Data |
Fonctions membres privées | |
void | _changeLocalIds (ArrayView< ItemInternal * > items_internal, ConstArrayView< Int32 > old_to_new_local_ids) |
Change la valeurs des localId() | |
LookupData | _lookupAdd (Int64 id, ItemInternal *value, bool &is_add) |
ItemInternal * | _tryFindItemInternal (Int64 key) const |
Retourne l'entité associée à key si trouvé ou nullptr sinon. | |
void _throwNotFound | ARCANE_NORETURN (Int64 id) const |
void _throwNotSupported | ARCANE_NORETURN (const char *func_name) const |
void | _checkValid (Int64 uid, ItemInternal *v) const |
Attributs privés | |
NewImpl | m_new_impl |
LegacyImpl | m_impl |
Amis | |
class | DynamicMeshKindInfos |
Tableau associatif de ItemInternal.
Cette classe est interne à Arcane.
La clé de ce tableau associatif est le UniqueId des entités. S'il change, il faut appeler notifyUniqueIdsChanged() pour remettre à jour le tableau associatif.
Définition à la ligne 55 du fichier ItemInternalMap.h.
using Arcane::mesh::ItemInternalMap::Arcane = LegacyImpl::Data |
Définition à la ligne 109 du fichier ItemInternalMap.h.
|
private |
Définition à la ligne 64 du fichier ItemInternalMap.h.
|
private |
Définition à la ligne 62 du fichier ItemInternalMap.h.
|
private |
Définition à la ligne 63 du fichier ItemInternalMap.h.
Définition à la ligne 113 du fichier ItemInternalMap.h.
Arcane::mesh::ItemInternalMap::ItemInternalMap | ( | ) |
Définition à la ligne 37 du fichier ItemInternalMap.cc.
|
private |
Change la valeurs des localId()
Définition à la ligne 88 du fichier ItemInternalMap.cc.
|
private |
Définition à la ligne 154 du fichier ItemInternalMap.cc.
|
inlineprivate |
Définition à la ligne 385 du fichier ItemInternalMap.h.
|
inlineprivate |
Retourne l'entité associée à key si trouvé ou nullptr sinon.
Définition à la ligne 397 du fichier ItemInternalMap.h.
|
inline |
Ajoute la valeur v correspondant à la clé key.
Si une valeur correspondant à id existe déjà, elle est remplacée.
true | si la clé est ajoutée |
false | si la clé existe déjà et est remplacée |
Définition à la ligne 129 du fichier ItemInternalMap.h.
|
inline |
Définition à la ligne 322 du fichier ItemInternalMap.h.
void Arcane::mesh::ItemInternalMap::checkValid | ( | ) | const |
Définition à la ligne 115 du fichier ItemInternalMap.cc.
|
inline |
Supprime tous les éléments de la table.
Définition à la ligne 138 du fichier ItemInternalMap.h.
Référencé par Arcane::mesh::DynamicMeshKindInfos::readFromDump().
|
inline |
Nombre d'éléments de la table.
Définition à la ligne 147 du fichier ItemInternalMap.h.
Fonction template pour itérer sur les entités de l'instance.
Le type de l'arguments template peut-être n'importe quel type d'entité qui peut être construit à partir d'un impl::ItemBase.
Définition à la ligne 211 du fichier ItemInternalMap.h.
|
inline |
Retourne l'entité de numéro unique uid.
Lève une exception si l'entité n'est pas dans la table.
Définition à la ligne 268 du fichier ItemInternalMap.h.
|
inline |
Retourne le numéro local de l'entité de numéro unique uid.
Lève une exception si l'entité n'est pas dans la table.
Définition à la ligne 285 du fichier ItemInternalMap.h.
|
inline |
true si une valeur avec la clé id est présente
Définition à la ligne 173 du fichier ItemInternalMap.h.
|
inline |
Définition à la ligne 302 du fichier ItemInternalMap.h.
|
inline |
Définition à la ligne 312 du fichier ItemInternalMap.h.
|
inline |
Définition à la ligne 332 du fichier ItemInternalMap.h.
|
inline |
Définition à la ligne 342 du fichier ItemInternalMap.h.
|
inline |
Définition à la ligne 352 du fichier ItemInternalMap.h.
|
inline |
Nombre de buckets.
Définition à la ligne 228 du fichier ItemInternalMap.h.
void Arcane::mesh::ItemInternalMap::notifyUniqueIdsChanged | ( | ) |
Notifie que les numéros uniques des entités ont changés.
Cet appel peut provoquer un recalcul complet du tableau associatif.
Définition à la ligne 46 du fichier ItemInternalMap.cc.
Références ARCANE_FATAL, Arcane::arcaneIsCheck(), Arcane::Item::uniqueId(), et Arcane::ItemBase::uniqueId().
Référencé par Arcane::mesh::ItemFamily::notifyItemsUniqueIdChanged().
|
inline |
Définition à la ligne 362 du fichier ItemInternalMap.h.
|
inline |
Supprime la valeur associée à la clé key.
Lève une exception s'il n'y a pas de valeurs associées à la clé
Définition à la ligne 160 du fichier ItemInternalMap.h.
Référencé par Arcane::mesh::DynamicMeshKindInfos::removeMany().
Redimensionne la table de hachage.
Définition à la ligne 182 du fichier ItemInternalMap.h.
|
inline |
Retourne l'entité associée à key si trouvé ou l'entité nulle sinon.
Définition à la ligne 239 du fichier ItemInternalMap.h.
|
inline |
Retourne le localId() associé à key si trouvé ou NULL_ITEM_LOCAL_ID sinon aucun.
Définition à la ligne 251 du fichier ItemInternalMap.h.
|
friend |
Définition à la ligne 58 du fichier ItemInternalMap.h.
|
private |
Définition à la ligne 374 du fichier ItemInternalMap.h.
|
private |
Définition à la ligne 373 du fichier ItemInternalMap.h.
Définition à la ligne 71 du fichier ItemInternalMap.h.