THPDFIncrementalXRefRebuildInfo Record
Telemetry of the free-object table rebuilt during the last incremental save: source, newly freed and rebuilt entry counts, generation increments and saturation, first free object number and highest generation
Declaration
THPDFIncrementalXRefRebuildInfo= record
SourceFreeObjectCount: Integer;
NewlyFreedObjectCount: Integer;
RebuiltFreeObjectCount: Integer;
GenerationIncrementCount: Integer;
SaturatedGenerationCount: Integer;
FirstFreeObjectNumber: Integer;
HighestGenerationNumber: Integer;
Rebuilt: boolean;
end;
Unit
HPDFDoc
Fields
| Field | Purpose |
|---|---|
SourceFreeObjectCount | Free entries inherited from the source revision as the incremental update began |
NewlyFreedObjectCount | Objects freed whilst preparing this incremental update |
RebuiltFreeObjectCount | Free entries written into the rebuilt cross-reference table |
GenerationIncrementCount | Freed objects whose generation number was advanced for the new revision |
SaturatedGenerationCount | Freed objects already at the maximum generation that cannot be pushed any further |
FirstFreeObjectNumber | Head of the rebuilt free-entry linked list (the conventional first-section f entry) |
HighestGenerationNumber | Highest generation number observed while rebuilding |
Rebuilt | true when the save did rebuild the free table; also returned by the accessor |
Usage notes
- Read it back with
THotPDF.GetLastIncrementalXRefRebuildInfoafterSaveIncrementalUpdate; the record reflects only the latest save - A
Rebuiltvalue offalsemeans the accessor reports stale or empty data because no rebuild has happened yet - Use
SaturatedGenerationCountto spot documents recycled so often that freed object numbers can no longer advance their generation