Gecode::ViewArray< View > Class Template Reference
[Programming actors]
View arrays. More...
#include <array.hpp>
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 (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 &, 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. |
Detailed Description
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 234 of file array.hpp.
Member Typedef Documentation
template<class View>
typedef View Gecode::ViewArray< View >::value_type |
template<class View>
typedef View& Gecode::ViewArray< View >::reference |
template<class View>
typedef const View& Gecode::ViewArray< View >::const_reference |
template<class View>
typedef View* Gecode::ViewArray< View >::pointer |
template<class View>
typedef const View* Gecode::ViewArray< View >::const_pointer |
template<class View>
typedef View* Gecode::ViewArray< View >::iterator |
template<class View>
typedef const View* Gecode::ViewArray< View >::const_iterator |
template<class View>
typedef std::reverse_iterator<View*> Gecode::ViewArray< View >::reverse_iterator |
template<class View>
typedef std::reverse_iterator<const View*> Gecode::ViewArray< View >::const_reverse_iterator |
Constructor & Destructor Documentation
template<class View >
Gecode::ViewArray< View >::ViewArray | ( | void | ) | [inline] |
template<class View >
Gecode::ViewArray< View >::ViewArray | ( | Space & | home, | |
int | m | |||
) | [inline] |
template<class View >
Gecode::ViewArray< View >::ViewArray | ( | Region & | r, | |
int | m | |||
) | [inline] |
template<class View>
Gecode::ViewArray< View >::ViewArray | ( | const ViewArray< View > & | a | ) | [inline] |
template<class View>
Gecode::ViewArray< View >::ViewArray | ( | Space & | home, | |
const ViewArray< View > & | a | |||
) | [inline] |
template<class View>
Gecode::ViewArray< View >::ViewArray | ( | Region & | r, | |
const ViewArray< View > & | a | |||
) | [inline] |
template<class View>
template<class Var >
Gecode::ViewArray< View >::ViewArray | ( | Space & | home, | |
const VarArgArray< Var > & | a | |||
) | [inline] |
template<class View>
template<class Var >
Gecode::ViewArray< View >::ViewArray | ( | Region & | r, | |
const VarArgArray< Var > & | a | |||
) | [inline] |
Member Function Documentation
template<class View>
const ViewArray< View > & Gecode::ViewArray< View >::operator= | ( | const ViewArray< View > & | a | ) | [inline] |
template<class View >
int Gecode::ViewArray< View >::size | ( | void | ) | const [inline] |
template<class View >
void Gecode::ViewArray< View >::size | ( | int | n | ) | [inline] |
template<class View >
View & Gecode::ViewArray< View >::operator[] | ( | int | i | ) | [inline] |
template<class View >
const View & Gecode::ViewArray< View >::operator[] | ( | int | i | ) | const [inline] |
template<class View >
ViewArray< View >::iterator Gecode::ViewArray< View >::begin | ( | void | ) | [inline] |
template<class View >
ViewArray< View >::const_iterator Gecode::ViewArray< View >::begin | ( | void | ) | const [inline] |
template<class View >
ViewArray< View >::iterator Gecode::ViewArray< View >::end | ( | void | ) | [inline] |
template<class View >
ViewArray< View >::const_iterator Gecode::ViewArray< View >::end | ( | void | ) | const [inline] |
template<class View >
ViewArray< View >::reverse_iterator Gecode::ViewArray< View >::rbegin | ( | void | ) | [inline] |
template<class View >
ViewArray< View >::const_reverse_iterator Gecode::ViewArray< View >::rbegin | ( | void | ) | const [inline] |
template<class View >
ViewArray< View >::reverse_iterator Gecode::ViewArray< View >::rend | ( | void | ) | [inline] |
template<class View >
ViewArray< View >::const_reverse_iterator Gecode::ViewArray< View >::rend | ( | void | ) | const [inline] |
template<class View >
void Gecode::ViewArray< View >::subscribe | ( | Space & | home, | |
Propagator & | p, | |||
PropCond | pc, | |||
bool | schedule = true | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::cancel | ( | Space & | home, | |
Propagator & | p, | |||
PropCond | pc | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::subscribe | ( | Space & | home, | |
Advisor & | a | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::cancel | ( | Space & | home, | |
Advisor & | a | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::reschedule | ( | Space & | home, | |
Propagator & | p, | |||
PropCond | pc | |||
) | [inline] |
template<class View>
void Gecode::ViewArray< View >::update | ( | Space & | home, | |
bool | share, | |||
ViewArray< View > & | a | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::move_fst | ( | int | i | ) | [inline] |
template<class View >
void Gecode::ViewArray< View >::move_lst | ( | int | i | ) | [inline] |
template<class View >
void Gecode::ViewArray< View >::move_fst | ( | int | i, | |
Space & | home, | |||
Propagator & | p, | |||
PropCond | pc | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::move_lst | ( | int | i, | |
Space & | home, | |||
Propagator & | p, | |||
PropCond | pc | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::move_fst | ( | int | i, | |
Space & | home, | |||
Advisor & | a | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::move_lst | ( | int | i, | |
Space & | home, | |||
Advisor & | a | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::drop_fst | ( | int | i | ) | [inline] |
template<class View >
void Gecode::ViewArray< View >::drop_lst | ( | int | i | ) | [inline] |
template<class View >
void Gecode::ViewArray< View >::drop_fst | ( | int | i, | |
Space & | home, | |||
Propagator & | p, | |||
PropCond | pc | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::drop_lst | ( | int | i, | |
Space & | home, | |||
Propagator & | p, | |||
PropCond | pc | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::drop_fst | ( | int | i, | |
Space & | home, | |||
Advisor & | a | |||
) | [inline] |
template<class View >
void Gecode::ViewArray< View >::drop_lst | ( | int | i, | |
Space & | home, | |||
Advisor & | a | |||
) | [inline] |
template<class View >
bool Gecode::ViewArray< View >::assigned | ( | void | ) | const [inline] |
template<class View >
bool Gecode::ViewArray< View >::same | ( | const Space & | home | ) | const [inline] |
template<class View>
bool Gecode::ViewArray< View >::same | ( | const Space & | home, | |
const View & | y | |||
) | const [inline] |
template<class View >
void Gecode::ViewArray< View >::unique | ( | const Space & | home | ) | [inline] |
template<class View >
bool Gecode::ViewArray< View >::shared | ( | const Space & | home | ) | const [inline] |
template<class View >
template<class ViewY >
bool Gecode::ViewArray< View >::shared | ( | const Space & | home, | |
const ViewY & | y | |||
) | const [inline] |
template<class View >
template<class ViewY >
bool Gecode::ViewArray< View >::shared | ( | const Space & | home, | |
const ViewArray< ViewY > & | y | |||
) | const [inline] |
Friends And Related Function Documentation
template<class Char , class Traits , class View >
std::basic_ostream< Char, Traits > & operator<< | ( | std::basic_ostream< Char, Traits > & | os, | |
const ViewArray< View > & | x | |||
) | [related] |
The documentation for this class was generated from the following file:
- gecode/kernel/array.hpp (Revision: 15170)