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

Famille de liens AnyItem partie interne les données stockées sont les localid des items et l'offset du groupe dans la famille. Plus de détails...

#include <arcane/core/anyitem/AnyItemLinkFamily.h>

+ Graphe d'héritage de Arcane::LinkFamilyInternal:
+ Graphe de collaboration de Arcane::LinkFamilyInternal:

Classes

class  Enumerator
 Enumérateur de liens. Plus de détails...
 
class  Link
 Lien. Plus de détails...
 
class  LinkData
 Données par liaisons. Plus de détails...
 
class  LinkIndex
 Indice par liaison. Plus de détails...
 

Fonctions membres publiques

 LinkFamilyInternal (const Family &family)
 Famille de liens pour une famille anyitem.
 
Link newLink ()
 Création d'un nouveau lien vide.
 
void reserve (Integer size)
 Réserve une capacité de liens.
 
Enumerator enumerator () const
 Enumérateurs des liens.
 
Integer capacity () const
 retourne la capacité
 
void clear ()
 Vide la famille.
 
void registerObserver (ILinkFamilyObserver &observer) const
 Enrgistre un observeur de la famille.
 
void removeObserver (ILinkFamilyObserver &observer) const
 Détruit un observeur de la famille.
 
void notifyFamilyIsInvalidate ()
 Notifie que la famille est invalidée.
 
void notifyFamilyIsIncreased ()
 Notifie à l'observeur que la famille est agrandie.
 
template<typename T, typename V>
void addSourceNode (const T &t, ItemGroupT< V > group)
 
template<typename T, typename V>
void addTargetNode (const T &t, ItemGroupT< V > group)
 
const LinkDatasource (const LinkIndex &link) const
 
const LinkDatatarget (const LinkIndex &link) const
 
const Family & family () const
 
template<typename T>
void initLinkData (LinkData &data, const T &t, ItemGroupT< T > group) const
 Ajout des noeuds des liaisons par type d'item.
 
template<typename T>
void initLinkData (LinkData &data, const ItemEnumeratorT< T > &t, ItemGroupT< T > group) const
 Ajout des noeuds des liaisons par énumerateurs.
 
Item item (const LinkData &link_data) const
 Retoune l'item concret associé à ce AnyItem.
 

Types privés

typedef std::set< ILinkFamilyObserver * > LinkFamilyObservers
 

Fonctions membres privées

void _notifyFamilyIsInvalidate ()
 
void _notifyFamilyIsReserved ()
 

Attributs privés

const Family m_family
 Famille AnyItem.
 
Arcane::UniqueArray< LinkDatam_source_nodes
 Données back.
 
Arcane::UniqueArray< LinkDatam_target_nodes
 Données front.
 
Integer m_nb_link
 Nombre de liens.
 
LinkFamilyObservers m_observers
 Observeurs de la famille.
 

Description détaillée

Famille de liens AnyItem partie interne les données stockées sont les localid des items et l'offset du groupe dans la famille.

Par exemple :

AnyItem::LinkFamily link_family(family); link_family.reserve(allFaces.size());

ENUMERATE_FACE(iface, allCells().internalFaceGroup()) { AnyItem::LinkFamily::Link link = link_family.newLink(); link(allFaces(),allCells()) << AnyItem::Pair(iface,iface->backCell()); }

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

Documentation des définitions de type membres

◆ LinkFamilyObservers

typedef std::set<ILinkFamilyObserver*> Arcane::LinkFamilyInternal::LinkFamilyObservers
private

Définition à la ligne 259 du fichier AnyItemLinkFamily.h.

Documentation des constructeurs et destructeur

◆ LinkFamilyInternal()

Arcane::LinkFamilyInternal::LinkFamilyInternal ( const Family & family)
inline

Famille de liens pour une famille anyitem.

Définition à la ligne 264 du fichier AnyItemLinkFamily.h.

Références m_family, et m_nb_link.

◆ ~LinkFamilyInternal()

Arcane::LinkFamilyInternal::~LinkFamilyInternal ( )
inline

Définition à la ligne 271 du fichier AnyItemLinkFamily.h.

Documentation des fonctions membres

◆ _notifyFamilyIsInvalidate()

void Arcane::LinkFamilyInternal::_notifyFamilyIsInvalidate ( )
inlineprivate

Définition à la ligne 454 du fichier AnyItemLinkFamily.h.

◆ _notifyFamilyIsReserved()

void Arcane::LinkFamilyInternal::_notifyFamilyIsReserved ( )
inlineprivate

Définition à la ligne 459 du fichier AnyItemLinkFamily.h.

◆ addSourceNode()

template<typename T, typename V>
void Arcane::LinkFamilyInternal::addSourceNode ( const T & t,
ItemGroupT< V > group )
inline

Définition à la ligne 346 du fichier AnyItemLinkFamily.h.

◆ addTargetNode()

template<typename T, typename V>
void Arcane::LinkFamilyInternal::addTargetNode ( const T & t,
ItemGroupT< V > group )
inline

Définition à la ligne 352 du fichier AnyItemLinkFamily.h.

◆ capacity()

Integer Arcane::LinkFamilyInternal::capacity ( ) const
inline

retourne la capacité

Définition à la ligne 301 du fichier AnyItemLinkFamily.h.

Références m_source_nodes.

Référencé par newLink().

+ Voici le graphe des appelants de cette fonction :

◆ clear()

void Arcane::LinkFamilyInternal::clear ( )
inline

Vide la famille.

Définition à la ligne 306 du fichier AnyItemLinkFamily.h.

Références m_nb_link, m_source_nodes, et m_target_nodes.

Référencé par notifyFamilyIsInvalidate().

+ Voici le graphe des appelants de cette fonction :

◆ enumerator()

Enumerator Arcane::LinkFamilyInternal::enumerator ( ) const
inline

Enumérateurs des liens.

Définition à la ligne 298 du fichier AnyItemLinkFamily.h.

Références m_source_nodes, et m_target_nodes.

◆ family()

const Family & Arcane::LinkFamilyInternal::family ( ) const
inline

Définition à la ligne 367 du fichier AnyItemLinkFamily.h.

◆ initLinkData() [1/2]

template<typename T>
void Arcane::LinkFamilyInternal::initLinkData ( LinkData & data,
const ItemEnumeratorT< T > & t,
ItemGroupT< T > group ) const
inline

Ajout des noeuds des liaisons par énumerateurs.

Définition à la ligne 433 du fichier AnyItemLinkFamily.h.

Références Arcane::ItemEnumeratorBase::index(), Arcane::ItemEnumeratorBase::localId(), et m_family.

+ Voici le graphe d'appel pour cette fonction :

◆ initLinkData() [2/2]

template<typename T>
void Arcane::LinkFamilyInternal::initLinkData ( LinkData & data,
const T & t,
ItemGroupT< T > group ) const
inline

Ajout des noeuds des liaisons par type d'item.

Définition à la ligne 415 du fichier AnyItemLinkFamily.h.

Références Arcane::ItemGroup::localIdToIndex(), et m_family.

+ Voici le graphe d'appel pour cette fonction :

◆ item()

Item Arcane::LinkFamilyInternal::item ( const LinkData & link_data) const
inline

Retoune l'item concret associé à ce AnyItem.

Définition à la ligne 448 du fichier AnyItemLinkFamily.h.

Références m_family.

◆ newLink()

Link Arcane::LinkFamilyInternal::newLink ( )
inline

Création d'un nouveau lien vide.

Définition à la ligne 277 du fichier AnyItemLinkFamily.h.

Références capacity(), m_nb_link, m_source_nodes, et m_target_nodes.

+ Voici le graphe d'appel pour cette fonction :

◆ notifyFamilyIsIncreased()

void Arcane::LinkFamilyInternal::notifyFamilyIsIncreased ( )
inlinevirtual

Notifie à l'observeur que la famille est agrandie.

Implémente Arcane::IFamilyObserver.

Définition à la ligne 339 du fichier AnyItemLinkFamily.h.

◆ notifyFamilyIsInvalidate()

void Arcane::LinkFamilyInternal::notifyFamilyIsInvalidate ( )
inlinevirtual

Notifie que la famille est invalidée.

Implémente Arcane::IFamilyObserver.

Définition à la ligne 332 du fichier AnyItemLinkFamily.h.

Références clear().

+ Voici le graphe d'appel pour cette fonction :

◆ registerObserver()

void Arcane::LinkFamilyInternal::registerObserver ( ILinkFamilyObserver & observer) const
inline

Enrgistre un observeur de la famille.

Définition à la ligne 314 du fichier AnyItemLinkFamily.h.

Références m_observers.

◆ removeObserver()

void Arcane::LinkFamilyInternal::removeObserver ( ILinkFamilyObserver & observer) const
inline

Détruit un observeur de la famille.

Définition à la ligne 323 du fichier AnyItemLinkFamily.h.

Références m_observers.

◆ reserve()

void Arcane::LinkFamilyInternal::reserve ( Integer size)
inline

Réserve une capacité de liens.

Définition à la ligne 291 du fichier AnyItemLinkFamily.h.

Références m_source_nodes, et m_target_nodes.

◆ source()

const LinkData & Arcane::LinkFamilyInternal::source ( const LinkIndex & link) const
inline

Définition à la ligne 357 du fichier AnyItemLinkFamily.h.

◆ target()

const LinkData & Arcane::LinkFamilyInternal::target ( const LinkIndex & link) const
inline

Définition à la ligne 361 du fichier AnyItemLinkFamily.h.

Documentation des données membres

◆ m_family

const Family Arcane::LinkFamilyInternal::m_family
private

Famille AnyItem.

Définition à la ligne 467 du fichier AnyItemLinkFamily.h.

Référencé par initLinkData(), initLinkData(), item(), et LinkFamilyInternal().

◆ m_nb_link

Integer Arcane::LinkFamilyInternal::m_nb_link
private

Nombre de liens.

Définition à la ligne 476 du fichier AnyItemLinkFamily.h.

Référencé par clear(), LinkFamilyInternal(), et newLink().

◆ m_observers

LinkFamilyObservers Arcane::LinkFamilyInternal::m_observers
mutableprivate

Observeurs de la famille.

Définition à la ligne 480 du fichier AnyItemLinkFamily.h.

Référencé par registerObserver(), et removeObserver().

◆ m_source_nodes

Arcane::UniqueArray<LinkData> Arcane::LinkFamilyInternal::m_source_nodes
private

Données back.

Définition à la ligne 470 du fichier AnyItemLinkFamily.h.

Référencé par capacity(), clear(), enumerator(), newLink(), et reserve().

◆ m_target_nodes

Arcane::UniqueArray<LinkData> Arcane::LinkFamilyInternal::m_target_nodes
private

Données front.

Définition à la ligne 473 du fichier AnyItemLinkFamily.h.

Référencé par clear(), enumerator(), newLink(), et reserve().


La documentation de cette classe a été générée à partir du fichier suivant :