org.apache.poi.hssf.record
Class ExtSSTRecord

java.lang.Object
  extended by org.apache.poi.hssf.record.RecordBase
      extended by org.apache.poi.hssf.record.Record
          extended by org.apache.poi.hssf.record.ExtSSTRecord

public class ExtSSTRecord
extends Record

Title: Extended Static String Table

Description: This record is used for a quick lookup into the SST record. This record breaks the SST table into a set of buckets. The offsets to these buckets within the SST record are kept as well as the position relative to the start of the SST record. REFERENCE: PG 313 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)

Version:
2.0-pre
Author:
Andrew C. Oliver (acoliver at apache dot org), Jason Height (jheight at apache dot org)
See Also:
ExtSSTInfoSubRecord

Field Summary
static int DEFAULT_BUCKET_SIZE
           
static int MAX_BUCKETS
           
static short sid
           
 
Constructor Summary
ExtSSTRecord()
           
ExtSSTRecord(RecordInputStream in)
           
 
Method Summary
 void addInfoRecord(ExtSSTInfoSubRecord rec)
           
 ExtSSTInfoSubRecord getInfoRecordAt(int elem)
           
static int getNumberOfInfoRecsForStrings(int numStrings)
           
 int getNumInfoRecords()
           
 short getNumStringsPerBucket()
           
 int getRecordSize()
          gives the current serialized size of the record.
static int getRecordSizeForStrings(int numStrings)
          Given a number of strings (in the sst), returns the size of the extsst record
 short getSid()
          return the non static version of the id for this record.
 int serialize(int offset, byte[] data)
          called by the class that is responsible for writing this sucker.
 void setBucketOffsets(int[] bucketAbsoluteOffsets, int[] bucketRelativeOffsets)
           
 void setNumStringsPerBucket(short numStrings)
           
 java.lang.String toString()
          get a string representation of the record (for biffview/debugging)
 
Methods inherited from class org.apache.poi.hssf.record.Record
clone, cloneViaReserialise, serialize
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT_BUCKET_SIZE

public static final int DEFAULT_BUCKET_SIZE
See Also:
Constant Field Values

MAX_BUCKETS

public static final int MAX_BUCKETS
See Also:
Constant Field Values

sid

public static final short sid
See Also:
Constant Field Values
Constructor Detail

ExtSSTRecord

public ExtSSTRecord()

ExtSSTRecord

public ExtSSTRecord(RecordInputStream in)
Method Detail

setNumStringsPerBucket

public void setNumStringsPerBucket(short numStrings)

addInfoRecord

public void addInfoRecord(ExtSSTInfoSubRecord rec)

getNumStringsPerBucket

public short getNumStringsPerBucket()

getNumInfoRecords

public int getNumInfoRecords()

getInfoRecordAt

public ExtSSTInfoSubRecord getInfoRecordAt(int elem)

toString

public java.lang.String toString()
Description copied from class: Record
get a string representation of the record (for biffview/debugging)

Overrides:
toString in class Record

serialize

public int serialize(int offset,
                     byte[] data)
Description copied from class: RecordBase
called by the class that is responsible for writing this sucker. Subclasses should implement this so that their data is passed back in a byte array.

Specified by:
serialize in class RecordBase
Parameters:
offset - to begin writing at
data - byte array containing instance data
Returns:
number of bytes written

getRecordSize

public int getRecordSize()
Description copied from class: Record
gives the current serialized size of the record. Should include the sid and reclength (4 bytes).

Overrides:
getRecordSize in class Record

getNumberOfInfoRecsForStrings

public static final int getNumberOfInfoRecsForStrings(int numStrings)

getRecordSizeForStrings

public static final int getRecordSizeForStrings(int numStrings)
Given a number of strings (in the sst), returns the size of the extsst record


getSid

public short getSid()
Description copied from class: Record
return the non static version of the id for this record.

Specified by:
getSid in class Record

setBucketOffsets

public void setBucketOffsets(int[] bucketAbsoluteOffsets,
                             int[] bucketRelativeOffsets)


Copyright 2008 The Apache Software Foundation or its licensors, as applicable.