Fonctions membres publiques | |
~Variable () override | |
Libère les ressources. | |
Variable (const Variable &from)=delete | |
Constructeur de recopie (ne pas utiliser) | |
Variable & | operator= (const Variable &from)=delete |
Opérateur de recopie (ne pas utiliser) | |
ISubDomain * | subDomain () override |
Sous-domaine associé à la variable (TODO rendre obsolète fin 2023) | |
IVariableMng * | variableMng () const override |
Gestionnaire de variable associé à la variable. | |
String | fullName () const final |
Nom complet de la variable (avec le préfixe de la famille) | |
String | name () const final |
Nom de la variable. | |
String | itemFamilyName () const final |
Nom de la famille associée (nul si aucune). | |
String | meshName () const final |
Nom du maillage associé (nul si aucun). | |
String | itemGroupName () const final |
Nom du groupe d'entité associée. | |
int | property () const override |
void | notifyReferencePropertyChanged () override |
Indique que les propriétés d'une des références à cette variable ont changé (interne) | |
void | setUsed (bool v) override |
Positionne l'état d'utilisation de la variable. | |
bool | isUsed () const override |
Etat d'utilisation de la variable. | |
bool | isPartial () const override |
Indique si la variable est partielle. | |
void | setTraceInfo (Integer, eTraceType) override |
void | read (IDataReader *d) override |
void | write (IDataWriter *d) override |
Sauve la variable. | |
void | notifyEndRead () override |
Notifie de la modification externe de data(). | |
void | notifyBeginWrite () override |
Notifie du début d'écriture de data(). | |
void | addVariableRef (VariableRef *ref) override |
Ajoute une référence à cette variable. | |
void | removeVariableRef (VariableRef *ref) override |
Supprime une référence à cette variable. | |
VariableRef * | firstReference () const override |
Première réference (ou null) sur cette variable. | |
Integer | nbReference () const override |
Nombre de références sur cette variable. | |
VariableMetaData * | createMetaData () const override |
Créé une instance contenant les meta-données de la variable. | |
Ref< VariableMetaData > | createMetaDataRef () const override |
Créé une instance contenant les meta-données de la variable. | |
void | syncReferences () override |
Synchronise les références. | |
IMesh * | mesh () const final |
Maillage auquel est associé la variable. | |
MeshHandle | meshHandle () const final |
Maillage auquel est associé la variable. | |
ItemGroup | itemGroup () const final |
Groupe du maillage associé. | |
IItemFamily * | itemFamily () const final |
Famille d'entité associée. | |
eItemKind | itemKind () const override |
Type des entités du maillage sur lequel repose la variable. | |
Integer | dimension () const override |
Dimension de la variable. | |
Integer | multiTag () const override |
Indique si la variable est un tableau à taille multiple. | |
Int32 | checkIfSync (Integer max_print) final |
Vérifie si la variable est bien synchronisée. | |
Int32 | checkIfSameOnAllReplica (Integer max_print) final |
Vérifie si la variable a les mêmes valeurs sur tous les réplicas. | |
Int32 | checkIfSame (IDataReader *reader, Integer max_print, bool compare_ghost) final |
Vérifie que la variable est identique à une valeur de référence. | |
eDataType | dataType () const override |
Type de la donnée gérée par la variable (Real, Integer, ...) | |
bool | initialize (const ItemGroup &, const String &) override |
Initialise la variable sur un groupe. | |
IDataFactoryMng * | dataFactoryMng () const final |
Fabrique de données associées à la variable. | |
void | serialize (ISerializer *sbuffer, IDataOperation *operation) override |
void | serialize (ISerializer *sbuffer, Int32ConstArrayView ids, IDataOperation *operation) override |
Sérialize la variable pour les identifiants ids. | |
void | resize (Integer n) override |
Positionne le nombre d'éléments pour une variable tableau. | |
void | resizeFromGroup () override |
Positionne le nombre d'éléments pour une variable du maillage. | |
void | setAllocationInfo (const DataAllocationInfo &v) override |
Positionne les informations sur l'allocation. | |
DataAllocationInfo | allocationInfo () const override |
Informations sur l'allocation. | |
IObservable * | writeObservable () override |
Observable en écriture. | |
IObservable * | readObservable () override |
Observable en lecture. | |
IObservable * | onSizeChangedObservable () override |
Observable en redimensionnement. | |
void | addTag (const String &tagname, const String &tagvalue) override |
Ajoute le tag tagname avev la valeur tagvalue. | |
void | removeTag (const String &tagname) override |
Supprime le tag tagname. | |
bool | hasTag (const String &tagname) override |
true si la variable possède le tag tagname | |
String | tagValue (const String &tagname) override |
Valeur du tag tagname. La chaîne est nulle si le tag n'existe pas. | |
void | update () override |
Recalcule la variable si nécessaire. | |
void | setUpToDate () override |
Indique que la variable vient d'être mise à jour. | |
Int64 | modifiedTime () override |
Temps auquel la variable a été mise à jour. | |
void | addDepend (IVariable *var, eDependType dt) override |
Ajoute var à la liste des dépendances. | |
void | addDepend (IVariable *var, eDependType dt, const TraceInfo &tinfo) override |
Ajoute var à la liste des dépendances avec les infos de trace tinfo. | |
void | removeDepend (IVariable *var) override |
Supprime var de la liste des dépendances. | |
void | setComputeFunction (IVariableComputeFunction *v) override |
Positionne la fonction de recalcul de la variable. | |
IVariableComputeFunction * | computeFunction () override |
Fonction utilisée pour mettre à jour la variable. | |
void | dependInfos (Array< VariableDependInfo > &infos) override |
Infos de dépendances. | |
void | update (Real wanted_time) override |
void | changeGroupIds (Int32ConstArrayView old_to_new_ids) override |
pH : EXPERIMENTAL | |
IVariableInternal * | _internalApi () override |
API interne à Arcane. | |
IMemoryAccessTrace * | memoryAccessTrace () const override |
![]() | |
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 |
![]() | |
virtual | ~IVariable ()=default |
Libère les ressources. | |
virtual Real | allocatedMemory () const =0 |
Taille mémoire (en Koctet) utilisée par la variable. | |
virtual Integer | nbElement () const =0 |
Nombre d'éléments de la variable. | |
virtual void | shrinkMemory ()=0 |
Libère l'éventuelle mémoire supplémentaire allouée pour les données. | |
virtual void | synchronize ()=0 |
Synchronise la variable. | |
virtual void | synchronize (Int32ConstArrayView local_ids) |
Synchronise la variable sur une liste d'entités. | |
virtual void | copyItemsValues (Int32ConstArrayView source, Int32ConstArrayView destination)=0 |
Copie les valeurs des entités numéros source dans les entités numéro destination. | |
virtual void | copyItemsMeanValues (Int32ConstArrayView first_source, Int32ConstArrayView second_source, Int32ConstArrayView destination)=0 |
Copie les moyennes des valeurs des entités numéros first_source et second_source dans les entités numéros destination. | |
virtual void | compact (Int32ConstArrayView new_to_old_ids)=0 |
Compacte les valeurs de la variable. | |
virtual IData * | data ()=0 |
Données associées à la variable. | |
virtual const IData * | data () const =0 |
Données associées à la variable. | |
virtual void | print (std::ostream &o) const =0 |
Imprime les valeurs de la variable sur le flot o. | |
virtual void | setIsSynchronized ()=0 |
Indique que la variable est synchronisée. | |
virtual void | setIsSynchronized (const ItemGroup &item_group)=0 |
Indique que la variable est synchronisée sur le group item_group. | |
Fonctions membres protégées | |
Variable (const VariableBuildInfo &v, const VariableInfo &vi) | |
Créé une variable lié à la référence v. | |
void | _setProperty (int property) |
void | _setData (const Ref< IData > &data) |
Positionne la donnée. | |
void | _setValidData (bool valid_data) |
Indique si les données de la variable sont valides. | |
bool | _hasValidData () const |
Indique si les données de la variable sont valides. | |
virtual void | _internalResize (const VariableResizeArgs &resize_args)=0 |
void | _checkSwapIsValid (Variable *rhs) |
Vérifie qu'il est possible d'échanger les valeurs de l'instance avec celle de rhs. | |
bool | _wantShrink () const |
void | _resize (const VariableResizeArgs &resize_args) |
virtual VariableComparerResults | _compareVariable (const VariableComparerArgs &compare_args)=0 |
Comparaison de valeurs entre variables. | |
![]() | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Amis | |
class | VariablePrivate |
Membres hérités additionnels | |
![]() | |
enum | eDependType { DPT_PreviousTime , DPT_CurrentTime } |
Type des dépendances. Plus de détails... | |
enum | { PNoDump = (1 << 0) , PNoNeedSync = (1 << 1) , PHasTrace = (1 << 2) , PSubDomainDepend = (1 << 3) , PSubDomainPrivate = (1 << 4) , PExecutionDepend = (1 << 5) , PPrivate = (1 << 6) , PTemporary = (1 << 7) , PNoRestore = (1 << 8) , PNoExchange = (1 << 9) , PPersistant = (1 << 10) , PNoReplicaSync = (1 << 11) } |
Propriétés d'une variable. Plus de détails... | |
static Int64 | incrementModifiedTime () |
Incrémente le compteur de modification et retourne sa valeur avant modification. | |
Définition à la ligne 76 du fichier Variable.h.
|
protected |
Créé une variable lié à la référence v.
Définition à la ligne 334 du fichier Variable.cc.
Références Arcane::TraceAccessor::TraceAccessor(), et Arcane::TraceAccessor::traceMng().
Référencé par _checkSwapIsValid(), Arcane::Array2VariableT< T >::Array2VariableT(), operator=(), Variable(), Arcane::VariableArrayT< T >::VariableArrayT(), et Arcane::VariableScalarT< T >::VariableScalarT().
|
override |
Libère les ressources.
Définition à la ligne 344 du fichier Variable.cc.
|
protected |
Vérifie qu'il est possible d'échanger les valeurs de l'instance avec celle de rhs.
Cette méthode étant appelée par une classe dérivée, on est sur que rhs est du même type C++ que l'instance et donc il n'y a pas besoin de vérifier par exemple que les dimensions ou le type des données sont les mêmes. Pour que l'échange soit valide, il faut que le maillage, la famille et le groupe soit les mêmes. Pour cela, il suffit de vérifier que le groupe est le même.
Définition à la ligne 1365 du fichier Variable.cc.
Références ARCANE_FATAL, isPartial(), itemGroup(), Arcane::VariablePrivate::m_is_used, et Variable().
|
protectedpure virtual |
Comparaison de valeurs entre variables.
Implémenté dans Arcane::Array2VariableT< T >, Arcane::Array2VariableT< DataType >, Arcane::Array2VariableT< DataType >, Arcane::Array2VariableT< Int32 >, Arcane::Array2VariableT< Int32 >, Arcane::Array2VariableT< Int64 >, Arcane::Array2VariableT< Int64 >, Arcane::Array2VariableT< Real >, Arcane::Array2VariableT< Real >, Arcane::Array2VariableT< Real2 >, Arcane::Array2VariableT< Real2 >, Arcane::Array2VariableT< Real2x2 >, Arcane::Array2VariableT< Real2x2 >, Arcane::Array2VariableT< Real3 >, Arcane::Array2VariableT< Real3 >, Arcane::Array2VariableT< Real3x3 >, Arcane::Array2VariableT< Real3x3 >, Arcane::VariableArrayT< T >, Arcane::VariableArrayT< DataType >, Arcane::VariableArrayT< DataType >, Arcane::VariableArrayT< Int32 >, Arcane::VariableArrayT< Int32 >, Arcane::VariableArrayT< Int64 >, Arcane::VariableArrayT< Int64 >, Arcane::VariableArrayT< Real >, Arcane::VariableArrayT< Real >, Arcane::VariableArrayT< Real2 >, Arcane::VariableArrayT< Real2 >, Arcane::VariableArrayT< Real2x2 >, Arcane::VariableArrayT< Real2x2 >, Arcane::VariableArrayT< Real3 >, Arcane::VariableArrayT< Real3 >, Arcane::VariableArrayT< Real3x3 >, Arcane::VariableArrayT< Real3x3 >, Arcane::VariableScalarT< T >, Arcane::VariableScalarT< DataType >, et Arcane::VariableScalarT< DataType >.
Référencé par checkIfSame(), checkIfSameOnAllReplica(), et checkIfSync().
|
protected |
Indique si les données de la variable sont valides.
Les données sont valides à la fin d'un appel à setUsed().
Définition à la ligne 912 du fichier Variable.cc.
|
overridevirtual |
API interne à Arcane.
Implémente Arcane::IVariable.
Définition à la ligne 1411 du fichier Variable.cc.
|
protected |
Définition à la ligne 968 du fichier Variable.cc.
Positionne la donnée.
Si data est nul, une erreur fatale est envoyée
Définition à la ligne 888 du fichier Variable.cc.
Références ARCANE_FATAL, et Arcane::IVariable::data().
Référencé par Arcane::Array2VariableT< T >::Array2VariableT(), Arcane::VariableArrayT< T >::VariableArrayT(), et Arcane::VariableScalarT< T >::VariableScalarT().
|
protected |
Définition à la ligne 921 du fichier Variable.cc.
|
protected |
Indique si les données de la variable sont valides.
Définition à la ligne 903 du fichier Variable.cc.
Référencé par notifyEndRead().
|
protected |
Définition à la ligne 1381 du fichier Variable.cc.
|
overridevirtual |
Ajoute var à la liste des dépendances.
Implémente Arcane::IVariable.
Définition à la ligne 1204 du fichier Variable.cc.
|
overridevirtual |
Ajoute var à la liste des dépendances avec les infos de trace tinfo.
Implémente Arcane::IVariable.
Définition à la ligne 1213 du fichier Variable.cc.
Ajoute le tag tagname avev la valeur tagvalue.
Implémente Arcane::IVariable.
Définition à la ligne 1265 du fichier Variable.cc.
|
overridevirtual |
Ajoute une référence à cette variable.
Implémente Arcane::IVariable.
Définition à la ligne 364 du fichier Variable.cc.
Références Arcane::VariableRef::previousReference().
|
overridevirtual |
Informations sur l'allocation.
Implémente Arcane::IVariable.
Définition à la ligne 1402 du fichier Variable.cc.
Références Arcane::IData::allocationInfo(), et Arcane::IVariable::data().
|
overridevirtual |
|
finalvirtual |
Vérifie que la variable est identique à une valeur de référence.
Cette opération vérifie que les valeurs de la variable sont identique à une valeur de référence qui est lu à partir du lecteur reader.
Pour chaque valeur différente de la référence, un message est affiché.
max_print | nombre maximum de messages à afficher. Si 0, aucun élément n'est affiché. Si positif, affiche au plus max_print élément. Si négatif, tous les éléments sont affichés. |
compare_ghost | si vrai, compare les valeurs à la fois sur les entités propres et les entités fantômes. Sinon, ne fait la comparaison que sur les entités propres. |
Implémente Arcane::IVariable.
Définition à la ligne 800 du fichier Variable.cc.
Références _compareVariable(), Arcane::VariableComparerArgs::setCompareGhost(), et Arcane::VariableComparerArgs::setMaxPrint().
Vérifie si la variable a les mêmes valeurs sur tous les réplicas.
Compare les valeurs de la variable avec celle du même sous-domaine des autres réplicas. Pour chaque élément différent, un message est affiché.
Cette méthode est collective sur le même sous-domaine des autres réplica. Il ne faut donc l'appeler que si la variable existe sur tous les sous-domaines sinon cela provoque un blocage.
Cette méthode ne fonctionne que pour les variables sur les types numériques. Dans ce cas, elle renvoie une exception de type NotSupportedException.
max_print | nombre maximum de messages à afficher. Si 0, aucun élément n'est affiché. Si positif, affiche au plus max_print élément. Si négatif, tous les éléments sont affichés. Pour chaque élément différent est affiché la valeur minimale et maximale. |
Implémente Arcane::IVariable.
Définition à la ligne 779 du fichier Variable.cc.
Références _compareVariable(), Arcane::IParallelReplication::hasReplication(), mesh(), Arcane::ISubDomain::parallelMng(), Arcane::IParallelReplication::replicaParallelMng(), Arcane::IParallelMng::replication(), Arcane::SameReplica, Arcane::VariableComparerArgs::setMaxPrint(), et subDomain().
Vérifie si la variable est bien synchronisée.
Cette opération ne fonctionne que pour les variables de maillage.
Un variable est synchronisée lorsque ses valeurs sont les mêmes sur tous les sous-domaines à la fois sur les éléments propres et les éléments fantômes.
Pour chaque élément non synchronisé, un message est affiché.
max_print | nombre maximum de messages à afficher. Si 0, aucun élément n'est affiché. Si positif, affiche au plus max_print élément. Si négatif, tous les éléments sont affichés. |
Implémente Arcane::IVariable.
Définition à la ligne 765 du fichier Variable.cc.
Références _compareVariable(), Arcane::VariableComparerArgs::setCompareGhost(), Arcane::VariableComparerArgs::setMaxPrint(), et Arcane::Sync.
|
overridevirtual |
Fonction utilisée pour mettre à jour la variable.
Implémente Arcane::IVariable.
Définition à la ligne 1241 du fichier Variable.cc.
|
overridevirtual |
Créé une instance contenant les meta-données de la variable.
L'instance retournée doit être détruite par l'appel à l'opérateur delete.
Implémente Arcane::IVariable.
Définition à la ligne 730 du fichier Variable.cc.
|
overridevirtual |
Créé une instance contenant les meta-données de la variable.
Implémente Arcane::IVariable.
Définition à la ligne 739 du fichier Variable.cc.
Références Arcane::makeRef().
|
finalvirtual |
Fabrique de données associées à la variable.
Implémente Arcane::IVariable.
Définition à la ligne 930 du fichier Variable.cc.
|
overridevirtual |
Type de la donnée gérée par la variable (Real, Integer, ...)
Implémente Arcane::IVariable.
Définition à la ligne 519 du fichier Variable.cc.
Référencé par Arcane::VariableArrayT< T >::initialize().
|
overridevirtual |
Infos de dépendances.
Remplit le tableau infos avec les infos de dépendance.
Implémente Arcane::IVariable.
Définition à la ligne 1250 du fichier Variable.cc.
Références Arcane::Array< T >::add().
|
overridevirtual |
Dimension de la variable.
Les valeurs possibles sont les suivantes:
Implémente Arcane::IVariable.
Définition à la ligne 852 du fichier Variable.cc.
|
overridevirtual |
Première réference (ou null) sur cette variable.
Implémente Arcane::IVariable.
Définition à la ligne 422 du fichier Variable.cc.
|
finalvirtual |
Nom complet de la variable (avec le préfixe de la famille)
Implémente Arcane::IVariable.
Définition à la ligne 483 du fichier Variable.cc.
Référencé par operator=(), resizeFromGroup(), serialize(), serialize(), Arcane::Array2VariableT< T >::synchronize(), Arcane::Array2VariableT< T >::synchronize(), Arcane::VariableArrayT< T >::synchronize(), et Arcane::VariableArrayT< T >::synchronize().
|
overridevirtual |
true si la variable possède le tag tagname
Implémente Arcane::IVariable.
Définition à la ligne 1283 du fichier Variable.cc.
|
inlineoverridevirtual |
Initialise la variable sur un groupe.
Initialise la variable avec la valeur value pour tous les éléments du groupe group.
Cette opération n'est utilisable qu'avec les variables de maillage.
group_name | groupe. Il doit correspondre à un groupe existant du type de la variable (par exemple CellGroup pour une variable au maille). |
value | valeur d'initialisation. La chaîne doit pouvoir être convertie en le type de la variable. |
true | en cas d'erreur ou si la variable n'est pas une variable du maillage. |
false | si l'initialisation est un succès. |
Implémente Arcane::IVariable.
Réimplémentée dans Arcane::VariableArrayT< T >, Arcane::VariableArrayT< DataType >, Arcane::VariableArrayT< DataType >, Arcane::VariableArrayT< Int32 >, Arcane::VariableArrayT< Int32 >, Arcane::VariableArrayT< Int64 >, Arcane::VariableArrayT< Int64 >, Arcane::VariableArrayT< Real >, Arcane::VariableArrayT< Real >, Arcane::VariableArrayT< Real2 >, Arcane::VariableArrayT< Real2 >, Arcane::VariableArrayT< Real2x2 >, Arcane::VariableArrayT< Real2x2 >, Arcane::VariableArrayT< Real3 >, Arcane::VariableArrayT< Real3 >, Arcane::VariableArrayT< Real3x3 >, et Arcane::VariableArrayT< Real3x3 >.
Définition à la ligne 154 du fichier Variable.h.
Références initialize().
Référencé par initialize().
|
overridevirtual |
Indique si la variable est partielle.
Une variable est partielle lorsqu'elle n'est pas définie sur toutes les entités d'une famille. Dans ce cas, group()!=itemFamily()->allItems().
Implémente Arcane::IVariable.
Définition à la ligne 870 du fichier Variable.cc.
Référencé par _checkSwapIsValid(), Arcane::Array2VariableT< T >::compact(), Arcane::VariableArrayT< T >::compact(), operator=(), Arcane::Array2VariableT< T >::synchronize(), Arcane::Array2VariableT< T >::synchronize(), Arcane::VariableArrayT< T >::synchronize(), et Arcane::VariableArrayT< T >::synchronize().
|
overridevirtual |
Etat d'utilisation de la variable.
Implémente Arcane::IVariable.
Définition à la ligne 684 du fichier Variable.cc.
Référencé par operator=().
|
finalvirtual |
Famille d'entité associée.
Si une variable n'est pas utilisée ou pas encore allouée, la valeur retournée est nulle. Cependant, la variable peut quand même être associée à une famille. Dans ce cas, il faut utiliser la fonction itemFamilyName() pour récupérer le nom de cette famille.
Implémente Arcane::IVariable.
Définition à la ligne 879 du fichier Variable.cc.
Référencé par Arcane::VariableArrayT< T >::initialize().
|
finalvirtual |
Nom de la famille associée (nul si aucune).
Implémente Arcane::IVariable.
Définition à la ligne 492 du fichier Variable.cc.
Référencé par operator=().
|
finalvirtual |
Groupe du maillage associé.
Si une variable n'est pas utilisée ou pas encore allouée, la valeur retournée est le group nul. Cependant, la variable peut quand même être associée à un groupe. Dans ce cas, il faut utiliser la fonction itemGroupName() pour récupérer le nom de ce groupe.
Implémente Arcane::IVariable.
Définition à la ligne 834 du fichier Variable.cc.
Référencé par _checkSwapIsValid(), Arcane::Array2VariableT< T >::_compareVariable(), Arcane::VariableArrayT< T >::_compareVariable(), Arcane::VariableArrayT< T >::setIsSynchronized(), Arcane::Array2VariableT< T >::synchronize(), Arcane::Array2VariableT< T >::synchronize(), Arcane::VariableArrayT< T >::synchronize(), et Arcane::VariableArrayT< T >::synchronize().
|
finalvirtual |
Nom du groupe d'entité associée.
Implémente Arcane::IVariable.
Définition à la ligne 501 du fichier Variable.cc.
Référencé par operator=().
|
overridevirtual |
Type des entités du maillage sur lequel repose la variable.
Pour les variables scalaire ou tableau, il n'y a pas de type et la méthode retourne IK_Unknown. Pour les autres variables, retourne le type de l'élément de maillage (Node, Cell, ...), à savoir:
Implémente Arcane::IVariable.
Définition à la ligne 843 du fichier Variable.cc.
Référencé par Arcane::Array2VariableT< T >::_compareVariable(), Arcane::VariableArrayT< T >::_compareVariable(), Arcane::VariableScalarT< T >::_compareVariable(), Arcane::VariableArrayT< T >::initialize(), resizeFromGroup(), setUsed(), Arcane::Array2VariableT< T >::synchronize(), Arcane::Array2VariableT< T >::synchronize(), Arcane::VariableArrayT< T >::synchronize(), et Arcane::VariableArrayT< T >::synchronize().
|
inlineoverridevirtual |
Implémente Arcane::IVariable.
Définition à la ligne 199 du fichier Variable.h.
|
finalvirtual |
Maillage auquel est associé la variable.
Cette opération n'est significative que pour les variables sur des entités du maillage.
Implémente Arcane::IVariable.
Définition à la ligne 814 du fichier Variable.cc.
Référencé par checkIfSameOnAllReplica(), Arcane::VariableScalarT< DataType >::compact(), Arcane::Array2VariableT< DataType >::setIsSynchronized(), Arcane::VariableArrayT< Real >::setIsSynchronized(), Arcane::VariableArrayT< Real >::setIsSynchronized(), et Arcane::VariableScalarT< DataType >::setIsSynchronized().
|
finalvirtual |
Maillage auquel est associé la variable.
Cette opération n'est significative que pour les variables sur des entités du maillage.
Implémente Arcane::IVariable.
Définition à la ligne 825 du fichier Variable.cc.
|
finalvirtual |
Nom du maillage associé (nul si aucun).
Implémente Arcane::IVariable.
Définition à la ligne 510 du fichier Variable.cc.
Référencé par operator=().
|
overridevirtual |
Temps auquel la variable a été mise à jour.
Implémente Arcane::IVariable.
Définition à la ligne 1195 du fichier Variable.cc.
|
overridevirtual |
Indique si la variable est un tableau à taille multiple.
Cette valeur n'est utile que pour les tableaux 2D ou plus.
Implémente Arcane::IVariable.
Définition à la ligne 861 du fichier Variable.cc.
|
finalvirtual |
Nom de la variable.
Implémente Arcane::IVariable.
Définition à la ligne 474 du fichier Variable.cc.
Référencé par Arcane::Array2VariableT< T >::compact(), Arcane::VariableArrayT< T >::compact(), et operator=().
|
overridevirtual |
Nombre de références sur cette variable.
Implémente Arcane::IVariable.
Définition à la ligne 447 du fichier Variable.cc.
|
overridevirtual |
Notifie du début d'écriture de data().
Cette méthode déclenche les observables enregistrés dans writeObservable().
Implémente Arcane::IVariable.
Définition à la ligne 1316 du fichier Variable.cc.
Références Arcane::IObservable::notifyAllObservers(), et writeObservable().
Référencé par write().
|
overridevirtual |
Notifie de la modification externe de data().
Signale à l'instance la fin d'une opération de lecture qui a modifié data(). Cette méthode doit donc être appelée dès qu'on a effectué une modication de data(). Cette méthode déclenche les observables enregistrés dans readObservable().
Implémente Arcane::IVariable.
Définition à la ligne 1304 du fichier Variable.cc.
Références _setValidData(), Arcane::IObservable::notifyAllObservers(), readObservable(), setUpToDate(), et syncReferences().
Référencé par read().
|
overridevirtual |
Indique que les propriétés d'une des références à cette variable ont changé (interne)
Implémente Arcane::IVariable.
Définition à la ligne 608 du fichier Variable.cc.
Référencé par operator=().
|
overridevirtual |
Observable en redimensionnement.
Les observateurs enregistrés dans cet observable sont appelés lorsque le nombre d'éléments de la variable change. C'est le cas par exemple après un remaillage pour une variable aux mailles
Implémente Arcane::IVariable.
Définition à la ligne 1119 du fichier Variable.cc.
Référencé par syncReferences().
|
overridevirtual |
Implémente Arcane::IVariable.
Définition à la ligne 530 du fichier Variable.cc.
Références Arcane::IVariable::PExecutionDepend, Arcane::IVariable::PNoDump, Arcane::IVariable::PNoExchange, Arcane::IVariable::PNoNeedSync, Arcane::IVariable::PNoReplicaSync, Arcane::IVariable::PNoRestore, Arcane::IVariable::PPersistant, Arcane::IVariable::PPrivate, property(), Arcane::IVariable::PSubDomainDepend, Arcane::IVariable::PTemporary, et Arcane::VariableRef::referenceProperty().
Référencé par operator=(), property(), et removeVariableRef().
|
overridevirtual |
Relit la variable.
Implémente Arcane::IVariable.
Définition à la ligne 1325 du fichier Variable.cc.
Références Arcane::IVariable::data(), notifyEndRead(), et Arcane::IDataReader::read().
|
overridevirtual |
Observable en lecture.
Les observateurs enregistrés dans cet observable sont appelés après avoir lu la variable (opération read).
Implémente Arcane::IVariable.
Définition à la ligne 1110 du fichier Variable.cc.
Référencé par notifyEndRead().
|
overridevirtual |
Supprime var de la liste des dépendances.
Implémente Arcane::IVariable.
Définition à la ligne 1222 du fichier Variable.cc.
|
overridevirtual |
Supprime le tag tagname.
Si le tag tagname n'est pas dans la liste, rien ne se passe.
Implémente Arcane::IVariable.
Définition à la ligne 1274 du fichier Variable.cc.
|
overridevirtual |
Supprime une référence à cette variable.
Implémente Arcane::IVariable.
Définition à la ligne 385 du fichier Variable.cc.
Références Arcane::IVariableMng::_internalApi(), Arcane::VariableRef::nextReference(), Arcane::IVariable::PPersistant, Arcane::VariableRef::previousReference(), property(), et Arcane::ISubDomain::variableMng().
|
overridevirtual |
Positionne le nombre d'éléments pour une variable tableau.
Lorsque la variable est du type tableau 1D ou 2D, positionne le nombre d'éléments du tableau à new_size. Pour un tableau 2D, c'est le nombre d'éléments de la première dimension qui est modifié.
Cette opération ne doit pas être appelée pour les variables du maillage car le nombre d'éléments est déterminé automatiquement en fonction du nombre d'entités du groupe sur lequel elle s'appuie. Pour ce type de variable, il faut appeler resizeFromGroup().
Cette opération synchronise les références (syncReferences()).
Implémente Arcane::IVariable.
Définition à la ligne 982 du fichier Variable.cc.
Référencé par setUsed().
|
overridevirtual |
Positionne le nombre d'éléments pour une variable du maillage.
Réalloue la taille de la variable du maillage à partir du groupe sur laquelle elle s'appuie.
Cette opération n'a d'effet que pour les variables du maillage. Pour les autres, aucun action n'est effectuée.
Cette opération synchronise les références (syncReferences()).
Implémente Arcane::IVariable.
Définition à la ligne 991 du fichier Variable.cc.
Références ARCANE_FATAL, Arcane::TraceAccessor::debug(), fullName(), Arcane::Trace::High, Arcane::IK_Unknown, itemKind(), Arcane::ItemGroup::null(), et syncReferences().
Référencé par setUsed().
|
overridevirtual |
Sérialize la variable.
L'opération opération n'est significative qu'en lecture (ISerializer::ModeGet)
Implémente Arcane::IVariable.
Définition à la ligne 953 du fichier Variable.cc.
Références Arcane::TraceAccessor::debug(), fullName(), Arcane::Trace::High, Arcane::ISerializer::mode(), Arcane::ISerializer::ModeGet, et syncReferences().
|
overridevirtual |
Sérialize la variable pour les identifiants ids.
La sérialisation dépend de la dimension de la variable. Pour les variables scalaires (dimension=0), rien n'est fait. Pour les variables tableaux ou du maillage, ids correspond a un tableau d'indirection de la première dimension.
L'opération opération n'est significative qu'en lecture (ISerializer::ModeGet)
Implémente Arcane::IVariable.
Définition à la ligne 939 du fichier Variable.cc.
Références Arcane::TraceAccessor::debug(), fullName(), Arcane::Trace::High, Arcane::ISerializer::mode(), Arcane::ISerializer::ModeGet, et syncReferences().
|
overridevirtual |
Positionne les informations sur l'allocation.
Implémente Arcane::IVariable.
Définition à la ligne 1390 du fichier Variable.cc.
Références Arcane::IVariable::data(), Arcane::IData::setAllocationInfo(), et syncReferences().
|
overridevirtual |
Positionne la fonction de recalcul de la variable.
La fonction spécifiée v doit être allouée via l'opérateur new. Si une fonction de recalcule existait déjà, elle est détruite (via l'opérateur delete) et remplacée par celle-ci.
Implémente Arcane::IVariable.
Définition à la ligne 1232 du fichier Variable.cc.
|
inlineoverridevirtual |
Implémente Arcane::IVariable.
Définition à la ligne 121 du fichier Variable.h.
|
overridevirtual |
Indique que la variable vient d'être mise à jour.
Pour une gestion correcte des dépendances, il faut que cette propriété soit appelée toutes les fois où la mise à jour d'une variable a été effectuée.
Implémente Arcane::IVariable.
Définition à la ligne 1185 du fichier Variable.cc.
Références Arcane::ISubDomain::commonVariables(), Arcane::CommonVariables::globalTime(), Arcane::IVariable::incrementModifiedTime(), et subDomain().
Référencé par notifyEndRead().
|
overridevirtual |
Positionne l'état d'utilisation de la variable.
Implémente Arcane::IVariable.
Définition à la ligne 617 du fichier Variable.cc.
Références Arcane::DIP_Legacy, Arcane::getGlobalDataInitialisationPolicy(), Arcane::IK_Unknown, itemKind(), resize(), et resizeFromGroup().
Référencé par operator=().
|
overridevirtual |
Sous-domaine associé à la variable (TODO rendre obsolète fin 2023)
Implémente Arcane::IVariable.
Définition à la ligne 456 du fichier Variable.cc.
Référencé par checkIfSameOnAllReplica(), operator=(), et setUpToDate().
|
overridevirtual |
Synchronise les références.
Synchronise les valeurs des références (VariableRef) à cette variable avec la valeur actuelle de la variable. Cette méthode est appelé automatiquement lorsqu'une variable scalaire est modifiée ou le nombre d'éléments d'une variable tableau change.
Implémente Arcane::IVariable.
Définition à la ligne 748 du fichier Variable.cc.
Références Arcane::IObservable::notifyAllObservers(), onSizeChangedObservable(), et Arcane::VariableRef::updateFromInternal().
Référencé par Arcane::Array2VariableT< T >::compact(), Arcane::VariableArrayT< T >::compact(), Arcane::Array2VariableT< T >::copyItemsMeanValues(), Arcane::VariableArrayT< T >::copyItemsMeanValues(), Arcane::VariableArrayT< Real >::copyItemsMeanValues(), Arcane::Array2VariableT< T >::copyItemsValues(), Arcane::VariableArrayT< T >::copyItemsValues(), notifyEndRead(), resizeFromGroup(), serialize(), serialize(), setAllocationInfo(), Arcane::Array2VariableT< T >::shrinkMemory(), et Arcane::VariableArrayT< T >::shrinkMemory().
Valeur du tag tagname. La chaîne est nulle si le tag n'existe pas.
Implémente Arcane::IVariable.
Définition à la ligne 1292 du fichier Variable.cc.
|
overridevirtual |
Recalcule la variable si nécessaire.
Par le mécanisme de dépendances, cette opération est appelée récursivement sur toutes les variables dont dépend l'instance. La fonction de recalcul computeFunction() est ensuite appelée s'il s'avère qu'une des variables dont elle dépend a été modifiée plus récemment.
Implémente Arcane::IVariable.
Définition à la ligne 1131 du fichier Variable.cc.
Références update().
Référencé par update().
|
overridevirtual |
Implémente Arcane::IVariable.
Définition à la ligne 1140 du fichier Variable.cc.
|
overridevirtual |
Gestionnaire de variable associé à la variable.
Implémente Arcane::IVariable.
Définition à la ligne 465 du fichier Variable.cc.
Référencé par operator=().
|
overridevirtual |
Sauve la variable.
Implémente Arcane::IVariable.
Définition à la ligne 1335 du fichier Variable.cc.
Références Arcane::IVariable::data(), notifyBeginWrite(), et Arcane::IDataWriter::write().
|
overridevirtual |
Observable en écriture.
Les observateurs enregistrés dans cet observable sont appelés avant d'écrire la variable (opération write()).
Implémente Arcane::IVariable.
Définition à la ligne 1101 du fichier Variable.cc.
Référencé par notifyBeginWrite().
|
friend |
Définition à la ligne 230 du fichier Variable.h.