Fix bad unique pointer usage

This commit is contained in:
2024-12-11 00:42:28 +01:00
parent 2d3b516bbe
commit a4f21371c3
2 changed files with 47 additions and 35 deletions

View File

@@ -33,15 +33,22 @@ void Program::run()
runSolvers();
}
template <class T>
void runSolver(SolverEngine& solverEngine)
{
auto solver = std::make_unique<T>();
solverEngine.run(*solver);
}
void Program::runSolvers()
{
SolverEngine solverEngine{ getInputPaths() };
solverEngine.run(*std::make_unique<HistorianHysteria>());
solverEngine.run(*std::make_unique<RedNosedReports>());
solverEngine.run(*std::make_unique<MullItOver>());
solverEngine.run(*std::make_unique<CeresSearch>());
solverEngine.run(*std::make_unique<PrintQueue>());
solverEngine.run(*std::make_unique<GuardGallivant>());
runSolver<HistorianHysteria>(solverEngine);
runSolver<RedNosedReports>(solverEngine);
runSolver<MullItOver>(solverEngine);
runSolver<CeresSearch>(solverEngine);
runSolver<PrintQueue>(solverEngine);
runSolver<GuardGallivant>(solverEngine);
}
std::vector<std::string> Program::getInputPaths() const