C++ Reference

C++ Reference: Routing

DecisionBuilderabstract

Detailed Description

A DecisionBuilder is responsible for creating the search tree.

The important method is Next(), which returns the next decision to execute.

Definition at line 3268 of file constraint_solver.h.

Public Member Functions

 DecisionBuilder ()
 
 ~DecisionBuilder () override
 
virtual DecisionNext (Solver *const s)=0
 This is the main method of the decision builder class. More...
 
std::string DebugString () const override
 
virtual void AppendMonitors (Solver *const solver, std::vector< SearchMonitor * > *const extras)
 This method will be called at the start of the search. More...
 
virtual void Accept (ModelVisitor *const visitor) const
 

Constructor & Destructor Documentation

◆ DecisionBuilder()

DecisionBuilder ( )
inline

Definition at line 3270 of file constraint_solver.h.

◆ ~DecisionBuilder()

~DecisionBuilder ( )
inlineoverride

Definition at line 3271 of file constraint_solver.h.

Member Function Documentation

◆ Accept()

virtual void Accept ( ModelVisitor *const  visitor) const
virtual

◆ AppendMonitors()

virtual void AppendMonitors ( Solver *const  solver,
std::vector< SearchMonitor * > *const  extras 
)
virtual

This method will be called at the start of the search.

It asks the decision builder if it wants to append search monitors to the list of active monitors for this search. Please note there are no checks at this point for duplication.

◆ DebugString()

std::string DebugString ( ) const
overridevirtual

Reimplemented from BaseObject.

Reimplemented in IntVarFilteredDecisionBuilder.

◆ Next()

virtual Decision * Next ( Solver *const  s)
pure virtual

This is the main method of the decision builder class.

It must return a decision (an instance of the class Decision). If it returns nullptr, this means that the decision builder has finished its work.

Implemented in IntVarFilteredDecisionBuilder.


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