From 2d30fc91a091de0cd71fb3b7f02ce2d07252cae0 Mon Sep 17 00:00:00 2001 From: bdemsky Date: Wed, 17 Oct 2018 14:00:42 -0700 Subject: [PATCH] add more data for loading information back --- src/Tuner/multituner.cc | 31 +++++++++++++++++++++++++++++-- src/Tuner/multituner.h | 2 ++ 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/Tuner/multituner.cc b/src/Tuner/multituner.cc index 3dcbacf..cc35abc 100644 --- a/src/Tuner/multituner.cc +++ b/src/Tuner/multituner.cc @@ -10,7 +10,7 @@ #define UNSETVALUE -1 -Problem::Problem(const char *_problem) : result(UNSETVALUE) { +Problem::Problem(const char *_problem) : problemnumber(-1), result(UNSETVALUE) { uint len = strlen(_problem); problem = (char *) ourmalloc(len + 1); memcpy(problem, _problem, len + 1); @@ -50,7 +50,9 @@ MultiTuner::~MultiTuner() { } void MultiTuner::addProblem(const char *filename) { - problems.push(new Problem(filename)); + Problem *p = new Problem(filename); + p->problemnumber = problems.getSize(); + problems.push(p); } void MultiTuner::printData() { @@ -76,6 +78,30 @@ void MultiTuner::addTuner(SearchTuner *tuner) { allTuners.push(t); } + +void MultiTuner::readData(uint numRuns) { + for (uint i = 0; i < numRuns; i++) { + ifstream myfile; + char buffer[512]; + uint tunernum; + snprintf(buffer, sizeof(buffer), "tunernum%u", i); + myfile.open (buffer, ios::in); + myfile >> tunernum; + myfile.close(); + + char problemname[512]; + snprintf(buffer, sizeof(buffer), "problem%u", i); + myfile.open(buffer, ios::in); + myfile.getline(problemname, sizeof(problemname)); + myfile.close(); + + + + + } + +} + long long MultiTuner::evaluate(Problem *problem, TunerRecord *tuner) { char buffer[512]; { @@ -87,6 +113,7 @@ long long MultiTuner::evaluate(Problem *problem, TunerRecord *tuner) { if (myfile.is_open()) { myfile << problem->getProblem() << endl; + myfile << problem->problemnumber << endl; myfile.close(); } } diff --git a/src/Tuner/multituner.h b/src/Tuner/multituner.h index 73201dd..1c654eb 100644 --- a/src/Tuner/multituner.h +++ b/src/Tuner/multituner.h @@ -12,6 +12,7 @@ public: ~Problem(); CMEMALLOC; private: + int problemnumber; int result; char *problem; friend class MultiTuner; @@ -40,6 +41,7 @@ public: ~MultiTuner(); void addProblem(const char *filename); void addTuner(SearchTuner *tuner); + void readData(uint numRuns); void tuneK(); void tuneComp(); void printData(); -- 2.34.1