14#ifndef ARCANE_STD_SIMPLETABLEINTERNALCOMPARATOR_H
15#define ARCANE_STD_SIMPLETABLEINTERNALCOMPARATOR_H
20#include "arcane/ISimpleTableInternalComparator.h"
21#include "arcane/ISimpleTableInternalMng.h"
22#include "arcane/ISimpleTableReaderWriter.h"
24#include "arcane/std/SimpleTableInternalMng.h"
25#include "arcane/utils/Array.h"
26#include "arcane/utils/FatalErrorException.h"
39class SimpleTableInternalComparator
44 : m_simple_table_internal_reference(sti_ref)
45 , m_simple_table_internal_to_compare(sti_to_compare)
46 , m_simple_table_internal_mng_reference(m_simple_table_internal_reference)
47 , m_simple_table_internal_mng_to_compare(m_simple_table_internal_to_compare)
49 , m_is_excluding_regex_rows(
false)
51 , m_is_excluding_regex_columns(
false)
52 , m_is_excluding_array_rows(
false)
53 , m_is_excluding_array_columns(
false)
58 ARCANE_FATAL(
"La réference passée en paramètre est Null.");
61 SimpleTableInternalComparator()
62 : m_simple_table_internal_reference()
63 , m_simple_table_internal_to_compare()
64 , m_simple_table_internal_mng_reference()
65 , m_simple_table_internal_mng_to_compare()
67 , m_is_excluding_regex_rows(
false)
69 , m_is_excluding_regex_columns(
false)
70 , m_is_excluding_array_rows(
false)
71 , m_is_excluding_array_columns(
false)
77 virtual ~SimpleTableInternalComparator() =
default;
80 bool compare(
bool compare_dimension_too)
override;
121 bool m_is_excluding_regex_rows;
124 bool m_is_excluding_regex_columns;
127 bool m_is_excluding_array_rows;
130 bool m_is_excluding_array_columns;
132 std::map<String, Real> m_epsilons_column;
133 std::map<String, Real> m_epsilons_row;
#define ARCANE_FATAL(...)
Macro envoyant une exception FatalErrorException.
Interface de classe représentant un comparateur de SimpleTableInternal (aka STI).
Référence à une instance.
bool isNull() const
Indique si le compteur référence une instance non nulle.
bool compare(bool compare_dimension_too) override
Méthode permettant de comparer les valeurs des deux STI.
Ref< SimpleTableInternal > internalRef() override
Méthode permettant de récupérer une référence vers l'objet SimpleTableInternal "de référence" utilisé...
bool _exploreColumn(const String &column_name)
Méthode permettant de savoir si la colonne avec le nom column_name doit être exploré ou non.
void setInternalToCompare(const Ref< SimpleTableInternal > &simple_table_internal) override
Méthode permettant de définir une référence vers SimpleTableInternal "à comparer".
void isAnArrayExclusiveRows(bool is_exclusive) override
Méthode permettant de définir si le tableau de lignes représente les lignes à inclure dans la compara...
void setInternalRef(const Ref< SimpleTableInternal > &simple_table_internal) override
Méthode permettant de définir une référence vers un SimpleTableInternal "de référence".
void isAnArrayExclusiveColumns(bool is_exclusive) override
Méthode permettant de définir si le tableau de colonnes représente les colonnes à inclure dans la com...
Ref< SimpleTableInternal > internalToCompare() override
Méthode permettant de récupérer une référence vers l'objet SimpleTableInternal "à comparer" utilisé.
bool addEpsilonRow(const String &row_name, Real epsilon) override
Méthode permettant de définir un epsilon pour une ligne donnée. Cet epsilon doit être positif pour êt...
bool addRowForComparing(const String &row_name) override
Méthode permettant d'ajouter une ligne dans la liste des lignes à comparer.
bool _exploreRows(const String &row_name)
Méthode permettant de savoir si la ligne avec le nom column_name doit être exploré ou non.
bool compareElem(const String &column_name, const String &row_name) override
Méthode permettant de comparer uniquement un élement. Les deux SimpleTableInternal sont représentés p...
void isARegexExclusiveRows(bool is_exclusive) override
Méthode permettant de demander à ce que l'expression régulière exclut des lignes au lieu d'en inclure...
bool addColumnForComparing(const String &column_name) override
Méthode permettant d'ajouter une colonne dans la liste des colonnes à comparer.
void editRegexColumns(const String ®ex_column) override
Méthode permettant d'ajouter une expression régulière permettant de déterminer les colonnes à compare...
void editRegexRows(const String ®ex_row) override
Méthode permettant d'ajouter une expression régulière permettant de déterminer les lignes à comparer.
void isARegexExclusiveColumns(bool is_exclusive) override
Méthode permettant de demander à ce que l'expression régulière exclut des colonnes au lieu d'en inclu...
void clearComparator() override
Méthode permettant de vider les tableaux de comparaison et les expressions régulières....
bool addEpsilonColumn(const String &column_name, Real epsilon) override
Méthode permettant de définir un epsilon pour une colonne donnée. Cet epsilon doit être positif pour ...
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
double Real
Type représentant un réel.
UniqueArray< String > StringUniqueArray
Tableau dynamique à une dimension de chaînes de caractères.