STLdoc
STLdocumentation
|
An array is a multi-dimensional data aggregate on a accelerator_view. More...
#include <amp.h>
Public Types | |
typedef _Value_type | value_type |
Public Member Functions | |
array (const Concurrency::extent< _Rank > &_Extent) __CPU_ONLY | |
Construct an array from extents More... | |
array (int _E0) __CPU_ONLY | |
Construct array<T,1> with the extent _E0 More... | |
array (int _E0, int _E1) __CPU_ONLY | |
Construct an array<T,2> from two integer extents. More... | |
array (int _E0, int _E1, int _E2) __CPU_ONLY | |
Construct an array<T,3> from three integer extents. More... | |
array (const Concurrency::extent< _Rank > &_Extent, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array from extents, bound to a specific accelerator_view. More... | |
array (int _E0, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct array<T,1> with the extent _E0, bound to a specific accelerator_view. More... | |
array (int _E0, int _E1, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array<T,2> from two integer extents, bound to a specific accelerator_view. More... | |
array (int _E0, int _E1, int _E2, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array<T,3> from three integer extents, bound to a specific accelerator_view. More... | |
array (const Concurrency::extent< _Rank > &_Extent, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view. More... | |
array (int _E0, accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view. More... | |
array (int _E0, int _E1, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view. More... | |
array (int _E0, int _E1, int _E2, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view. More... | |
template<typename _InputIterator > | |
array (const Concurrency::extent< _Rank > &_Extent, _InputIterator _Src_first, _InputIterator _Src_last) __CPU_ONLY | |
Construct an array initialized from a pair of iterators into a container. More... | |
template<typename _InputIterator > | |
array (const Concurrency::extent< _Rank > &_Extent, _InputIterator _Src_first) __CPU_ONLY | |
Construct an array initialized from an iterator. More... | |
template<typename _InputIterator > | |
array (int _E0, _InputIterator _Src_first, _InputIterator _Src_last) __CPU_ONLY | |
Construct an array initialized from a pair of iterators into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, _InputIterator _Src_first) __CPU_ONLY | |
Construct an array initialized from an iterator. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, _InputIterator _Src_first, _InputIterator _Src_last) __CPU_ONLY | |
Construct an array initialized from a pair of iterators into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, _InputIterator _Src_first) __CPU_ONLY | |
Construct an array initialized from an iterator. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, int _E2, _InputIterator _Src_first, _InputIterator _Src_last) __CPU_ONLY | |
Construct an array initialized from an iterator. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, int _E2, _InputIterator _Src_first) __CPU_ONLY | |
Construct an array initialized from an iterator. More... | |
template<typename _InputIterator > | |
array (const Concurrency::extent< _Rank > &_Extent, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (const Concurrency::extent< _Rank > &_Extent, _InputIterator _Src_first, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (int _E0, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (int _E0, _InputIterator _Src_first, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, _InputIterator _Src_first, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, int _E2, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, int _E2, _InputIterator _Src_first, Concurrency::accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view. More... | |
template<typename _InputIterator > | |
array (const Concurrency::extent< _Rank > &_Extent, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container. More... | |
template<typename _InputIterator > | |
array (const Concurrency::extent< _Rank > &_Extent, _InputIterator _Src_first, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, _InputIterator _Src_first, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) | |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, _InputIterator _Src_first, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, int _E2, _InputIterator _Src_first, _InputIterator _Src_last, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container. More... | |
template<typename _InputIterator > | |
array (int _E0, int _E1, int _E2, _InputIterator _Src_first, Concurrency::accelerator_view _Av, Concurrency::accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container. More... | |
array (const array_view< const _Value_type, _Rank > &_Src) __CPU_ONLY | |
Construct an array initialized from an array_view. More... | |
array (const array_view< const _Value_type, _Rank > &_Src, accelerator_view _Av, access_type _Cpu_access_type=access_type_auto) __CPU_ONLY | |
Construct an array initialized from an array_view, bound to a specific accelerator_view. More... | |
array (const array_view< const _Value_type, _Rank > &_Src, accelerator_view _Av, accelerator_view _Associated_Av) __CPU_ONLY | |
Construct a staging array between two associated accelerator_views, initialized from an array_view. More... | |
array (const array &_Other) __CPU_ONLY | |
Copy constructor. Deep copy. More... | |
array (array &&_Other) __CPU_ONLY | |
Move constructor. More... | |
array & | operator= (const array &_Other) __CPU_ONLY |
Copy Assignment operator. Deep copy. More... | |
array & | operator= (array &&_Other) __CPU_ONLY |
Move Assignment operator. More... | |
array & | operator= (const array_view< const _Value_type, _Rank > &_Src) __CPU_ONLY |
Assignment operator from an array_view More... | |
void | copy_to (array< _Value_type, _Rank > &_Dest) const __CPU_ONLY |
Copies elements from this array to the destination array. More... | |
void | copy_to (const array_view< _Value_type, _Rank > &_Dest) const __CPU_ONLY |
Copies elements from this array to the destination array_view. More... | |
__declspec(property(get=get_extent)) Concurrency Concurrency::extent< _Rank > | get_extent () const __GPU |
Returns the extent that defines the shape of this array. More... | |
__declspec(property(get=get_accelerator_view)) Concurrency Concurrency::accelerator_view | get_accelerator_view () const __CPU_ONLY |
Returns the accelerator_view where this array is located. More... | |
__declspec(property(get=get_associated_accelerator_view)) Concurrency Concurrency::accelerator_view | get_associated_accelerator_view () const __CPU_ONLY |
Returns the accelerator_view that is the preferred target where this array can be copied. More... | |
__declspec (property(get=get_cpu_access_type)) access_type cpu_access_type | |
Returns the CPU access_type allowed for this array. More... | |
access_type | get_cpu_access_type () const __CPU_ONLY |
_Value_type & | operator[] (const index< _Rank > &_Index) __GPU |
Get the element value indexed by _I More... | |
const _Value_type & | operator[] (const index< _Rank > &_Index) const __GPU |
Get the element value indexed by _I More... | |
details::_Projection_result_type< _Value_type, _Rank >::_Result_type | operator[] (int _I) __GPU |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions. More... | |
details::_Projection_result_type< _Value_type, _Rank >::_Const_result_type | operator[] (int _I) const __GPU |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions. More... | |
_Value_type & | operator() (const index< _Rank > &_Index) __GPU |
Get the element value indexed by _I More... | |
const _Value_type & | operator() (const index< _Rank > &_Index) const __GPU |
Get the element value indexed by _Index More... | |
_Value_type & | operator() (int _I0, int _I1) __GPU |
Get the element value indexed by (_I0,_I1) More... | |
const _Value_type & | operator() (int _I0, int _I1) const __GPU |
Get the element value indexed by (_I0,_I1) More... | |
_Value_type & | operator() (int _I0, int _I1, int _I2) __GPU |
Get the element value indexed by (_I0,_I1,_I2) More... | |
const _Value_type & | operator() (int _I0, int _I1, int _I2) const __GPU |
Get the element value indexed by (_I0,_I1,_I2) More... | |
details::_Projection_result_type< _Value_type, _Rank >::_Result_type | operator() (int _I) __GPU |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions. More... | |
details::_Projection_result_type< _Value_type, _Rank >::_Const_result_type | operator() (int _I) const __GPU |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions. More... | |
array_view< _Value_type, _Rank > | section (const Concurrency::index< _Rank > &_Section_origin, const Concurrency::extent< _Rank > &_Section_extent) __GPU |
Produces a subsection of the source array at the given origin and extent. More... | |
array_view< const _Value_type, _Rank > | section (const Concurrency::index< _Rank > &_Section_origin, const Concurrency::extent< _Rank > &_Section_extent) const __GPU |
Produces a subsection of the source array at the given origin and extent. More... | |
array_view< _Value_type, _Rank > | section (const Concurrency::extent< _Rank > &_Ext) __GPU |
Produces a subsection of the source array_view with origin of zero, with an extent of _Ext. More... | |
array_view< const _Value_type, _Rank > | section (const Concurrency::extent< _Rank > &_Ext) const __GPU |
Produces a subsection of the source array_view with origin of zero, with an extent of _Ext. More... | |
array_view< _Value_type, _Rank > | section (const index< _Rank > &_Idx) __GPU |
Produces a subsection of the source array with origin specified by an index, with an extent of (this->exent - _Idx). More... | |
array_view< const _Value_type, _Rank > | section (const index< _Rank > &_Idx) const __GPU |
Produces a subsection of the source array with origin specified by an index, with an extent of (this->exent - _Idx). More... | |
array_view< _Value_type, 1 > | section (int _I0, int _E0) __GPU |
Produces a one-dimensional subsection of the source array with origin specified by the index components _I0, with extent _E0. More... | |
array_view< const _Value_type, 1 > | section (int _I0, int _E0) const __GPU |
Produces a one-dimensional subsection of the source array with origin specified by the index components _I0, with extent _E0. More... | |
array_view< _Value_type, 2 > | section (int _I0, int _I1, int _E0, int _E1) __GPU |
Produces a two-dimensional subsection of the source array with origin specified by the index components (_I0,_I1), with extent (_E0,_E1). More... | |
array_view< const _Value_type, 2 > | section (int _I0, int _I1, int _E0, int _E1) const __GPU |
Produces a two-dimensional subsection of the source array with origin specified by the index components (_I0,_I1), with extent (_E0,_E1). More... | |
array_view< _Value_type, 3 > | section (int _I0, int _I1, int _I2, int _E0, int _E1, int _E2) __GPU |
Produces a three-dimensional subsection of the source array with origin specified by the index components (_I0,_I1,_I2), with extent (_E0,_E1,_E2). More... | |
array_view< const _Value_type, 3 > | section (int _I0, int _I1, int _I2, int _E0, int _E1, int _E2) const __GPU |
Produces a three-dimensional subsection of the source array with origin specified by the index components (_I0,_I1,_I2), with extent (_E0,_E1,_E2). More... | |
template<typename _Value_type2 > | |
array_view< _Value_type2, 1 > | reinterpret_as () __GPU |
Produces a (possibly unsafe) reinterpretation of this array that is linear and with a different element type. More... | |
template<typename _Value_type2 > | |
array_view< const _Value_type2, 1 > | reinterpret_as () const __GPU |
Produces a (possibly unsafe) reinterpretation of this array that is linear and with a different element type. More... | |
template<int _New_rank> | |
array_view< _Value_type, _New_rank > | view_as (const Concurrency::extent< _New_rank > &_View_extent) __GPU |
Produces an array_view of a different rank over this array's data. More... | |
template<int _New_rank> | |
array_view< const _Value_type, _New_rank > | view_as (const Concurrency::extent< _New_rank > &_View_extent) const __GPU |
Produces an array_view of a different rank over this array's data. More... | |
operator std::vector< _Value_type > () const __CPU_ONLY | |
Implicitly converts this array into a vector by copying. More... | |
_Ret_ _Value_type * | data () __GPU |
Returns a pointer to the raw data of this array. More... | |
const _Value_type * | data () const __GPU |
Returns a pointer to the raw data of this array. More... | |
~array () __CPU_ONLY noexcept(false) | |
Destroys this array and reclaims resources. More... | |
Static Public Attributes | |
static const int | rank = _Rank |
Private Types | |
typedef details::_Buffer_descriptor | _Buffer_descriptor |
typedef _Array_flatten_helper< _Rank, typename Concurrency::extent< _Rank >::value_type, typename Concurrency::index< _Rank >::value_type > | _Flatten_helper |
Private Attributes | |
Concurrency::extent< _Rank > | _M_extent |
_Buffer_descriptor | _M_buffer_descriptor |
Concurrency::extent< _Rank > | _M_multiplier |
Friends | |
template<typename _Value_type , int _Rank> | |
array< _Value_type, _Rank > | direct3d::make_array (const Concurrency::extent< _Rank > &_Extent, const Concurrency::accelerator_view &_Av, _In_ IUnknown *_D3D_buffer) __CPU_ONLY |
const _Buffer_descriptor & | details::_Get_buffer_descriptor (const array< _Value_type, _Rank > &_Array) __GPU |
_Ret_ _Ubiquitous_buffer * | details::_Get_buffer (const array< _Value_type, _Rank > &_Array) __CPU_ONLY |
_Event | details::_Get_access_async (const array< _Value_type, _Rank > &_Array, _Access_mode _Mode, _Buffer_ptr &_Buf_ptr) __CPU_ONLY |
An array is a multi-dimensional data aggregate on a accelerator_view.
_Rank | The dimensionality of this array. |
_Value_type | The type of the elements in the array. |
|
private |
|
private |
typedef _Value_type Concurrency::array< _Value_type, _Rank >::value_type |
|
inlineexplicit |
Construct an array from extents
_Extent | An extent that describes the shape of the array. |
|
inlineexplicit |
Construct array<T,1> with the extent _E0
_E0 | An integer that is the length of this array. |
|
inlineexplicit |
Construct an array<T,2> from two integer extents.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
|
inlineexplicit |
Construct an array<T,3> from three integer extents.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
|
inline |
Construct an array from extents, bound to a specific accelerator_view.
_Extent | An extent that describes the shape of the array. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct array<T,1> with the extent _E0, bound to a specific accelerator_view.
_E0 | An integer that is the length of this array. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array<T,2> from two integer extents, bound to a specific accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array<T,3> from three integer extents, bound to a specific accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct a staging array between two associated accelerator_view.
_Extent | An extent that describes the shape of the array. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view.
_E0 | An integer that is the length of this array. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct an array initialized from a pair of iterators into a container.
_Extent | An extent that describes the shape of the array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
|
inline |
Construct an array initialized from an iterator.
_Extent | An extent that describes the shape of the array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
|
inline |
Construct an array initialized from a pair of iterators into a container.
_E0 | An integer that is the length of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
|
inline |
Construct an array initialized from an iterator.
_E0 | An integer that is the length of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
|
inline |
Construct an array initialized from a pair of iterators into a container.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
|
inline |
Construct an array initialized from an iterator.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
|
inline |
Construct an array initialized from an iterator.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
|
inline |
Construct an array initialized from an iterator.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
|
inline |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view.
_Extent | An extent that describes the shape of the array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view.
_Extent | An extent that describes the shape of the array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view.
_E0 | An integer that is the length of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view.
_E0 | An integer that is the length of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array initialized from a pair of iterators into a container, bound to a specific accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct an array initialized from an iterator into a container, bound to a specific accelerator_view.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container.
_Extent | An extent that describes the shape of the array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container.
_Extent | An extent that describes the shape of the array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container.
_E0 | An integer that is the length of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container.
_E0 | An integer that is the length of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from a pair of iterators into a container.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container. |
_Src_last | An ending iterator into the source container. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inline |
Construct a staging array between two associated accelerator_view, initialized from an iterator into a container.
_E0 | An integer that is the length of the most-significant dimension of this array. |
_E1 | An integer that is the length of the next-to-most-significant dimension of this array. |
_E2 | An integer that is the length of the least-significant dimension of this array. |
_Src_first | A beginning iterator into the source container; if the number of available container elements starting at this iterator position is less than this->extent.size(), undefined behavior results. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | An accelerator_view which specifies the preferred target location of the array. |
|
inlineexplicit |
Construct an array initialized from an array_view.
_Src | An array_view to copy from. |
|
inline |
Construct an array initialized from an array_view, bound to a specific accelerator_view.
_Src | An array_view to copy from. |
_Av | An accelerator_view where this array resides. |
_Cpu_access_type | The desired access_type for the array on the CPU. This parameter has a default value of access_type_auto leaving the CPU access_type determination to the runtime. The actual CPU access_type for the array can be queried using the get_cpu_access_type method. |
|
inline |
Construct a staging array between two associated accelerator_views, initialized from an array_view.
_Src | An array_view to copy from. |
_Av | An accelerator_view which specifies the location of the array. |
_Associated_Av | The accelerator_view that is associated with _Av. |
|
inline |
Copy constructor. Deep copy.
|
inline |
Move constructor.
|
inlinenoexcept |
Destroys this array and reclaims resources.
|
private |
|
inlineprivate |
Concurrency::array< _Value_type, _Rank >::__declspec | ( | property(get=get_cpu_access_type) | ) |
Returns the CPU access_type allowed for this array.
|
private |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inline |
Copies elements from this array to the destination array.
|
inline |
Copies elements from this array to the destination array_view.
|
inline |
Returns a pointer to the raw data of this array.
|
inline |
Returns a pointer to the raw data of this array.
|
inline |
Returns the accelerator_view where this array is located.
|
inline |
Returns the accelerator_view that is the preferred target where this array can be copied.
|
inline |
|
inline |
Returns the extent that defines the shape of this array.
|
inline |
Implicitly converts this array into a vector by copying.
|
inline |
Get the element value indexed by _I
_I | The index. |
|
inline |
Get the element value indexed by _Index
_Index | The index. |
|
inline |
Get the element value indexed by (_I0,_I1)
_I0 | The most-significant component of the index |
_I1 | The least-significant component of the index |
|
inline |
Get the element value indexed by (_I0,_I1)
_I0 | The most-significant component of the index |
_I1 | The least-significant component of the index |
|
inline |
Get the element value indexed by (_I0,_I1,_I2)
_I0 | The most-significant component of the index |
_I1 | The next-to-most-significant component of the index |
_I2 | The least-significant component of the index |
|
inline |
Get the element value indexed by (_I0,_I1,_I2)
_I0 | The most-significant component of the index |
_I1 | The next-to-most-significant component of the index |
_I2 | The least-significant component of the index |
|
inline |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions.
_I | The most-significant index component |
|
inline |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions.
_I | The most-significant index component |
|
inline |
Copy Assignment operator. Deep copy.
|
inline |
Move Assignment operator.
|
inline |
Assignment operator from an array_view
|
inline |
Get the element value indexed by _I
_I | The index. |
|
inline |
Get the element value indexed by _I
_I | The index. |
|
inline |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions.
_I | The most-significant index component |
|
inline |
Projects the most-significant dimension of this array. If the array rank is 1, this produces a single element; otherwise it produces an array_view with one fewer dimensions.
_I | The most-significant index component |
|
inline |
Produces a (possibly unsafe) reinterpretation of this array that is linear and with a different element type.
|
inline |
Produces a (possibly unsafe) reinterpretation of this array that is linear and with a different element type.
|
inline |
Produces a subsection of the source array at the given origin and extent.
_Section_origin | The origin of the section. |
_Section_extent | The extent of the section |
|
inline |
Produces a subsection of the source array at the given origin and extent.
_Section_origin | The origin of the section. |
_Section_extent | The extent of the section |
|
inline |
Produces a subsection of the source array_view with origin of zero, with an extent of _Ext.
_Ext | The extent of this section |
|
inline |
Produces a subsection of the source array_view with origin of zero, with an extent of _Ext.
_Ext | The extent of this section |
|
inline |
Produces a subsection of the source array with origin specified by an index, with an extent of (this->exent - _Idx).
_Idx | The index that specifies the origin of this section. |
|
inline |
Produces a subsection of the source array with origin specified by an index, with an extent of (this->exent - _Idx).
_Idx | The index that specifies the origin of this section. |
|
inline |
Produces a one-dimensional subsection of the source array with origin specified by the index components _I0, with extent _E0.
_I0 | The origin of this section. |
_E0 | The extent of this section. |
|
inline |
Produces a one-dimensional subsection of the source array with origin specified by the index components _I0, with extent _E0.
_I0 | The origin of this section. |
_E0 | The extent of this section. |
|
inline |
Produces a two-dimensional subsection of the source array with origin specified by the index components (_I0,_I1), with extent (_E0,_E1).
_I0 | The most-significant component of the origin of this section. |
_I1 | The least-significant component of the origin of this section. |
_E0 | The most-significant component of the extent of this section. |
_E1 | The least-significant component of the extent of this section. |
|
inline |
Produces a two-dimensional subsection of the source array with origin specified by the index components (_I0,_I1), with extent (_E0,_E1).
_I0 | The most-significant component of the origin of this section. |
_I1 | The least-significant component of the origin of this section. |
_E0 | The most-significant component of the extent of this section. |
_E1 | The least-significant component of the extent of this section. |
|
inline |
Produces a three-dimensional subsection of the source array with origin specified by the index components (_I0,_I1,_I2), with extent (_E0,_E1,_E2).
_I0 | The most-significant component of the origin of this section. |
_I1 | The next-to-most-significant component of the origin of this section. |
_I2 | The least-significant component of the origin of this section. |
_E0 | The most-significant component of the extent of this section. |
_E1 | The next-to-most-significant component of the extent of this section. |
_E2 | The least-significant component of the extent of this section. |
|
inline |
Produces a three-dimensional subsection of the source array with origin specified by the index components (_I0,_I1,_I2), with extent (_E0,_E1,_E2).
_I0 | The most-significant component of the origin of this section. |
_I1 | The next-to-most-significant component of the origin of this section. |
_I2 | The least-significant component of the origin of this section. |
_E0 | The most-significant component of the extent of this section. |
_E1 | The next-to-most-significant component of the extent of this section. |
_E2 | The least-significant component of the extent of this section. |
|
inline |
Produces an array_view of a different rank over this array's data.
_View_extent | The reshaping extent. |
|
inline |
Produces an array_view of a different rank over this array's data.
_View_extent | The reshaping extent. |
|
friend |
|
friend |
|
friend |
|
friend |
|
private |
|
private |
|
private |
|
static |