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. | |
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 58 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 96 of file shared-array.hpp.
typedef T& Gecode::SharedArray< T >::reference |
Type of a reference to the value type.
Definition at line 98 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 100 of file shared-array.hpp.
typedef T* Gecode::SharedArray< T >::pointer |
Type of a pointer to the value type.
Definition at line 102 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 104 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 106 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 108 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 110 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 112 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 255 of file shared-array.hpp.
Gecode::SharedArray< T >::SharedArray | ( | int | n | ) | [inline] |
Initialize as array with n elements.
Definition at line 259 of file shared-array.hpp.
Gecode::SharedArray< T >::SharedArray | ( | const SharedArray< T > & | a | ) | [inline] |
Initialize from shared array a (share elements).
Definition at line 264 of file shared-array.hpp.
Gecode::SharedArray< T >::SharedArray | ( | const ArgArrayBase< T > & | a | ) | [inline] |
Initialize from argument array a.
Definition at line 290 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 269 of file shared-array.hpp.
T & Gecode::SharedArray< T >::operator[] | ( | int | i | ) | [inline] |
Access element at position i.
Definition at line 276 of file shared-array.hpp.
const T & Gecode::SharedArray< T >::operator[] | ( | int | i | ) | const [inline] |
Access element at position i.
Definition at line 283 of file shared-array.hpp.
int Gecode::SharedArray< T >::size | ( | void | ) | const [inline] |
Return number of elements.
Definition at line 298 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 305 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 312 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 319 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 326 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 333 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 340 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 347 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 354 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 361 of file shared-array.hpp.
The documentation for this class was generated from the following file:
- gecode/kernel/shared-array.hpp (Revision: 14967)