a dense vector of values of type T
, of variable size but with maximum .
More...
#include <vector.hpp>
Public Types | |
typedef vector_type::size_type | size_type |
typedef bounded_array< T, N > ::difference_type | difference_type |
typedef T | value_type |
typedef type_traits< T > ::const_reference | const_reference |
typedef T & | reference |
typedef T * | pointer |
typedef const T * | const_pointer |
typedef bounded_array< T, N > | array_type |
typedef const vector_reference < const self_type > | const_closure_type |
typedef vector_reference < self_type > | closure_type |
typedef self_type | vector_temporary_type |
typedef dense_tag | storage_category |
typedef reverse_iterator_base < const_iterator > | const_reverse_iterator |
typedef reverse_iterator_base < iterator > | reverse_iterator |
typedef vector< T, bounded_array< T, N > > | container_type |
typedef vector_tag | type_category |
typedef E | expression_type |
Public Member Functions | |
BOOST_UBLAS_INLINE | bounded_vector () |
BOOST_UBLAS_INLINE | bounded_vector (size_type size) |
BOOST_UBLAS_INLINE | bounded_vector (const bounded_vector &v) |
template<class A2 > | |
BOOST_UBLAS_INLINE | bounded_vector (const vector< T, A2 > &v) |
template<class AE > | |
BOOST_UBLAS_INLINE | bounded_vector (const vector_expression< AE > &ae) |
BOOST_UBLAS_INLINE | ~bounded_vector () |
BOOST_UBLAS_INLINE bounded_vector & | operator= (const bounded_vector &v) |
template<class A2 > | |
BOOST_UBLAS_INLINE bounded_vector & | operator= (const vector< T, A2 > &v) |
template<class C > | |
BOOST_UBLAS_INLINE bounded_vector & | operator= (const vector_container< C > &v) |
template<class AE > | |
BOOST_UBLAS_INLINE bounded_vector & | operator= (const vector_expression< AE > &ae) |
BOOST_UBLAS_INLINE size_type | max_size () const |
Return the maximum size of the data container. More... | |
BOOST_UBLAS_INLINE bool | empty () const |
Return true if the vector is empty (size==0 ) More... | |
BOOST_UBLAS_INLINE size_type | size () const |
Return the size of the vector. More... | |
BOOST_UBLAS_INLINE const array_type & | data () const |
Return a const reference to the container. Useful to access data directly for specific type of container. More... | |
BOOST_UBLAS_INLINE array_type & | data () |
Return a reference to the container. Useful to speed-up write operations to the data in very specific case. More... | |
BOOST_UBLAS_INLINE void | resize (size_type size, bool preserve=true) |
Resize the vector Resize the vector to a new size. More... | |
BOOST_UBLAS_INLINE pointer | find_element (size_type i) |
Return a pointer to the element . More... | |
BOOST_UBLAS_INLINE const_pointer | find_element (size_type i) const |
Return a const pointer to the element . More... | |
BOOST_UBLAS_INLINE const_reference | operator() (size_type i) const |
Return a const reference to the element Return a const reference to the element . More... | |
BOOST_UBLAS_INLINE reference | operator() (size_type i) |
Return a reference to the element Return a reference to the element . More... | |
BOOST_UBLAS_INLINE const container_type & | operator() () const |
BOOST_UBLAS_INLINE container_type & | operator() () |
BOOST_UBLAS_INLINE const_reference | operator[] (size_type i) const |
Return a const reference to the element . More... | |
BOOST_UBLAS_INLINE reference | operator[] (size_type i) |
Return a reference to the element . More... | |
BOOST_UBLAS_INLINE reference | insert_element (size_type i, const_reference t) |
Set element to the value t . More... | |
BOOST_UBLAS_INLINE void | erase_element (size_type i) |
Set element to the zero value. More... | |
BOOST_UBLAS_INLINE void | clear () |
Clear the vector, i.e. set all values to the zero value. More... | |
BOOST_UBLAS_INLINE vector & | assign_temporary (vector &v) |
Assign a full vector (RHS-vector) to the current vector (LHS-vector) More... | |
BOOST_UBLAS_INLINE vector & | assign (const vector_expression< AE > &ae) |
Assign the result of a vector_expression to the vector Assign the result of a vector_expression to the vector. More... | |
BOOST_UBLAS_INLINE vector & | operator+= (const vector_expression< AE > &ae) |
Assign the sum of the vector and a vector_expression to the vector Assign the sum of the vector and a vector_expression to the vector. More... | |
BOOST_UBLAS_INLINE vector & | operator+= (const vector_container< C > &v) |
Assign the sum of the vector and a vector_expression to the vector Assign the sum of the vector and a vector_expression to the vector. More... | |
BOOST_UBLAS_INLINE vector & | plus_assign (const vector_expression< AE > &ae) |
Assign the sum of the vector and a vector_expression to the vector Assign the sum of the vector and a vector_expression to the vector. More... | |
BOOST_UBLAS_INLINE vector & | operator-= (const vector_expression< AE > &ae) |
Assign the difference of the vector and a vector_expression to the vector Assign the difference of the vector and a vector_expression to the vector. More... | |
BOOST_UBLAS_INLINE vector & | operator-= (const vector_container< C > &v) |
Assign the difference of the vector and a vector_expression to the vector Assign the difference of the vector and a vector_expression to the vector. More... | |
BOOST_UBLAS_INLINE vector & | minus_assign (const vector_expression< AE > &ae) |
Assign the difference of the vector and a vector_expression to the vector Assign the difference of the vector and a vector_expression to the vector. More... | |
BOOST_UBLAS_INLINE vector & | operator*= (const AT &at) |
Assign the product of the vector and a scalar to the vector Assign the product of the vector and a scalar to the vector. More... | |
BOOST_UBLAS_INLINE vector & | operator/= (const AT &at) |
Assign the division of the vector by a scalar to the vector Assign the division of the vector by a scalar to the vector. More... | |
BOOST_UBLAS_INLINE void | swap (vector &v) |
Swap the content of the vector with another vector. More... | |
BOOST_UBLAS_INLINE const_iterator | find (size_type i) const |
Return a const iterator to the element i. More... | |
BOOST_UBLAS_INLINE iterator | find (size_type i) |
Return an iterator to the element i. More... | |
BOOST_UBLAS_INLINE const_iterator | begin () const |
return an iterator on the first element of the vector More... | |
BOOST_UBLAS_INLINE iterator | begin () |
Return an iterator on the first element of the vector. More... | |
BOOST_UBLAS_INLINE const_iterator | cbegin () const |
return an iterator on the first element of the vector More... | |
BOOST_UBLAS_INLINE const_iterator | end () const |
return an iterator after the last element of the vector More... | |
BOOST_UBLAS_INLINE iterator | end () |
Return an iterator at the end of the vector. More... | |
BOOST_UBLAS_INLINE const_iterator | cend () const |
return an iterator after the last element of the vector More... | |
BOOST_UBLAS_INLINE const_reverse_iterator | rbegin () const |
Return a const reverse iterator before the first element of the reversed vector (i.e. end() of normal vector) More... | |
BOOST_UBLAS_INLINE reverse_iterator | rbegin () |
Return a const reverse iterator before the first element of the reversed vector (i.e. end() of normal vector) More... | |
BOOST_UBLAS_INLINE const_reverse_iterator | crbegin () const |
Return a const reverse iterator before the first element of the reversed vector (i.e. end() of normal vector) More... | |
BOOST_UBLAS_INLINE const_reverse_iterator | rend () const |
Return a const reverse iterator on the end of the reverse vector (i.e. first element of the normal vector) More... | |
BOOST_UBLAS_INLINE reverse_iterator | rend () |
Return a const reverse iterator on the end of the reverse vector (i.e. first element of the normal vector) More... | |
BOOST_UBLAS_INLINE const_reverse_iterator | crend () const |
Return a const reverse iterator on the end of the reverse vector (i.e. first element of the normal vector) More... | |
void | serialize (Archive &ar, const unsigned int) |
Serialize a vector into and archive as defined in Boost. More... | |
Static Public Attributes | |
static const size_type | max_size = N |
static const unsigned | complexity |
a dense vector of values of type T
, of variable size but with maximum .
A dense vector of values of type T
, of variable size but with maximum . The default constructor creates the vector with size . Elements are constructed by the storage type bounded_array
, which need not initialise their value.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
typedef vector_type::size_type boost::numeric::ublas::bounded_vector< T, N >::size_type |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Assign the result of a vector_expression to the vector Assign the result of a vector_expression to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression.
AE | is the type of the vector_expression |
ae | is a const reference to the vector_expression |
|
inlineinherited |
Assign a full vector (RHS-vector) to the current vector (LHS-vector)
v | is the source vector |
References boost::numeric::ublas::vector< T, A >::swap().
|
inlineinherited |
return an iterator on the first element of the vector
References boost::numeric::ublas::vector< T, A >::find().
|
inlineinherited |
Return an iterator on the first element of the vector.
References boost::numeric::ublas::vector< T, A >::find().
|
inlineinherited |
return an iterator on the first element of the vector
References boost::numeric::ublas::vector< T, A >::begin().
|
inlineinherited |
return an iterator after the last element of the vector
References boost::numeric::ublas::vector< T, A >::end().
|
inlineinherited |
Clear the vector, i.e. set all values to the zero
value.
References boost::numeric::ublas::vector< T, A >::begin(), boost::numeric::ublas::vector< T, A >::data(), boost::numeric::ublas::vector< T, A >::end(), and std::fill().
|
inlineinherited |
Return a const reverse iterator before the first element of the reversed vector (i.e. end() of normal vector)
References boost::numeric::ublas::vector< T, A >::rbegin().
|
inlineinherited |
Return a const reverse iterator on the end of the reverse vector (i.e. first element of the normal vector)
References boost::numeric::ublas::vector< T, A >::rend().
|
inlineinherited |
Return a const
reference to the container. Useful to access data directly for specific type of container.
|
inlineinherited |
Return a reference to the container. Useful to speed-up write operations to the data in very specific case.
|
inlineinherited |
Return true if the vector is empty (size==0
)
true
if empty, false
otherwise
|
inlineinherited |
return an iterator after the last element of the vector
References boost::numeric::ublas::vector< T, A >::find().
|
inlineinherited |
Return an iterator at the end of the vector.
References boost::numeric::ublas::vector< T, A >::find().
|
inlineinherited |
Set element to the zero value.
i | index of the element |
References boost::numeric::ublas::vector< T, A >::data(), and boost::multiprecision::backends::i.
|
inlineinherited |
Return a const iterator to the element i.
i | index of the element |
References boost::numeric::ublas::vector< T, A >::begin(), and boost::numeric::ublas::vector< T, A >::data().
|
inlineinherited |
Return an iterator to the element i.
i | index of the element |
References boost::numeric::ublas::vector< T, A >::begin(), and boost::numeric::ublas::vector< T, A >::data().
|
inlineinherited |
Return a pointer to the element .
i | index of the element |
|
inlineinherited |
Return a const pointer to the element .
i | index of the element |
References boost::numeric::ublas::vector< T, A >::data(), and boost::multiprecision::backends::i.
|
inlineinherited |
Set element to the value t
.
i | index of the element |
t | reference to the value to be set |
References boost::numeric::ublas::vector< T, A >::data().
|
inlineinherited |
Return the maximum size of the data container.
Return the upper bound (maximum size) on the data container. Depending on the container, it can be bigger than the current size of the vector.
|
inlineinherited |
Assign the difference of the vector and a vector_expression to the vector Assign the difference of the vector and a vector_expression to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. No temporary is created. Computations are done and stored directly into the resulting vector.
AE | is the type of the vector_expression |
ae | is a const reference to the vector_expression |
|
inlineinherited |
Return a const reference to the element Return a const reference to the element .
With some compilers, this notation will be faster than [i]
i | index of the element |
References boost::numeric::ublas::vector< T, A >::data(), and boost::multiprecision::backends::i.
|
inlineinherited |
Return a reference to the element Return a reference to the element .
With some compilers, this notation will be faster than [i]
i | index of the element |
References boost::numeric::ublas::vector< T, A >::data(), and boost::multiprecision::backends::i.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Assign the product of the vector and a scalar to the vector Assign the product of the vector and a scalar to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. No temporary is created. Computations are done and stored directly into the resulting vector.
AE | is the type of the vector_expression |
at | is a const reference to the scalar |
References boost::xpressive::at.
|
inlineinherited |
Assign the sum of the vector and a vector_expression to the vector Assign the sum of the vector and a vector_expression to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. A temporary is created for the computations.
AE | is the type of the vector_expression |
ae | is a const reference to the vector_expression |
References boost::numeric::ublas::vector< T, A >::assign_temporary().
|
inlineinherited |
Assign the sum of the vector and a vector_expression to the vector Assign the sum of the vector and a vector_expression to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. No temporary is created. Computations are done and stored directly into the resulting vector.
AE | is the type of the vector_expression |
ae | is a const reference to the vector_expression |
References boost::numeric::ublas::vector< T, A >::plus_assign().
|
inlineinherited |
Assign the difference of the vector and a vector_expression to the vector Assign the difference of the vector and a vector_expression to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. A temporary is created for the computations.
AE | is the type of the vector_expression |
ae | is a const reference to the vector_expression |
References boost::numeric::ublas::vector< T, A >::assign_temporary().
|
inlineinherited |
Assign the difference of the vector and a vector_expression to the vector Assign the difference of the vector and a vector_expression to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. No temporary is created. Computations are done and stored directly into the resulting vector.
AE | is the type of the vector_expression |
ae | is a const reference to the vector_expression |
References boost::numeric::ublas::vector< T, A >::minus_assign().
|
inlineinherited |
Assign the division of the vector by a scalar to the vector Assign the division of the vector by a scalar to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. No temporary is created. Computations are done and stored directly into the resulting vector.
AE | is the type of the vector_expression |
at | is a const reference to the scalar |
References boost::xpressive::at.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Return a const reference to the element .
i | index of the element |
References boost::multiprecision::backends::i.
|
inlineinherited |
Return a reference to the element .
i | index of the element |
References boost::multiprecision::backends::i.
|
inlineinherited |
Assign the sum of the vector and a vector_expression to the vector Assign the sum of the vector and a vector_expression to the vector.
This is lazy-compiled and will be optimized out by the compiler on any type of expression. No temporary is created. Computations are done and stored directly into the resulting vector.
AE | is the type of the vector_expression |
ae | is a const reference to the vector_expression |
|
inlineinherited |
Return a const reverse iterator before the first element of the reversed vector (i.e. end() of normal vector)
References boost::numeric::ublas::vector< T, A >::end().
|
inlineinherited |
Return a const reverse iterator before the first element of the reversed vector (i.e. end() of normal vector)
References boost::numeric::ublas::vector< T, A >::end().
|
inlineinherited |
Return a const reverse iterator on the end of the reverse vector (i.e. first element of the normal vector)
References boost::numeric::ublas::vector< T, A >::begin().
|
inlineinherited |
Return a const reverse iterator on the end of the reverse vector (i.e. first element of the normal vector)
References boost::numeric::ublas::vector< T, A >::begin().
|
inlineinherited |
Resize the vector Resize the vector to a new size.
If preserve
is true, data are copied otherwise data are lost. If the new size is bigger, the remaining values are filled in with the initial value (0 by default) in the case of unbounded_array
, which is the container by default. If the new size is smaller, last values are lost. This behaviour can be different if you explicitely specify another type of container.
size | new size of the vector |
preserve | if true, keep values |
References boost::numeric::ublas::vector< T, A >::data().
|
inlineinherited |
Serialize a vector into and archive as defined in Boost.
ar | Archive object. Can be a flat file, an XML file or any other stream |
file_version | Optional file version (not yet used) |
References boost::serialization::make_nvp().
|
inlineinherited |
Return the size of the vector.
|
inlineinherited |
Swap the content of the vector with another vector.
v | is the vector to be swapped with |
References boost::numeric::ublas::vector< T, A >::data().
|
staticinherited |
|
static |