Arcane  v4.1.7.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe Arcane::MachineShMemWinMeshVariableScalarT< ItemType, DataType >

Classe permettant d'accéder aux éléments partagés de la variable en mémoire partagée. Plus de détails...

#include <arcane/core/MachineShMemWinVariable.h>

Fonctions membres publiques

 MachineShMemWinMeshVariableScalarT (MeshVariableScalarRefT< ItemType, DataType > var)
 Constructeur.
 
Span< DataType > view (Int32 rank) const
 Méthode permettant d'obtenir une vue sur la variable d'un autre sous-domaine du noeud.
 
DataType operator() (Int32 rank, Int32 notlocal_id)
 Méthode permettant d'obtenir un élément de la variable d'un autre sous-domaine.
 
void updateVariable ()
 Méthode permettant de mettre à jour cet objet après un changement dans le maillage.
 
- Fonctions membres publiques hérités de Arcane::MachineShMemWinVariableCommon
ConstArrayView< Int32machineRanks () const
 Méthode permettant d'obtenir les rangs qui possèdent un segment dans la fenêtre.
 
void barrier () const
 Méthode permettant d'attendre que tous les processus/threads du noeud appellent cette méthode pour continuer l'exécution.
 

Membres hérités additionnels

- Fonctions membres protégées hérités de Arcane::MachineShMemWinVariableCommon
 MachineShMemWinVariableCommon (IVariable *var)
 Constructeur.
 
- Attributs protégés hérités de Arcane::MachineShMemWinVariableCommon
Ref< MachineShMemWinVariableBase > m_base
 

Description détaillée

template<class ItemType, class DataType>
class Arcane::MachineShMemWinMeshVariableScalarT< ItemType, DataType >

Classe permettant d'accéder aux éléments partagés de la variable en mémoire partagée.

Il est nécessaire que cette variable soit allouée en mémoire partagée avec la propriété "IVariable::PInShMem".

Cette classe fonctionne pour les variables scalaire au maillage.

Si le maillage change lorsqu'un objet de ce type est utilisé, il est nécessaire d'appeler la méthode updateVariable().

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

Documentation des constructeurs et destructeur

◆ MachineShMemWinMeshVariableScalarT()

template<class ItemType, class DataType>
Arcane::MachineShMemWinMeshVariableScalarT< ItemType, DataType >::MachineShMemWinMeshVariableScalarT ( MeshVariableScalarRefT< ItemType, DataType > var)
explicit

Constructeur.

Paramètres
varVariable ayant la propriété "IVariable::PInShMem".

Définition à la ligne 117 du fichier MachineShMemWinVariable.cc.

Références Arcane::MachineShMemWinVariableCommon::MachineShMemWinVariableCommon(), et updateVariable().

Documentation des fonctions membres

◆ operator()()

template<class ItemType, class DataType>
DataType Arcane::MachineShMemWinMeshVariableScalarT< ItemType, DataType >::operator() ( Int32 rank,
Int32 notlocal_id )

Méthode permettant d'obtenir un élément de la variable d'un autre sous-domaine.

Avertissement
Attention : le local_id correspond au local_id du sous-domaine rank ! Ne surtout pas utiliser un local_id de notre sous-domaine pour accéder aux éléments de la vue !
Note
Si plusieurs itérations sont nécessaires pour un même rang, il est préférable de récupérer une vue via segmentView(Int32 rank).

Appel non collectif.

Paramètres
rankLe rang du sous-domaine de la variable ciblée.
notlocal_idLe local_id du sous-domaine rank.
Renvoie
L'élément de l'item.

Définition à la ligne 146 du fichier MachineShMemWinVariable.cc.

Références view().

◆ updateVariable()

template<class ItemType, class DataType>
void Arcane::MachineShMemWinMeshVariableScalarT< ItemType, DataType >::updateVariable ( )

Méthode permettant de mettre à jour cet objet après un changement dans le maillage.

Appel collectif.

Définition à la ligne 156 du fichier MachineShMemWinVariable.cc.

Référencé par MachineShMemWinMeshVariableScalarT().

◆ view()

template<class ItemType, class DataType>
Span< DataType > Arcane::MachineShMemWinMeshVariableScalarT< ItemType, DataType >::view ( Int32 rank) const

Méthode permettant d'obtenir une vue sur la variable d'un autre sous-domaine du noeud.

Équivalent à "var.asArray()" mais d'un autre sous-domaine.

Avertissement
Attention : pour accéder aux éléments de la vue, il est nécessaire d'utiliser les local_ids de l'autre sous-domaine ! Ne pas utiliser les local_ids de notre sous-domaine !

Appel non collectif.

Paramètres
rankLe rang du sous-domaine.
Renvoie
Une vue.

Définition à la ligne 136 du fichier MachineShMemWinVariable.cc.

Références Arcane::asSpan().

Référencé par operator()().


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