2#include <antares-xpansion/benders/benders_core/BendersBase.h>
3#include <antares-xpansion/benders/benders_core/BendersMethod.h>
4#include <antares-xpansion/benders/benders_core/CriterionInputDataReader.h>
5#include <antares-xpansion/benders/benders_core/common.h>
6#include <antares-xpansion/benders/factories/BendersPluginFactory.h>
7#include <antares-xpansion/benders/plugins/BendersPlugin.h>
34 std::unique_ptr<BendersBase> benders{
nullptr};
38 BENDERSMETHOD method{BENDERSMETHOD::BENDERS};
43 std::shared_ptr<ILogger> logger;
44 std::shared_ptr<Output::OutputWriter> writer;
45 std::shared_ptr<MathLoggerDriver> math_log_driver;
50 boost::mpi::communicator* world,
52 auto PrepareForExecution(
bool outer_loop) -> std::optional<BendersEnvironment>;
59 ProcessCriterionInput();
61 std::set<std::string> ReadAreaFile();
66 boost::mpi::communicator* world_ =
nullptr;
67 std::shared_ptr<BendersPluginFactory> benders_plugin_factory_;
69 BENDERSMETHOD method_;
70 std::string context_ = bendersmethod_to_string(BENDERSMETHOD::BENDERS);
71 static constexpr const char*
const LOLD_FILE =
"LOLD.txt";
Definition BendersBase.h:40
Definition BendersFactory.h:30
abstract class for operational logs
Definition ILogger.h:184
Definition BendersMathLogger.h:213
Definition SimulationOptions.h:6
Definition BendersFactory.h:33
Definition BendersFactory.h:42