Skipping empty datasets when serializing multiblocks loses flat_ids
To be more precise, it will screw up the flat_ids in the following MultiBloc of Multibloc:
- MB
- MB0
- Dataset 0 (index=0, flat_id:0)
- Dataset 1 NULL
- Dataset 2 NULL
- Dataset 3 (index=3, flat_id:3)
- Dataset 4 (index=4, flat_id:4) (not null but empty)
- MB1
- Dataset 1 (index=1,flat_id:6) --> will get flat_id=4 from .vtm reading
Although the "index" property is correctly preventing this to happen within single-level MB. Any dataset with no point but with a FieldDataArray would be lost. (But this might be ok according to VTK guidelines)
It looks like there is 3 concepts in here:
- no leaf
- leaf with NULL dataset
- leaf with a DataSet without point/cell
The user would expect the flat_id to be persistent across saving/loading