#include <array.hpp>
Related Symbols | |
(Note that these are not member symbols.) | |
template<class ViewX, class ViewY> | |
bool | shared (ViewArray< ViewX > x, ViewArray< ViewY > y) |
Test whether array x together with array y contains shared views. | |
template<class ViewX, class ViewY> | |
bool | shared (ViewArray< ViewX > x, ViewY y) |
Test whether array x contains a view shared with y. | |
template<class ViewX, class ViewY> | |
bool | shared (ViewX x, ViewArray< ViewY > y) |
Test whether array y contains a view shared with x. | |
template<class View> | |
bool | shared (ViewArray< View > x) |
Test whether array x contains shared views. | |
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 (Region &r, 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) | |
ViewArray (Region &r, 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) | |
template<class Var> | |
ViewArray (Region &r, 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 schedule=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. | |
void | reschedule (Space &home, Propagator &p, PropCond pc) |
Re-schedule propagator p with propagation condition pc. |
Cloning | |
void | update (Space &home, 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. | |
bool | assigned (void) const |
Test if all variables are assigned. |
View equality | |
bool | same (void) const |
Test whether array has multiple occurence of the same view. | |
bool | same (const View &y) const |
Test whether array contains a view being the same as y. | |
void | unique (void) |
Remove all duplicate views from array (changes element order) |
View arrays.
View arrays store views. They are typically used for storing the views with which propagators and branchers compute.
typedef View Gecode::ViewArray< View >::value_type |
typedef View& Gecode::ViewArray< View >::reference |
typedef const View& Gecode::ViewArray< View >::const_reference |
typedef View* Gecode::ViewArray< View >::pointer |
typedef const View* Gecode::ViewArray< View >::const_pointer |
typedef View* Gecode::ViewArray< View >::iterator |
typedef const View* Gecode::ViewArray< View >::const_iterator |
typedef std::reverse_iterator<View*> Gecode::ViewArray< View >::reverse_iterator |
typedef std::reverse_iterator<const View*> Gecode::ViewArray< View >::const_reverse_iterator |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void Gecode::ViewArray< View >::subscribe | ( | Space & | home, |
Propagator & | p, | ||
PropCond | pc, | ||
bool | schedule = true ) |
void Gecode::ViewArray< View >::cancel | ( | Space & | home, |
Propagator & | p, | ||
PropCond | pc ) |
void Gecode::ViewArray< View >::subscribe | ( | Space & | home, |
Advisor & | a ) |
void Gecode::ViewArray< View >::cancel | ( | Space & | home, |
Advisor & | a ) |
void Gecode::ViewArray< View >::reschedule | ( | Space & | home, |
Propagator & | p, | ||
PropCond | pc ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void Gecode::ViewArray< View >::drop_fst | ( | int | i, |
Space & | home, | ||
Propagator & | p, | ||
PropCond | pc ) |
void Gecode::ViewArray< View >::drop_lst | ( | int | i, |
Space & | home, | ||
Propagator & | p, | ||
PropCond | pc ) |
void Gecode::ViewArray< View >::drop_fst | ( | int | i, |
Space & | home, | ||
Advisor & | a ) |
void Gecode::ViewArray< View >::drop_lst | ( | int | i, |
Space & | home, | ||
Advisor & | a ) |
|
inline |
bool Gecode::ViewArray< View >::same | ( | void | ) | const |
bool Gecode::ViewArray< View >::same | ( | const View & | y | ) | const |
void Gecode::ViewArray< View >::unique | ( | void | ) |
|
|