public abstract class BandSet extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected SegmentHeader |
header |
protected Segment |
segment |
| Modifier and Type | Method and Description |
|---|---|
int[] |
decodeBandInt(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count)
Decode a band and return an array of
int values |
int[][] |
decodeBandInt(java.lang.String name,
java.io.InputStream in,
BHSDCodec defaultCodec,
int[] counts)
Decode a band and return an array of
int[] values |
protected java.lang.String[][] |
getReferences(int[][] ints,
java.lang.String[] reference) |
protected java.lang.String[] |
getReferences(int[] ints,
java.lang.String[] reference) |
CPClass[] |
parseCPClassReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPNameAndType[] |
parseCPDescriptorReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPDouble[] |
parseCPDoubleReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPFieldRef[] |
parseCPFieldRefReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPFloat[] |
parseCPFloatReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPInterfaceMethodRef[] |
parseCPInterfaceMethodRefReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPInteger[] |
parseCPIntReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPLong[] |
parseCPLongReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPMethodRef[] |
parseCPMethodRefReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPUTF8[] |
parseCPSignatureReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
protected CPUTF8[][] |
parseCPSignatureReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int[] counts) |
CPString[] |
parseCPStringReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPUTF8[] |
parseCPUTF8References(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count) |
CPUTF8[][] |
parseCPUTF8References(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int[] counts) |
long[][] |
parseFlags(java.lang.String name,
java.io.InputStream in,
int[] counts,
BHSDCodec hiCodec,
BHSDCodec loCodec) |
long[][] |
parseFlags(java.lang.String name,
java.io.InputStream in,
int[] counts,
BHSDCodec codec,
boolean hasHi) |
long[] |
parseFlags(java.lang.String name,
java.io.InputStream in,
int count,
BHSDCodec hiCodec,
BHSDCodec loCodec) |
long[] |
parseFlags(java.lang.String name,
java.io.InputStream in,
int count,
BHSDCodec codec,
boolean hasHi) |
java.lang.String[][] |
parseReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int[] counts,
java.lang.String[] reference)
Parses count references from
in, using codec to decode the values as indexes
into reference (which is populated prior to this call). |
java.lang.String[] |
parseReferences(java.lang.String name,
java.io.InputStream in,
BHSDCodec codec,
int count,
java.lang.String[] reference)
Parses count references from
in, using codec to decode the values as indexes
into reference (which is populated prior to this call). |
abstract void |
read(java.io.InputStream inputStream) |
abstract void |
unpack() |
void |
unpack(java.io.InputStream in) |
protected SegmentHeader header
public abstract void read(java.io.InputStream inputStream) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic abstract void unpack() throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic void unpack(java.io.InputStream in) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic int[] decodeBandInt(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
int valuesname - the name of the band (primarily for logging/debugging purposes)in - the InputStream to decode fromcodec - the default Codec for this bandcount - the number of elements to readint valuesjava.io.IOException - if there is a problem reading from the underlying input streamPack200Exception - if there is a problem decoding the value or that the value is invalidpublic int[][] decodeBandInt(java.lang.String name, java.io.InputStream in, BHSDCodec defaultCodec, int[] counts) throws java.io.IOException, Pack200Exception
int[] valuesname - the name of the band (primarily for logging/debugging purposes)in - the InputStream to decode fromdefaultCodec - the default codec for this bandcounts - the numbers of elements to read for each int array within the array to be returnedint[] valuesjava.io.IOException - if there is a problem reading from the underlying input streamPack200Exception - if there is a problem decoding the value or that the value is invalidpublic long[] parseFlags(java.lang.String name, java.io.InputStream in, int count, BHSDCodec codec, boolean hasHi) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic long[][] parseFlags(java.lang.String name, java.io.InputStream in, int[] counts, BHSDCodec codec, boolean hasHi) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic long[] parseFlags(java.lang.String name, java.io.InputStream in, int count, BHSDCodec hiCodec, BHSDCodec loCodec) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic long[][] parseFlags(java.lang.String name, java.io.InputStream in, int[] counts, BHSDCodec hiCodec, BHSDCodec loCodec) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic java.lang.String[] parseReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count, java.lang.String[] reference) throws java.io.IOException, Pack200Exception
in, using codec to decode the values as indexes
into reference (which is populated prior to this call). An exception is thrown if a decoded index
falls outside the range [0..reference.length-1].name - the band namein - the input stream to read fromcodec - the BHSDCodec to use for decodingcount - the number of references to decodereference - the array of values to use for the referencesjava.io.IOException - if a problem occurs during reading from the underlying streamPack200Exception - if a problem occurs with an unexpected value or unsupported Codecpublic java.lang.String[][] parseReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int[] counts, java.lang.String[] reference) throws java.io.IOException, Pack200Exception
in, using codec to decode the values as indexes
into reference (which is populated prior to this call). An exception is thrown if a decoded index
falls outside the range [0..reference.length-1]. Unlike the other parseReferences, this post-processes the result
into an array of results.name - TODOin - the input stream to read fromcodec - the BHSDCodec to use for decodingcounts - the numbers of references to decode for each array entryreference - the array of values to use for the referencesjava.io.IOException - if a problem occurs during reading from the underlying streamPack200Exception - if a problem occurs with an unexpected value or unsupported Codecpublic CPInteger[] parseCPIntReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPDouble[] parseCPDoubleReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPFloat[] parseCPFloatReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPLong[] parseCPLongReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPUTF8[] parseCPUTF8References(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPUTF8[][] parseCPUTF8References(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int[] counts) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPString[] parseCPStringReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPInterfaceMethodRef[] parseCPInterfaceMethodRefReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPMethodRef[] parseCPMethodRefReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPFieldRef[] parseCPFieldRefReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPNameAndType[] parseCPDescriptorReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPUTF8[] parseCPSignatureReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionprotected CPUTF8[][] parseCPSignatureReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int[] counts) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionpublic CPClass[] parseCPClassReferences(java.lang.String name, java.io.InputStream in, BHSDCodec codec, int count) throws java.io.IOException, Pack200Exception
java.io.IOExceptionPack200Exceptionprotected java.lang.String[] getReferences(int[] ints, java.lang.String[] reference)
protected java.lang.String[][] getReferences(int[][] ints, java.lang.String[] reference)