Description:
Save only items that are different from items at are already part of a serialized scene
Justification / Use-Case:
Given the nature of many applications, this would spare the majority of (input) data to be serialized more than once. Often, the input (image) never changes. Thus, incremental saving would provide a major speedup from the second saving on.
Implementation and questions:
There is already a patch by Rostislav Khlebnikov, based on ITK time-stamps. This solution could work nicely. Only Downside: in the current version, it needs a “state”. Daniel Maleike thinks it would be more interesting to put information about time/date/version and modified times into the file(s) and to provide just an UpdateArchive() method that checks what needs updates.
Questions:
Daniels suggestion could work efficiently if we would not compress our archives.. compression makes reading and determining what data needs an update a blocking task. This, however, is mainly due to the current “all or nothing” implementation. If we’d use a ZIP-library to read only specific (small) index files, we could be faster.