#include <amprt.h>
|
static _AMPIMP _Ret_ _View_shape *__cdecl | _Create_view_shape (unsigned int _Rank, unsigned int _Linear_offset, const unsigned int *_Base_extent, const unsigned int *_View_offset, const unsigned int *_View_extent, const bool *_Projection_info=NULL) |
|
static bool | _Compare_extent_with_elem_size (unsigned int _Rank, const unsigned int *_Extent1, size_t _Elem_size1, const unsigned int *_Extent2, size_t _Elem_size2) |
|
static bool | _Compare_extent (unsigned int _Rank, const unsigned int *_Extent1, const unsigned int *_Extent2) |
|
Concurrency::details::_View_shape::_View_shape |
( |
unsigned int |
_Rank, |
|
|
unsigned int |
_Linear_offset, |
|
|
const unsigned int * |
_Base_extent, |
|
|
const unsigned int * |
_View_offset, |
|
|
const unsigned int * |
_View_extent, |
|
|
const bool * |
_Projection_info |
|
) |
| |
|
private |
virtual Concurrency::details::_View_shape::~_View_shape |
( |
| ) |
|
|
privatevirtual |
Concurrency::details::_View_shape::_View_shape |
( |
| ) |
|
|
private |
Concurrency::details::_View_shape::_View_shape |
( |
const _View_shape & |
_Other | ) |
|
|
private |
Concurrency::details::_View_shape::_View_shape |
( |
_View_shape && |
_Other | ) |
|
|
private |
bool Concurrency::details::_View_shape::_Compare_base_shape |
( |
const _View_shape * |
_Other | ) |
const |
|
inlineprivate |
unsigned int _M_linear_offset
Definition: amprt.h:1951
static bool _Compare_extent(unsigned int _Rank, const unsigned int *_Extent1, const unsigned int *_Extent2)
Definition: amprt.h:1744
unsigned int * _M_base_extent
Definition: amprt.h:1952
unsigned int _M_rank
Definition: amprt.h:1950
static bool Concurrency::details::_View_shape::_Compare_extent |
( |
unsigned int |
_Rank, |
|
|
const unsigned int * |
_Extent1, |
|
|
const unsigned int * |
_Extent2 |
|
) |
| |
|
inlinestatic |
1746 for (
size_t _I = 0; _I < _Rank; ++_I) {
1747 if (_Extent1[_I] != _Extent2[_I]) {
static bool Concurrency::details::_View_shape::_Compare_extent_with_elem_size |
( |
unsigned int |
_Rank, |
|
|
const unsigned int * |
_Extent1, |
|
|
size_t |
_Elem_size1, |
|
|
const unsigned int * |
_Extent2, |
|
|
size_t |
_Elem_size2 |
|
) |
| |
|
inlinestatic |
1728 if ((_Extent1[_Rank - 1] * _Elem_size1) != (_Extent2[_Rank - 1] * _Elem_size2))
static bool _Compare_extent(unsigned int _Rank, const unsigned int *_Extent1, const unsigned int *_Extent2)
Definition: amprt.h:1744
#define NULL
Definition: crtdbg.h:30
#define _ASSERTE(expr)
Definition: crtdbg.h:216
bool Concurrency::details::_View_shape::_Contains |
( |
const unsigned int * |
_Element_index | ) |
const |
|
inlineprivate |
1923 for (
size_t _I = 0; _I <
_M_rank; ++_I)
unsigned int * _M_view_extent
Definition: amprt.h:1954
unsigned int _M_rank
Definition: amprt.h:1950
unsigned int * _M_view_offset
Definition: amprt.h:1953
static _AMPIMP _Ret_ _View_shape* __cdecl Concurrency::details::_View_shape::_Create_view_shape |
( |
unsigned int |
_Rank, |
|
|
unsigned int |
_Linear_offset, |
|
|
const unsigned int * |
_Base_extent, |
|
|
const unsigned int * |
_View_offset, |
|
|
const unsigned int * |
_View_extent, |
|
|
const bool * |
_Projection_info = NULL |
|
) |
| |
|
static |
const unsigned int* Concurrency::details::_View_shape::_Get_base_extent |
( |
| ) |
const |
|
inline |
unsigned int * _M_base_extent
Definition: amprt.h:1952
static unsigned int Concurrency::details::_View_shape::_Get_extent_size |
( |
unsigned int |
_Rank, |
|
|
const unsigned int * |
_Extent |
|
) |
| |
|
inlinestaticprivate |
1878 unsigned int totalExtent = 1;
1879 for (
size_t _I = 0; _I < _Rank; ++_I) {
1880 totalExtent *= _Extent[_I];
unsigned int Concurrency::details::_View_shape::_Get_linear_offset |
( |
| ) |
const |
|
inline |
unsigned int _M_linear_offset
Definition: amprt.h:1951
unsigned int Concurrency::details::_View_shape::_Get_linear_offset |
( |
const unsigned int * |
_Element_index | ) |
const |
|
inlineprivate |
1937 unsigned int currMultiplier = 1;
1939 for (
int _I = static_cast<int>(
_M_rank - 1); _I >= 0; _I--)
1941 linearOffset += (currMultiplier * _Element_index[_I]);
1945 return linearOffset;
unsigned int _M_linear_offset
Definition: amprt.h:1951
unsigned int * _M_base_extent
Definition: amprt.h:1952
unsigned int _M_rank
Definition: amprt.h:1950
const bool* Concurrency::details::_View_shape::_Get_projection_info |
( |
| ) |
const |
|
inline |
bool * _M_projection_info
Definition: amprt.h:1955
unsigned int Concurrency::details::_View_shape::_Get_rank |
( |
| ) |
const |
|
inline |
unsigned int _M_rank
Definition: amprt.h:1950
const unsigned int* Concurrency::details::_View_shape::_Get_view_extent |
( |
| ) |
const |
|
inline |
unsigned int * _M_view_extent
Definition: amprt.h:1954
unsigned int Concurrency::details::_View_shape::_Get_view_linear_offset |
( |
| ) |
const |
|
inline |
unsigned int _Get_linear_offset() const
Definition: amprt.h:1672
unsigned int * _M_view_offset
Definition: amprt.h:1953
const unsigned int* Concurrency::details::_View_shape::_Get_view_offset |
( |
| ) |
const |
|
inline |
unsigned int * _M_view_offset
Definition: amprt.h:1953
unsigned int Concurrency::details::_View_shape::_Get_view_size |
( |
| ) |
const |
|
inline |
unsigned int * _M_view_extent
Definition: amprt.h:1954
unsigned int _M_rank
Definition: amprt.h:1950
static unsigned int _Get_extent_size(unsigned int _Rank, const unsigned int *_Extent)
Definition: amprt.h:1876
static bool Concurrency::details::_View_shape::_Intervals_overlap |
( |
size_t |
_First_start, |
|
|
size_t |
_First_end, |
|
|
size_t |
_Second_start, |
|
|
size_t |
_Second_end |
|
) |
| |
|
inlinestaticprivate |
1862 if (_First_start > _Second_start) {
1863 size_t temp = _First_start;
1864 _First_start = _Second_start;
1865 _Second_start = temp;
1868 _First_end = _Second_end;
1873 return (_Second_start <= _First_end);
bool Concurrency::details::_View_shape::_Is_projection |
( |
| ) |
const |
|
inline |
bool * _M_projection_info
Definition: amprt.h:1955
bool Concurrency::details::_View_shape::_Is_valid |
( |
size_t |
_Buffer_size | ) |
const |
|
inline |
1705 if (endLinearOffset > _Buffer_size) {
unsigned int _M_linear_offset
Definition: amprt.h:1951
unsigned int * _M_base_extent
Definition: amprt.h:1952
unsigned int _M_rank
Definition: amprt.h:1950
bool _Is_valid() const
Definition: amprt.h:1886
static unsigned int _Get_extent_size(unsigned int _Rank, const unsigned int *_Extent)
Definition: amprt.h:1876
bool Concurrency::details::_View_shape::_Is_valid |
( |
| ) |
const |
|
inlineprivate |
1893 size_t viewSize = 1;
1895 for (
size_t _I = 0; _I <
_M_rank; ++_I)
1903 if (viewSize == 0) {
unsigned int * _M_view_extent
Definition: amprt.h:1954
unsigned int * _M_base_extent
Definition: amprt.h:1952
unsigned int _M_rank
Definition: amprt.h:1950
unsigned int * _M_view_offset
Definition: amprt.h:1953
bool Concurrency::details::_View_shape::_Is_view_linear |
( |
unsigned int & |
_Linear_offset, |
|
|
unsigned int & |
_Linear_size |
|
) |
| const |
|
inline |
1759 unsigned int _First_dim_with_non_unit_extent = 0;
1760 while ((_First_dim_with_non_unit_extent <
_M_rank) && (
_M_view_extent[_First_dim_with_non_unit_extent] == 1)) {
1761 _First_dim_with_non_unit_extent++;
1764 unsigned int _Effective_rank = (
_M_rank - _First_dim_with_non_unit_extent);
1769 if ((_Effective_rank <= 1) ||
unsigned int * _M_view_extent
Definition: amprt.h:1954
static bool _Compare_extent(unsigned int _Rank, const unsigned int *_Extent1, const unsigned int *_Extent2)
Definition: amprt.h:1744
unsigned int * _M_base_extent
Definition: amprt.h:1952
unsigned int _Get_view_size() const
Definition: amprt.h:1712
unsigned int _M_rank
Definition: amprt.h:1950
unsigned int _Get_view_linear_offset() const
Definition: amprt.h:1717
bool Concurrency::details::_View_shape::_Overlaps |
( |
const _View_shape * |
_Other | ) |
const |
|
inline |
1787 for (
size_t _I = 0; _I <
_M_rank; ++_I)
unsigned int * _M_view_extent
Definition: amprt.h:1954
bool _Compare_base_shape(const _View_shape *_Other) const
Definition: amprt.h:1910
unsigned int _Get_view_size() const
Definition: amprt.h:1712
unsigned int _M_rank
Definition: amprt.h:1950
unsigned int * _M_view_offset
Definition: amprt.h:1953
static bool _Intervals_overlap(size_t _First_start, size_t _First_end, size_t _Second_start, size_t _Second_end)
Definition: amprt.h:1858
unsigned int _Get_view_linear_offset() const
Definition: amprt.h:1717
bool Concurrency::details::_View_shape::_Subsumes |
( |
const _View_shape * |
_Other | ) |
const |
|
inline |
1823 return ((otherStart >= thisStart) && (otherEnd <= thisEnd));
1834 std::vector<unsigned int> otherEndPointIndex(
_M_rank);
1835 for (
size_t _I = 0; _I <
_M_rank; ++_I) {
1839 return _Contains(otherEndPointIndex.data());
const unsigned int * _Get_view_offset() const
Definition: amprt.h:1682
bool _Compare_base_shape(const _View_shape *_Other) const
Definition: amprt.h:1910
const unsigned int * _Get_view_extent() const
Definition: amprt.h:1686
bool _Contains(const unsigned int *_Element_index) const
Definition: amprt.h:1921
unsigned int _Get_view_size() const
Definition: amprt.h:1712
unsigned int _M_rank
Definition: amprt.h:1950
unsigned int _Get_view_linear_offset() const
Definition: amprt.h:1717
unsigned int _Get_rank() const
Definition: amprt.h:1667
unsigned int* Concurrency::details::_View_shape::_M_base_extent |
|
private |
unsigned int Concurrency::details::_View_shape::_M_linear_offset |
|
private |
bool* Concurrency::details::_View_shape::_M_projection_info |
|
private |
unsigned int Concurrency::details::_View_shape::_M_rank |
|
private |
unsigned int* Concurrency::details::_View_shape::_M_view_extent |
|
private |
unsigned int* Concurrency::details::_View_shape::_M_view_offset |
|
private |
The documentation for this class was generated from the following file: