38class ARCANE_CORE_EXPORT ItemLocalIdListContainerView
42 template <
typename ItemType>
friend class ::Arcane::ItemLocalIdListViewT;
43 template <
int Extent>
friend class ::Arcane::impl::ItemIndexedListView;
44 friend ItemVectorView;
45 friend ItemLocalIdListView;
46 friend ItemInternalConnectivityList;
47 friend ItemInternalVectorView;
48 friend ItemEnumeratorBase;
49 friend SimdItemEnumeratorBase;
50 friend ItemIndexArrayView;
54 ItemLocalIdListContainerView() =
default;
55 constexpr ARCCORE_HOST_DEVICE ItemLocalIdListContainerView(
const Int32* ids,
Int32 s,
Int32 local_id_offset)
57 , m_local_id_offset(local_id_offset)
62 : m_local_ids(ids.data())
63 , m_local_id_offset(local_id_offset)
69 constexpr ARCCORE_HOST_DEVICE
Int32 operator[](
Int32 index)
const
71 ARCANE_CHECK_AT(index, m_size);
72 return m_local_ids[index] + m_local_id_offset;
74 constexpr ARCCORE_HOST_DEVICE
Int32 localId(
Int32 index)
const
76 ARCANE_CHECK_AT(index, m_size);
77 return m_local_ids[index] + m_local_id_offset;
79 constexpr ARCCORE_HOST_DEVICE
Int32 size()
const {
return m_size; }
83 friend ARCANE_CORE_EXPORT std::ostream&
84 operator<<(std::ostream& o,
const ItemLocalIdListContainerView& lhs);
92 const Int32* m_local_ids =
nullptr;
93 Int32 m_local_id_offset = 0;