|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.poi.hslf.record.Record org.apache.poi.hslf.record.RecordAtom org.apache.poi.hslf.record.PositionDependentRecordAtom org.apache.poi.hslf.record.PersistPtrHolder
public final class PersistPtrHolder
General holder for PersistPtrFullBlock and PersistPtrIncrementalBlock records. We need to handle them specially, since we have to go around updating UserEditAtoms if they shuffle about on disk These hold references to where slides "live". If the position of a slide moves, then we have update all of these. If we come up with a new version of a slide, then we have to add one of these to the end of the chain (via CurrentUserAtom and UserEditAtom) pointing to the new slide location
Field Summary |
---|
Fields inherited from class org.apache.poi.hslf.record.PositionDependentRecordAtom |
---|
myLastOnDiskOffset |
Fields inherited from class org.apache.poi.hslf.record.Record |
---|
logger |
Constructor Summary | |
---|---|
protected |
PersistPtrHolder(byte[] source,
int start,
int len)
Create a new holder for a PersistPtr record |
Method Summary | |
---|---|
void |
addSlideLookup(int slideID,
int posOnDisk)
Adds a new slide, notes or similar, to be looked up by this. |
int[] |
getKnownSlideIDs()
Get the list of slides that this PersistPtrHolder knows about. |
long |
getRecordType()
Return the value we were given at creation, be it 6001 or 6002 |
java.util.Hashtable<java.lang.Integer,java.lang.Integer> |
getSlideLocationsLookup()
Get the lookup from slide numbers to byte offsets, for the slides known about by this PersistPtrHolder. |
java.util.Hashtable<java.lang.Integer,java.lang.Integer> |
getSlideOffsetDataLocationsLookup()
Get the lookup from slide numbers to their offsets inside _ptrData, used when adding or moving slides. |
void |
updateOtherRecordReferences(java.util.Hashtable<java.lang.Integer,java.lang.Integer> oldToNewReferencesLookup)
At write-out time, update the references to the sheets to their new positions |
void |
writeOut(java.io.OutputStream out)
Write the contents of the record back, so it can be written to disk |
Methods inherited from class org.apache.poi.hslf.record.PositionDependentRecordAtom |
---|
getLastOnDiskOffset, setLastOnDiskOffset |
Methods inherited from class org.apache.poi.hslf.record.RecordAtom |
---|
getChildRecords, isAnAtom |
Methods inherited from class org.apache.poi.hslf.record.Record |
---|
buildRecordAtOffset, createRecordForType, findChildRecords, writeLittleEndian, writeLittleEndian |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected PersistPtrHolder(byte[] source, int start, int len)
Method Detail |
---|
public int[] getKnownSlideIDs()
public java.util.Hashtable<java.lang.Integer,java.lang.Integer> getSlideLocationsLookup()
public java.util.Hashtable<java.lang.Integer,java.lang.Integer> getSlideOffsetDataLocationsLookup()
public void addSlideLookup(int slideID, int posOnDisk)
public long getRecordType()
getRecordType
in class Record
public void updateOtherRecordReferences(java.util.Hashtable<java.lang.Integer,java.lang.Integer> oldToNewReferencesLookup)
updateOtherRecordReferences
in interface PositionDependentRecord
updateOtherRecordReferences
in class PositionDependentRecordAtom
public void writeOut(java.io.OutputStream out) throws java.io.IOException
writeOut
in class Record
java.io.IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |