Google OR-Tools v9.12
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::Trace Class Reference

-------— Trace -------— More...

Inheritance diagram for operations_research::Trace:
operations_research::PropagationMonitor operations_research::SearchMonitor operations_research::BaseObject

Public Member Functions

 Trace (Solver *const s)
 
 ~Trace () override
 
void BeginConstraintInitialPropagation (Constraint *const constraint) override
 Propagation events.
 
void EndConstraintInitialPropagation (Constraint *const constraint) override
 
void BeginNestedConstraintInitialPropagation (Constraint *const parent, Constraint *const nested) override
 
void EndNestedConstraintInitialPropagation (Constraint *const parent, Constraint *const nested) override
 
void RegisterDemon (Demon *const demon) override
 
void BeginDemonRun (Demon *const demon) override
 
void EndDemonRun (Demon *const demon) override
 
void StartProcessingIntegerVariable (IntVar *const var) override
 
void EndProcessingIntegerVariable (IntVar *const var) override
 
void PushContext (const std::string &context) override
 
void PopContext () override
 
void SetMin (IntExpr *const expr, int64_t new_min) override
 IntExpr modifiers.
 
void SetMax (IntExpr *const expr, int64_t new_max) override
 
void SetRange (IntExpr *const expr, int64_t new_min, int64_t new_max) override
 
void SetMin (IntVar *const var, int64_t new_min) override
 IntVar modifiers.
 
void SetMax (IntVar *const var, int64_t new_max) override
 
void SetRange (IntVar *const var, int64_t new_min, int64_t new_max) override
 
void RemoveValue (IntVar *const var, int64_t value) override
 
void SetValue (IntVar *const var, int64_t value) override
 
void RemoveInterval (IntVar *const var, int64_t imin, int64_t imax) override
 
void SetValues (IntVar *const var, const std::vector< int64_t > &values) override
 
void RemoveValues (IntVar *const var, const std::vector< int64_t > &values) override
 
void SetStartMin (IntervalVar *const var, int64_t new_min) override
 IntervalVar modifiers.
 
void SetStartMax (IntervalVar *const var, int64_t new_max) override
 
void SetStartRange (IntervalVar *const var, int64_t new_min, int64_t new_max) override
 
void SetEndMin (IntervalVar *const var, int64_t new_min) override
 
void SetEndMax (IntervalVar *const var, int64_t new_max) override
 
void SetEndRange (IntervalVar *const var, int64_t new_min, int64_t new_max) override
 
void SetDurationMin (IntervalVar *const var, int64_t new_min) override
 
void SetDurationMax (IntervalVar *const var, int64_t new_max) override
 
void SetDurationRange (IntervalVar *const var, int64_t new_min, int64_t new_max) override
 
void SetPerformed (IntervalVar *const var, bool value) override
 
void RankFirst (SequenceVar *const var, int index) override
 SequenceVar modifiers.
 
void RankNotFirst (SequenceVar *const var, int index) override
 
void RankLast (SequenceVar *const var, int index) override
 
void RankNotLast (SequenceVar *const var, int index) override
 
void RankSequence (SequenceVar *const var, const std::vector< int > &rank_first, const std::vector< int > &rank_last, const std::vector< int > &unperformed) override
 
void Add (PropagationMonitor *const monitor)
 Does not take ownership of monitor.
 
void Install () override
 
std::string DebugString () const override
 
- Public Member Functions inherited from operations_research::PropagationMonitor
 PropagationMonitor (Solver *solver)
 -------— Propagation Monitor --------—
 
 ~PropagationMonitor () override
 
- Public Member Functions inherited from operations_research::SearchMonitor
 SearchMonitor (Solver *const s)
 
 SearchMonitor (const SearchMonitor &)=delete
 This type is neither copyable nor movable.
 
SearchMonitoroperator= (const SearchMonitor &)=delete
 
 ~SearchMonitor () override
 
virtual void EnterSearch ()
 Beginning of the search.
 
virtual void RestartSearch ()
 Restart the search.
 
virtual void ExitSearch ()
 End of the search.
 
virtual void BeginNextDecision (DecisionBuilder *b)
 Before calling DecisionBuilder::Next.
 
virtual void EndNextDecision (DecisionBuilder *b, Decision *d)
 After calling DecisionBuilder::Next, along with the returned decision.
 
virtual void ApplyDecision (Decision *d)
 Before applying the decision.
 
virtual void RefuteDecision (Decision *d)
 Before refuting the decision.
 
virtual void AfterDecision (Decision *d, bool apply)
 
virtual void BeginFail ()
 Just when the failure occurs.
 
virtual void EndFail ()
 After completing the backtrack.
 
virtual void BeginInitialPropagation ()
 Before the initial propagation.
 
virtual void EndInitialPropagation ()
 After the initial propagation.
 
virtual bool AcceptSolution ()
 
virtual bool AtSolution ()
 
virtual void NoMoreSolutions ()
 When the search tree is finished.
 
virtual bool LocalOptimum ()
 
virtual bool AcceptDelta (Assignment *delta, Assignment *deltadelta)
 
virtual void AcceptNeighbor ()
 After accepting a neighbor during local search.
 
virtual void AcceptUncheckedNeighbor ()
 After accepting an unchecked neighbor during local search.
 
virtual bool IsUncheckedSolutionLimitReached ()
 
virtual void PeriodicCheck ()
 Periodic call to check limits in long running methods.
 
virtual int ProgressPercent ()
 
virtual void Accept (ModelVisitor *visitor) const
 Accepts the given model visitor.
 
Solversolver () const
 
- Public Member Functions inherited from operations_research::BaseObject
 BaseObject ()
 
 BaseObject (const BaseObject &)=delete
 This type is neither copyable nor movable.
 
BaseObjectoperator= (const BaseObject &)=delete
 
virtual ~BaseObject ()
 

Additional Inherited Members

- Static Public Attributes inherited from operations_research::SearchMonitor
static constexpr int kNoProgress = -1
 
- Protected Member Functions inherited from operations_research::SearchMonitor
void ListenToEvent (Solver::MonitorEvent event)
 

Detailed Description

-------— Trace -------—

Definition at line 2946 of file constraint_solver.cc.

Constructor & Destructor Documentation

◆ Trace()

operations_research::Trace::Trace ( Solver *const s)
inlineexplicit

Definition at line 2948 of file constraint_solver.cc.

◆ ~Trace()

operations_research::Trace::~Trace ( )
inlineoverride

Definition at line 2950 of file constraint_solver.cc.

Member Function Documentation

◆ Add()

void operations_research::Trace::Add ( PropagationMonitor *const monitor)
inline

Does not take ownership of monitor.

Definition at line 3136 of file constraint_solver.cc.

◆ BeginConstraintInitialPropagation()

void operations_research::Trace::BeginConstraintInitialPropagation ( Constraint *const constraint)
inlineoverridevirtual

Propagation events.

Implements operations_research::PropagationMonitor.

Definition at line 2952 of file constraint_solver.cc.

◆ BeginDemonRun()

void operations_research::Trace::BeginDemonRun ( Demon *const demon)
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2981 of file constraint_solver.cc.

◆ BeginNestedConstraintInitialPropagation()

void operations_research::Trace::BeginNestedConstraintInitialPropagation ( Constraint *const parent,
Constraint *const nested )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2963 of file constraint_solver.cc.

◆ DebugString()

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

Reimplemented from operations_research::PropagationMonitor.

Definition at line 3146 of file constraint_solver.cc.

◆ EndConstraintInitialPropagation()

void operations_research::Trace::EndConstraintInitialPropagation ( Constraint *const constraint)
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2958 of file constraint_solver.cc.

◆ EndDemonRun()

void operations_research::Trace::EndDemonRun ( Demon *const demon)
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2985 of file constraint_solver.cc.

◆ EndNestedConstraintInitialPropagation()

void operations_research::Trace::EndNestedConstraintInitialPropagation ( Constraint *const parent,
Constraint *const nested )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2970 of file constraint_solver.cc.

◆ EndProcessingIntegerVariable()

void operations_research::Trace::EndProcessingIntegerVariable ( IntVar *const var)
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2993 of file constraint_solver.cc.

◆ Install()

void operations_research::Trace::Install ( )
inlineoverridevirtual

The trace will dispatch propagation events. It needs to listen to search events.

Reimplemented from operations_research::PropagationMonitor.

Definition at line 3144 of file constraint_solver.cc.

◆ PopContext()

void operations_research::Trace::PopContext ( )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3001 of file constraint_solver.cc.

◆ PushContext()

void operations_research::Trace::PushContext ( const std::string & context)
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2997 of file constraint_solver.cc.

◆ RankFirst()

void operations_research::Trace::RankFirst ( SequenceVar *const var,
int index )
inlineoverridevirtual

SequenceVar modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 3112 of file constraint_solver.cc.

◆ RankLast()

void operations_research::Trace::RankLast ( SequenceVar *const var,
int index )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3120 of file constraint_solver.cc.

◆ RankNotFirst()

void operations_research::Trace::RankNotFirst ( SequenceVar *const var,
int index )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3116 of file constraint_solver.cc.

◆ RankNotLast()

void operations_research::Trace::RankNotLast ( SequenceVar *const var,
int index )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3124 of file constraint_solver.cc.

◆ RankSequence()

void operations_research::Trace::RankSequence ( SequenceVar *const var,
const std::vector< int > & rank_first,
const std::vector< int > & rank_last,
const std::vector< int > & unperformed )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3128 of file constraint_solver.cc.

◆ RegisterDemon()

void operations_research::Trace::RegisterDemon ( Demon *const demon)
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2977 of file constraint_solver.cc.

◆ RemoveInterval()

void operations_research::Trace::RemoveInterval ( IntVar *const var,
int64_t imin,
int64_t imax )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3052 of file constraint_solver.cc.

◆ RemoveValue()

void operations_research::Trace::RemoveValue ( IntVar *const var,
int64_t value )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3044 of file constraint_solver.cc.

◆ RemoveValues()

void operations_research::Trace::RemoveValues ( IntVar *const var,
const std::vector< int64_t > & values )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3061 of file constraint_solver.cc.

◆ SetDurationMax()

void operations_research::Trace::SetDurationMax ( IntervalVar *const var,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3098 of file constraint_solver.cc.

◆ SetDurationMin()

void operations_research::Trace::SetDurationMin ( IntervalVar *const var,
int64_t new_min )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3094 of file constraint_solver.cc.

◆ SetDurationRange()

void operations_research::Trace::SetDurationRange ( IntervalVar *const var,
int64_t new_min,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3102 of file constraint_solver.cc.

◆ SetEndMax()

void operations_research::Trace::SetEndMax ( IntervalVar *const var,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3085 of file constraint_solver.cc.

◆ SetEndMin()

void operations_research::Trace::SetEndMin ( IntervalVar *const var,
int64_t new_min )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3081 of file constraint_solver.cc.

◆ SetEndRange()

void operations_research::Trace::SetEndRange ( IntervalVar *const var,
int64_t new_min,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3089 of file constraint_solver.cc.

◆ SetMax() [1/2]

void operations_research::Trace::SetMax ( IntExpr *const expr,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3012 of file constraint_solver.cc.

◆ SetMax() [2/2]

void operations_research::Trace::SetMax ( IntVar *const var,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3032 of file constraint_solver.cc.

◆ SetMin() [1/2]

void operations_research::Trace::SetMin ( IntExpr *const expr,
int64_t new_min )
inlineoverridevirtual

IntExpr modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 3006 of file constraint_solver.cc.

◆ SetMin() [2/2]

void operations_research::Trace::SetMin ( IntVar *const var,
int64_t new_min )
inlineoverridevirtual

IntVar modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 3026 of file constraint_solver.cc.

◆ SetPerformed()

void operations_research::Trace::SetPerformed ( IntervalVar *const var,
bool value )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3108 of file constraint_solver.cc.

◆ SetRange() [1/2]

void operations_research::Trace::SetRange ( IntExpr *const expr,
int64_t new_min,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3018 of file constraint_solver.cc.

◆ SetRange() [2/2]

void operations_research::Trace::SetRange ( IntVar *const var,
int64_t new_min,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3038 of file constraint_solver.cc.

◆ SetStartMax()

void operations_research::Trace::SetStartMax ( IntervalVar *const var,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3071 of file constraint_solver.cc.

◆ SetStartMin()

void operations_research::Trace::SetStartMin ( IntervalVar *const var,
int64_t new_min )
inlineoverridevirtual

IntervalVar modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 3067 of file constraint_solver.cc.

◆ SetStartRange()

void operations_research::Trace::SetStartRange ( IntervalVar *const var,
int64_t new_min,
int64_t new_max )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3075 of file constraint_solver.cc.

◆ SetValue()

void operations_research::Trace::SetValue ( IntVar *const var,
int64_t value )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3048 of file constraint_solver.cc.

◆ SetValues()

void operations_research::Trace::SetValues ( IntVar *const var,
const std::vector< int64_t > & values )
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 3056 of file constraint_solver.cc.

◆ StartProcessingIntegerVariable()

void operations_research::Trace::StartProcessingIntegerVariable ( IntVar *const var)
inlineoverridevirtual

Implements operations_research::PropagationMonitor.

Definition at line 2989 of file constraint_solver.cc.


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