Arcane  v3.16.8.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
ISimpleTableOutput.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2025 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* ISimpleTableOutput.h (C) 2000-2025 */
9/* */
10/* Interface pour simples services de sortie de tableaux de valeurs. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_ISIMPLETABLEOUTPUT_H
13#define ARCANE_CORE_ISIMPLETABLEOUTPUT_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/ISimpleTableInternalMng.h"
18#include "arcane/core/ISimpleTableWriterHelper.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
33class ARCANE_CORE_EXPORT ISimpleTableOutput
34{
35 public:
36 virtual ~ISimpleTableOutput() = default;
37
38 public:
42 virtual bool init() = 0;
48 virtual bool init(const String& table_name) = 0;
55 virtual bool init(const String& table_name, const String& directory_name) = 0;
56
57 /*---------------------------------------------------------------------------*/
58 /*---------------------------------------------------------------------------*/
59
63 virtual void clear() = 0;
64
65 /*---------------------------------------------------------------------------*/
66 /*---------------------------------------------------------------------------*/
67
74 virtual Integer addRow(const String& row_name) = 0;
86 virtual Integer addRow(const String& row_name, ConstArrayView<Real> elements) = 0;
94 virtual bool addRows(StringConstArrayView rows_names) = 0;
95
96 /*---------------------------------------------------------------------------*/
97 /*---------------------------------------------------------------------------*/
98
105 virtual Integer addColumn(const String& column_name) = 0;
117 virtual Integer addColumn(const String& column_name, ConstArrayView<Real> elements) = 0;
125 virtual bool addColumns(StringConstArrayView columns_names) = 0;
126
127 /*---------------------------------------------------------------------------*/
128 /*---------------------------------------------------------------------------*/
129
138 virtual bool addElementInRow(Integer position, Real element) = 0;
149 virtual bool addElementInRow(const String& row_name, Real element, bool create_if_not_exist = true) = 0;
163
164 /*---------------------------------------------------------------------------*/
165 /*---------------------------------------------------------------------------*/
166
179 virtual bool addElementsInRow(Integer position, ConstArrayView<Real> elements) = 0;
194 virtual bool addElementsInRow(const String& row_name, ConstArrayView<Real> elements, bool create_if_not_exist = true) = 0;
211 virtual bool addElementsInSameRow(ConstArrayView<Real> elements) = 0;
212
213 /*---------------------------------------------------------------------------*/
214 /*---------------------------------------------------------------------------*/
215
224 virtual bool addElementInColumn(Integer position, Real element) = 0;
235 virtual bool addElementInColumn(const String& column_name, Real element, bool create_if_not_exist = true) = 0;
248
249 /*---------------------------------------------------------------------------*/
250 /*---------------------------------------------------------------------------*/
251
264 virtual bool addElementsInColumn(Integer position, ConstArrayView<Real> elements) = 0;
279 virtual bool addElementsInColumn(const String& column_name, ConstArrayView<Real> elements, bool create_if_not_exist = true) = 0;
297
298 /*---------------------------------------------------------------------------*/
299 /*---------------------------------------------------------------------------*/
300
313 virtual bool editElementUp(Real element, bool update_last_position = true) = 0;
330 virtual bool editElementDown(Real element, bool update_last_position = true) = 0;
343 virtual bool editElementLeft(Real element, bool update_last_position = true) = 0;
360 virtual bool editElementRight(Real element, bool update_last_position = true) = 0;
361
362 /*---------------------------------------------------------------------------*/
363 /*---------------------------------------------------------------------------*/
364
375 virtual Real elementUp(bool update_last_position = false) = 0;
386 virtual Real elementDown(bool update_last_position = false) = 0;
397 virtual Real elementLeft(bool update_last_position = false) = 0;
408 virtual Real elementRight(bool update_last_position = false) = 0;
409
410 /*---------------------------------------------------------------------------*/
411 /*---------------------------------------------------------------------------*/
412
426 virtual bool editElement(Real element) = 0;
436 virtual bool editElement(Integer position_x, Integer position_y, Real element) = 0;
446 virtual bool editElement(const String& column_name, const String& row_name, Real element) = 0;
447
448 /*---------------------------------------------------------------------------*/
449 /*---------------------------------------------------------------------------*/
450
458 virtual Real element() = 0;
467 virtual Real element(Integer position_x, Integer position_y, bool update_last_position = false) = 0;
476 virtual Real element(const String& column_name, const String& row_name, bool update_last_position = false) = 0;
477
478 /*---------------------------------------------------------------------------*/
479 /*---------------------------------------------------------------------------*/
480
487 virtual RealUniqueArray row(Integer position) = 0;
494 virtual RealUniqueArray row(const String& row_name) = 0;
495
502 virtual RealUniqueArray column(Integer position) = 0;
509 virtual RealUniqueArray column(const String& column_name) = 0;
510
511 /*---------------------------------------------------------------------------*/
512 /*---------------------------------------------------------------------------*/
513
521 virtual Integer rowSize(Integer position) = 0;
529 virtual Integer rowSize(const String& row_name) = 0;
530
538 virtual Integer columnSize(Integer position) = 0;
546 virtual Integer columnSize(const String& column_name) = 0;
547
548 /*---------------------------------------------------------------------------*/
549 /*---------------------------------------------------------------------------*/
550
557 virtual Integer rowPosition(const String& row_name) = 0;
564 virtual Integer columnPosition(const String& column_name) = 0;
565
566 /*---------------------------------------------------------------------------*/
567 /*---------------------------------------------------------------------------*/
568
575 virtual Integer numberOfRows() = 0;
583
584 /*---------------------------------------------------------------------------*/
585 /*---------------------------------------------------------------------------*/
586
587 virtual String rowName(Integer position) = 0;
588 virtual String columnName(Integer position) = 0;
589
590 /*---------------------------------------------------------------------------*/
591 /*---------------------------------------------------------------------------*/
592
601 virtual bool editRowName(Integer position, const String& new_name) = 0;
610 virtual bool editRowName(const String& row_name, const String& new_name) = 0;
611
620 virtual bool editColumnName(Integer position, const String& new_name) = 0;
629 virtual bool editColumnName(const String& column_name, const String& new_name) = 0;
630
638 virtual Integer addAverageColumn(const String& column_name) = 0;
639
640 /*---------------------------------------------------------------------------*/
641 /*---------------------------------------------------------------------------*/
649 virtual void print(Integer rank = 0) = 0;
650
651 virtual bool writeFile(const Directory& root_directory, Integer rank) = 0;
652
663 virtual bool writeFile(Integer rank = -1) = 0;
678 virtual bool writeFile(const String& directory, Integer rank = -1) = 0;
679
680 /*---------------------------------------------------------------------------*/
681 /*---------------------------------------------------------------------------*/
682
689 virtual Integer precision() = 0;
706 virtual void setPrecision(Integer precision) = 0;
707
715 virtual bool isFixed() = 0;
736 virtual void setFixed(bool fixed) = 0;
737
756 virtual void setForcedToUseScientificNotation(bool use_scientific) = 0;
757
766 virtual String outputDirectory() = 0;
775 virtual void setOutputDirectory(const String& directory) = 0;
776
784 virtual String tableName() = 0;
792 virtual void setTableName(const String& name) = 0;
793
801 virtual String fileName() = 0;
802
812 virtual Directory outputPath() = 0;
813
822 virtual Directory rootPath() = 0;
823
831 virtual bool isOneFileByRanksPermited() = 0;
832
838 virtual String fileType() = 0;
839
847
855};
856
857/*---------------------------------------------------------------------------*/
858/*---------------------------------------------------------------------------*/
859
860} // End namespace Arcane
861
862/*---------------------------------------------------------------------------*/
863/*---------------------------------------------------------------------------*/
864
865#endif
866
867/*---------------------------------------------------------------------------*/
868/*---------------------------------------------------------------------------*/
Vue constante d'un tableau de type T.
Classe gérant un répertoire.
Definition Directory.h:35
Interface représentant une sortie de tableau simple.
virtual bool addElementsInColumn(Integer position, ConstArrayView< Real > elements)=0
Méthode permettant d'ajouter plusieurs éléments sur une colonne.
virtual bool addElementsInRow(Integer position, ConstArrayView< Real > elements)=0
Méthode permettant d'ajouter plusieurs éléments sur une ligne.
virtual void setTableName(const String &name)=0
Accesseur permettant de définir le nom du tableau.
virtual Real elementDown(bool update_last_position=false)=0
Méthode permettant de récupérer un élément en-dessous du dernier élement dernièrement manipulé (ligne...
virtual bool init(const String &table_name)=0
Méthode permettant d'initialiser le tableau.
virtual bool editElementDown(Real element, bool update_last_position=true)=0
Méthode permettant d'éditer un élément en-dessous du dernier élement dernièrement manipulé (ligne du ...
virtual void setPrecision(Integer precision)=0
Méthode permettant de modifier la précision du print.
virtual bool addElementInRow(Integer position, Real element)=0
Méthode permettant d'ajouter un élément à une ligne.
virtual Ref< SimpleTableInternal > internal()=0
Méthode permettant de récupérer une référence vers l'objet SimpleTableInternal utilisé.
virtual String fileType()=0
Méthode permettant de connaitre le type de fichier du service.
virtual bool init(const String &table_name, const String &directory_name)=0
Méthode permettant d'initialiser le tableau.
virtual Integer rowSize(Integer position)=0
Méthode permettant d'obtenir la taille d'une ligne. Incluant les hypothétiques 'trous' dans la ligne.
virtual String fileName()=0
Accesseur permettant de récupérer le nom des fichiers.
virtual bool addElementInColumn(const String &column_name, Real element, bool create_if_not_exist=true)=0
Méthode permettant l'ajouter un élément sur une colonne.
virtual Integer columnSize(const String &column_name)=0
Méthode permettant d'obtenir la taille d'une colonne. Incluant les hypotétiques 'trous' dans la colon...
virtual Integer numberOfRows()=0
Méthode permettant de récupérer le nombre de lignes dans le tableau. C'est, en quelque sorte,...
virtual bool editColumnName(Integer position, const String &new_name)=0
Méthode permettant de changer le nom d'une colonne.
virtual bool addElementInColumn(Integer position, Real element)=0
Méthode permettant d'ajouter un élément à une colonne.
virtual bool editElementRight(Real element, bool update_last_position=true)=0
Méthode permettant d'éditer un élément à droite du dernier élement dernièrement manipulé (même ligne/...
virtual bool writeFile(Integer rank=-1)=0
Méthode permettant d'écrire le tableau dans un fichier. Méthode effectuant des opérations collectives...
virtual void setOutputDirectory(const String &directory)=0
Accesseur permettant de définir le répertoire dans lequel enregistrer les tableaux.
virtual bool editElementUp(Real element, bool update_last_position=true)=0
Méthode permettant d'éditer un élément au-dessus du dernier élement dernièrement manipulé (ligne du d...
virtual RealUniqueArray column(Integer position)=0
Méthode permettant d'obtenir une copie d'une colonne.
virtual Integer rowPosition(const String &row_name)=0
Méthode permettant de récupérer la position d'une ligne.
virtual bool addElementsInRow(const String &row_name, ConstArrayView< Real > elements, bool create_if_not_exist=true)=0
Méthode permettant d'ajouter plusieurs éléments sur une ligne.
virtual String outputDirectory()=0
Accesseur permettant de récupérer le nom du répertoire où sera placé les tableaux.
virtual bool addElementInSameRow(Real element)=0
Méthode permettant d'ajouter un élément sur la ligne dernièrement manipulée.
virtual Real elementRight(bool update_last_position=false)=0
Méthode permettant de récupérer un élément à droite du dernier élement dernièrement manipulé (même li...
virtual Integer addRow(const String &row_name)=0
Méthode permettant d'ajouter une ligne.
virtual Integer addColumn(const String &column_name)=0
Méthode permettant d'ajouter une colonne.
virtual bool editColumnName(const String &column_name, const String &new_name)=0
Méthode permettant de changer le nom d'une colonne.
virtual bool editElement(Integer position_x, Integer position_y, Real element)=0
Méthode permettant de modifier un élement dans le tableau.
virtual Real elementLeft(bool update_last_position=false)=0
Méthode permettant de récupérer un élément à gauche du dernier élement dernièrement manipulé (même li...
virtual bool addColumns(StringConstArrayView columns_names)=0
Méthode permettant d'ajouter plusieurs colonnes.
virtual bool editRowName(const String &row_name, const String &new_name)=0
Méthode permettant de changer le nom d'une ligne.
virtual RealUniqueArray row(const String &row_name)=0
Méthode permettant d'obtenir une copie d'une ligne.
virtual bool addElementInSameColumn(Real element)=0
Méthode permettant d'ajouter un élément sur la colonne dernièrement manipulée.
virtual Integer addRow(const String &row_name, ConstArrayView< Real > elements)=0
Méthode permettant d'ajouter une ligne.
virtual Ref< ISimpleTableReaderWriter > readerWriter()=0
Méthode permettant de récupérer une référence vers l'objet ISimpleTableReaderWriter utilisé.
virtual RealUniqueArray row(Integer position)=0
Méthode permettant d'obtenir une copie d'une ligne.
virtual Integer columnPosition(const String &column_name)=0
Méthode permettant de récupérer la position d'une colonne.
virtual Integer precision()=0
Méthode permettant de récupérer la précision actuellement utilisée pour l'écriture des valeurs.
virtual String tableName()=0
Accesseur permettant de récupérer le nom des tableaux.
virtual void print(Integer rank=0)=0
Méthode permettant d'afficher le tableau. Méthode effectuant des opérations collectives.
virtual Integer numberOfColumns()=0
Méthode permettant de récupérer le nombre de colonnes dans le tableau. C'est, en quelque sorte,...
virtual bool addElementsInSameRow(ConstArrayView< Real > elements)=0
Méthode permettant d'ajouter plusieurs éléments sur la ligne dernièrement manipulée.
virtual RealUniqueArray column(const String &column_name)=0
Méthode permettant d'obtenir une copie d'une colonne.
virtual Integer addAverageColumn(const String &column_name)=0
Méthode permettant de créer une colonne contenant la moyenne des éléments de chaque ligne.
virtual Real elementUp(bool update_last_position=false)=0
Méthode permettant de récupérer un élément au-dessus du dernier élement dernièrement manipulé (ligne ...
virtual bool isForcedToUseScientificNotation()=0
Méthode permettant de savoir si le frag 'std::scientific' est actif ou non pour l'écriture des valeur...
virtual bool writeFile(const String &directory, Integer rank=-1)=0
Méthode permettant d'écrire le tableau dans un fichier. Méthode effectuant des opérations collectives...
virtual bool addElementsInColumn(const String &column_name, ConstArrayView< Real > elements, bool create_if_not_exist=true)=0
Méthode permettant d'ajouter plusieurs éléments sur une colonne.
virtual Real element(Integer position_x, Integer position_y, bool update_last_position=false)=0
Méthode permettant d'obtenir une copie d'un élement.
virtual Real element(const String &column_name, const String &row_name, bool update_last_position=false)=0
Méthode permettant d'obtenir une copie d'un élement.
virtual Real element()=0
Méthode permettant d'obtenir une copie d'un élement.
virtual bool init()=0
Méthode permettant d'initialiser le tableau.
virtual bool editElement(Real element)=0
Méthode permettant de modifier un élement dans le tableau.
virtual bool isFixed()=0
Méthode permettant de savoir si le frag 'std::fixed' est actif ou non pour l'écriture des valeurs.
virtual Integer rowSize(const String &row_name)=0
Méthode permettant d'obtenir la taille d'une ligne. Incluant les hypotétiques 'trous' dans la ligne.
virtual bool addElementInRow(const String &row_name, Real element, bool create_if_not_exist=true)=0
Méthode permettant l'ajouter un élément sur une ligne.
virtual void clear()=0
Méthode permettant de remettre à zéro les tableaux.
virtual void setFixed(bool fixed)=0
Méthode permettant de définir le flag 'std::fixed' ou non.
virtual bool addElementsInSameColumn(ConstArrayView< Real > elements)=0
Méthode permettant d'ajouter plusieurs éléments sur la colonne dernièrement manipulée.
virtual bool addRows(StringConstArrayView rows_names)=0
Méthode permettant d'ajouter plusieurs lignes.
virtual bool editRowName(Integer position, const String &new_name)=0
Méthode permettant de changer le nom d'une ligne.
virtual Directory rootPath()=0
Accesseur 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 per...
virtual Directory outputPath()=0
Accesseur permettant de récupérer le chemin où sera enregistrés les tableaux.
virtual bool editElement(const String &column_name, const String &row_name, Real element)=0
Méthode permettant de modifier un élement dans le tableau.
virtual Integer columnSize(Integer position)=0
Méthode permettant d'obtenir la taille d'une colonne. Incluant les hypotétiques 'trous' dans la colon...
virtual Integer addColumn(const String &column_name, ConstArrayView< Real > elements)=0
Méthode permettant d'ajouter une colonne.
virtual void setForcedToUseScientificNotation(bool use_scientific)=0
Méthode permettant de définir le flag 'std::scientific' ou non.
virtual bool editElementLeft(Real element, bool update_last_position=true)=0
Méthode permettant d'éditer un élément à gauche du dernier élement dernièrement manipulé (même ligne/...
Référence à une instance.
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
ConstArrayView< String > StringConstArrayView
Equivalent C d'un tableau à une dimension de chaînes de caractères.
Definition UtilsTypes.h:579
Int32 Integer
Type représentant un entier.
UniqueArray< Real > RealUniqueArray
Tableau dynamique à une dimension de réels.
Definition UtilsTypes.h:436
double Real
Type représentant un réel.