diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index bcece79..b928c5d 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -49,5 +49,8 @@ target_link_libraries(b_main PyClassifiers BayesNet ArffFiles mdlp)
# b_manage
set(manage_sources b_manage.cc ManageResults.cc CommandParser.cc Results.cc)
list(TRANSFORM manage_sources PREPEND manage/)
-add_executable(b_manage ${manage_sources} main/Result.cc reports/ReportConsole.cc reports/ReportExcel.cc reports/ReportBase.cc reports/ExcelFile.cc common/Datasets.cc common/Dataset.cc)
+add_executable(b_manage ${manage_sources} main/Result.cc
+ reports/ReportConsole.cc reports/ReportExcel.cc reports/ReportExcelCompared.cc reports/ReportBase.cc reports/ExcelFile.cc
+ common/Datasets.cc common/Dataset.cc
+)
target_link_libraries(b_manage "${TORCH_LIBRARIES}" "${XLSXWRITER_LIB}" ArffFiles mdlp)
diff --git a/src/manage/ManageResults.cc b/src/manage/ManageResults.cc
index 078773f..fc4de4b 100644
--- a/src/manage/ManageResults.cc
+++ b/src/manage/ManageResults.cc
@@ -7,6 +7,7 @@
#include "Paths.h"
#include "ReportConsole.h"
#include "ReportExcel.h"
+#include "ReportExcelCompared.h"
namespace platform {
@@ -84,6 +85,14 @@ namespace platform {
std::cout << "Not done!" << std::endl;
return false;
}
+ void ManageResults::report_compared(const int index_A, const int index_B)
+ {
+ std::cout << "Comparing " << results.at(index_A).getFilename() << " with " << results.at(index_B).getFilename() << std::endl;
+ auto data_A = results.at(index_A).getJson();
+ auto data_B = results.at(index_B).getJson();
+ ReportExcelCompared reporter(data_A, data_B);
+ reporter.report();
+ }
void ManageResults::report(const int index, const bool excelReport)
{
std::cout << Colors::YELLOW() << "Reporting " << results.at(index).getFilename() << std::endl;
@@ -140,7 +149,7 @@ namespace platform {
void ManageResults::menu()
{
char option;
- int index, subIndex;
+ int index, subIndex, index_A = -1, index_B = -1;
bool finished = false;
std::string filename;
// tuple