Gecode::SharedArray< T > Class Template Reference
Shared array with arbitrary number of elements. More...
#include <shared-array.hpp>
Classes | |
class | SAO |
Implementation of object for shared arrays. More... | |
Public Member Functions | |
SharedArray (void) | |
Construct as not yet intialized. | |
SharedArray (int n) | |
Initialize as array with n elements. | |
void | init (int n) |
Initialize as array with n elements. | |
SharedArray (const SharedArray &a) | |
Initialize from shared array a (share elements). | |
SharedArray (const ArgArrayBase< T > &a) | |
Initialize from argument array a. | |
T & | operator[] (int i) |
Access element at position i. | |
const T & | operator[] (int i) const |
Access element at position i. | |
int | size (void) const |
Return number of elements. | |
bool | operator== (const SharedArray< T > &sa) const |
Test equality with sa. | |
Related Functions | |
(Note that these are not member functions.) | |
template<class Char , class Traits , class T > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const SharedArray< T > &x) |
Print array elements enclosed in curly brackets. | |
Associated types | |
| |
typedef T | value_type |
Type of the view stored in this array. | |
typedef T & | reference |
Type of a reference to the value type. | |
typedef const T & | const_reference |
Type of a constant reference to the value type. | |
typedef T * | pointer |
Type of a pointer to the value type. | |
typedef const T * | const_pointer |
Type of a read-only pointer to the value type. | |
typedef T * | iterator |
Type of the iterator used to iterate through this array's elements. | |
typedef const T * | const_iterator |
Type of the iterator used to iterate read-only through this array's elements. | |
typedef std::reverse_iterator < T * > | reverse_iterator |
Type of the iterator used to iterate backwards through this array's elements. | |
typedef std::reverse_iterator < const T * > | const_reverse_iterator |
Type of the iterator used to iterate backwards and read-only through this array's elements. | |
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. |
Detailed Description
template<class T>
class Gecode::SharedArray< T >
Shared array with arbitrary number of elements.
Sharing is implemented by reference counting: the same elements are shared among several objects.
Definition at line 53 of file shared-array.hpp.
Member Typedef Documentation
typedef T Gecode::SharedArray< T >::value_type |
Type of the view stored in this array.
Definition at line 89 of file shared-array.hpp.
typedef T& Gecode::SharedArray< T >::reference |
Type of a reference to the value type.
Definition at line 91 of file shared-array.hpp.
typedef const T& Gecode::SharedArray< T >::const_reference |
Type of a constant reference to the value type.
Definition at line 93 of file shared-array.hpp.
typedef T* Gecode::SharedArray< T >::pointer |
Type of a pointer to the value type.
Definition at line 95 of file shared-array.hpp.
typedef const T* Gecode::SharedArray< T >::const_pointer |
Type of a read-only pointer to the value type.
Definition at line 97 of file shared-array.hpp.
typedef T* Gecode::SharedArray< T >::iterator |
Type of the iterator used to iterate through this array's elements.
Definition at line 99 of file shared-array.hpp.
typedef const T* Gecode::SharedArray< T >::const_iterator |
Type of the iterator used to iterate read-only through this array's elements.
Definition at line 101 of file shared-array.hpp.
typedef std::reverse_iterator<T*> Gecode::SharedArray< T >::reverse_iterator |
Type of the iterator used to iterate backwards through this array's elements.
Definition at line 103 of file shared-array.hpp.
typedef std::reverse_iterator<const T*> Gecode::SharedArray< T >::const_reverse_iterator |
Type of the iterator used to iterate backwards and read-only through this array's elements.
Definition at line 105 of file shared-array.hpp.
Constructor & Destructor Documentation
Gecode::SharedArray< T >::SharedArray | ( | void | ) | [inline] |
Construct as not yet intialized.
The only member functions that can be used on a constructed but not yet initialized shared array is init and the assignment operator .
Definition at line 242 of file shared-array.hpp.
Gecode::SharedArray< T >::SharedArray | ( | int | n | ) | [inline] |
Initialize as array with n elements.
Definition at line 246 of file shared-array.hpp.
Gecode::SharedArray< T >::SharedArray | ( | const SharedArray< T > & | a | ) | [inline] |
Initialize from shared array a (share elements).
Definition at line 251 of file shared-array.hpp.
Gecode::SharedArray< T >::SharedArray | ( | const ArgArrayBase< T > & | a | ) | [inline] |
Initialize from argument array a.
Definition at line 291 of file shared-array.hpp.
Member Function Documentation
void Gecode::SharedArray< T >::init | ( | int | n | ) | [inline] |
Initialize as array with n elements.
This member function can only be used once and only if the shared array has been constructed with the default constructor.
Definition at line 256 of file shared-array.hpp.
T & Gecode::SharedArray< T >::operator[] | ( | int | i | ) | [inline] |
Access element at position i.
Definition at line 263 of file shared-array.hpp.
const T & Gecode::SharedArray< T >::operator[] | ( | int | i | ) | const [inline] |
Access element at position i.
Definition at line 270 of file shared-array.hpp.
int Gecode::SharedArray< T >::size | ( | void | ) | const [inline] |
Return number of elements.
Definition at line 299 of file shared-array.hpp.
bool Gecode::SharedArray< T >::operator== | ( | const SharedArray< T > & | sa | ) | const [inline] |
Test equality with sa.
Definition at line 277 of file shared-array.hpp.
SharedArray< T >::iterator Gecode::SharedArray< T >::begin | ( | void | ) | [inline] |
Return an iterator at the beginning of the array.
Definition at line 306 of file shared-array.hpp.
SharedArray< T >::const_iterator Gecode::SharedArray< T >::begin | ( | void | ) | const [inline] |
Return a read-only iterator at the beginning of the array.
Definition at line 313 of file shared-array.hpp.
SharedArray< T >::iterator Gecode::SharedArray< T >::end | ( | void | ) | [inline] |
Return an iterator past the end of the array.
Definition at line 320 of file shared-array.hpp.
SharedArray< T >::const_iterator Gecode::SharedArray< T >::end | ( | void | ) | const [inline] |
Return a read-only iterator past the end of the array.
Definition at line 327 of file shared-array.hpp.
SharedArray< T >::reverse_iterator Gecode::SharedArray< T >::rbegin | ( | void | ) | [inline] |
Return a reverse iterator at the end of the array.
Definition at line 334 of file shared-array.hpp.
SharedArray< T >::const_reverse_iterator Gecode::SharedArray< T >::rbegin | ( | void | ) | const [inline] |
Return a reverse and read-only iterator at the end of the array.
Definition at line 341 of file shared-array.hpp.
SharedArray< T >::reverse_iterator Gecode::SharedArray< T >::rend | ( | void | ) | [inline] |
Return a reverse iterator past the beginning of the array.
Definition at line 348 of file shared-array.hpp.
SharedArray< T >::const_reverse_iterator Gecode::SharedArray< T >::rend | ( | void | ) | const [inline] |
Return a reverse and read-only iterator past the beginning of the array.
Definition at line 355 of file shared-array.hpp.
Friends And Related Function Documentation
std::basic_ostream< Char, Traits > & operator<< | ( | std::basic_ostream< Char, Traits > & | os, | |
const SharedArray< T > & | x | |||
) | [related] |
Print array elements enclosed in curly brackets.
Definition at line 362 of file shared-array.hpp.
The documentation for this class was generated from the following file:
- gecode/kernel/data/shared-array.hpp