Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::SimdEnumeratorBase Class Reference

Base class for vector enumerators with indirection. More...

#include <arcane/utils/Simd.h>

Inheritance diagram for Arcane::SimdEnumeratorBase:
Collaboration diagram for Arcane::SimdEnumeratorBase:

Public Types

typedef SimdInfo::SimdInt32IndexType SimdIndexType

Public Member Functions

 SimdEnumeratorBase (const Int32 *local_ids, Integer n)
 SimdEnumeratorBase (Int32ConstArrayView local_ids)
bool hasNext ()
const Int32unguardedLocalIds () const
 Local indices.
void operator++ ()
Integer nbValid () const
 Number of valid values for the current iterator.
Integer count () const

Protected Member Functions

const SimdIndexType *ARCANE_RESTRICT _currentSimdIndex () const

Protected Attributes

const Int32 *ARCANE_RESTRICT m_local_ids
Integer m_index
Integer m_count

Private Member Functions

void _checkValid ()
void _checkValidHelper ()

Detailed Description

Base class for vector enumerators with indirection.

Warning
The arrays of local indices (local_ids) passed to the constructors must be aligned.

Definition at line 416 of file Simd.h.

Member Typedef Documentation

◆ SimdIndexType

typedef SimdInfo::SimdInt32IndexType Arcane::SimdEnumeratorBase::SimdIndexType

Definition at line 420 of file Simd.h.

Constructor & Destructor Documentation

◆ SimdEnumeratorBase() [1/3]

Arcane::SimdEnumeratorBase::SimdEnumeratorBase ( )
inline

Definition at line 424 of file Simd.h.

◆ SimdEnumeratorBase() [2/3]

Arcane::SimdEnumeratorBase::SimdEnumeratorBase ( const Int32 * local_ids,
Integer n )
inline

Definition at line 429 of file Simd.h.

◆ SimdEnumeratorBase() [3/3]

Arcane::SimdEnumeratorBase::SimdEnumeratorBase ( Int32ConstArrayView local_ids)
inlineexplicit

Definition at line 436 of file Simd.h.

Member Function Documentation

◆ _checkValid()

void Arcane::SimdEnumeratorBase::_checkValid ( )
inlineprivate

Definition at line 482 of file Simd.h.

◆ _checkValidHelper()

void Arcane::SimdEnumeratorBase::_checkValidHelper ( )
private

Definition at line 92 of file Simd.cc.

◆ _currentSimdIndex()

const SimdIndexType *ARCANE_RESTRICT Arcane::SimdEnumeratorBase::_currentSimdIndex ( ) const
inlineprotected

Definition at line 474 of file Simd.h.

◆ count()

Integer Arcane::SimdEnumeratorBase::count ( ) const
inline

Definition at line 465 of file Simd.h.

◆ hasNext()

bool Arcane::SimdEnumeratorBase::hasNext ( )
inline

Definition at line 446 of file Simd.h.

◆ nbValid()

Integer Arcane::SimdEnumeratorBase::nbValid ( ) const
inline

Number of valid values for the current iterator.

Precondition
hasNext()==true

Definition at line 457 of file Simd.h.

◆ operator++()

void Arcane::SimdEnumeratorBase::operator++ ( )
inline

Definition at line 451 of file Simd.h.

◆ unguardedLocalIds()

const Int32 * Arcane::SimdEnumeratorBase::unguardedLocalIds ( ) const
inline

Local indices.

Definition at line 449 of file Simd.h.

Member Data Documentation

◆ m_count

Integer Arcane::SimdEnumeratorBase::m_count
protected

Definition at line 471 of file Simd.h.

◆ m_index

Integer Arcane::SimdEnumeratorBase::m_index
protected

Definition at line 470 of file Simd.h.

◆ m_local_ids

const Int32* ARCANE_RESTRICT Arcane::SimdEnumeratorBase::m_local_ids
protected

Definition at line 469 of file Simd.h.


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