Google OR-Tools: operations_research::PropagationBaseObject Class Reference

NOLINT. More...

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 3462 of file constraint_solver.h.

#include <constraint_solver.h>

operations_research::BaseObject operations_research::Assignment operations_research::Constraint operations_research::IntExpr operations_research::IntervalVar operations_research::SequenceVar operations_research::CastConstraint operations_research::DisjunctiveConstraint operations_research::LightIntFunctionElementCt< F > operations_research::LightIntIntFunctionElementCt< F > operations_research::LightIntIntIntFunctionElementCt< F > operations_research::Pack operations_research::TypeRegulationsConstraint operations_research::BaseIntExpr operations_research::IntVar

Public Member Functions

 PropagationBaseObject (Solver *const s)
 PropagationBaseObject (const PropagationBaseObject &)=delete
PropagationBaseObjectoperator= (const PropagationBaseObject &)=delete
 ~PropagationBaseObject () override
std::string DebugString () const override
Solversolver () const
void FreezeQueue ()
void UnfreezeQueue ()
void EnqueueDelayedDemon (Demon *const d)
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.
void set_variable_to_clean_on_fail (IntVar *v)
 Shortcut for variable cleaner.
virtual std::string name () const
 Object naming.
void set_name (absl::string_view name)
bool HasName () const
 Returns whether the object has been named or not.
virtual std::string BaseName () const
 Returns a base name for automatic naming.
Public Member Functions inherited from operations_research::BaseObject
 BaseObject ()
 BaseObject (const BaseObject &)=delete
BaseObjectoperator= (const BaseObject &)=delete
virtual ~BaseObject ()=default
operations_research::PropagationBaseObject::PropagationBaseObject ( Solver *const s)
inlineexplicit

◆ PropagationBaseObject() [2/2]

operations_research::PropagationBaseObject::PropagationBaseObject ( const PropagationBaseObject & )
delete

◆ ~PropagationBaseObject()

operations_research::PropagationBaseObject::~PropagationBaseObject ( )
inlineoverride

◆ BaseName()

std::string operations_research::PropagationBaseObject::BaseName ( ) const
virtual

◆ DebugString()

std::string operations_research::PropagationBaseObject::DebugString ( ) const
inlineoverridevirtual

◆ EnqueueAll()

void operations_research::PropagationBaseObject::EnqueueAll ( const SimpleRevFIFO< Demon * > & demons)

◆ EnqueueDelayedDemon()

void operations_research::PropagationBaseObject::EnqueueDelayedDemon ( Demon *const d)
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 3493 of file constraint_solver.h.

◆ EnqueueVar()

void operations_research::PropagationBaseObject::EnqueueVar ( Demon *const d)
inline

◆ ExecuteAll()

void operations_research::PropagationBaseObject::ExecuteAll ( const SimpleRevFIFO< Demon * > & demons)

◆ FreezeQueue()

void operations_research::PropagationBaseObject::FreezeQueue ( )
inline

This method freezes the propagation queue. It is useful when you need to apply multiple modifications at once.

Definition at line 3484 of file constraint_solver.h.

◆ HasName()

bool operations_research::PropagationBaseObject::HasName ( ) const

◆ name()

std::string operations_research::PropagationBaseObject::name ( ) const
virtual

◆ operator=()

PropagationBaseObject & operations_research::PropagationBaseObject::operator= ( const PropagationBaseObject & )
delete

◆ reset_action_on_fail()

void operations_research::PropagationBaseObject::reset_action_on_fail ( )
inline

◆ set_action_on_fail()

void operations_research::PropagationBaseObject::set_action_on_fail ( Solver::Action a)
inline

◆ set_name()

void operations_research::PropagationBaseObject::set_name ( absl::string_view name)

◆ set_variable_to_clean_on_fail()

void operations_research::PropagationBaseObject::set_variable_to_clean_on_fail ( IntVar * v)
inline

◆ solver()

Solver * operations_research::PropagationBaseObject::solver ( ) const
inline

◆ UnfreezeQueue()

void operations_research::PropagationBaseObject::UnfreezeQueue ( )
inline

This method unfreezes the propagation queue. All modifications that happened when the queue was frozen will be processed.

Definition at line 3488 of file constraint_solver.h.


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