This is required for parsing compressed RPUs.
It probably would imply using a crate like once_cell, and setting it behind a feature.
So API users can choose to use the extra allocations to preserve the state.
Then, in vdr_dm_data_payload, that state can either be updated or fetched from to get the proper attributes.
For the DM data, the RPU is compressed when RpuDataHeader::reserved_zero_3bits is set to 1.
Todo:
This is required for parsing compressed RPUs.
It probably would imply using a crate like
once_cell, and setting it behind a feature.So API users can choose to use the extra allocations to preserve the state.
Then, in
vdr_dm_data_payload, that state can either be updated or fetched from to get the proper attributes.For the DM data, the RPU is compressed when
RpuDataHeader::reserved_zero_3bitsis set to 1.Todo:
affected_dm_metadata_idandcurrent_dm_metadata_idmean.RpuDataHeader::use_prev_vdr_rpu_flag