Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
Arcane::SimpleForLoopRanges< N, IndexType_ > Class Template Reference

Simple iteration range. More...

#include <arccore/base/ForLoopRanges.h>

Public Types

using ArrayBoundsType = ArrayBounds<typename MDDimType<N>::DimType>
using ArrayIndexType = ArrayBoundsType::MDIndexType
using LoopIndexType = ArrayIndexType

Public Member Functions

 SimpleForLoopRanges (std::array< Int32, N > b)
 explicit (false) SimpleForLoopRanges(ArrayBoundsType b)
template<Int32 I>
constexpr Int32 upperBound () const
template<Int32 I>
constexpr Int32 extent () const
constexpr Int64 nbElement () const
constexpr ArrayIndexType getIndices (Int32 i) const

Static Public Member Functions

template<Int32 I>
static constexpr Int32 lowerBound ()

Friends

class ComplexForLoopRanges< N >

Detailed Description

template<int N, typename IndexType_>
class Arcane::SimpleForLoopRanges< N, IndexType_ >

Simple iteration range.

The starting indices for each dimension start at 0.

Definition at line 68 of file arccore/src/base/arccore/base/ForLoopRanges.h.

Member Typedef Documentation

◆ ArrayBoundsType

template<int N, typename IndexType_>
using Arcane::SimpleForLoopRanges< N, IndexType_ >::ArrayBoundsType = ArrayBounds<typename MDDimType<N>::DimType>

◆ ArrayIndexType

template<int N, typename IndexType_>
using Arcane::SimpleForLoopRanges< N, IndexType_ >::ArrayIndexType = ArrayBoundsType::MDIndexType

◆ LoopIndexType

template<int N, typename IndexType_>
using Arcane::SimpleForLoopRanges< N, IndexType_ >::LoopIndexType = ArrayIndexType

Constructor & Destructor Documentation

◆ SimpleForLoopRanges()

template<int N, typename IndexType_>
Arcane::SimpleForLoopRanges< N, IndexType_ >::SimpleForLoopRanges ( std::array< Int32, N > b)
inlineexplicit

Member Function Documentation

◆ explicit()

template<int N, typename IndexType_>
Arcane::SimpleForLoopRanges< N, IndexType_ >::explicit ( false )
inline

◆ extent()

template<int N, typename IndexType_>
template<Int32 I>
Int32 Arcane::SimpleForLoopRanges< N, IndexType_ >::extent ( ) const
inlineconstexpr

◆ getIndices()

template<int N, typename IndexType_>
ArrayIndexType Arcane::SimpleForLoopRanges< N, IndexType_ >::getIndices ( Int32 i) const
inlineconstexpr

◆ lowerBound()

template<int N, typename IndexType_>
template<Int32 I>
constexpr Int32 Arcane::SimpleForLoopRanges< N, IndexType_ >::lowerBound ( )
inlinestaticconstexpr

◆ nbElement()

template<int N, typename IndexType_>
Int64 Arcane::SimpleForLoopRanges< N, IndexType_ >::nbElement ( ) const
inlineconstexpr

◆ upperBound()

template<int N, typename IndexType_>
template<Int32 I>
Int32 Arcane::SimpleForLoopRanges< N, IndexType_ >::upperBound ( ) const
inlineconstexpr

◆ ComplexForLoopRanges< N >

template<int N, typename IndexType_>
friend class ComplexForLoopRanges< N >
friend

The documentation for this class was generated from the following files: