org.icepdf.core.pobjects
Class CrossReference

java.lang.Object
  extended by org.icepdf.core.pobjects.CrossReference

public class CrossReference
extends java.lang.Object

Since:
2.0
Author:
Mark Collette

Nested Class Summary
static class CrossReference.CompressedEntry
           
static class CrossReference.Entry
           
static class CrossReference.FreeEntry
           
 class CrossReference.UsedEntry
           
 
Field Summary
static Name INDEX_KEY
           
protected  int offset
           
static Name SIZE_KEY
           
static Name W_KEY
           
 
Constructor Summary
CrossReference()
           
 
Method Summary
protected  void addCompressedEntry(int objectNumber, int objectNumberOfContainingObjectStream, int indexWithinObjectStream)
           
protected  void addFreeEntry(int objectNumber, int nextFreeObjectNumber, int generationNumberIfReused)
           
 void addToEndOfChainOfPreviousXRefs(CrossReference prev)
           
protected  void addUsedEntry(int objectNumber, long filePositionOfObject, int generationNumber)
           
 void addXRefStreamEntries(Library library, java.util.HashMap xrefStreamHash, java.io.InputStream streamInput)
          Once a XRef stream is found, the decoded streamInput is itereated over to build out the Xref structure.
 void addXRefTableEntries(Parser parser)
          Starts the parsing of an xRef table entries as found when using the Parser to Parse out an object via Parser.getObject().
 CrossReference.Entry getEntryForObject(java.lang.Integer objectNumber)
           
 void setOffset(int offset)
           
 void setTrailer(PTrailer trailer)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SIZE_KEY

public static final Name SIZE_KEY

INDEX_KEY

public static final Name INDEX_KEY

W_KEY

public static final Name W_KEY

offset

protected int offset
Constructor Detail

CrossReference

public CrossReference()
Method Detail

setTrailer

public void setTrailer(PTrailer trailer)

addXRefTableEntries

public void addXRefTableEntries(Parser parser)
Starts the parsing of an xRef table entries as found when using the Parser to Parse out an object via Parser.getObject().

All entries are taken into consideration except for ones that are marked free.

Parameters:
parser - content parser

addXRefStreamEntries

public void addXRefStreamEntries(Library library,
                                 java.util.HashMap xrefStreamHash,
                                 java.io.InputStream streamInput)
Once a XRef stream is found, the decoded streamInput is itereated over to build out the Xref structure.

Parameters:
library - The Document's Library
xrefStreamHash - Dictionary for XRef stream
streamInput - Decoded stream bytes for XRef stream

getEntryForObject

public CrossReference.Entry getEntryForObject(java.lang.Integer objectNumber)

addToEndOfChainOfPreviousXRefs

public void addToEndOfChainOfPreviousXRefs(CrossReference prev)

addFreeEntry

protected void addFreeEntry(int objectNumber,
                            int nextFreeObjectNumber,
                            int generationNumberIfReused)

addUsedEntry

protected void addUsedEntry(int objectNumber,
                            long filePositionOfObject,
                            int generationNumber)

addCompressedEntry

protected void addCompressedEntry(int objectNumber,
                                  int objectNumberOfContainingObjectStream,
                                  int indexWithinObjectStream)

setOffset

public void setOffset(int offset)