Besides the actual parallel_forest, which has been already refined and repartitioned, this function also needs information about its previous state, i.e. the locally owned intervals in p4est's sc_array of each processor. This information needs to be memcopyied out of the old p4est object and has to be provided via the parameter previous_global_first_quadrant.

Unpack previously transferred data on each cell registered in quad_cell_relations with the provided unpack_callback function.

The parameter handle corresponds to the position where the unpack_callback function is allowed to read from the memory. Its value needs to be in accordance with the corresponding pack_callback function that has been registered previously.

The data will be read from separate file, whose name consists of the stem filename and an attached identifier -fixed.data for fixed size data and -variable.data for variable size data. The n_attached_deserialize_fixed and n_attached_deserialize_variable parameters are required to gather the memory offsets for each callback.

All processors read from these files simultaneously via MPIIO. Each processor's position to read from will be determined from the provided parallel_forest.

After loading, unpack_data() needs to be called to finally distribute data across the associated triangulation.

Cumulative size in bytes that those functions that have called register_data_attach() want to attach to each cell. This number only pertains to fixed-sized buffers where the data attached to each cell has exactly the same size.

The last entry of this container corresponds to the data size packed per cell in the fixed size buffer (which can be accessed calling sizes_fixed_cumulative.back()).