Indexer pour les variables materiaux. Plus de détails...
#include <arcane/materials/internal/MeshMaterialVariableIndexer.h>
Fonctions membres publiques | |
MeshMaterialVariableIndexer (ITraceMng *tm, const String &name) | |
const String & | name () const |
Nom de l'indexeur. | |
Integer | maxIndexInMultipleArray () const |
Integer | index () const |
ConstArrayView< MatVarIndex > | matvarIndexes () const |
const CellGroup & | cells () const |
void | checkValid () |
bool | isEnvironment () const |
Vrai si cet indexeur est celui d'un milieu. | |
void | dumpStats () const |
void | endUpdateAdd (const ComponentItemListBuilder &builder, RunQueue &queue) |
void | endUpdateRemoveV2 (ConstituentModifierWorkInfo &work_info, Integer nb_remove, RunQueue &queue) |
void | transformCells (ConstituentModifierWorkInfo &args, RunQueue &queue, bool is_from_env) |
Transforme des mailles entre pure et partielle. | |
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 privées | |
void | endUpdate (const ComponentItemListBuilderOld &builder) |
Fonctions privées mais accessibles aux classes 'friend'. | |
Array< MatVarIndex > & | matvarIndexesArray () |
void | setCells (const CellGroup &cells) |
void | setIsEnvironment (bool is_environment) |
void | setIndex (Integer index) |
Integer | nbItem () const |
ConstArrayView< Int32 > | localIds () const |
void | changeLocalIds (Int32ConstArrayView old_to_new_ids) |
void | endUpdateRemove (ConstituentModifierWorkInfo &args, Integer nb_remove, RunQueue &queue) |
void | _init () |
Fonctions membres privées statiques | |
static void | _changeLocalIdsV2 (MeshMaterialVariableIndexer *var_indexer, Int32ConstArrayView old_to_new_ids) |
Attributs privés | |
Integer | m_index = -1 |
Index de cette instance dans la liste des indexeurs. | |
Integer | m_max_index_in_multiple_array = -1 |
Indice max plus 1 dans le tableau des valeurs multiples. | |
String | m_name |
Nom du matériau ou milieu. | |
CellGroup | m_cells |
Liste des mailles de cet indexer. | |
UniqueArray< MatVarIndex > | m_matvar_indexes |
Liste des indexs pour les variables matériaux. | |
UniqueArray< Int32 > | m_local_ids |
Liste des localId() des entités correspondantes à m_matvar_indexes. NOTE: à terme, lorsque le parcours se fera dans le même ordre que les éléments du groupe, ce tableau correspondra à celui des localId() du groupe et il n'y aura donc pas besoin de le stocker. NOTE: à noter que ce tableau pourrait être utile en cas de modification du maillage (voir MeshEnvironment::_changeIds()). | |
bool | m_is_environment = false |
Vrai si l'indexeur est associé à un milieu. | |
Int32 | m_nb_transform_called = 0 |
Nombre d'appels aux méthodes de transformation. | |
Int32 | m_nb_useless_add_transform = 0 |
Nombre d'appels inutiles aux méthodes de transformation. | |
Int32 | m_nb_useless_remove_transform = 0 |
bool | m_is_print_useless_transform = false |
Indique si on affiche un message lors d'une transformation inutile. | |
Membres hérités additionnels | |
Fonctions membres protégées hérités de Arccore::TraceAccessor | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Indexer pour les variables materiaux.
Cette classe contient les infos pour gérer la partie multi valeur d'une variable matériau.
Définition à la ligne 50 du fichier MeshMaterialVariableIndexer.h.
Arcane::Materials::MeshMaterialVariableIndexer::MeshMaterialVariableIndexer | ( | ITraceMng * | tm, |
const String & | name | ||
) |
Définition à la ligne 39 du fichier MeshMaterialVariableIndexer.cc.
|
staticprivate |
Définition à la ligne 260 du fichier MeshMaterialVariableIndexer.cc.
|
private |
Définition à la ligne 57 du fichier MeshMaterialVariableIndexer.cc.
|
inline |
Définition à la ligne 80 du fichier MeshMaterialVariableIndexer.h.
|
private |
Définition à la ligne 251 du fichier MeshMaterialVariableIndexer.cc.
void Arcane::Materials::MeshMaterialVariableIndexer::checkValid | ( | ) |
Définition à la ligne 424 du fichier MeshMaterialVariableIndexer.cc.
void Arcane::Materials::MeshMaterialVariableIndexer::dumpStats | ( | ) | const |
Définition à la ligne 440 du fichier MeshMaterialVariableIndexer.cc.
|
private |
Fonctions privées mais accessibles aux classes 'friend'.
Définition à la ligne 67 du fichier MeshMaterialVariableIndexer.cc.
void Arcane::Materials::MeshMaterialVariableIndexer::endUpdateAdd | ( | const ComponentItemListBuilder & | builder, |
RunQueue & | queue | ||
) |
Définition à la ligne 111 du fichier MeshMaterialVariableIndexer.cc.
|
private |
Définition à la ligne 162 du fichier MeshMaterialVariableIndexer.cc.
void Arcane::Materials::MeshMaterialVariableIndexer::endUpdateRemoveV2 | ( | ConstituentModifierWorkInfo & | work_info, |
Integer | nb_remove, | ||
RunQueue & | queue | ||
) |
Définition à la ligne 171 du fichier MeshMaterialVariableIndexer.cc.
|
inline |
Définition à la ligne 78 du fichier MeshMaterialVariableIndexer.h.
|
inline |
Vrai si cet indexeur est celui d'un milieu.
Définition à la ligne 83 du fichier MeshMaterialVariableIndexer.h.
Référencé par Arcane::Materials::ItemMaterialVariableBase< Traits >::buildFromManager().
|
inlineprivate |
Définition à la ligne 103 du fichier MeshMaterialVariableIndexer.h.
|
inline |
Définition à la ligne 79 du fichier MeshMaterialVariableIndexer.h.
|
inlineprivate |
Définition à la ligne 98 du fichier MeshMaterialVariableIndexer.h.
|
inline |
Taille nécessaire pour dimensionner les valeurs multiples pour les variables.
Il s'agit du maximum de l'indice maximal plus 1.
Définition à la ligne 76 du fichier MeshMaterialVariableIndexer.h.
Référencé par Arcane::Materials::ItemMaterialVariableBase< Traits >::buildFromManager().
|
inline |
Nom de l'indexeur.
Définition à la ligne 69 du fichier MeshMaterialVariableIndexer.h.
Référencé par Arcane::Materials::IncrementalComponentModifier::_switchCellsForEnvironments(), Arcane::Materials::IncrementalComponentModifier::_switchCellsForMaterials(), et Arcane::Materials::ItemMaterialVariableBase< Traits >::buildFromManager().
|
inlineprivate |
Définition à la ligne 102 du fichier MeshMaterialVariableIndexer.h.
|
inlineprivate |
Définition à la ligne 99 du fichier MeshMaterialVariableIndexer.h.
|
inlineprivate |
Définition à la ligne 101 du fichier MeshMaterialVariableIndexer.h.
|
inlineprivate |
Définition à la ligne 100 du fichier MeshMaterialVariableIndexer.h.
void Arcane::Materials::MeshMaterialVariableIndexer::transformCells | ( | ConstituentModifierWorkInfo & | work_info, |
RunQueue & | queue, | ||
bool | is_from_env | ||
) |
Transforme des mailles entre pure et partielle.
Les mailles à transformer sont celles pour lesquelles work_info.transformedCells() est vrai.
En retour, remplit work_info.pure_local_ids et work_info.partial_indexes avec les valeurs des transformées. Si work_info.isAdd() est vrai, alors on transforme de pure en partial, sinon on transforme de partiel en pure. Si is_from_env est vrai, alors cette méthode est appelée depuis une mise à jour des milieux. Sinon c'est depuis une mise à jour des matériaux. Cela n'est utile que pour le debug.
Définition à la ligne 332 du fichier MeshMaterialVariableIndexer.cc.
Références Arcane::Accelerator::RunQueue::executionPolicy(), et Arcane::Accelerator::isAcceleratorPolicy().
Référencé par Arcane::Materials::IncrementalComponentModifier::_switchCellsForEnvironments(), et Arcane::Materials::IncrementalComponentModifier::_switchCellsForMaterials().
|
friend |
Définition à la ligne 53 du fichier MeshMaterialVariableIndexer.h.
Définition à la ligne 59 du fichier MeshMaterialVariableIndexer.h.
|
friend |
Définition à la ligne 60 du fichier MeshMaterialVariableIndexer.h.
|
friend |
Définition à la ligne 54 du fichier MeshMaterialVariableIndexer.h.
|
friend |
Définition à la ligne 57 du fichier MeshMaterialVariableIndexer.h.
|
friend |
Définition à la ligne 55 du fichier MeshMaterialVariableIndexer.h.
|
friend |
Définition à la ligne 56 du fichier MeshMaterialVariableIndexer.h.
|
friend |
Définition à la ligne 58 du fichier MeshMaterialVariableIndexer.h.
|
private |
Liste des mailles de cet indexer.
Définition à la ligne 123 du fichier MeshMaterialVariableIndexer.h.
|
private |
Index de cette instance dans la liste des indexeurs.
Définition à la ligne 114 du fichier MeshMaterialVariableIndexer.h.
Vrai si l'indexeur est associé à un milieu.
Définition à la ligne 139 du fichier MeshMaterialVariableIndexer.h.
Indique si on affiche un message lors d'une transformation inutile.
Définition à la ligne 154 du fichier MeshMaterialVariableIndexer.h.
|
private |
Liste des localId() des entités correspondantes à m_matvar_indexes. NOTE: à terme, lorsque le parcours se fera dans le même ordre que les éléments du groupe, ce tableau correspondra à celui des localId() du groupe et il n'y aura donc pas besoin de le stocker. NOTE: à noter que ce tableau pourrait être utile en cas de modification du maillage (voir MeshEnvironment::_changeIds()).
Définition à la ligne 136 du fichier MeshMaterialVariableIndexer.h.
|
private |
Liste des indexs pour les variables matériaux.
Définition à la ligne 126 du fichier MeshMaterialVariableIndexer.h.
|
private |
Indice max plus 1 dans le tableau des valeurs multiples.
Définition à la ligne 117 du fichier MeshMaterialVariableIndexer.h.
|
private |
Nom du matériau ou milieu.
Définition à la ligne 120 du fichier MeshMaterialVariableIndexer.h.
|
private |
Nombre d'appels aux méthodes de transformation.
Définition à la ligne 142 du fichier MeshMaterialVariableIndexer.h.
|
private |
Nombre d'appels inutiles aux méthodes de transformation.
Un appel est inutile si la liste des entités modifiées en sortie est vide.
Définition à la ligne 150 du fichier MeshMaterialVariableIndexer.h.
|
private |
Définition à la ligne 151 du fichier MeshMaterialVariableIndexer.h.