mirror of
https://github.com/boostorg/ublas.git
synced 2026-02-23 16:12:09 +00:00
Add vector/matrix_temporary_type
This commit is contained in:
@@ -42,15 +42,16 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
private:
|
||||
typedef T *pointer;
|
||||
typedef F functor_type;
|
||||
typedef const banded_matrix<T, F, A> const_self_type;
|
||||
typedef banded_matrix<T, F, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef vector<T, A> vector_temporary_type;
|
||||
typedef matrix<T, F, A> matrix_temporary_type; // general sub-matrix
|
||||
typedef packed_tag storage_category;
|
||||
typedef typename F::orientation_category orientation_category;
|
||||
|
||||
@@ -1077,11 +1078,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typename M::closure_type>::type matrix_closure_type;
|
||||
#endif
|
||||
private:
|
||||
typedef const banded_adaptor<M> const_self_type;
|
||||
typedef banded_adaptor<M> self_type;
|
||||
public:
|
||||
typedef const_self_type const_closure_type;
|
||||
typedef const self_type const_closure_type;
|
||||
typedef self_type closure_type;
|
||||
typedef typename M::vector_temporary_type vector_temporary_type;
|
||||
typedef typename M::matrix_temporary_type matrix_temporary_type;
|
||||
typedef typename storage_restrict_traits<typename M::storage_category,
|
||||
packed_proxy_tag>::storage_category storage_category;
|
||||
typedef typename M::orientation_category orientation_category;
|
||||
|
||||
@@ -257,15 +257,16 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T *pointer;
|
||||
typedef F1 functor1_type;
|
||||
typedef F2 functor2_type;
|
||||
typedef const hermitian_matrix<T, F1, F2, A> const_self_type;
|
||||
typedef hermitian_matrix<T, F1, F2, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef vector<T, A> vector_temporary_type;
|
||||
typedef matrix<T, F2, A> matrix_temporary_type; // general sub-matrix
|
||||
typedef packed_tag storage_category;
|
||||
typedef typename F1::packed_category packed_category;
|
||||
typedef typename F2::orientation_category orientation_category;
|
||||
@@ -1227,11 +1228,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typename M::closure_type>::type matrix_closure_type;
|
||||
#endif
|
||||
private:
|
||||
typedef const hermitian_adaptor<M, F> const_self_type;
|
||||
typedef hermitian_adaptor<M, F> self_type;
|
||||
public:
|
||||
typedef const_self_type const_closure_type;
|
||||
typedef const self_type const_closure_type;
|
||||
typedef self_type closure_type;
|
||||
typedef typename M::vector_temporary_type vector_temporary_type;
|
||||
typedef typename M::matrix_temporary_type matrix_temporary_type;
|
||||
typedef typename storage_restrict_traits<typename M::storage_category,
|
||||
packed_proxy_tag>::storage_category storage_category;
|
||||
typedef typename F::packed_category packed_category;
|
||||
|
||||
@@ -71,15 +71,16 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
private:
|
||||
typedef T *pointer;
|
||||
typedef F functor_type;
|
||||
typedef const matrix<T, F, A> const_self_type;
|
||||
typedef matrix<T, F, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef vector<T, A> vector_temporary_type;
|
||||
typedef self_type matrix_temporary_type;
|
||||
typedef dense_tag storage_category;
|
||||
// This could be better for performance,
|
||||
// typedef typename unknown_orientation_tag orientation_category;
|
||||
@@ -1029,15 +1030,16 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
private:
|
||||
typedef T *pointer;
|
||||
typedef F functor_type;
|
||||
typedef const vector_of_vector<T, F, A> const_self_type;
|
||||
typedef vector_of_vector<T, F, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef vector<T, typename A::value_type> vector_temporary_type;
|
||||
typedef self_type matrix_temporary_type;
|
||||
typedef dense_tag storage_category;
|
||||
// This could be better for performance,
|
||||
// typedef typename unknown_orientation_tag orientation_category;
|
||||
@@ -1978,13 +1980,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T &reference;
|
||||
private:
|
||||
typedef const T *const_pointer;
|
||||
typedef const identity_matrix<T> const_self_type;
|
||||
typedef identity_matrix<T> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef packed_tag storage_category;
|
||||
@@ -2454,13 +2455,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T &reference;
|
||||
private:
|
||||
typedef const T *const_pointer;
|
||||
typedef const zero_matrix<T> const_self_type;
|
||||
typedef zero_matrix<T> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef sparse_tag storage_category;
|
||||
@@ -2909,13 +2909,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T &reference;
|
||||
private:
|
||||
typedef const T *const_pointer;
|
||||
typedef const scalar_matrix<T> const_self_type;
|
||||
typedef scalar_matrix<T> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef dense_tag storage_category;
|
||||
typedef unknown_orientation_tag orientation_category;
|
||||
@@ -3353,15 +3352,16 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef const T *const_pointer;
|
||||
typedef T *pointer;
|
||||
private:
|
||||
typedef const c_matrix<T, N, M> const_self_type;
|
||||
typedef c_matrix<T, N, M> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef c_vector<T, N * M> vector_temporary_type; // vector able to store all elements of c_matrix
|
||||
typedef self_type matrix_temporary_type;
|
||||
typedef dense_tag storage_category;
|
||||
// This could be better for performance,
|
||||
// typedef typename unknown_orientation_tag orientation_category;
|
||||
|
||||
@@ -60,15 +60,16 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T *pointer;
|
||||
typedef F1 functor1_type;
|
||||
typedef F2 functor2_type;
|
||||
typedef const symmetric_matrix<T, F1, F2, A> const_self_type;
|
||||
typedef symmetric_matrix<T, F1, F2, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef vector<T, A> vector_temporary_type;
|
||||
typedef matrix<T, F2, A> matrix_temporary_type; // general sub-matrix
|
||||
typedef packed_tag storage_category;
|
||||
typedef typename F1::packed_category packed_category;
|
||||
typedef typename F2::orientation_category orientation_category;
|
||||
@@ -969,11 +970,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typename M::closure_type>::type matrix_closure_type;
|
||||
#endif
|
||||
private:
|
||||
typedef const symmetric_adaptor<M, F> const_self_type;
|
||||
typedef symmetric_adaptor<M, F> self_type;
|
||||
public:
|
||||
typedef const_self_type const_closure_type;
|
||||
typedef const self_type const_closure_type;
|
||||
typedef self_type closure_type;
|
||||
typedef typename M::vector_temporary_type vector_temporary_type;
|
||||
typedef typename M::matrix_temporary_type matrix_temporary_type;
|
||||
typedef typename storage_restrict_traits<typename M::storage_category,
|
||||
packed_proxy_tag>::storage_category storage_category;
|
||||
typedef typename F::packed_category packed_category;
|
||||
|
||||
@@ -43,15 +43,16 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T *pointer;
|
||||
typedef F1 functor1_type;
|
||||
typedef F2 functor2_type;
|
||||
typedef const triangular_matrix<T, F1, F2, A> const_self_type;
|
||||
typedef triangular_matrix<T, F1, F2, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef vector<T, A> vector_temporary_type;
|
||||
typedef matrix<T, F2, A> matrix_temporary_type; // general sub-matrix
|
||||
typedef packed_proxy_tag storage_category;
|
||||
typedef typename F1::packed_category packed_category;
|
||||
typedef typename F2::orientation_category orientation_category;
|
||||
@@ -971,11 +972,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typename M::closure_type>::type matrix_closure_type;
|
||||
#endif
|
||||
private:
|
||||
typedef const triangular_adaptor<M, F> const_self_type;
|
||||
typedef triangular_adaptor<M, F> self_type;
|
||||
public:
|
||||
typedef const_self_type const_closure_type;
|
||||
typedef const self_type const_closure_type;
|
||||
typedef self_type closure_type;
|
||||
typedef typename M::vector_temporary_type vector_temporary_type;
|
||||
typedef typename M::matrix_temporary_type matrix_temporary_type;
|
||||
typedef typename storage_restrict_traits<typename M::storage_category,
|
||||
packed_proxy_tag>::storage_category storage_category;
|
||||
typedef typename F::packed_category packed_category;
|
||||
|
||||
@@ -45,15 +45,15 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef A array_type;
|
||||
private:
|
||||
typedef T *pointer;
|
||||
typedef const vector<T, A> const_self_type;
|
||||
typedef vector<T, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const vector_const_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const vector_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef vector_reference<self_type> closure_type;
|
||||
typedef self_type vector_temporary_type;
|
||||
typedef dense_tag storage_category;
|
||||
typedef concrete_tag simd_category;
|
||||
|
||||
@@ -577,13 +577,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T &reference;
|
||||
private:
|
||||
typedef const T *const_pointer;
|
||||
typedef const unit_vector<T> const_self_type;
|
||||
typedef unit_vector<T> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const vector_const_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const vector_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef vector_reference<self_type> closure_type;
|
||||
typedef packed_tag storage_category;
|
||||
@@ -834,13 +833,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T &reference;
|
||||
private:
|
||||
typedef const T *const_pointer;
|
||||
typedef const zero_vector<T> const_self_type;
|
||||
typedef zero_vector<T> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const vector_const_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const vector_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef vector_reference<self_type> closure_type;
|
||||
typedef sparse_tag storage_category;
|
||||
@@ -1046,13 +1044,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T &reference;
|
||||
private:
|
||||
typedef const T *const_pointer;
|
||||
typedef const scalar_vector<T> const_self_type;
|
||||
typedef scalar_vector<T> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const vector_const_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const vector_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef dense_tag storage_category;
|
||||
|
||||
@@ -1281,15 +1278,15 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
typedef T *pointer;
|
||||
typedef const T *const_pointer;
|
||||
private:
|
||||
typedef const c_vector<T, N> const_self_type;
|
||||
typedef c_vector<T, N> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const vector_const_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const vector_reference<const_self_type> const_closure_type;
|
||||
typedef const vector_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef vector_reference<self_type> closure_type;
|
||||
typedef self_type vector_temporary_type;
|
||||
typedef dense_tag storage_category;
|
||||
typedef concrete_tag simd_category;
|
||||
|
||||
|
||||
@@ -49,13 +49,12 @@ namespace boost { namespace numeric { namespace ublas {
|
||||
private:
|
||||
typedef T *pointer;
|
||||
typedef F functor_type;
|
||||
typedef const generalized_vector_of_vector<T, F, A> const_self_type;
|
||||
typedef generalized_vector_of_vector<T, F, A> self_type;
|
||||
public:
|
||||
#ifndef BOOST_UBLAS_CT_REFERENCE_BASE_TYPEDEFS
|
||||
typedef const matrix_const_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_const_reference<const self_type> const_closure_type;
|
||||
#else
|
||||
typedef const matrix_reference<const_self_type> const_closure_type;
|
||||
typedef const matrix_reference<const self_type> const_closure_type;
|
||||
#endif
|
||||
typedef matrix_reference<self_type> closure_type;
|
||||
typedef typename A::value_type vector_data_value_type;
|
||||
|
||||
Reference in New Issue
Block a user