The snapshot block holds a list of historical indexes, representing earlier versions of the media captured within the image.
This feature enables users to manually preserve a specific media state, allowing reversion to previous versions or comparison between multiple data capture attempts.
The active index used by the image must always be the one referenced by the image header.
If any snapshot block references the current index, it must be ignored and treated as non-existent during image save operations.
Generation 0 refers to the initial image state, where only a single index—pointed to by the header—is present.
The latest image header should reference all available snapshots, unless individual blocks have been explicitly discarded by the user.
Once discarded, such blocks become orphaned and are no longer reachable within the image structure.
During conversion from AaruFormat, only one snapshot (or the latest index) should be included, based on user selection.