Classe de base pour les connectivités incrémentales item->item[]. Plus de détails...
#include <arcane/mesh/IncrementalItemConnectivity.h>
Classes | |
class | InternalApi |
Fonctions membres publiques | |
IncrementalItemConnectivityBase (IItemFamily *source_family, IItemFamily *target_family, const String &aname) | |
IncrementalItemConnectivityBase (const IncrementalItemConnectivityBase &)=delete | |
IncrementalItemConnectivityBase (IncrementalItemConnectivityBase &&)=delete | |
IncrementalItemConnectivityBase & | operator= (const IncrementalItemConnectivityBase &)=delete |
IncrementalItemConnectivityBase & | operator= (IncrementalItemConnectivityBase &&)=delete |
void | notifySourceFamilyLocalIdChanged (Int32ConstArrayView new_to_old_ids) override |
Notifie la connectivité que la famille source est compactée. | |
void | notifyTargetFamilyLocalIdChanged (Int32ConstArrayView old_to_new_ids) override |
Notifie la connectivité que la famille cible est compactée. | |
Integer | nbConnectedItem (ItemLocalId lid) const final |
Nombre d'entité connectées à l'entité source de numéro local lid. | |
Int32 | connectedItemLocalId (ItemLocalId lid, Integer index) const final |
localId() de la index-ième entitée connectées à l'entité source de numéro local lid | |
IndexedItemConnectivityViewBase | connectivityView () const |
IndexedItemConnectivityAccessor | connectivityAccessor () const |
ItemConnectivityContainerView | connectivityContainerView () const |
Int32 | maxNbConnectedItem () const override |
Nombre maximum d'entités connectées à une entité source. | |
void | reserveMemoryForNbSourceItems (Int32 n, bool pre_alloc_connectivity) override |
Réserve la mémoire pour n entités sources. | |
IIncrementalItemConnectivityInternal * | _internalApi () override |
API interne à Arcane. | |
Int32ConstArrayView | _connectedItemsLocalId (ItemLocalId lid) const |
Int32ArrayView | _connectedItemsLocalId (ItemLocalId lid) |
Int32ArrayView | connectivityIndex () |
Int32ArrayView | connectivityList () |
void | setItemConnectivityList (ItemInternalConnectivityList *ilist, Int32 index) |
Indique que cette connectivité est associée à une des connectivités de ItemInternal. | |
void | dumpInfos () |
Fonctions membres publiques hérités de Arcane::mesh::AbstractIncrementalItemConnectivity | |
AbstractIncrementalItemConnectivity (IItemFamily *source_family, IItemFamily *target_family, const String &connectivity_name) | |
String | name () const final |
Nom de la connectivité | |
ConstArrayView< IItemFamily * > | families () const override |
Liste des familles (sourceFamily() + targetFamily()) | |
IItemFamily * | sourceFamily () const override |
Famille source. | |
IItemFamily * | targetFamily () const override |
Famille cible. | |
Ref< IIncrementalItemSourceConnectivity > | toSourceReference () override |
Retourne une référence sur l'instance. | |
Ref< IIncrementalItemTargetConnectivity > | toTargetReference () override |
Retourne une référence sur l'instance. | |
Fonctions membres publiques hérités de Arccore::TraceAccessor | |
TraceAccessor (ITraceMng *m) | |
Construit un accesseur via le gestionnaire de trace m. | |
TraceAccessor (const TraceAccessor &rhs) | |
Constructeur par recopie. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () const |
Gestionnaire de trace. | |
TraceMessage | info () const |
Flot pour un message d'information. | |
TraceMessage | pinfo () const |
Flot pour un message d'information en parallèle. | |
TraceMessage | info (char category) const |
Flot pour un message d'information d'une catégorie donnée. | |
TraceMessage | pinfo (char category) const |
Flot pour un message d'information parallèle d'une catégorie donnée. | |
TraceMessage | info (bool v) const |
Flot pour un message d'information. | |
TraceMessage | warning () const |
Flot pour un message d'avertissement. | |
TraceMessage | pwarning () const |
TraceMessage | error () const |
Flot pour un message d'erreur. | |
TraceMessage | perror () const |
TraceMessage | log () const |
Flot pour un message de log. | |
TraceMessage | plog () const |
Flot pour un message de log. | |
TraceMessage | logdate () const |
Flot pour un message de log précédé de la date. | |
TraceMessage | fatal () const |
Flot pour un message d'erreur fatale. | |
TraceMessage | pfatal () const |
Flot pour un message d'erreur fatale en parallèle. | |
TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
Flot pour un message de debug. | |
Trace::eDebugLevel | configDbgLevel () const |
Niveau debug du fichier de configuration. | |
TraceMessage | info (Int32 verbose_level) const |
Flot pour un message d'information d'un niveau donné | |
TraceMessage | linfo () const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
TraceMessage | linfo (Int32 relative_level) const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
void | fatalMessage (const StandaloneTraceMessage &o) const |
Fonctions membres publiques hérités de Arccore::ReferenceCounterImpl | |
void | addReference () |
void | removeReference () |
void | _internalAddReference () |
bool | _internalRemoveReference () |
Fonctions membres publiques hérités de Arcane::IIncrementalItemConnectivity | |
virtual void | addConnectedItem (ItemLocalId source_item, ItemLocalId target_local_id)=0 |
Ajoute l'entité de localId() target_local_id à la connectivité de source_item. | |
virtual void | setConnectedItems (ItemLocalId source_item, Int32ConstArrayView target_local_ids) |
Alloue et positionne les entités connectées à source_item. | |
virtual void | removeConnectedItem (ItemLocalId source_item, ItemLocalId target_local_id)=0 |
Supprime l'entité de localId() target_local_id à la connectivité de source_item. | |
virtual void | removeConnectedItems (ItemLocalId source_item)=0 |
Supprime toute les entités connectées à source_item. | |
virtual void | replaceConnectedItem (ItemLocalId source_item, Integer index, ItemLocalId target_local_id)=0 |
Remplace l'entité d'index index de source_item par l'entité de localId() target_local_id. | |
virtual void | replaceConnectedItems (ItemLocalId source_item, Int32ConstArrayView target_local_ids)=0 |
Remplace les entités de source_item par les entités de localId() target_local_ids. | |
virtual bool | hasConnectedItem (ItemLocalId source_item, ItemLocalId target_local_id) const =0 |
Test l'existence d'un connectivité entre source_item et l'entité de localId() target_local_id. | |
virtual Integer | preAllocatedSize () const =0 |
Nombre d'entités pré-alloués pour la connectivité de chaque entité | |
virtual void | setPreAllocatedSize (Integer value)=0 |
Positionne le nombre d'entités à pré-allouer pour la connectivité de chaque entité | |
virtual void | dumpStats (std::ostream &out) const =0 |
Sort sur le flot out des statistiques sur l'utilisation et la mémoire utilisée. | |
Fonctions membres publiques hérités de Arcane::IIncrementalItemSourceConnectivity | |
virtual void | notifySourceItemAdded (ItemLocalId item)=0 |
Notifie la connectivité qu'une entité a été ajoutée à la famille source. | |
virtual void | notifyReadFromDump ()=0 |
Notifie la connectivité qu'on a effectué une relecture à partir d'une protection. | |
Fonctions membres protégées | |
void | _initializeStorage (ConnectivityItemVector *civ) override |
Implémente l'initialisation de civ pour cette connectivitée. | |
ItemVectorView | _connectedItems (ItemLocalId item, ConnectivityItemVector &con_items) const final |
Remplit con_items avec les entités connectées à item. | |
void | _notifyConnectivityListChanged () |
void | _notifyConnectivityIndexChanged () |
void | _notifyConnectivityNbItemChanged () |
void | _notifyConnectivityNbItemChangedFromObservable () |
void | _computeMaxNbConnectedItem () |
void | _setNewMaxNbConnectedItems (Int32 new_max) |
void | _setMaxNbConnectedItemsInConnectivityList () |
Fonctions membres protégées hérités de Arcane::mesh::AbstractIncrementalItemConnectivity | |
ConstArrayView< IItemFamily * > | _families () const |
IItemFamily * | _sourceFamily () const |
IItemFamily * | _targetFamily () const |
Fonctions membres protégées hérités de Arccore::TraceAccessor | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Attributs protégés | |
bool | m_is_empty = true |
Int32ArrayView | m_connectivity_nb_item |
Int32ArrayView | m_connectivity_index |
Int32ArrayView | m_connectivity_list |
IncrementalItemConnectivityContainer * | m_p = nullptr |
ItemInternalConnectivityList * | m_item_connectivity_list = nullptr |
Integer | m_item_connectivity_index = -1 |
std::unique_ptr< InternalApi > | m_internal_api |
Fonctions membres privées | |
void | _shrinkMemory () |
void | _addMemoryInfos (ItemConnectivityMemoryInfo &mem_info) |
Amis | |
template<class SourceFamily , class TargetFamily , class LegacyType , class CustomType > | |
class | NewWithLegacyConnectivity |
Classe de base pour les connectivités incrémentales item->item[].
Définition à la ligne 98 du fichier IncrementalItemConnectivity.h.
Arcane::mesh::IncrementalItemConnectivityBase::IncrementalItemConnectivityBase | ( | IItemFamily * | source_family, |
IItemFamily * | target_family, | ||
const String & | aname | ||
) |
Définition à la ligne 214 du fichier IncrementalItemConnectivity.cc.
|
override |
Définition à la ligne 251 du fichier IncrementalItemConnectivity.cc.
|
private |
Définition à la ligne 850 du fichier IncrementalItemConnectivity.cc.
|
protected |
Définition à la ligne 350 du fichier IncrementalItemConnectivity.cc.
|
finalprotectedvirtual |
Remplit con_items avec les entités connectées à item.
Implémente Arcane::IItemConnectivityAccessor.
Définition à la ligne 422 du fichier IncrementalItemConnectivity.cc.
|
inline |
Définition à la ligne 154 du fichier IncrementalItemConnectivity.h.
|
inline |
Définition à la ligne 146 du fichier IncrementalItemConnectivity.h.
|
inlineoverrideprotectedvirtual |
Implémente l'initialisation de civ pour cette connectivitée.
Implémente Arcane::IItemConnectivityAccessor.
Définition à la ligne 171 du fichier IncrementalItemConnectivity.h.
|
overridevirtual |
API interne à Arcane.
Implémente Arcane::IIncrementalItemConnectivity.
Définition à la ligne 458 du fichier IncrementalItemConnectivity.cc.
|
protected |
Définition à la ligne 293 du fichier IncrementalItemConnectivity.cc.
|
protected |
Définition à la ligne 282 du fichier IncrementalItemConnectivity.cc.
|
protected |
Définition à la ligne 304 du fichier IncrementalItemConnectivity.cc.
|
protected |
Méthode appelée lorsque la le nombre d'entité est modifié de manière externe, par exemple en reprise ou après un retour-arrière.
Définition à la ligne 328 du fichier IncrementalItemConnectivity.cc.
|
protected |
Définition à la ligne 315 du fichier IncrementalItemConnectivity.cc.
|
protected |
Définition à la ligne 338 du fichier IncrementalItemConnectivity.cc.
|
private |
Définition à la ligne 836 du fichier IncrementalItemConnectivity.cc.
|
inlinefinalvirtual |
localId() de la index-ième entitée connectées à l'entité source de numéro local lid
Implémente Arcane::IItemConnectivityAccessor.
Définition à la ligne 130 du fichier IncrementalItemConnectivity.h.
IndexedItemConnectivityAccessor Arcane::mesh::IncrementalItemConnectivityBase::connectivityAccessor | ( | ) | const |
Définition à la ligne 449 du fichier IncrementalItemConnectivity.cc.
ItemConnectivityContainerView Arcane::mesh::IncrementalItemConnectivityBase::connectivityContainerView | ( | ) | const |
Définition à la ligne 431 du fichier IncrementalItemConnectivity.cc.
|
inline |
Définition à la ligne 163 du fichier IncrementalItemConnectivity.h.
|
inline |
Définition à la ligne 164 du fichier IncrementalItemConnectivity.h.
IndexedItemConnectivityViewBase Arcane::mesh::IncrementalItemConnectivityBase::connectivityView | ( | ) | const |
Définition à la ligne 440 du fichier IncrementalItemConnectivity.cc.
void Arcane::mesh::IncrementalItemConnectivityBase::dumpInfos | ( | ) |
Définition à la ligne 467 du fichier IncrementalItemConnectivity.cc.
|
overridevirtual |
Nombre maximum d'entités connectées à une entité source.
Cette valeur peut être supérieure au nombre maximum actuel d'entités connectées s'il y a eu des appels à removeConnectedItem() et removeConnectedItems().
Implémente Arcane::IIncrementalItemConnectivity.
Définition à la ligne 365 du fichier IncrementalItemConnectivity.cc.
Références Arcane::mesh::IncrementalItemConnectivityContainer::m_max_nb_item.
|
inlinefinalvirtual |
Nombre d'entité connectées à l'entité source de numéro local lid.
Implémente Arcane::IItemConnectivityAccessor.
Définition à la ligne 126 du fichier IncrementalItemConnectivity.h.
|
overridevirtual |
Notifie la connectivité que la famille source est compactée.
Implémente Arcane::IIncrementalItemSourceConnectivity.
Réimplémentée dans Arcane::mesh::OneItemIncrementalItemConnectivity.
Définition à la ligne 395 du fichier IncrementalItemConnectivity.cc.
Références Arcane::IVariable::compact(), et Arcane::VariableRef::variable().
|
overridevirtual |
Notifie la connectivité que la famille cible est compactée.
Implémente Arcane::IIncrementalItemTargetConnectivity.
Définition à la ligne 409 du fichier IncrementalItemConnectivity.cc.
|
overridevirtual |
Réserve la mémoire pour n entités sources.
L'appel à cette méthode est optionnel mais permet d'éviter de multiples réallocations lors d'appels successifs à notifySourceItemAdded().
Si pre_alloc_connectivity est vrai, pré-alloue aussi les la liste des connectivités en fonction de la valeur de preAllocatedSize(). Par exemple si preAllocatedSize() vaut 4 et si n vaut 10000, on va pré-allouer pour 40000 connectivités. Pour éviter une surconsommation mémoire inutile, il ne faut pré-allouer les connectivités que si on est sur qu'on va les utiliser.
Réimplémentée à partir de Arcane::IIncrementalItemSourceConnectivity.
Définition à la ligne 260 du fichier IncrementalItemConnectivity.cc.
Références Arcane::IIncrementalItemConnectivity::preAllocatedSize().
void Arcane::mesh::IncrementalItemConnectivityBase::setItemConnectivityList | ( | ItemInternalConnectivityList * | ilist, |
Int32 | index | ||
) |
Indique que cette connectivité est associée à une des connectivités de ItemInternal.
Cela permet de mettre à jour directement la structure ilist dès que cette connectivité est modifiée.
Définition à la ligne 380 du fichier IncrementalItemConnectivity.cc.
Références Arccore::TraceAccessor::info(), et Arcane::mesh::AbstractIncrementalItemConnectivity::name().
|
friend |
Définition à la ligne 106 du fichier IncrementalItemConnectivity.h.
|
protected |
Définition à la ligne 181 du fichier IncrementalItemConnectivity.h.
|
protected |
Définition à la ligne 182 du fichier IncrementalItemConnectivity.h.
|
protected |
Définition à la ligne 180 du fichier IncrementalItemConnectivity.h.
|
protected |
Définition à la ligne 186 du fichier IncrementalItemConnectivity.h.
Définition à la ligne 179 du fichier IncrementalItemConnectivity.h.
|
protected |
Définition à la ligne 185 du fichier IncrementalItemConnectivity.h.
|
protected |
Définition à la ligne 184 du fichier IncrementalItemConnectivity.h.
|
protected |
Définition à la ligne 183 du fichier IncrementalItemConnectivity.h.