Class BandSet

    • Constructor Detail

      • BandSet

        public BandSet​(Segment segment)
    • Method Detail

      • decodeBandInt

        public int[] decodeBandInt​(java.lang.String name,
                                   java.io.InputStream in,
                                   BHSDCodec codec,
                                   int count)
                            throws java.io.IOException,
                                   Pack200Exception
        Decodes a band and return an array of int values.
        Parameters:
        name - the name of the band (primarily for logging/debugging purposes)
        in - the InputStream to decode from
        codec - the default Codec for this band
        count - the number of elements to read
        Returns:
        an array of decoded int values
        Throws:
        java.io.IOException - if there is a problem reading from the underlying input stream
        Pack200Exception - if there is a problem decoding the value or that the value is invalid
      • decodeBandInt

        public int[][] decodeBandInt​(java.lang.String name,
                                     java.io.InputStream in,
                                     BHSDCodec defaultCodec,
                                     int[] counts)
                              throws java.io.IOException,
                                     Pack200Exception
        Decodes a band and return an array of int[] values.
        Parameters:
        name - the name of the band (primarily for logging/debugging purposes)
        in - the InputStream to decode from
        defaultCodec - the default codec for this band
        counts - the numbers of elements to read for each int array within the array to be returned
        Returns:
        an array of decoded int[] values
        Throws:
        java.io.IOException - if there is a problem reading from the underlying input stream
        Pack200Exception - if there is a problem decoding the value or that the value is invalid
      • getReferences

        protected java.lang.String[] getReferences​(int[] ints,
                                                   java.lang.String[] reference)
      • getReferences

        protected java.lang.String[][] getReferences​(int[][] ints,
                                                     java.lang.String[] reference)
      • parseCPLongReferences

        public CPLong[] parseCPLongReferences​(java.lang.String name,
                                              java.io.InputStream in,
                                              BHSDCodec codec,
                                              int count)
                                       throws java.io.IOException,
                                              Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception
      • parseCPSignatureReferences

        public CPUTF8[] parseCPSignatureReferences​(java.lang.String name,
                                                   java.io.InputStream in,
                                                   BHSDCodec codec,
                                                   int count)
                                            throws java.io.IOException,
                                                   Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception
      • parseCPSignatureReferences

        protected CPUTF8[][] parseCPSignatureReferences​(java.lang.String name,
                                                        java.io.InputStream in,
                                                        BHSDCodec codec,
                                                        int[] counts)
                                                 throws java.io.IOException,
                                                        Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception
      • parseCPUTF8References

        public CPUTF8[] parseCPUTF8References​(java.lang.String name,
                                              java.io.InputStream in,
                                              BHSDCodec codec,
                                              int count)
                                       throws java.io.IOException,
                                              Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception
      • parseCPUTF8References

        public CPUTF8[][] parseCPUTF8References​(java.lang.String name,
                                                java.io.InputStream in,
                                                BHSDCodec codec,
                                                int[] counts)
                                         throws java.io.IOException,
                                                Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception
      • parseFlags

        public long[] parseFlags​(java.lang.String name,
                                 java.io.InputStream in,
                                 int count,
                                 BHSDCodec codec,
                                 boolean hasHi)
                          throws java.io.IOException,
                                 Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception
      • parseFlags

        public long[][] parseFlags​(java.lang.String name,
                                   java.io.InputStream in,
                                   int[] counts,
                                   BHSDCodec codec,
                                   boolean hasHi)
                            throws java.io.IOException,
                                   Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception
      • parseReferences

        public 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
        Parses count references from 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].
        Parameters:
        name - the band name
        in - the input stream to read from
        codec - the BHSDCodec to use for decoding
        count - the number of references to decode
        reference - the array of values to use for the references
        Returns:
        Parsed references.
        Throws:
        java.io.IOException - if a problem occurs during reading from the underlying stream
        Pack200Exception - if a problem occurs with an unexpected value or unsupported Codec
      • parseReferences

        public 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
        Parses count references from 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.
        Parameters:
        name - TODO
        in - the input stream to read from
        codec - the BHSDCodec to use for decoding
        counts - the numbers of references to decode for each array entry
        reference - the array of values to use for the references
        Returns:
        Parsed references.
        Throws:
        java.io.IOException - if a problem occurs during reading from the underlying stream
        Pack200Exception - if a problem occurs with an unexpected value or unsupported Codec
      • read

        public abstract void read​(java.io.InputStream inputStream)
                           throws java.io.IOException,
                                  Pack200Exception
        Throws:
        java.io.IOException
        Pack200Exception