Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::math_opt::NonStreamableSolverInitArgumentsHelper< Implementation, impl_solver_type > Struct Template Reference

#include <non_streamable_solver_init_arguments.h>

Inheritance diagram for operations_research::math_opt::NonStreamableSolverInitArgumentsHelper< Implementation, impl_solver_type >:
operations_research::math_opt::NonStreamableSolverInitArguments

Public Member Functions

SolverTypeProto solver_type () const final
 Returns the type of solver that the implementation is for.
 
std::unique_ptr< const NonStreamableSolverInitArgumentsClone () const final
 
- Public Member Functions inherited from operations_research::math_opt::NonStreamableSolverInitArguments
virtual ~NonStreamableSolverInitArguments ()=default
 
virtual const NonStreamableCpSatInitArguments * ToNonStreamableCpSatInitArguments () const
 
virtual const NonStreamableGScipInitArguments * ToNonStreamableGScipInitArguments () const
 
virtual const NonStreamableGlopInitArguments * ToNonStreamableGlopInitArguments () const
 
virtual const NonStreamableGlpkInitArguments * ToNonStreamableGlpkInitArguments () const
 
virtual const NonStreamableGurobiInitArgumentsToNonStreamableGurobiInitArguments () const
 
virtual const NonStreamablePdlpInitArguments * ToNonStreamablePdlpInitArguments () const
 

Detailed Description

template<typename Implementation, SolverTypeProto impl_solver_type>
struct operations_research::math_opt::NonStreamableSolverInitArgumentsHelper< Implementation, impl_solver_type >

Base struct for implementations that automatically implements solver_type() and Clone() virtual methods.

The Clone() method is implemented with the copy constructor of the struct.

All that is left to the implementation is to provide are the solver specific field and the implementation of the ToNonStreamableXxxInitArguments() corresponding to the solver type.

Usage:

struct NonStreamableXxxInitArguments : public NonStreamableSolverInitArgumentsHelper< NonStreamableXxxInitArguments, SOLVER_TYPE_XXX> {

... some data member here ...
const NonStreamableXxxInitArguments*
ToNonStreamableXxxInitArguments() const { return this; }

};

Definition at line 126 of file non_streamable_solver_init_arguments.h.

Member Function Documentation

◆ Clone()

template<typename Implementation , SolverTypeProto impl_solver_type>
std::unique_ptr< const NonStreamableSolverInitArguments > operations_research::math_opt::NonStreamableSolverInitArgumentsHelper< Implementation, impl_solver_type >::Clone ( ) const
inlinefinalvirtual

Return a copy of this.

The NonStreamableSolverInitArgumentsHelper implements this automatically using the copy constructor (this base class is copyable intentionally).

Implements operations_research::math_opt::NonStreamableSolverInitArguments.

Definition at line 130 of file non_streamable_solver_init_arguments.h.

◆ solver_type()

template<typename Implementation , SolverTypeProto impl_solver_type>
SolverTypeProto operations_research::math_opt::NonStreamableSolverInitArgumentsHelper< Implementation, impl_solver_type >::solver_type ( ) const
inlinefinalvirtual

Returns the type of solver that the implementation is for.

Implements operations_research::math_opt::NonStreamableSolverInitArguments.

Definition at line 128 of file non_streamable_solver_init_arguments.h.


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