39class ARCANE_CORE_EXPORT ItemLocalIdListContainerView
43 template <
typename ItemType>
friend class ::Arcane::ItemLocalIdListViewT;
44 template <
int Extent>
friend class ::Arcane::impl::ItemIndexedListView;
45 friend ItemVectorView;
46 friend ItemLocalIdListView;
47 friend ItemInternalConnectivityList;
48 friend ItemInternalVectorView;
49 friend ItemEnumeratorBase;
50 friend SimdItemEnumeratorBase;
51 friend ItemIndexArrayView;
55 ItemLocalIdListContainerView() =
default;
56 constexpr ARCCORE_HOST_DEVICE ItemLocalIdListContainerView(
const Int32* ids,
Int32 s,
Int32 local_id_offset)
58 , m_local_id_offset(local_id_offset)
63 : m_local_ids(ids.data())
64 , m_local_id_offset(local_id_offset)
70 constexpr ARCCORE_HOST_DEVICE
Int32 operator[](
Int32 index)
const
72 ARCANE_CHECK_AT(index, m_size);
73 return m_local_ids[index] + m_local_id_offset;
75 constexpr ARCCORE_HOST_DEVICE
Int32 localId(
Int32 index)
const
77 ARCANE_CHECK_AT(index, m_size);
78 return m_local_ids[index] + m_local_id_offset;
80 constexpr ARCCORE_HOST_DEVICE
Int32 size()
const {
return m_size; }
84 friend ARCANE_CORE_EXPORT std::ostream&
85 operator<<(std::ostream& o,
const ItemLocalIdListContainerView& lhs);
93 const Int32* m_local_ids =
nullptr;
94 Int32 m_local_id_offset = 0;