Antares Xpansion
Investment simulations for Antares studies
Loading...
Searching...
No Matches
SolverFactory Class Reference

Public Member Functions

 SolverFactory (std::shared_ptr< ILoggerXpansion > logger=std::make_shared< EmptyLogger >())
 Constructor of SolverFactory, fills the list of available solvers.
 
std::shared_ptr< SolverAbstractcreate_solver (const std::string &solver_name) const
 Creates and returns to an object solver from the wanted implementation.
 
std::shared_ptr< SolverAbstractcreate_solver (const std::string &solver_name, const SolverLogManager &log_manager) const
 
std::shared_ptr< SolverAbstractcreate_solver (const std::string &solver_name, SOLVER_TYPE solver_type) const
 
std::shared_ptr< SolverAbstractcreate_solver (const std::string &solver_name, SOLVER_TYPE solver_type, const SolverLogManager &log_manager) const
 
std::shared_ptr< SolverAbstractcreate_solver (const SolverConfig &solver_config) const
 Creates and returns to an object solver from the wanted implementation.
 
std::shared_ptr< SolverAbstractcreate_solver (const SolverConfig &solver_config, SOLVER_TYPE solver_type) const
 
std::shared_ptr< SolverAbstractcreate_solver (const SolverConfig &solver_config, const SolverLogManager &log_manager) const
 
std::shared_ptr< SolverAbstractcreate_solver (const SolverConfig &solver_config, SOLVER_TYPE solver_type, const SolverLogManager &log_manager) const
 
const std::vector< std::string > & get_solvers_list () const
 Returns a reference to the list of available solvers.
 
bool is_xpress_available () const noexcept
 

Static Public Member Functions

static std::shared_ptr< SolverAbstractcopy_solver (const SolverAbstract &to_copy)
 Copy constructor : Creates and returns to an object solver from the wanted implementation by copying datas from same solver implementation.
 

Public Attributes

std::shared_ptr< ILoggerXpansionlogger_
 

Member Function Documentation

◆ copy_solver()

std::shared_ptr< SolverAbstract > SolverFactory::copy_solver ( const SolverAbstract & to_copy)
static

Copy constructor : Creates and returns to an object solver from the wanted implementation by copying datas from same solver implementation.

Parameters
to_copy: solver to copy

◆ create_solver() [1/2]

std::shared_ptr< SolverAbstract > SolverFactory::create_solver ( const SolverConfig & solver_config) const
nodiscard

Creates and returns to an object solver from the wanted implementation.

Parameters
solver_config: A solver configuration
solver_type: Type of the solver {INTEGER, CONTINUOUS}
log_manager: A logger

◆ create_solver() [2/2]

std::shared_ptr< SolverAbstract > SolverFactory::create_solver ( const std::string & solver_name) const
nodiscard

Creates and returns to an object solver from the wanted implementation.

Parameters
solver_name: Name of the solver to use
solver_type: Type of the solver {INTEGER, CONTINUOUS}
log_manager: A logger

The documentation for this class was generated from the following files: