Gère la sérialisation/désérialisation des variables d'une famille. Plus de détails...
#include <arcane/mesh/ItemFamilyVariableSerializer.h>
Fonctions membres publiques | |
ItemFamilyVariableSerializer (IItemFamily *family) | |
void | initialize () override |
Initialise l'instance avant le début des échanges. | |
void | notifyAction (const NotifyActionArgs &) override |
Notifie l'instance qu'on entre dans une certaine phase de l'échange. | |
void | serialize (const ItemFamilySerializeArgs &args) override |
void | finalize () override |
Effectue les traitements de fin d'échange. | |
ePhase | phase () const override |
Phase de la sérialisation où cette instance intervient. | |
IItemFamily * | family () const override |
Famille associée. | |
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 protégées | |
IItemFamily * | _family () const |
Fonctions membres protégées hérités de Arccore::TraceAccessor | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Fonctions membres privées | |
void | _serializePartialVariable (IVariable *var, ISerializer *sbuf, Int32ConstArrayView local_ids) |
Serialise une variable partielle. | |
void | _checkSerialization (ISerializer *sbuf, Int32ConstArrayView local_ids) |
Sérialize un nombre magique et le nombre d'entité afin de vérifier que la désérialisation est correct. | |
void | _checkSerializationVariable (ISerializer *sbuf, IVariable *var) |
Sérialise le nom de la variable pour vérifier que la désérialisation est correcte. | |
Attributs privés | |
IItemFamily * | m_item_family |
UniqueArray< IVariable * > | m_variables_to_exchange |
Liste des variables à échanger. | |
Membres hérités additionnels | |
Types publics hérités de Arcane::IItemFamilySerializeStep | |
enum | ePhase { PH_Item , PH_Group , PH_Variable } |
Phase de la sérialisation. Plus de détails... | |
enum class | eAction { AC_BeginPrepareSend , AC_EndPrepareSend , AC_BeginReceive , AC_EndReceive } |
Action en cours de la sérialisation. Plus de détails... | |
Gère la sérialisation/désérialisation des variables d'une famille.
Définition à la ligne 39 du fichier ItemFamilyVariableSerializer.h.
Arcane::mesh::ItemFamilyVariableSerializer::ItemFamilyVariableSerializer | ( | IItemFamily * | family | ) |
Définition à la ligne 63 du fichier ItemFamilyVariableSerializer.cc.
Arcane::mesh::ItemFamilyVariableSerializer::~ItemFamilyVariableSerializer | ( | ) |
Définition à la ligne 73 du fichier ItemFamilyVariableSerializer.cc.
|
private |
Sérialize un nombre magique et le nombre d'entité afin de vérifier que la désérialisation est correct.
Définition à la ligne 132 du fichier ItemFamilyVariableSerializer.cc.
Références ARCANE_FATAL.
|
private |
Sérialise le nom de la variable pour vérifier que la désérialisation est correcte.
Définition à la ligne 172 du fichier ItemFamilyVariableSerializer.cc.
Références ARCANE_FATAL.
|
inlineprotected |
Définition à la ligne 54 du fichier ItemFamilyVariableSerializer.h.
|
private |
Serialise une variable partielle.
Cette méthode n'est pas très performante et doit être optimisée. En attendant, le fonctionnement est le suivant pour l'envoie
TODO: eviter d'envoyer tous les ids pour chaque variable TODO: utiliser les infos de ItemGroupsSerializer2 si possible pour connaitre la liste des entités à envoyer.
Définition à la ligne 282 du fichier ItemFamilyVariableSerializer.cc.
Références ARCANE_FATAL, Arcane::DT_Int64, ENUMERATE_ITEM, Arccore::Array< T >::resize(), et Arcane::ItemGroup::size().
|
inlineoverridevirtual |
Famille associée.
Implémente Arcane::IItemFamilySerializeStep.
Définition à la ligne 52 du fichier ItemFamilyVariableSerializer.h.
|
inlineoverridevirtual |
Effectue les traitements de fin d'échange.
Implémente Arcane::IItemFamilySerializeStep.
Définition à la ligne 50 du fichier ItemFamilyVariableSerializer.h.
|
overridevirtual |
Initialise l'instance avant le début des échanges.
Implémente Arcane::IItemFamilySerializeStep.
Définition à la ligne 81 du fichier ItemFamilyVariableSerializer.cc.
Références Arccore::Trace::High.
|
inlineoverridevirtual |
Notifie l'instance qu'on entre dans une certaine phase de l'échange.
Implémente Arcane::IItemFamilySerializeStep.
Définition à la ligne 48 du fichier ItemFamilyVariableSerializer.h.
|
inlineoverridevirtual |
Phase de la sérialisation où cette instance intervient.
Implémente Arcane::IItemFamilySerializeStep.
Définition à la ligne 51 du fichier ItemFamilyVariableSerializer.h.
|
overridevirtual |
En sérialisation, rank est le rang de la cible. En désérialisation, rank est le rang de celui qui envoie le message.
Implémente Arcane::IItemFamilySerializeStep.
Définition à la ligne 203 du fichier ItemFamilyVariableSerializer.cc.
Références Arcane::arcaneIsDebug(), ENUMERATE_ITEM, Arccore::Trace::High, Arccore::Trace::Highest, Arcane::ItemFamilySerializeArgs::localIds(), Arcane::ItemFamilySerializeArgs::rank(), et Arcane::ItemFamilySerializeArgs::serializer().
|
private |
Définition à la ligne 56 du fichier ItemFamilyVariableSerializer.h.
|
private |
Liste des variables à échanger.
IMPORTANT: Cette liste doit être identique pour tous les sous-domaines sinon les désérialisations vont donner des résultats incorrects.
Définition à la ligne 63 du fichier ItemFamilyVariableSerializer.h.