Fonctions membres publiques | |
MeshMaterialVariable (const MaterialVariableBuildInfo &v, MatVarSpace mvs) | |
String | name () const override |
Nom de la variable. | |
void | addVariableRef (MeshMaterialVariableRef *var_ref) override |
Ajoute une référence à cette variable. | |
void | removeVariableRef (MeshMaterialVariableRef *var_ref) override |
Supprime une référence à cette variable. | |
MeshMaterialVariableRef * | firstReference () const override |
IVariable * | materialVariable (IMeshMaterial *mat) override |
void | setKeepOnChange (bool v) override |
Indique si on souhaite conserver la valeur de la variable apres un changement de la liste des matériaux. | |
bool | keepOnChange () const override |
Indique si on souhaite conserver la valeur de la variable apres un changement de la liste des matériaux. | |
MatVarSpace | space () const override |
Espace de définition de la variable (matériau+milieu ou milieu uniquement) | |
Gestion des dépendances | |
void | update (IMeshMaterial *mat) override |
Recalcule la variable pour le matériau mat si nécessaire. | |
void | setUpToDate (IMeshMaterial *mat) override |
Indique que la variable vient d'être mise à jour. | |
Int64 | modifiedTime (IMeshMaterial *mat) override |
Temps auquel la variable a été mise à jour. | |
void | addDepend (IMeshMaterialVariable *var) override |
Ajoute var à la liste des dépendances. | |
void | addDepend (IMeshMaterialVariable *var, const TraceInfo &tinfo) override |
Ajoute var à la liste des dépendances avec les infos de trace tinfo. | |
void | addDepend (IVariable *var) override |
Ajoute var à la liste des dépendances. | |
void | addDepend (IVariable *var, const TraceInfo &tinfo) override |
Ajoute var à la liste des dépendances avec les infos de trace tinfo. | |
void | removeDepend (IMeshMaterialVariable *var) override |
Supprime var de la liste des dépendances. | |
void | removeDepend (IVariable *var) override |
Supprime var de la liste des dépendances. | |
void | setComputeFunction (IMeshMaterialVariableComputeFunction *v) override |
Positionne la fonction de recalcule de la variable. | |
IMeshMaterialVariableComputeFunction * | computeFunction () override |
Fonction utilisée pour mettre à jour la variable. | |
void | dependInfos (Array< VariableDependInfo > &infos, Array< MeshMaterialVariableDependInfo > &mat_infos) override |
Infos de dépendances. | |
IMeshMaterialVariableInternal * | _internalApi () override |
Fonctions membres publiques hérités de Arcane::Materials::IMeshMaterialVariable | |
virtual IVariable * | globalVariable () const =0 |
Variable globale sur le maillage associée. | |
virtual void | buildFromManager (bool is_continue)=0 |
virtual void | syncReferences ()=0 |
Synchronise les références. | |
virtual void | synchronize ()=0 |
Synchronise la variable. | |
virtual void | synchronize (MeshMaterialVariableSynchronizerList &sync_list)=0 |
virtual void | dumpValues (std::ostream &ostr)=0 |
Affiche les valeurs de la variable sur le flot ostr. | |
virtual void | dumpValues (std::ostream &ostr, AllEnvCellVectorView view)=0 |
Affiche les valeurs de la variable pour la vue view sur le flot ostr. | |
virtual void | fillPartialValuesWithGlobalValues ()=0 |
Remplit les valeurs partielles avec la valeur de la maille globale associée. | |
virtual void | fillPartialValuesWithSuperValues (Int32 level)=0 |
Remplit les valeurs partielles avec la valeur de la maille du dessus. Si level vaut LEVEL_MATERIAL, copie les valeurs matériaux avec celle du milieu. Si level vaut LEVEL_ENVIRONNEMENT, copie les valeurs des milieux avec celui de la maille globale. Si level vaut LEVEL_ALLENVIRONMENT, remplit toutes les valeurs partielles avec celle de la maille globale (cela rend cette méthode équivalente à fillGlobalValuesWithGlobalValues(). | |
virtual void | serialize (ISerializer *sbuffer, Int32ConstArrayView ids)=0 |
Sérialise la variable pour les entités de numéro local ids. | |
Fonctions publiques mais réservées à Arcane pour gérer les synchronisations | |
MeshMaterialVariablePrivate * | m_p = nullptr |
UniqueArray< Span< std::byte > > | m_views_as_bytes |
virtual Int32 | dataTypeSize () const =0 |
void | incrementReference () |
virtual void | copyToBuffer (ConstArrayView< MatVarIndex > matvar_indexes, ByteArrayView bytes) const =0 |
virtual void | copyFromBuffer (ConstArrayView< MatVarIndex > matvar_indexes, ByteConstArrayView bytes)=0 |
ITraceMng * | _traceMng () const |
void | _copyToBuffer (SmallSpan< const MatVarIndex > matvar_indexes, Span< std::byte > bytes, RunQueue *queue) const |
void | _copyFromBuffer (SmallSpan< const MatVarIndex > matvar_indexes, Span< const std::byte > bytes, RunQueue *queue) |
virtual Ref< IData > | _internalCreateSaveDataRef (Integer nb_value)=0 |
virtual void | _saveData (IMeshComponent *component, IData *data)=0 |
virtual void | _restoreData (IMeshComponent *component, IData *data, Integer data_index, Int32ConstArrayView ids, bool allow_null_id)=0 |
virtual void | _copyBetweenPartialAndGlobal (const CopyBetweenPartialAndGlobalArgs &args)=0 |
virtual void | _initializeNewItemsWithZero (InitializeWithZeroArgs &args)=0 |
virtual void | _syncReferences (bool update_views)=0 |
virtual void | _resizeForIndexer (ResizeVariableIndexerArgs &args)=0 |
static void | _genericCopyTo (Span< const std::byte > input, SmallSpan< const Int32 > input_indexes, Span< std::byte > output, SmallSpan< const Int32 > output_indexes, const RunQueue &queue, Int32 data_type_size) |
Définition à la ligne 69 du fichier MeshMaterialVariable.h.
Arcane::Materials::MeshMaterialVariable::MeshMaterialVariable | ( | const MaterialVariableBuildInfo & | v, |
MatVarSpace | mvs | ||
) |
Définition à la ligne 182 du fichier MeshMaterialVariable.cc.
|
override |
Définition à la ligne 192 du fichier MeshMaterialVariable.cc.
|
protected |
Définition à la ligne 499 du fichier MeshMaterialVariable.cc.
|
protected |
Définition à la ligne 484 du fichier MeshMaterialVariable.cc.
|
static |
Définition à la ligne 514 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 545 du fichier MeshMaterialVariable.cc.
|
protected |
Définition à la ligne 451 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Ajoute var à la liste des dépendances.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 388 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Ajoute var à la liste des dépendances avec les infos de trace tinfo.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 394 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Ajoute var à la liste des dépendances.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 407 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Ajoute var à la liste des dépendances avec les infos de trace tinfo.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 413 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Ajoute une référence à cette variable.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 216 du fichier MeshMaterialVariable.cc.
Références Arcane::Materials::MeshMaterialVariableRef::previousReference().
|
overridevirtual |
Fonction utilisée pour mettre à jour la variable.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 432 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Infos de dépendances.
Remplit le tableau infos avec les infos de dépendance sur les variables globales et le tableau mat_infos avec celles sur les variables matériaux.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 438 du fichier MeshMaterialVariable.cc.
Références Arccore::Array< T >::add().
|
overridevirtual |
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 281 du fichier MeshMaterialVariable.cc.
void Arcane::Materials::MeshMaterialVariable::incrementReference | ( | ) |
Définition à la ligne 201 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Indique si on souhaite conserver la valeur de la variable apres un changement de la liste des matériaux.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 318 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 299 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Temps auquel la variable a été mise à jour.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 381 du fichier MeshMaterialVariable.cc.
Références Arcane::Materials::IMeshComponent::id().
|
overridevirtual |
Nom de la variable.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 290 du fichier MeshMaterialVariable.cc.
Référencé par Arcane::Materials::MeshMaterialVariableSynchronizerList::add().
|
overridevirtual |
Supprime var de la liste des dépendances.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 400 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Supprime var de la liste des dépendances.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 419 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Supprime une référence à cette variable.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 237 du fichier MeshMaterialVariable.cc.
Références ARCANE_FATAL, Arcane::Materials::MeshMaterialVariableRef::nextReference(), et Arcane::Materials::MeshMaterialVariableRef::previousReference().
|
overridevirtual |
Positionne la fonction de recalcule de la variable.
Si une fonction de recalcule existait déjà, elle est détruite et remplacée par celle-ci.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 426 du fichier MeshMaterialVariable.cc.
|
overridevirtual |
Indique si on souhaite conserver la valeur de la variable apres un changement de la liste des matériaux.
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 309 du fichier MeshMaterialVariable.cc.
|
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::Materials::IMeshMaterialVariable.
Définition à la ligne 374 du fichier MeshMaterialVariable.cc.
Références Arcane::Materials::IMeshComponent::id().
|
overridevirtual |
Espace de définition de la variable (matériau+milieu ou milieu uniquement)
Implémente Arcane::Materials::IMeshMaterialVariable.
Définition à la ligne 460 du fichier MeshMaterialVariable.cc.
Référencé par Arcane::Materials::MeshMaterialVariableSynchronizerList::add().
|
overridevirtual |
Recalcule la variable pour le matériau mat 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::Materials::IMeshMaterialVariable.
Définition à la ligne 327 du fichier MeshMaterialVariable.cc.
Références ARCANE_FATAL, Arcane::Materials::IMeshMaterialVariableComputeFunction::execute(), et Arcane::Materials::IMeshComponent::id().
|
protected |
Définition à la ligne 143 du fichier MeshMaterialVariable.h.
|
protected |
Définition à la ligne 144 du fichier MeshMaterialVariable.h.