ZonoOpt 2.4.0
Loading...
Searching...
No Matches
Public Member Functions | List of all members
ZonoOpt::ExternalSolverResults Struct Referenceabstract

Abstract base for external-solver-specific solution metadata. More...

#include <SolverDataStructures.hpp>

Inheritance diagram for ZonoOpt::ExternalSolverResults:
Inheritance graph
[legend]

Public Member Functions

virtual std::shared_ptr< ExternalSolverResultsclone () const =0
 Polymorphic copy; required so callers can deep-copy an OptSolution.
 
virtual std::string print () const
 Human-readable summary of the solver-specific fields.
 
virtual ~ExternalSolverResults ()=default
 

Detailed Description

Abstract base for external-solver-specific solution metadata.

When an OptSolution is produced by an external solver (Gurobi, SCIP, ...), OptSolution::external_results points to a polymorphic ExternalSolverResults subclass carrying the solver-native status code, node count, gap, etc. The user can dynamic_cast to the concrete subclass to extract that info:

if (auto* gr = dynamic_cast<const GurobiSolverResults*>(sol.external_results.get())) {
    std::cout << "Gurobi MIP nodes: " << gr->node_count << "\n";
}

Constructor & Destructor Documentation

◆ ~ExternalSolverResults()

virtual ZonoOpt::ExternalSolverResults::~ExternalSolverResults ( )
virtualdefault

Member Function Documentation

◆ clone()

virtual std::shared_ptr< ExternalSolverResults > ZonoOpt::ExternalSolverResults::clone ( ) const
pure virtual

Polymorphic copy; required so callers can deep-copy an OptSolution.

Implemented in ZonoOpt::GurobiSolverResults, and ZonoOpt::SCIPSolverResults.

◆ print()

virtual std::string ZonoOpt::ExternalSolverResults::print ( ) const
inlinevirtual

Human-readable summary of the solver-specific fields.

Reimplemented in ZonoOpt::GurobiSolverResults, and ZonoOpt::SCIPSolverResults.


The documentation for this struct was generated from the following file: