Public Member Functions |
bool | assigned (void) const |
| Test if all variables are assigned.
|
Related Functions |
(Note that these are not member functions.)
|
template<class Char , class Traits , class View > |
std::basic_ostream< Char,
Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ViewArray< View > &x) |
| Print array elements enclosed in curly brackets.
|
Associated types |
typedef View | value_type |
| Type of the view stored in this array.
|
typedef View & | reference |
| Type of a reference to the value type.
|
typedef const View & | const_reference |
| Type of a constant reference to the value type.
|
typedef View * | pointer |
| Type of a pointer to the value type.
|
typedef const View * | const_pointer |
| Type of a read-only pointer to the value type.
|
typedef View * | iterator |
| Type of the iterator used to iterate through this array's elements.
|
typedef const View * | const_iterator |
| Type of the iterator used to iterate read-only through this array's elements.
|
typedef std::reverse_iterator
< View * > | reverse_iterator |
| Type of the iterator used to iterate backwards through this array's elements.
|
typedef std::reverse_iterator
< const View * > | const_reverse_iterator |
| Type of the iterator used to iterate backwards and read-only through this array's elements.
|
Constructors and initialization |
| ViewArray (void) |
| Default constructor (array of size 0)
|
| ViewArray (Space &home, int m) |
| Allocate array with m views.
|
| ViewArray (const ViewArray< View > &a) |
| Initialize from view array a (share elements)
|
| ViewArray (Space &home, const ViewArray< View > &a) |
| Initialize from view array a (copy elements)
|
const ViewArray< View > & | operator= (const ViewArray< View > &a) |
| Initialize from view array a (share elements)
|
template<class Var > |
| ViewArray (Space &home, const VarArgArray< Var > &a) |
| Initialize from variable argument array a (copy elements)
|
Array size |
int | size (void) const |
| Return size of array (number of elements)
|
void | size (int n) |
| Decrease size of array (number of elements)
|
Array elements |
View & | operator[] (int i) |
| Return view at position i.
|
const View & | operator[] (int i) const |
| Return view at position i.
|
Array iteration |
iterator | begin (void) |
| Return an iterator at the beginning of the array.
|
const_iterator | begin (void) const |
| Return a read-only iterator at the beginning of the array.
|
iterator | end (void) |
| Return an iterator past the end of the array.
|
const_iterator | end (void) const |
| Return a read-only iterator past the end of the array.
|
reverse_iterator | rbegin (void) |
| Return a reverse iterator at the end of the array.
|
const_reverse_iterator | rbegin (void) const |
| Return a reverse and read-only iterator at the end of the array.
|
reverse_iterator | rend (void) |
| Return a reverse iterator past the beginning of the array.
|
const_reverse_iterator | rend (void) const |
| Return a reverse and read-only iterator past the beginning of the array.
|
Dependencies |
void | subscribe (Space &home, Propagator &p, PropCond pc, bool process=true) |
| Subscribe propagator p with propagation condition pc to variable.
|
void | cancel (Space &home, Propagator &p, PropCond pc) |
| Cancel subscription of propagator p with propagation condition pc to all views.
|
void | subscribe (Space &home, Advisor &a) |
| Subscribe advisor a to variable.
|
void | cancel (Space &home, Advisor &a) |
| Cancel subscription of advisor a.
|
Cloning |
void | update (Space &, bool share, ViewArray< View > &a) |
| Update array to be a clone of array a.
|
Moving elements |
void | move_fst (int i) |
| Move view from position 0 to position i (shift elements to the left)
|
void | move_lst (int i) |
| Move view from position size()-1 to position i (truncate array by one)
|
void | move_fst (int i, Space &home, Propagator &p, PropCond pc) |
| Move view from position 0 to position i (shift elements to the left)
|
void | move_lst (int i, Space &home, Propagator &p, PropCond pc) |
| Move view from position size()-1 to position i (truncate array by one)
|
void | move_fst (int i, Space &home, Advisor &a) |
| Move view from position 0 to position i (shift elements to the left)
|
void | move_lst (int i, Space &home, Advisor &a) |
| Move view from position size()-1 to position i (truncate array by one)
|
Dropping elements |
void | drop_fst (int i) |
| Drop views from positions 0 to i-1 from array.
|
void | drop_lst (int i) |
| Drop views from positions i+1 to size()-1 from array.
|
void | drop_fst (int i, Space &home, Propagator &p, PropCond pc) |
| Drop views from positions 0 to i-1 from array.
|
void | drop_lst (int i, Space &home, Propagator &p, PropCond pc) |
| Drop assigned views from positions i+1 to size()-1 from array.
|
void | drop_fst (int i, Space &home, Advisor &a) |
| Drop views from positions 0 to i-1 from array.
|
void | drop_lst (int i, Space &home, Advisor &a) |
| Drop assigned views from positions i+1 to size()-1 from array.
|
View equality |
bool | same (const Space &home) const |
| Test whether array has multiple occurence of the same view.
|
bool | same (const Space &home, const View &y) const |
| Test whether array contains a view being the same as y.
|
void | unique (const Space &home) |
| Remove all duplicate views from array (changes element order)
|
View sharing |
bool | shared (const Space &home) const |
| Test whether array contains shared views.
|
template<class ViewY > |
bool | shared (const Space &home, const ViewY &y) const |
| Test whether array contains a view being shared with y.
|
template<class ViewY > |
bool | shared (const Space &home, const ViewArray< ViewY > &y) const |
| Test whether array together with array y contains shared views.
|
template<class View>
class Gecode::ViewArray< View >
View arrays.
View arrays store views. They are typically used for storing the views with which propagators and branchers compute.
Definition at line 233 of file array.hpp.