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

Enumerator over a typed list of entities of type ItemType. More...

#include <arcane/core/ItemEnumerator.h>

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

Public Member Functions

 ItemEnumeratorT (const ItemVectorView &rhs)
 ItemEnumeratorT (const ItemVectorViewT< ItemType > &rhs)
 ItemEnumeratorT (const ItemEnumerator &rhs)
 ItemEnumeratorT (const ItemInternalEnumerator &rhs)
 ItemEnumeratorT (const ItemInternalPtr *items, const Int32 *local_ids, Integer n, const ItemGroupImpl *agroup=nullptr)
 ItemEnumeratorT (const ItemInternalArrayView &items, const Int32ConstArrayView &local_ids, const ItemGroupImpl *agroup=nullptr)
 ItemEnumeratorT (const ItemInternalVectorView &view, const ItemGroupImpl *agroup=nullptr)
 ItemEnumeratorT (const ItemConnectedListViewT< ItemType > &rhs)
 operator ItemEnumerator () const
 Conversion to an ItemEnumerator.
Public Member Functions inherited from Arcane::ItemEnumeratorBaseT< ItemType >
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).

Static Public Member Functions

static ItemEnumeratorT< ItemType > fromItemEnumerator (const ItemEnumerator &rhs)
Static Public Member Functions inherited from Arcane::ItemEnumeratorBase
static constexpr int version ()

Private Types

using ItemInternalPtr = ItemInternal*
using LocalIdType = typename ItemType::LocalIdType
using BaseClass = ItemEnumeratorBaseT<ItemType>

Private Member Functions

 ItemEnumeratorT (const ItemInfoListViewT< ItemType > &items, const Int32ConstArrayView &local_ids, const ItemGroupImpl *agroup=nullptr)
 ItemEnumeratorT (ItemSharedInfo *s, const Int32ConstArrayView &local_ids)
 ItemEnumeratorT (ItemSharedInfo *s, const impl::ItemLocalIdListContainerView &view)
 ItemEnumeratorT (const ItemEnumerator &rhs, bool v)
 Constructor only used by fromItemEnumerator().

Friends

class ItemVectorT< ItemType >
class ItemVectorViewT< ItemType >
class ItemConnectedListViewT< ItemType >
class SimdItemEnumeratorT< ItemType >
template<typename I1, typename I2>
class ItemPairEnumeratorT

Additional Inherited Members

Protected Member Functions inherited from Arcane::ItemEnumeratorBaseT< ItemType >
 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 inherited from Arcane::ItemEnumeratorBaseT< ItemType >
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

Detailed Description

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

Enumerator over a typed list of entities of type ItemType.

Definition at line 236 of file ItemEnumerator.h.

Member Typedef Documentation

◆ BaseClass

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

Definition at line 243 of file ItemEnumerator.h.

◆ ItemInternalPtr

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

Definition at line 241 of file ItemEnumerator.h.

◆ LocalIdType

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

Definition at line 242 of file ItemEnumerator.h.

Constructor & Destructor Documentation

◆ ItemEnumeratorT() [1/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemVectorView & rhs)
inline

Definition at line 253 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [2/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemVectorViewT< ItemType > & rhs)
inline

Definition at line 256 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [3/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemEnumerator & rhs)
inline

Definition at line 263 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [4/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemInternalEnumerator & rhs)
inline

Definition at line 268 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [5/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemInternalPtr * items,
const Int32 * local_ids,
Integer n,
const ItemGroupImpl * agroup = nullptr )
inline

Definition at line 275 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [6/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemInternalArrayView & items,
const Int32ConstArrayView & local_ids,
const ItemGroupImpl * agroup = nullptr )
inline

Definition at line 280 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [7/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemInternalVectorView & view,
const ItemGroupImpl * agroup = nullptr )
inline

Definition at line 285 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [8/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemConnectedListViewT< ItemType > & rhs)
inline

Definition at line 292 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [9/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( const ItemInfoListViewT< ItemType > & items,
const Int32ConstArrayView & local_ids,
const ItemGroupImpl * agroup = nullptr )
inlineprivate

Definition at line 299 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [10/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( ItemSharedInfo * s,
const Int32ConstArrayView & local_ids )
inlineprivate

Definition at line 306 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [11/12]

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::ItemEnumeratorT ( ItemSharedInfo * s,
const impl::ItemLocalIdListContainerView & view )
inlineprivate

Definition at line 310 of file ItemEnumerator.h.

◆ ItemEnumeratorT() [12/12]

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

Constructor only used by fromItemEnumerator().

Definition at line 329 of file ItemEnumerator.h.

Member Function Documentation

◆ fromItemEnumerator()

template<typename ItemType>
ItemEnumeratorT< ItemType > Arcane::ItemEnumeratorT< ItemType >::fromItemEnumerator ( const ItemEnumerator & rhs)
inlinestatic

Definition at line 321 of file ItemEnumerator.h.

◆ operator ItemEnumerator()

template<typename ItemType>
Arcane::ItemEnumeratorT< ItemType >::operator ItemEnumerator ( ) const
inline

Conversion to an ItemEnumerator.

Definition at line 317 of file ItemEnumerator.h.

◆ ItemConnectedListViewT< ItemType >

template<typename ItemType>
friend class ItemConnectedListViewT< ItemType >
friend

Definition at line 158 of file ItemEnumerator.h.

◆ ItemPairEnumeratorT

template<typename ItemType>
template<typename I1, typename I2>
friend class ItemPairEnumeratorT
friend

Definition at line 248 of file ItemEnumerator.h.

◆ ItemVectorT< ItemType >

template<typename ItemType>
friend class ItemVectorT< ItemType >
friend

Definition at line 158 of file ItemEnumerator.h.

◆ ItemVectorViewT< ItemType >

template<typename ItemType>
friend class ItemVectorViewT< ItemType >
friend

Definition at line 158 of file ItemEnumerator.h.

◆ SimdItemEnumeratorT< ItemType >

template<typename ItemType>
friend class SimdItemEnumeratorT< ItemType >
friend

Definition at line 158 of file ItemEnumerator.h.


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