Complex iteration range. More...
Public Types | |
| using | ArrayBoundsType = ArrayBounds<typename MDDimType<N, IndexType_>::DimType> |
| using | MDIndexType = ArrayBoundsType::MDIndexType |
| using | ArrayIndexType = MDIndexType |
| using | LoopIndexType = ArrayIndexType |
| using | ExtentIndexType = IndexType_ |
Public Member Functions | |
| ComplexForLoopRanges (ArrayBoundsType lower, ArrayBoundsType extents) | |
| explicit (false) ComplexForLoopRanges(const SimpleForLoopRanges< N | |
| return | ComplexForLoopRanges (a, b) |
| template<Int32 I> | |
| constexpr Int32 | lowerBound () const |
| template<Int32 I> | |
| constexpr Int32 | upperBound () const |
| template<Int32 I> | |
| constexpr Int32 | extent () const |
| constexpr Int64 | nbElement () const |
| constexpr MDIndexType | getIndices (Int32 i) const |
| constexpr ArrayBoundsType | extents () const |
Public Attributes | |
| IndexType_ & | bounds: m_extents(bounds.m_bounds) {} public: template <typename OtherIndexType> static ComplexForLoopRanges fromOther(const ComplexForLoopRanges<N |
| IndexType_ OtherIndexType & | other_loop |
| auto | b = ArrayBoundsType::fromOther(other_loop.m_extents) |
Private Member Functions | |
| ComplexForLoopRanges (MDIndexType lower, ArrayBoundsType extents) | |
Private Attributes | |
| MDIndexType | m_lower_bounds |
| ArrayBoundsType | m_extents |
Complex iteration range.
The starting indices for each dimension are specified by lower and the number of elements in each dimension by extents.
Definition at line 115 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| using Arcane::ComplexForLoopRanges< N, IndexType_ >::ArrayBoundsType = ArrayBounds<typename MDDimType<N, IndexType_>::DimType> |
Definition at line 121 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| using Arcane::ComplexForLoopRanges< N, IndexType_ >::ArrayIndexType = MDIndexType |
Definition at line 123 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| using Arcane::ComplexForLoopRanges< N, IndexType_ >::ExtentIndexType = IndexType_ |
Definition at line 125 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| using Arcane::ComplexForLoopRanges< N, IndexType_ >::LoopIndexType = ArrayIndexType |
Definition at line 124 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| using Arcane::ComplexForLoopRanges< N, IndexType_ >::MDIndexType = ArrayBoundsType::MDIndexType |
Definition at line 122 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inline |
Definition at line 131 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inlineprivate |
Definition at line 152 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inlineconstexpr |
Definition at line 161 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inlineconstexpr |
Definition at line 169 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inlineconstexpr |
Definition at line 163 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inlineconstexpr |
Definition at line 159 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inlineconstexpr |
Definition at line 162 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
inlineconstexpr |
Definition at line 160 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
friend |
Definition at line 117 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| auto Arcane::ComplexForLoopRanges< N, IndexType_ >::b = ArrayBoundsType::fromOther(other_loop.m_extents) |
Definition at line 146 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| IndexType_& Arcane::ComplexForLoopRanges< N, IndexType_ >::bounds |
Definition at line 135 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
private |
Definition at line 174 of file arccore/src/base/arccore/base/ForLoopRanges.h.
|
private |
Definition at line 173 of file arccore/src/base/arccore/base/ForLoopRanges.h.
| IndexType_ OtherIndexType& Arcane::ComplexForLoopRanges< N, IndexType_ >::other_loop |
Definition at line 143 of file arccore/src/base/arccore/base/ForLoopRanges.h.