Generated on: Thu Mar 29 07:46:58 PDT 2012 for custom file set | ||
|
||
// doxy/ or-tools/ src/ constraint_solver/ |
#include <constraint_solver.h>
Public Member Functions | |
Demon () | |
This indicates the priority of a demon. | |
virtual | ~Demon () |
virtual void | Run (Solver *const s)=0 |
This is the main callback of the demon. | |
virtual Solver::DemonPriority | priority () const |
This method returns the priority of the demon. | |
virtual string | DebugString () const |
void | inhibit (Solver *const s) |
This method inhibits the demon in the search tree below the current position. | |
void | desinhibit (Solver *const s) |
This method un-inhibit the demon that was inhibited. | |
Friends | |
class | Queue |
It is the main object responsible for implementing the actual propagation of the constraint and pruning the inconsistent values in the domains of the variables. The main concept is that demons are listeners that are attached to the variables and listen to their modifications. There are two methods:
Definition at line 3153 of file constraint_solver.h.
operations_research::Demon::Demon | ( | ) | [inline] |
This indicates the priority of a demon.
Immediate demons are treated separately and corresponds to variables.
Definition at line 3157 of file constraint_solver.h.
virtual operations_research::Demon::~Demon | ( | ) | [inline, virtual] |
Definition at line 3158 of file constraint_solver.h.
virtual void operations_research::Demon::Run | ( | Solver *const | s | ) | [pure virtual] |
This is the main callback of the demon.
Implemented in operations_research::CallMethod0< T >, operations_research::CallMethod1< T, P >, operations_research::CallMethod2< T, P, Q >, operations_research::DelayedCallMethod0< T >, operations_research::DelayedCallMethod1< T, P >, and operations_research::DelayedCallMethod2< T, P, Q >.
Solver::DemonPriority operations_research::Demon::priority | ( | ) | const [virtual] |
This method returns the priority of the demon.
Demon class.
Usually a demon is fast, slow or normal. Immediate demons are reserved for internal use to maintain variables.
Reimplemented in operations_research::DelayedCallMethod0< T >, operations_research::DelayedCallMethod1< T, P >, and operations_research::DelayedCallMethod2< T, P, Q >.
Definition at line 109 of file constraint_solver.cc.
string operations_research::Demon::DebugString | ( | ) | const [virtual] |
Reimplemented from operations_research::BaseObject.
Reimplemented in operations_research::CallMethod0< T >, operations_research::CallMethod1< T, P >, operations_research::CallMethod2< T, P, Q >, operations_research::DelayedCallMethod0< T >, operations_research::DelayedCallMethod1< T, P >, and operations_research::DelayedCallMethod2< T, P, Q >.
Definition at line 113 of file constraint_solver.cc.
void operations_research::Demon::inhibit | ( | Solver *const | s | ) |
This method inhibits the demon in the search tree below the current position.
Definition at line 117 of file constraint_solver.cc.
void operations_research::Demon::desinhibit | ( | Solver *const | s | ) |
This method un-inhibit the demon that was inhibited.
Definition at line 123 of file constraint_solver.cc.
friend class Queue [friend] |
Definition at line 3178 of file constraint_solver.h.