Generated on Sat May 25 2013 18:00:46 for Gecode by doxygen 1.8.3.1
Gecode::FlatZinc::AuxVarBrancher Class Reference

Branching on the introduced variables. More...

Classes

class  Choice
 Choice that only signals failure or success More...
 

Public Member Functions

virtual bool status (const Space &_home) const
 Check status of brancher, return true if alternatives left. More...
 
virtual Choicechoice (Space &home)
 Return choice. More...
 
virtual Choicechoice (const Space &, Archive &e)
 Return choice. More...
 
virtual ExecStatus commit (Space &, const Gecode::Choice &c, unsigned int)
 Perform commit for choice c. More...
 
virtual Actorcopy (Space &home, bool share)
 Copy brancher. More...
 
virtual size_t dispose (Space &)
 Delete brancher and return its size. More...
 
- Public Member Functions inherited from Gecode::Brancher
unsigned int id (void) const
 Return unsigned brancher id. More...
 

Static Public Member Functions

static void post (Home home)
 Post brancher. More...
 

Protected Member Functions

 AuxVarBrancher (Home home)
 Construct brancher. More...
 
 AuxVarBrancher (Space &home, bool share, AuxVarBrancher &b)
 Copy constructor. More...
 
- Protected Member Functions inherited from Gecode::Brancher
 Brancher (Home home)
 Constructor for creation. More...
 
 Brancher (Space &home, bool share, Brancher &b)
 Constructor for cloning b. More...
 

Protected Attributes

bool done
 Flag whether brancher is done. More...
 

Detailed Description

Branching on the introduced variables.

This brancher makes sure that when a solution is found for the model variables, all introduced variables are either assigned, or the solution can be extended to a solution of the introduced variables.

The advantage over simply branching over the introduced variables is that only one such extension will be searched for, instead of enumerating all possible (equivalent) extensions.

Definition at line 66 of file flatzinc.cpp.

Constructor & Destructor Documentation

Gecode::FlatZinc::AuxVarBrancher::AuxVarBrancher ( Home  home)
inlineprotected

Construct brancher.

Definition at line 71 of file flatzinc.cpp.

Gecode::FlatZinc::AuxVarBrancher::AuxVarBrancher ( Space home,
bool  share,
AuxVarBrancher b 
)
inlineprotected

Copy constructor.

Definition at line 73 of file flatzinc.cpp.

Member Function Documentation

virtual bool Gecode::FlatZinc::AuxVarBrancher::status ( const Space _home) const
inlinevirtual

Check status of brancher, return true if alternatives left.

Implements Gecode::Brancher.

Definition at line 98 of file flatzinc.cpp.

virtual Choice* Gecode::FlatZinc::AuxVarBrancher::choice ( Space home)
inlinevirtual

Return choice.

Implements Gecode::Brancher.

Definition at line 117 of file flatzinc.cpp.

virtual Choice* Gecode::FlatZinc::AuxVarBrancher::choice ( const Space ,
Archive e 
)
inlinevirtual

Return choice.

Implements Gecode::Brancher.

Definition at line 139 of file flatzinc.cpp.

virtual ExecStatus Gecode::FlatZinc::AuxVarBrancher::commit ( Space ,
const Gecode::Choice c,
unsigned int   
)
inlinevirtual

Perform commit for choice c.

Implements Gecode::Brancher.

Definition at line 144 of file flatzinc.cpp.

virtual Actor* Gecode::FlatZinc::AuxVarBrancher::copy ( Space home,
bool  share 
)
inlinevirtual

Copy brancher.

Implements Gecode::Actor.

Definition at line 148 of file flatzinc.cpp.

static void Gecode::FlatZinc::AuxVarBrancher::post ( Home  home)
inlinestatic

Post brancher.

Definition at line 152 of file flatzinc.cpp.

virtual size_t Gecode::FlatZinc::AuxVarBrancher::dispose ( Space )
inlinevirtual

Delete brancher and return its size.

Reimplemented from Gecode::Actor.

Definition at line 156 of file flatzinc.cpp.

Member Data Documentation

bool Gecode::FlatZinc::AuxVarBrancher::done
protected

Flag whether brancher is done.

Definition at line 69 of file flatzinc.cpp.


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