Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::ISimpleTableReaderWriterabstract

Interface de classe permettant de lire un fichier et d'écrire un fichier avec ou à partir d'un SimpleTableInternal. Plus de détails...

#include <arcane/core/ISimpleTableReaderWriter.h>

+ Graphe de collaboration de Arcane::ISimpleTableReaderWriter:

Fonctions membres publiques

virtual bool writeTable (const Directory &dst, const String &file_name)=0
 Méthode permettant d'écrire un tableau simple dans un fichier.
 
virtual bool readTable (const Directory &src, const String &file_name)=0
 Méthode permettant de lire un fichier contenant un tableau simple.
 
virtual void clearInternal ()=0
 Méthode permettant d'effacer le contenu de l'objet SimpleTableInternal.
 
virtual void print ()=0
 Méthode permettant d'écrire le tableau dans la sortie standard.
 
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 fileType ()=0
 Méthode permettant de récupérer le type de fichier qui sera écrit par l'implémentation. ("csv" sera retourné pour l'implémentation csv).
 
virtual Ref< SimpleTableInternalinternal ()=0
 Méthode permettant de récupérer une référence vers l'objet SimpleTableInternal utilisé.
 
virtual void setInternal (const Ref< SimpleTableInternal > &simple_table_internal)=0
 Méthode permettant de définir une référence vers un SimpleTableInternal.
 

Description détaillée

Interface de classe permettant de lire un fichier et d'écrire un fichier avec ou à partir d'un SimpleTableInternal.

Le fichier lu devra, de préférence, avoir été écrit par une implémentation de cette même interface.

Impérativement donc, un fichier écrit par une implémentation de cette interface devra pouvoir être lu par cette même implémentation.

L'implémentation ne devra pas détruire l'objet SimpleTableInternal pointé par le pointeur utilisé. C'est à l'appelant de gérer ça.

Définition à la ligne 99 du fichier ISimpleTableReaderWriter.h.

Documentation des fonctions membres

◆ fileType()

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

Méthode permettant de récupérer le type de fichier qui sera écrit par l'implémentation. ("csv" sera retourné pour l'implémentation csv).

Renvoie
String Le type/l'extension du fichier utilisé.

◆ internal()

virtual Ref< SimpleTableInternal > Arcane::ISimpleTableReaderWriter::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.

◆ isFixed()

virtual bool Arcane::ISimpleTableReaderWriter::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.

◆ isForcedToUseScientificNotation()

virtual bool Arcane::ISimpleTableReaderWriter::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.

◆ precision()

virtual Integer Arcane::ISimpleTableReaderWriter::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.

◆ print()

virtual void Arcane::ISimpleTableReaderWriter::print ( )
pure virtual

Méthode permettant d'écrire le tableau dans la sortie standard.

Le format d'écriture est libre (pour l'implémentation csv, l'écriture se fait pareil que dans un fichier csv).

◆ readTable()

virtual bool Arcane::ISimpleTableReaderWriter::readTable ( const Directory src,
const String file_name 
)
pure virtual

Méthode permettant de lire un fichier contenant un tableau simple.

L'extension sera ajouté par l'implémentation.

Un appel à SimpleTableInternal::clear() devra être effectué avant la lecture.

Les élements qui doivent impérativement être récupérés sont :

  • les noms des lignes (m_row_names),
  • les noms des colonnes (m_column_names),
  • le nom du tableau (m_table_name),
  • les valeurs du tableau (m_values).

Les élements qui doivent être déduit si non récupérés sont :

  • les tailles des lignes (m_row_sizes),
  • les tailles des colonnes (m_column_sizes).

Déduction par défaut pour m_row_sizes :

  • len(m_row_sizes) = len(m_row_names)
  • m_row_sizes[*] = m_values.dim2Size()

Déduction par défaut pour m_column_sizes :

  • len(m_column_sizes) = len(m_column_names)
  • m_column_sizes[*] = m_values.dim1Size()
Paramètres
srcLe répertoire source.
file_nameLe nom du fichier (sans extension).
Renvoie
true Si le fichier a bien été lu.
false Si le fichier n'a pas pu être lu.

◆ setFixed()

virtual void Arcane::ISimpleTableReaderWriter::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 la méthode 'writetable()'.

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.

◆ setForcedToUseScientificNotation()

virtual void Arcane::ISimpleTableReaderWriter::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.

◆ setInternal()

virtual void Arcane::ISimpleTableReaderWriter::setInternal ( const Ref< SimpleTableInternal > &  simple_table_internal)
pure virtual

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

Paramètres
simple_table_internalLa référence vers un SimpleTableInternal.

◆ setPrecision()

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

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

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

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.

◆ writeTable()

virtual bool Arcane::ISimpleTableReaderWriter::writeTable ( const Directory dst,
const String file_name 
)
pure virtual

Méthode permettant d'écrire un tableau simple dans un fichier.

L'extension sera ajouté par l'implémentation.

Le répertoire de destination sera créé par l'implémentation s'il n'existe pas.

Les élements de SimpleTableInternal qui doivent impérativement être écrits sont :

  • les noms des lignes (m_row_names),
  • les noms des colonnes (m_column_names),
  • le nom du tableau (m_table_name),
  • les valeurs du tableau (m_values).

Les autres élements de SimpleTableInternal ne sont pas obligatoire.

Paramètres
dstLe répertoire de destination.
file_nameLe nom du fichier (sans extension).
Renvoie
true Si le fichier a bien été écrit.
false Si le fichier n'a pas pu être écrit.

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