81 friend class ComponentItemInternalData;
86 Int32 m_storage_size = 0;
90 Int16* m_component_id_data =
nullptr;
92 Int16* m_nb_sub_constituent_item_data =
nullptr;
94 Int32* m_global_item_local_id_data =
nullptr;
116 friend ComponentItemInternalData;
118 friend ConstituentItemLocalIdList;
119 friend ConstituentItemLocalIdListView;
124 friend ConstituentItemVectorImpl;
126 static const int MAT_INDEX_OFFSET = 10;
134 static void _setNullInstance();
141 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
142 return m_first_sub_constituent_item_id_data[
id.localId()];
147 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
148 m_first_sub_constituent_item_id_data[
id.localId()] =
first_id;
152 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
153 return m_nb_sub_constituent_item_data[
id.localId()];
157 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
158 m_nb_sub_constituent_item_data[
id.localId()] =
n;
162 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
163 return m_component_id_data[
id.localId()];
167 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
172 return m_components[_componentId(
id)];
176 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
177 return impl::ItemBase(m_global_item_local_id_data[
id.localId()], m_item_shared_info);
181 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
182 return m_global_item_local_id_data[
id.localId()];
186 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
193 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
194 m_super_component_item_local_id_data[
id.localId()] =
super_id;
200 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
201 return m_var_index_data[
id.localId()];
205 ARCCORE_CHECK_RANGE(
id.localId(), -1, m_storage_size);
206 m_var_index_data[
id.localId()] =
mv_index;
214 return (Int64)m_var_index_data[
id.localId()].arrayIndex() + ((Int64)
item_base.uniqueId() << MAT_INDEX_OFFSET);
219 Int32 local_id =
id.localId();
220 ARCCORE_CHECK_RANGE(local_id, -1, m_storage_size);
222 m_var_index_data[local_id].reset();
223 m_first_sub_constituent_item_id_data[local_id] = {};
224 m_nb_sub_constituent_item_data[local_id] = 0;
225 m_component_id_data[local_id] = -1;
226 m_global_item_local_id_data[local_id] = NULL_ITEM_LOCAL_ID;
227 m_super_component_item_local_id_data[local_id] = {};
235 ItemSharedInfo* m_item_shared_info = ItemSharedInfo::nullInstance();
236 Int16 m_level = (-1);