THPDFXRefIntegrityInfo Record

Cross-reference table health: entry counts, free chain condition, invalid types, duplicates and shadowed definitions

Declaration

THPDFXRefIntegrityInfo= record
  EntryCount: Integer;
  FreeEntryCount: Integer;
  FreeChainLength: Integer;
  UnlinkedFreeEntryCount: Integer;
  InvalidFreeLinkCount: Integer;
  FreeCycleCount: Integer;
  InvalidEntryTypeCount: Integer;
  GenerationTransitionErrorCount: Integer;
  DuplicateDefinitionCount: Integer;
  ShadowedDefinitionCount: Integer;
  DroppedShadowedDetailCount: Integer;
  Valid: boolean;
  Diagnostic: AnsiString;
  ShadowedEntries: THPDFXRefShadowedEntryArray;
end;

Unit

HPDFDoc

Fields

FieldPurpose
EntryCountEntries in total across the merged cross-reference sections; a zero value means no integrity data is to be had
FreeEntryCountEntries marked as free, of type f
FreeChainLengthLength of the free-list chain that can be reached from object zero
UnlinkedFreeEntryCountFree entries that exist yet cannot be reached through the free chain
InvalidFreeLinkCountFree entries whose /Next-style link points to a non-free entry
FreeCycleCountCycles detected whilst walking the free chain
InvalidEntryTypeCountEntries whose type byte is not in-use and not free either
GenerationTransitionErrorCountTransitions from in-use to free whose generation numbers break the mod-65536 rule
DuplicateDefinitionCountObject numbers that are defined more than once across revisions
ShadowedDefinitionCountDuplicate definitions whose older copy lost out to the newest revision
DroppedShadowedDetailCountShadowed entries whose full detail could not be kept in ShadowedEntries
ValidTrue where the merged table got through every structural check
DiagnosticText describing the first class of problem found
ShadowedEntriesPer-entry detail of the shadowed definitions, with the active and shadowed type, offset, generation and revision

Usage notes

Related APIs