![]() |
OR-Tools
8.2
|
NOLINT.
The PropagationBaseObject is a subclass of BaseObject that is also friend to the Solver class. It allows accessing methods useful when writing new constraints or new expressions.
Definition at line 3167 of file constraint_solver.h.
Public Member Functions | |
PropagationBaseObject (Solver *const s) | |
~PropagationBaseObject () override | |
std::string | DebugString () const override |
Solver * | solver () const |
void | FreezeQueue () |
This method freezes the propagation queue. More... | |
void | UnfreezeQueue () |
This method unfreezes the propagation queue. More... | |
void | EnqueueDelayedDemon (Demon *const d) |
This method pushes the demon onto the propagation queue. More... | |
void | EnqueueVar (Demon *const d) |
void | ExecuteAll (const SimpleRevFIFO< Demon * > &demons) |
void | EnqueueAll (const SimpleRevFIFO< Demon * > &demons) |
void | set_action_on_fail (Solver::Action a) |
void | reset_action_on_fail () |
This method clears the failure callback. More... | |
void | set_variable_to_clean_on_fail (IntVar *v) |
Shortcut for variable cleaner. More... | |
virtual std::string | name () const |
Object naming. More... | |
void | set_name (const std::string &name) |
bool | HasName () const |
Returns whether the object has been named or not. More... | |
virtual std::string | BaseName () const |
Returns a base name for automatic naming. More... | |
|
inlineexplicit |
Definition at line 3169 of file constraint_solver.h.
|
inlineoverride |
Definition at line 3170 of file constraint_solver.h.
|
virtual |
Returns a base name for automatic naming.
Reimplemented in BooleanVar.
Definition at line 2515 of file constraint_solver.cc.
|
inlineoverridevirtual |
Reimplemented from BaseObject.
Reimplemented in Constraint, SequenceVar, Assignment, Pack, BooleanVar, IfThenElseCt, PiecewiseLinearExpr, and GlobalVehicleBreaksConstraint.
Definition at line 3172 of file constraint_solver.h.
void EnqueueAll | ( | const SimpleRevFIFO< Demon * > & | demons | ) |
Definition at line 2521 of file constraint_solver.cc.
|
inline |
This method pushes the demon onto the propagation queue.
It will be processed directly if the queue is empty. It will be enqueued according to its priority otherwise.
Definition at line 3192 of file constraint_solver.h.
|
inline |
Definition at line 3193 of file constraint_solver.h.
void ExecuteAll | ( | const SimpleRevFIFO< Demon * > & | demons | ) |
Definition at line 2517 of file constraint_solver.cc.
|
inline |
This method freezes the propagation queue.
It is useful when you need to apply multiple modifications at once.
Definition at line 3183 of file constraint_solver.h.
bool HasName | ( | ) | const |
Returns whether the object has been named or not.
Definition at line 2513 of file constraint_solver.cc.
|
virtual |
Object naming.
Reimplemented in PiecewiseLinearExpr.
Definition at line 2505 of file constraint_solver.cc.
|
inline |
This method clears the failure callback.
Definition at line 3206 of file constraint_solver.h.
|
inline |
Definition at line 3200 of file constraint_solver.h.
void set_name | ( | const std::string & | name | ) |
Definition at line 2509 of file constraint_solver.cc.
|
inline |
Shortcut for variable cleaner.
Definition at line 3209 of file constraint_solver.h.
|
inline |
Definition at line 3179 of file constraint_solver.h.
|
inline |
This method unfreezes the propagation queue.
All modifications that happened when the queue was frozen will be processed.
Definition at line 3187 of file constraint_solver.h.