Gecode::SetVar Class Reference
[Set variables]
List of all members.Detailed Description
Set variables
Definition at line 784 of file var.icc.
Constructors and initialization | |
SetVar (void) | |
Default constructor. | |
SetVar (Space *home) | |
Initialize variable with empty greatest lower and full least upper bound. | |
void | init (Space *home) |
Initialize variable with empty greatest lower and full least upper bound. | |
SetVar (Space *home, int glbMin, int glbMax, int lubMin, int lubMax, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) | |
Initialize variable with given bounds and cardinality. | |
void | init (Space *home, int glbMin, int glbMax, int lubMin, int lubMax, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) |
Initialize variable with given bounds and cardinality. | |
SetVar (Space *home, const IntSet &glbD, int lubMin, int lubMax, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) | |
Initialize variable with given bounds and cardinality. | |
void | init (Space *home, const IntSet &glbD, int lubMin, int lubMax, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) |
Initialize variable with given bounds and cardinality. | |
SetVar (Space *home, int glbMin, int glbMax, const IntSet &lubD, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) | |
Initialize variable with given bounds and cardinality. | |
void | init (Space *home, int glbMin, int glbMax, const IntSet &lubD, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) |
Initialize variable with given bounds and cardinality. | |
SetVar (Space *home, const IntSet &glbD, const IntSet &lubD, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) | |
Initialize variable with given bounds and cardinality. | |
void | init (Space *home, const IntSet &glbD, const IntSet &lubD, unsigned int cardMin=0, unsigned int cardMax=Limits::Set::card_max) |
Initialize variable with given bounds and cardinality. | |
Variable implementation access | |
Set::SetVarImp * | variable (void) const |
Return set variable implementation. | |
Value access | |
unsigned int | glbSize (void) const |
Return number of elements in the greatest lower bound. | |
unsigned int | lubSize (void) const |
Return number of elements in the least upper bound. | |
unsigned int | unknownSize (void) const |
Return number of unknown elements (elements in lub but not in glb). | |
unsigned int | cardMin (void) const |
Return cardinality minimum. | |
unsigned int | cardMax (void) const |
Return cardinality maximum. | |
int | lubMin (void) const |
Return minimum element of least upper bound. | |
int | lubMax (void) const |
Return maximum element of least upper bound. | |
int | glbMin (void) const |
Return minimum element of greatest lower bound. | |
int | glbMax (void) const |
Return maximum of greatest lower bound. | |
Domain tests | |
bool | contains (int i) const |
Test whether i is in greatest lower bound. | |
bool | notContains (int i) const |
Test whether i is not in the least upper bound. | |
bool | assigned (void) const |
Test whether this variable is assigned. | |
Cloning | |
void | update (Space *home, bool, SetVar &x) |
Update this variable to be a clone of variable x. | |
Related Functions | |
(Note that these are not member functions.) | |
std::ostream & | operator<< (std::ostream &, const Gecode::SetVar &x) |
Print set variable x. |
Constructor & Destructor Documentation
Gecode::SetVar::SetVar | ( | void | ) | [inline] |
Gecode::SetVar::SetVar | ( | Space * | home | ) |
Gecode::SetVar::SetVar | ( | Space * | home, | |
int | glbMin, | |||
int | glbMax, | |||
int | lubMin, | |||
int | lubMax, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound , least upper bound
, and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
Gecode::SetVar::SetVar | ( | Space * | home, | |
const IntSet & | glbD, | |||
int | lubMin, | |||
int | lubMax, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound glbD, least upper bound , and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
Gecode::SetVar::SetVar | ( | Space * | home, | |
int | glbMin, | |||
int | glbMax, | |||
const IntSet & | lubD, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound , least upper bound lubD, and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
Gecode::SetVar::SetVar | ( | Space * | home, | |
const IntSet & | glbD, | |||
const IntSet & | lubD, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound glbD, least upper bound lubD, and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
Member Function Documentation
void Gecode::SetVar::init | ( | Space * | home | ) | [inline] |
void Gecode::SetVar::init | ( | Space * | home, | |
int | glbMin, | |||
int | glbMax, | |||
int | lubMin, | |||
int | lubMax, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) | [inline] |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound , least upper bound
, and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
void Gecode::SetVar::init | ( | Space * | home, | |
const IntSet & | glbD, | |||
int | lubMin, | |||
int | lubMax, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) | [inline] |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound glbD, least upper bound , and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
void Gecode::SetVar::init | ( | Space * | home, | |
int | glbMin, | |||
int | glbMax, | |||
const IntSet & | lubD, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) | [inline] |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound , least upper bound lubD, and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
void Gecode::SetVar::init | ( | Space * | home, | |
const IntSet & | glbD, | |||
const IntSet & | lubD, | |||
unsigned int | cardMin = 0 , |
|||
unsigned int | cardMax = Limits::Set::card_max | |||
) | [inline] |
Initialize variable with given bounds and cardinality.
The variable is created with greatest lower bound glbD, least upper bound lubD, and cardinality minimum cardMin and maximum cardMax. The following exceptions might be thrown:
- If the bounds are no legal set bounds (between Limits::Set::int_min and Limits::Set::int_max), an exception of type Gecode::Set::VariableOutOfRangeDomain is thrown.
- If the cardinality is greater than Limits::Set::max_set_size, an exception of type Gecode::Set::VariableOutOfRangeCardinality is thrown.
- If minCard > maxCard, an exception of type Gecode::Set::VariableFailedDomain is thrown.
Set::SetVarImp * Gecode::SetVar::variable | ( | void | ) | const [inline] |
unsigned int Gecode::SetVar::glbSize | ( | void | ) | const [inline] |
unsigned int Gecode::SetVar::lubSize | ( | void | ) | const [inline] |
unsigned int Gecode::SetVar::unknownSize | ( | void | ) | const [inline] |
unsigned int Gecode::SetVar::cardMin | ( | void | ) | const [inline] |
unsigned int Gecode::SetVar::cardMax | ( | void | ) | const [inline] |
int Gecode::SetVar::lubMin | ( | void | ) | const [inline] |
int Gecode::SetVar::lubMax | ( | void | ) | const [inline] |
int Gecode::SetVar::glbMin | ( | void | ) | const [inline] |
int Gecode::SetVar::glbMax | ( | void | ) | const [inline] |
bool Gecode::SetVar::contains | ( | int | i | ) | const [inline] |
bool Gecode::SetVar::notContains | ( | int | i | ) | const [inline] |
bool Gecode::SetVar::assigned | ( | void | ) | const [inline] |
Friends And Related Function Documentation
std::ostream & operator<< | ( | std::ostream & | , | |
const Gecode::SetVar & | x | |||
) | [related] |
The documentation for this class was generated from the following files:
- gecode/set/var.icc (Revision: 3188)
- gecode/set/var/set.cc (Revision: 3188)
- gecode/set/var/set.icc (Revision: 2334)