Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::ItemEnumeratorBaseT< ItemType > Class Template Reference

Base class for enumerators over a list of entities. More...

#include <arcane/core/ItemEnumeratorBase.h>

Inheritance diagram for Arcane::ItemEnumeratorBaseT< ItemType >:
Collaboration diagram for Arcane::ItemEnumeratorBaseT< ItemType >:

Public Member Functions

constexpr const ItemInternalPtr * unguardedItems () const
 List of ItemInternal. NOTE: In Arcane, this method is used only for the C# wrapper. To be removed later.
constexpr ItemInternalinternal () const
 Internal part (for internal use only).
constexpr ItemType operator* () const
constexpr const ItemType * operator-> () const
constexpr LocalIdType asItemLocalId () const
constexpr operator LocalIdType () const
ItemEnumerator toItemEnumerator () const
impl::ItemBase _internalItemBase () const
Public Member Functions inherited from Arcane::ItemEnumeratorBase
constexpr void operator++ ()
 Increments the enumerator index.
constexpr bool operator() ()
constexpr bool hasNext ()
 True if the end of the enumerator has not been reached (index()<count()).
constexpr Integer count () const
 Number of elements in the enumerator.
constexpr Integer index () const
 Current index of the enumerator.
Int32 itemLocalId () const
 localId() of the current entity.
Int32 localId () const
 localId() of the current entity.
constexpr const Int32unguardedLocalIds () const
 Local indices.
constexpr const ItemGroupImplgroup () const
 Underlying group if it exists (nullptr otherwise).

Protected Member Functions

 ItemEnumeratorBaseT (ItemSharedInfo *shared_info, const Int32ConstArrayView &local_ids)
 ItemEnumeratorBaseT (const ItemInfoListView &items, const Int32ConstArrayView &local_ids, const ItemGroupImpl *agroup)
 ItemEnumeratorBaseT (const ItemInternalVectorView &view, const ItemGroupImpl *agroup)
 ItemEnumeratorBaseT (const ItemVectorView &rhs)
 ItemEnumeratorBaseT (const ItemVectorViewT< ItemType > &rhs)
 ItemEnumeratorBaseT (const ItemEnumerator &rhs)
 ItemEnumeratorBaseT (const impl::ItemIndexedListView< DynExtent > &view)
 ItemEnumeratorBaseT (const ItemConnectedListViewT< ItemType > &rhs)
 ItemEnumeratorBaseT (ItemSharedInfo *si, const impl::ItemLocalIdListContainerView &view)
 ItemEnumeratorBaseT (const ItemInternalPtr *items, const Int32 *local_ids, Integer n, const ItemGroupImpl *agroup)
 ItemEnumeratorBaseT (const ItemInternalArrayView &items, const Int32ConstArrayView &local_ids, const ItemGroupImpl *agroup)
 ItemEnumeratorBaseT (const ItemInternalEnumerator &rhs)
 ItemEnumeratorBaseT (const ItemEnumerator &rhs, bool)
 Constructor only used by fromItemEnumerator().
 ItemEnumeratorBaseT (const impl::ItemLocalIdListContainerView &view, Int32 index, const ItemGroupImpl *agroup, Item item_base)
void _init (const ItemInternalPtr *items)
Protected Member Functions inherited from Arcane::ItemEnumeratorBase
 ItemEnumeratorBase (const ItemInternalPtr *, const Int32 *local_ids, Integer n, const ItemGroupImpl *agroup)
 ItemEnumeratorBase (const Int32ConstArrayView &local_ids)
 ItemEnumeratorBase (const Int32ConstArrayView &local_ids, const ItemGroupImpl *agroup)
 ItemEnumeratorBase (const ItemInternalVectorView &view, const ItemGroupImpl *agroup)
 ItemEnumeratorBase (const ItemVectorView &rhs)
template<int E>
 ItemEnumeratorBase (const ItemConnectedListView< E > &rhs)
 ItemEnumeratorBase (const ItemEnumerator &rhs)
 ItemEnumeratorBase (const ItemEnumerator &rhs, bool)
 Constructor only used by fromItemEnumerator().
 ItemEnumeratorBase (const impl::ItemLocalIdListContainerView &view, Int32 index, const ItemGroupImpl *agroup)
 ItemEnumeratorBase (const impl::ItemLocalIdListContainerView &view)
ItemInternal_internal (ItemSharedInfo *si) const
constexpr const ItemInternalPtr * _unguardedItems (ItemSharedInfo *si) const

Protected Attributes

ItemType m_item = ItemType(NULL_ITEM_LOCAL_ID, nullptr)
Protected Attributes inherited from Arcane::ItemEnumeratorBase
impl::ItemLocalIdListContainerView m_view
Int32 m_index = 0
const ItemGroupImplm_group_impl = nullptr

Private Types

using ItemInternalPtr = ItemInternal*
using LocalIdType = typename ItemType::LocalIdType
using BaseClass = ItemEnumeratorBase

Friends

class SimdItemEnumeratorBase

Additional Inherited Members

Static Public Member Functions inherited from Arcane::ItemEnumeratorBase
static constexpr int version ()

Detailed Description

template<typename ItemType>
class Arcane::ItemEnumeratorBaseT< ItemType >

Base class for enumerators over a list of entities.

Instances of this class are created either via ItemEnumerator or via ItemEnumeratorT.

Definition at line 199 of file ItemEnumeratorBase.h.

Member Typedef Documentation

◆ BaseClass

template<typename ItemType>
using Arcane::ItemEnumeratorBaseT< ItemType >::BaseClass = ItemEnumeratorBase
private

Definition at line 208 of file ItemEnumeratorBase.h.

◆ ItemInternalPtr

template<typename ItemType>
using Arcane::ItemEnumeratorBaseT< ItemType >::ItemInternalPtr = ItemInternal*
private

Definition at line 206 of file ItemEnumeratorBase.h.

◆ LocalIdType

template<typename ItemType>
using Arcane::ItemEnumeratorBaseT< ItemType >::LocalIdType = typename ItemType::LocalIdType
private

Definition at line 207 of file ItemEnumeratorBase.h.

Constructor & Destructor Documentation

◆ ItemEnumeratorBaseT() [1/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( )
inlineprotected

Definition at line 212 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [2/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( ItemSharedInfo * shared_info,
const Int32ConstArrayView & local_ids )
inlineprotected

Definition at line 217 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [3/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemInfoListView & items,
const Int32ConstArrayView & local_ids,
const ItemGroupImpl * agroup )
inlineprotected

Definition at line 222 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [4/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemInternalVectorView & view,
const ItemGroupImpl * agroup )
inlineprotected

Definition at line 226 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [5/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemVectorView & rhs)
inlineprotected

Definition at line 230 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [6/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemVectorViewT< ItemType > & rhs)
inlineprotected

Definition at line 233 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [7/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemEnumerator & rhs)
inlineprotected

Definition at line 201 of file ItemEnumerator.h.

◆ ItemEnumeratorBaseT() [8/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const impl::ItemIndexedListView< DynExtent > & view)
inlineprotected

Definition at line 238 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [9/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemConnectedListViewT< ItemType > & rhs)
inlineprotected

Definition at line 242 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [10/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( ItemSharedInfo * si,
const impl::ItemLocalIdListContainerView & view )
inlineprotected

Definition at line 247 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [11/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemInternalPtr * items,
const Int32 * local_ids,
Integer n,
const ItemGroupImpl * agroup )
inlineprotected

Definition at line 256 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [12/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemInternalArrayView & items,
const Int32ConstArrayView & local_ids,
const ItemGroupImpl * agroup )
inlineprotected

Definition at line 262 of file ItemEnumeratorBase.h.

◆ ItemEnumeratorBaseT() [13/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemInternalEnumerator & rhs)
inlineprotected

Definition at line 211 of file ItemEnumerator.h.

◆ ItemEnumeratorBaseT() [14/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const ItemEnumerator & rhs,
bool v )
inlineprotected

Constructor only used by fromItemEnumerator().

Definition at line 180 of file ItemEnumerator.h.

◆ ItemEnumeratorBaseT() [15/15]

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::ItemEnumeratorBaseT ( const impl::ItemLocalIdListContainerView & view,
Int32 index,
const ItemGroupImpl * agroup,
Item item_base )
inlineprotected

Definition at line 325 of file ItemEnumeratorBase.h.

Member Function Documentation

◆ _init()

template<typename ItemType>
void Arcane::ItemEnumeratorBaseT< ItemType >::_init ( const ItemInternalPtr * items)
inlineprotected

Definition at line 332 of file ItemEnumeratorBase.h.

◆ _internalItemBase()

template<typename ItemType>
impl::ItemBase Arcane::ItemEnumeratorBaseT< ItemType >::_internalItemBase ( ) const
inline

Definition at line 314 of file ItemEnumeratorBase.h.

◆ asItemLocalId()

template<typename ItemType>
LocalIdType Arcane::ItemEnumeratorBaseT< ItemType >::asItemLocalId ( ) const
inlineconstexpr

Definition at line 300 of file ItemEnumeratorBase.h.

◆ internal()

template<typename ItemType>
ItemInternal * Arcane::ItemEnumeratorBaseT< ItemType >::internal ( ) const
inlineconstexpr

Internal part (for internal use only).

Definition at line 285 of file ItemEnumeratorBase.h.

◆ operator LocalIdType()

template<typename ItemType>
Arcane::ItemEnumeratorBaseT< ItemType >::operator LocalIdType ( ) const
inlineconstexpr

Definition at line 305 of file ItemEnumeratorBase.h.

◆ operator*()

template<typename ItemType>
ItemType Arcane::ItemEnumeratorBaseT< ItemType >::operator* ( ) const
inlineconstexpr

Definition at line 289 of file ItemEnumeratorBase.h.

◆ operator->()

template<typename ItemType>
const ItemType * Arcane::ItemEnumeratorBaseT< ItemType >::operator-> ( ) const
inlineconstexpr

Definition at line 294 of file ItemEnumeratorBase.h.

◆ toItemEnumerator()

template<typename ItemType>
ItemEnumerator Arcane::ItemEnumeratorBaseT< ItemType >::toItemEnumerator ( ) const
inline

Definition at line 220 of file ItemEnumerator.h.

◆ unguardedItems()

template<typename ItemType>
const ItemInternalPtr * Arcane::ItemEnumeratorBaseT< ItemType >::unguardedItems ( ) const
inlineconstexpr

List of ItemInternal. NOTE: In Arcane, this method is used only for the C# wrapper. To be removed later.

Definition at line 278 of file ItemEnumeratorBase.h.

◆ SimdItemEnumeratorBase

template<typename ItemType>
friend class SimdItemEnumeratorBase
friend

Definition at line 202 of file ItemEnumeratorBase.h.

Member Data Documentation

◆ m_item

template<typename ItemType>
ItemType Arcane::ItemEnumeratorBaseT< ItemType >::m_item = ItemType(NULL_ITEM_LOCAL_ID, nullptr)
mutableprotected

Definition at line 318 of file ItemEnumeratorBase.h.


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