5#include "SolverConfig.h"
6#include "antares-xpansion/multisolver_interface/SolverAbstract.h"
7#include "antares-xpansion/xpansion_interfaces/ILogger.h"
26 static std::vector<std::string> GetAvailableSolvers(std::shared_ptr<ILoggerXpansion> logger);
43 std::vector<std::string> _available_solvers;
50 std::shared_ptr<ILoggerXpansion> logger = std::make_shared<EmptyLogger>());
65 const SOLVER_TYPE solver_type)
const;
67 const SOLVER_TYPE solver_type,
80 const SOLVER_TYPE solver_type)
const;
84 const SOLVER_TYPE solver_type,
101 bool isXpress_available_ =
false;
103 std::shared_ptr<ILoggerXpansion> logger_;
std::shared_ptr< SolverAbstract > Ptr
Definition SolverAbstract.h:215
Class to store the configuration of a solver Invariant: name is lowercase.
Definition SolverConfig.h:12
Definition SolverFactory.h:41
SolverAbstract::Ptr create_solver(const std::string &solver_name) const
Creates and returns to an object solver from the wanted implementation.
Definition SolverFactory.cpp:107
SolverAbstract::Ptr copy_solver(SolverAbstract::Ptr to_copy) const
Copy constructor : Creates and returns to an object solver from the wanted implementation by copying ...
Definition SolverFactory.cpp:267
const std::vector< std::string > & get_solvers_list() const
Returns a reference to the list of available solvers.
Definition SolverFactory.cpp:272
SolverFactory(std::shared_ptr< ILoggerXpansion > logger=std::make_shared< EmptyLogger >())
Constructor of SolverFactory, fills the list of available solvers.
Definition SolverFactory.cpp:70
Definition SolverFactory.h:24
static std::vector< std::string > GetSupportedSolvers()
Returns a list of supported solvers Supported doesn't mean available, for exemple if licence are not ...
Definition SolverFactory.cpp:56
Definition SolverAbstract.h:17