Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::ISimpleTableWriterHelperabstract

Interface de classe permettant d'écrire un fichier avec ISimpleTableReaderWriter. Fournit des méthodes permettant de gérer l'écriture en parallèle et les symboles de noms. Plus de détails...

#include <arcane/core/ISimpleTableWriterHelper.h>

+ Graphe d'héritage de Arcane::ISimpleTableWriterHelper:
+ Graphe de collaboration de Arcane::ISimpleTableWriterHelper:

Fonctions membres publiques

virtual bool init (const Directory &root_directory, const String &table_name, const String &directory_name)=0
 Méthode permettant d'initialiser l'objet. Notamment le nom du tableau et le nom du répertoire qui contiendra les fichiers (le répertoire des tableaux/directory_name).
 
virtual void print (Integer rank=0)=0
 Méthode permettant d'afficher le tableau.
 
virtual bool writeFile (const Directory &root_directory, Integer rank)=0
 Méthode permettant d'écrire le tableau dans un fichier. Si rank != -1, les processus autres que rank retournent true.
 
virtual bool writeFile (Integer rank=-1)=0
 Méthode permettant d'écrire le tableau dans un fichier. Si rank != -1, les processus autres que rank retournent true.
 
virtual Integer precision ()=0
 Méthode permettant de récupérer la précision actuellement utilisée pour l'écriture des valeurs.
 
virtual void setPrecision (Integer precision)=0
 Méthode permettant de modifier la précision du print.
 
virtual bool isFixed ()=0
 Méthode permettant de savoir si le frag 'std::fixed' est actif ou non pour l'écriture des valeurs.
 
virtual void setFixed (bool fixed)=0
 Méthode permettant de définir le flag 'std::fixed' ou non.
 
virtual bool isForcedToUseScientificNotation ()=0
 Méthode permettant de savoir si le frag 'std::scientific' est actif ou non pour l'écriture des valeurs.
 
virtual void setForcedToUseScientificNotation (bool use_scientific)=0
 Méthode permettant de définir le flag 'std::scientific' ou non.
 
virtual String outputDirectoryWithoutComputation ()=0
 Méthode permettant de récupérer le nom du répertoire tel qu'il a été donné précédement.
 
virtual String outputDirectory ()=0
 Méthode permettant de récupérer le nom du répertoire où sera placé les tableaux.
 
virtual void setOutputDirectory (const String &directory)=0
 Méthode permettant de définir le répertoire dans lequel enregistrer les tableaux.
 
virtual String tableNameWithoutComputation ()=0
 Méthode permettant de récupérer le nom du tableau tel qu'il a été donné précédement.
 
virtual String tableName ()=0
 Méthode permettant de récupérer le nom du tableau.
 
virtual void setTableName (const String &name)=0
 Méthode permettant de définir le nom du tableau.
 
virtual String fileName ()=0
 Méthode permettant de récupérer le nom du fichier.
 
virtual Directory outputPath ()=0
 Méthode permettant de récupérer le chemin où sera enregistrés les tableaux.
 
virtual Directory rootPath ()=0
 Méthode permettant de récupérer le chemin où l'implémentation enregistre ces tableaux.
 
virtual bool isOneFileByRanksPermited ()=0
 Méthode permettant de savoir si les paramètres actuellement en possession de l'implémentation lui permet d'écrire un fichier par processus, notamment grâce aux symboles de noms.
 
virtual String fileType ()=0
 Méthode permettant de connaitre le type de fichier qui sera utilisé.
 
virtual Ref< SimpleTableInternalinternal ()=0
 Méthode permettant de récupérer une référence vers l'objet SimpleTableInternal utilisé.
 
virtual Ref< ISimpleTableReaderWriterreaderWriter ()=0
 Méthode permettant de récupérer une référence vers l'objet ISimpleTableReaderWriter utilisé.
 
virtual void setReaderWriter (const Ref< ISimpleTableReaderWriter > &simple_table_reader_writer)=0
 Méthode permettant de définir une référence vers un ISimpleTableReaderWriter.
 

Description détaillée

Interface de classe permettant d'écrire un fichier avec ISimpleTableReaderWriter. Fournit des méthodes permettant de gérer l'écriture en parallèle et les symboles de noms.

Cette classe est, en quelque sorte, une surcouche de ISimpleTableReaderWriter qui est assez basique. ISimpleTableWriterHelper est là pour simplifier l'utilisation de ISimpleTableReaderWriter.

Dans la partie SimpleTable, les symboles de noms sont des mots-clefs entourés d'arobases et qui seront replacés par leur signfication lors de l'exécution. Dans l'implémentation SimpleTableWriterHelper, il y a actuellement deux symboles de noms pris en charge :

  • @proc_id@ : Sera remplacé par l'id du processus.
  • @num_procs@ : Sera remplacé par le nombre de processus. Et dans SimpleTableWriterHelper, ces symboles ne sont remplacés que dans le nom du tableau.

Définition à la ligne 57 du fichier ISimpleTableWriterHelper.h.

Documentation des fonctions membres

◆ fileName()

virtual String Arcane::ISimpleTableWriterHelper::fileName ( )
pure virtual

Méthode permettant de récupérer le nom du fichier.

Peut-être différent pour chaque processus (dépendant de l'implémentation).

Ici, les symboles de noms ont été résolus et l'extension est ajoutée.

Renvoie
String Le nom.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ fileType()

virtual String Arcane::ISimpleTableWriterHelper::fileType ( )
pure virtual

Méthode permettant de connaitre le type de fichier qui sera utilisé.

Renvoie
String Le type de fichier de sortie (= l'extension).

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ init()

virtual bool Arcane::ISimpleTableWriterHelper::init ( const Directory root_directory,
const String table_name,
const String directory_name 
)
pure virtual

Méthode permettant d'initialiser l'objet. Notamment le nom du tableau et le nom du répertoire qui contiendra les fichiers (le répertoire des tableaux/directory_name).

Paramètres
table_nameLe nom du tableau (et du fichier de sortie).
directory_nameLe nom du dossier dans lequel enregistrer les tableaux.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ internal()

virtual Ref< SimpleTableInternal > Arcane::ISimpleTableWriterHelper::internal ( )
pure virtual

Méthode permettant de récupérer une référence vers l'objet SimpleTableInternal utilisé.

Renvoie
Ref<SimpleTableInternal> Une copie de la référence.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ isFixed()

virtual bool Arcane::ISimpleTableWriterHelper::isFixed ( )
pure virtual

Méthode permettant de savoir si le frag 'std::fixed' est actif ou non pour l'écriture des valeurs.

Renvoie
true Si oui.
false Si non.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ isForcedToUseScientificNotation()

virtual bool Arcane::ISimpleTableWriterHelper::isForcedToUseScientificNotation ( )
pure virtual

Méthode permettant de savoir si le frag 'std::scientific' est actif ou non pour l'écriture des valeurs.

Renvoie
true Si oui.
false Si non.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ isOneFileByRanksPermited()

virtual bool Arcane::ISimpleTableWriterHelper::isOneFileByRanksPermited ( )
pure virtual

Méthode permettant de savoir si les paramètres actuellement en possession de l'implémentation lui permet d'écrire un fichier par processus, notamment grâce aux symboles de noms.

Renvoie
true Si oui, l'implémentation peut écrire un fichier par processus.
false Sinon, il n'y a qu'un seul fichier qui peut être écrit.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ outputDirectory()

virtual String Arcane::ISimpleTableWriterHelper::outputDirectory ( )
pure virtual

Méthode permettant de récupérer le nom du répertoire où sera placé les tableaux.

Peut-être différent pour chaque processus (dépendant de l'implémentation).

Ici, les symboles de noms ont été résolus.

Renvoie
String Le répertoire.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ outputDirectoryWithoutComputation()

virtual String Arcane::ISimpleTableWriterHelper::outputDirectoryWithoutComputation ( )
pure virtual

Méthode permettant de récupérer le nom du répertoire tel qu'il a été donné précédement.

Ici, les symboles de noms sont toujours présent.

Renvoie
String Le répertoire.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ outputPath()

virtual Directory Arcane::ISimpleTableWriterHelper::outputPath ( )
pure virtual

Méthode permettant de récupérer le chemin où sera enregistrés les tableaux.

Exemple (relatif) : ./output/csv/[directory_name]/

Renvoie
String Le chemin.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ precision()

virtual Integer Arcane::ISimpleTableWriterHelper::precision ( )
pure virtual

Méthode permettant de récupérer la précision actuellement utilisée pour l'écriture des valeurs.

Renvoie
Integer La précision.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ print()

virtual void Arcane::ISimpleTableWriterHelper::print ( Integer  rank = 0)
pure virtual

Méthode permettant d'afficher le tableau.

Paramètres
rankL'id du processus devant afficher le tableau (-1 pour signifier "tous les processus").

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ readerWriter()

virtual Ref< ISimpleTableReaderWriter > Arcane::ISimpleTableWriterHelper::readerWriter ( )
pure virtual

Méthode permettant de récupérer une référence vers l'objet ISimpleTableReaderWriter utilisé.

Renvoie
Ref<ISimpleTableReaderWriter> Une copie de la référence.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ rootPath()

virtual Directory Arcane::ISimpleTableWriterHelper::rootPath ( )
pure virtual

Méthode permettant de récupérer le chemin où l'implémentation enregistre ces tableaux.

Exemple (relatif) : ./output/csv/

Renvoie
String Le chemin.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ setFixed()

virtual void Arcane::ISimpleTableWriterHelper::setFixed ( bool  fixed)
pure virtual

Méthode permettant de définir le flag 'std::fixed' ou non.

Aussi bien pour la méthode 'print()' que les méthodes 'writeFile()'.

Ce flag permet de 'forcer' le nombre de chiffre après la virgule à la précision voulu. Par exemple, si l'on a appelé 'setPrecision(4)', et que l'on appelle 'setFixed(true)', le print de '6.1' donnera '6.1000'.

Avertissement
Le flag "std::fixed" modifie le comportement de "setPrecision()", si le flag "std::fixed" est désactivé, la précision définira le nombre de chiffres total (avant et après la virgule) ; si le flag "std::fixed" est activé, la précision définira le nombre de chiffres après la virgule. Attention donc lors de l'utilisation de "std::numeric_limits<Real>::max_digits10" (pour l'écriture) ou de "std::numeric_limits<Real>::digits10" (pour la lecture) qui sont à utiliser sans le flag "std::fixed".
Paramètres
fixedSi le flag 'std::fixed' doit être défini ou non.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ setForcedToUseScientificNotation()

virtual void Arcane::ISimpleTableWriterHelper::setForcedToUseScientificNotation ( bool  use_scientific)
pure virtual

Méthode permettant de définir le flag 'std::scientific' ou non.

Aussi bien pour la méthode 'print()' que la méthode 'writetable()'.

Ce flag permet de 'forcer' l'affichage des valeurs en écriture scientifique.

Paramètres
use_scientificSi le flag 'std::scientific' doit être défini ou non.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ setOutputDirectory()

virtual void Arcane::ISimpleTableWriterHelper::setOutputDirectory ( const String directory)
pure virtual

Méthode permettant de définir le répertoire dans lequel enregistrer les tableaux.

Peut-être différent pour chaque processus (dépendant de l'implémentation).

Paramètres
directoryLe répertoire.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ setPrecision()

virtual void Arcane::ISimpleTableWriterHelper::setPrecision ( Integer  precision)
pure virtual

Méthode permettant de modifier la précision du print.

Aussi bien pour la méthode 'print()' que les méthodes 'writeFile()'.

Avertissement
Le flag "std::fixed" modifie le comportement de "setPrecision()", si le flag "std::fixed" est désactivé, la précision définira le nombre de chiffres total (avant et après la virgule) ; si le flag "std::fixed" est activé, la précision définira le nombre de chiffres après la virgule. Attention donc lors de l'utilisation de "std::numeric_limits<Real>::max_digits10" (pour l'écriture) ou de "std::numeric_limits<Real>::digits10" (pour la lecture) qui sont à utiliser sans le flag "std::fixed".
Paramètres
precisionLa nouvelle précision.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ setReaderWriter()

virtual void Arcane::ISimpleTableWriterHelper::setReaderWriter ( const Ref< ISimpleTableReaderWriter > &  simple_table_reader_writer)
pure virtual

Méthode permettant de définir une référence vers un ISimpleTableReaderWriter.

Paramètres
simple_table_reader_writerLa référence vers un ISimpleTableReaderWriter.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ setTableName()

virtual void Arcane::ISimpleTableWriterHelper::setTableName ( const String name)
pure virtual

Méthode permettant de définir le nom du tableau.

Paramètres
nameLe nom.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ tableName()

virtual String Arcane::ISimpleTableWriterHelper::tableName ( )
pure virtual

Méthode permettant de récupérer le nom du tableau.

Peut-être différent pour chaque processus (dépendant de l'implémentation).

Ici, les symboles de noms ont été résolus.

Renvoie
String Le nom.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ tableNameWithoutComputation()

virtual String Arcane::ISimpleTableWriterHelper::tableNameWithoutComputation ( )
pure virtual

Méthode permettant de récupérer le nom du tableau tel qu'il a été donné précédement.

Ici, les symboles de noms sont toujours présent.

Renvoie
String Le nom.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ writeFile() [1/2]

virtual bool Arcane::ISimpleTableWriterHelper::writeFile ( const Directory root_directory,
Integer  rank 
)
pure virtual

Méthode permettant d'écrire le tableau dans un fichier. Si rank != -1, les processus autres que rank retournent true.

Par exemple, dans l'implémentation SimpleTableWriterHelper, le ou les fichiers seront écrits dans le répertoire : root_directory/[directory_name]/[table_name].[ISimpleTableReaderWriter.fileType()]

Paramètres
root_directoryLe répertoire racine où créer le répertoire des tableaux.
rankL'id du processus devant écrire dans un fichier le tableau (-1 pour signifier "tous les processus").
Renvoie
true Si le fichier a été correctement écrit.
false Si le fichier n'a pas été correctement écrit.

Implémenté dans Arcane::SimpleTableWriterHelper.

◆ writeFile() [2/2]

virtual bool Arcane::ISimpleTableWriterHelper::writeFile ( Integer  rank = -1)
pure virtual

Méthode permettant d'écrire le tableau dans un fichier. Si rank != -1, les processus autres que rank retournent true.

Par exemple, dans l'implémentation SimpleTableWriterHelper, le ou les fichiers seront écrits dans le répertoire : ./[output]/[directory_name]/[table_name].[ISimpleTableReaderWriter.fileType()]

Paramètres
rankL'id du processus devant écrire dans un fichier le tableau (-1 pour signifier "tous les processus").
Renvoie
true Si le fichier a été correctement écrit.
false Si le fichier n'a pas été correctement écrit.

Implémenté dans Arcane::SimpleTableWriterHelper.


La documentation de cette classe a été générée à partir du fichier suivant :