![]() |
Boost.uBlas 1.49
Linear Algebra in C++: matrices, vectors and numeric algorithms
|
A vector referencing a continuous subvector of elements of vector v
containing all elements specified by range
.
More...
#include <vector_proxy.hpp>
Classes | |
class | const_iterator |
class | iterator |
Public Types | |
typedef self_type | closure_type |
typedef const self_type | const_closure_type |
typedef V::const_reference | const_reference |
typedef reverse_iterator_base < const_iterator > | const_reverse_iterator |
typedef const V | const_vector_type |
typedef V::difference_type | difference_type |
typedef vector_range< V > | expression_type |
typedef basic_range< size_type, difference_type > | range_type |
typedef boost::mpl::if_ < boost::is_const< V > , typename V::const_reference, typename V::reference >::type | reference |
typedef reverse_iterator_base < iterator > | reverse_iterator |
typedef V::size_type | size_type |
typedef storage_restrict_traits < typename V::storage_category, dense_proxy_tag > ::storage_category | storage_category |
typedef vector_tag | type_category |
typedef V::value_type | value_type |
typedef boost::mpl::if_ < boost::is_const< V > , typename V::const_closure_type, typename V::closure_type > ::type | vector_closure_type |
typedef V | vector_type |
Public Member Functions | |
BOOST_UBLAS_INLINE | vector_range (vector_type &data, const range_type &r) |
BOOST_UBLAS_INLINE | vector_range (const vector_closure_type &data, const range_type &r, bool) |
template<class AE > | |
BOOST_UBLAS_INLINE vector_range & | assign (const vector_expression< AE > &ae) |
BOOST_UBLAS_INLINE vector_range & | assign_temporary (vector_range &vr) |
BOOST_UBLAS_INLINE const_iterator | begin () const |
BOOST_UBLAS_INLINE iterator | begin () |
BOOST_UBLAS_INLINE const vector_closure_type & | data () const |
BOOST_UBLAS_INLINE vector_closure_type & | data () |
BOOST_UBLAS_INLINE const_iterator | end () const |
BOOST_UBLAS_INLINE iterator | end () |
BOOST_UBLAS_INLINE const_iterator | find (size_type i) const |
BOOST_UBLAS_INLINE iterator | find (size_type i) |
template<class AE > | |
BOOST_UBLAS_INLINE vector_range & | minus_assign (const vector_expression< AE > &ae) |
BOOST_UBLAS_INLINE const expression_type & | operator() () const |
BOOST_UBLAS_INLINE reference | operator() (size_type i) |
BOOST_UBLAS_INLINE expression_type & | operator() () |
BOOST_UBLAS_INLINE const_reference | operator() (size_type i) const |
template<class AT > | |
BOOST_UBLAS_INLINE vector_range & | operator*= (const AT &at) |
template<class AE > | |
BOOST_UBLAS_INLINE vector_range & | operator+= (const vector_expression< AE > &ae) |
template<class AE > | |
BOOST_UBLAS_INLINE vector_range & | operator-= (const vector_expression< AE > &ae) |
template<class AT > | |
BOOST_UBLAS_INLINE vector_range & | operator/= (const AT &at) |
BOOST_UBLAS_INLINE vector_range & | operator= (const vector_range &vr) |
template<class AE > | |
BOOST_UBLAS_INLINE vector_range & | operator= (const vector_expression< AE > &ae) |
BOOST_UBLAS_INLINE bool | operator== (const vector_range &vr) const |
BOOST_UBLAS_INLINE reference | operator[] (size_type i) |
BOOST_UBLAS_INLINE const_reference | operator[] (size_type i) const |
template<class AE > | |
BOOST_UBLAS_INLINE vector_range & | plus_assign (const vector_expression< AE > &ae) |
BOOST_UBLAS_INLINE vector_range< vector_type > | project (const range_type &r) const |
BOOST_UBLAS_INLINE reverse_iterator | rbegin () |
BOOST_UBLAS_INLINE const_reverse_iterator | rbegin () const |
BOOST_UBLAS_INLINE const_reverse_iterator | rend () const |
BOOST_UBLAS_INLINE reverse_iterator | rend () |
BOOST_UBLAS_INLINE bool | same_closure (const vector_range &vr) const |
BOOST_UBLAS_INLINE size_type | size () const |
BOOST_UBLAS_INLINE size_type | start () const |
BOOST_UBLAS_INLINE void | swap (vector_range vr) |
Static Public Attributes | |
static const unsigned | complexity |
Private Types | |
typedef V::const_iterator | const_subiterator_type |
typedef vector_range< V > | self_type |
typedef boost::mpl::if_ < boost::is_const< V > , typename V::const_iterator, typename V::iterator >::type | subiterator_type |
Private Attributes | |
vector_closure_type | data_ |
range_type | r_ |
Friends | |
BOOST_UBLAS_INLINE friend void | swap (vector_range vr1, vector_range vr2) |
A vector referencing a continuous subvector of elements of vector v
containing all elements specified by range
.
A vector range can be used as a normal vector in any expression. If the specified range falls outside that of the index range of the vector, then the vector_range
is not a well formed Vector Expression and access to an element outside of index range of the vector is undefined.
V | the type of vector referenced (for example vector<double> ) |
Definition at line 34 of file vector_proxy.hpp.
typedef vector_range<V> boost::numeric::ublas::vector_range< V >::self_type [private] |
Definition at line 37 of file vector_proxy.hpp.
typedef const V boost::numeric::ublas::vector_range< V >::const_vector_type |
Definition at line 42 of file vector_proxy.hpp.
typedef V boost::numeric::ublas::vector_range< V >::vector_type |
Definition at line 43 of file vector_proxy.hpp.
typedef V::size_type boost::numeric::ublas::vector_range< V >::size_type |
Definition at line 44 of file vector_proxy.hpp.
typedef V::difference_type boost::numeric::ublas::vector_range< V >::difference_type |
Definition at line 45 of file vector_proxy.hpp.
typedef V::value_type boost::numeric::ublas::vector_range< V >::value_type |
Definition at line 46 of file vector_proxy.hpp.
typedef V::const_reference boost::numeric::ublas::vector_range< V >::const_reference |
Definition at line 47 of file vector_proxy.hpp.
typedef boost::mpl::if_<boost::is_const<V>, typename V::const_reference, typename V::reference>::type boost::numeric::ublas::vector_range< V >::reference |
Definition at line 50 of file vector_proxy.hpp.
typedef boost::mpl::if_<boost::is_const<V>, typename V::const_closure_type, typename V::closure_type>::type boost::numeric::ublas::vector_range< V >::vector_closure_type |
Definition at line 53 of file vector_proxy.hpp.
typedef basic_range<size_type, difference_type> boost::numeric::ublas::vector_range< V >::range_type |
Definition at line 54 of file vector_proxy.hpp.
typedef const self_type boost::numeric::ublas::vector_range< V >::const_closure_type |
Definition at line 55 of file vector_proxy.hpp.
typedef self_type boost::numeric::ublas::vector_range< V >::closure_type |
Definition at line 56 of file vector_proxy.hpp.
typedef storage_restrict_traits<typename V::storage_category, dense_proxy_tag>::storage_category boost::numeric::ublas::vector_range< V >::storage_category |
Definition at line 58 of file vector_proxy.hpp.
typedef V::const_iterator boost::numeric::ublas::vector_range< V >::const_subiterator_type [private] |
Definition at line 226 of file vector_proxy.hpp.
typedef boost::mpl::if_<boost::is_const<V>, typename V::const_iterator, typename V::iterator>::type boost::numeric::ublas::vector_range< V >::subiterator_type [private] |
Definition at line 229 of file vector_proxy.hpp.
typedef reverse_iterator_base<const_iterator> boost::numeric::ublas::vector_range< V >::const_reverse_iterator |
Definition at line 462 of file vector_proxy.hpp.
typedef reverse_iterator_base<iterator> boost::numeric::ublas::vector_range< V >::reverse_iterator |
Definition at line 463 of file vector_proxy.hpp.
typedef vector_range< V > boost::numeric::ublas::vector_expression< vector_range< V > >::expression_type [inherited] |
Reimplemented from boost::numeric::ublas::ublas_expression< vector_range< V > >.
Definition at line 187 of file expression_types.hpp.
typedef vector_tag boost::numeric::ublas::vector_expression< vector_range< V > >::type_category [inherited] |
Definition at line 188 of file expression_types.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::vector_range< V >::vector_range | ( | vector_type & | data, |
const range_type & | r | ||
) | [inline] |
Definition at line 62 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE boost::numeric::ublas::vector_range< V >::vector_range | ( | const vector_closure_type & | data, |
const range_type & | r, | ||
bool | |||
) | [inline] |
Definition at line 69 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::vector_range< V >::start | ( | ) | const [inline] |
Definition at line 78 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE size_type boost::numeric::ublas::vector_range< V >::size | ( | ) | const [inline] |
Definition at line 82 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const vector_closure_type& boost::numeric::ublas::vector_range< V >::data | ( | ) | const [inline] |
Definition at line 88 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_closure_type& boost::numeric::ublas::vector_range< V >::data | ( | ) | [inline] |
Definition at line 92 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const_reference boost::numeric::ublas::vector_range< V >::operator() | ( | size_type | i | ) | const [inline] |
Definition at line 99 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE reference boost::numeric::ublas::vector_range< V >::operator() | ( | size_type | i | ) | [inline] |
Definition at line 103 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const_reference boost::numeric::ublas::vector_range< V >::operator[] | ( | size_type | i | ) | const [inline] |
Definition at line 108 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE reference boost::numeric::ublas::vector_range< V >::operator[] | ( | size_type | i | ) | [inline] |
Definition at line 112 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range<vector_type> boost::numeric::ublas::vector_range< V >::project | ( | const range_type & | r | ) | const [inline] |
Definition at line 131 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::operator= | ( | const vector_range< V > & | vr | ) | [inline] |
Definition at line 137 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::assign_temporary | ( | vector_range< V > & | vr | ) | [inline] |
Definition at line 143 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::operator= | ( | const vector_expression< AE > & | ae | ) | [inline] |
Definition at line 150 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::assign | ( | const vector_expression< AE > & | ae | ) | [inline] |
Definition at line 156 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::operator+= | ( | const vector_expression< AE > & | ae | ) | [inline] |
Definition at line 162 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::plus_assign | ( | const vector_expression< AE > & | ae | ) | [inline] |
Definition at line 168 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::operator-= | ( | const vector_expression< AE > & | ae | ) | [inline] |
Definition at line 174 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::minus_assign | ( | const vector_expression< AE > & | ae | ) | [inline] |
Definition at line 180 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::operator*= | ( | const AT & | at | ) | [inline] |
Definition at line 186 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE vector_range& boost::numeric::ublas::vector_range< V >::operator/= | ( | const AT & | at | ) | [inline] |
Definition at line 192 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE bool boost::numeric::ublas::vector_range< V >::same_closure | ( | const vector_range< V > & | vr | ) | const [inline] |
Definition at line 199 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE bool boost::numeric::ublas::vector_range< V >::operator== | ( | const vector_range< V > & | vr | ) | const [inline] |
Definition at line 205 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE void boost::numeric::ublas::vector_range< V >::swap | ( | vector_range< V > | vr | ) | [inline] |
Definition at line 211 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const_iterator boost::numeric::ublas::vector_range< V >::find | ( | size_type | i | ) | const [inline] |
Definition at line 244 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE iterator boost::numeric::ublas::vector_range< V >::find | ( | size_type | i | ) | [inline] |
Definition at line 253 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const_iterator boost::numeric::ublas::vector_range< V >::begin | ( | ) | const [inline] |
Definition at line 354 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const_iterator boost::numeric::ublas::vector_range< V >::end | ( | ) | const [inline] |
Definition at line 358 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE iterator boost::numeric::ublas::vector_range< V >::begin | ( | ) | [inline] |
Definition at line 453 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE iterator boost::numeric::ublas::vector_range< V >::end | ( | ) | [inline] |
Definition at line 457 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const_reverse_iterator boost::numeric::ublas::vector_range< V >::rbegin | ( | ) | const [inline] |
Definition at line 466 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const_reverse_iterator boost::numeric::ublas::vector_range< V >::rend | ( | ) | const [inline] |
Definition at line 470 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE reverse_iterator boost::numeric::ublas::vector_range< V >::rbegin | ( | ) | [inline] |
Definition at line 474 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE reverse_iterator boost::numeric::ublas::vector_range< V >::rend | ( | ) | [inline] |
Definition at line 478 of file vector_proxy.hpp.
BOOST_UBLAS_INLINE const expression_type& boost::numeric::ublas::vector_expression< vector_range< V > >::operator() | ( | ) | const [inline, inherited] |
Definition at line 194 of file expression_types.hpp.
BOOST_UBLAS_INLINE expression_type& boost::numeric::ublas::vector_expression< vector_range< V > >::operator() | ( | ) | [inline, inherited] |
Definition at line 198 of file expression_types.hpp.
BOOST_UBLAS_INLINE friend void swap | ( | vector_range< V > | vr1, |
vector_range< V > | vr2 | ||
) | [friend] |
Definition at line 220 of file vector_proxy.hpp.
vector_closure_type boost::numeric::ublas::vector_range< V >::data_ [private] |
Definition at line 483 of file vector_proxy.hpp.
range_type boost::numeric::ublas::vector_range< V >::r_ [private] |
Definition at line 484 of file vector_proxy.hpp.
const unsigned boost::numeric::ublas::vector_expression< vector_range< V > >::complexity [static, inherited] |
Definition at line 186 of file expression_types.hpp.