Class LZWDecoder


  • class LZWDecoder
    extends java.lang.Object
    A class for performing LZW decoding.
    • Constructor Summary

      Constructors 
      Constructor Description
      LZWDecoder()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private void addStringToTable​(byte[] string)
      Add a new string to the string table.
      private void addStringToTable​(byte[] oldString, byte newString)
      Add a new string to the string table.
      private byte[] composeString​(byte[] oldString, byte newString)
      Append newString to the end of oldString.
      void decode​(byte[] data, java.io.OutputStream uncompData)
      Method to decode LZW compressed data.
      int getNextCode()  
      private void initializeStringTable()
      Initialize the string table.
      private void writeString​(byte[] string)
      Write out the string just uncompressed.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • stringTable

        private byte[][] stringTable
      • data

        private byte[] data
      • uncompData

        private java.io.OutputStream uncompData
      • tableIndex

        private int tableIndex
      • bitsToGet

        private int bitsToGet
      • bytePointer

        private int bytePointer
      • bitPointer

        private int bitPointer
      • nextData

        private int nextData
      • nextBits

        private int nextBits
      • andTable

        private final int[] andTable
    • Constructor Detail

      • LZWDecoder

        public LZWDecoder()
    • Method Detail

      • decode

        public void decode​(byte[] data,
                           java.io.OutputStream uncompData)
        Method to decode LZW compressed data.
        Parameters:
        data - The compressed data.
        uncompData - Array to return the uncompressed data in.
      • initializeStringTable

        private void initializeStringTable()
        Initialize the string table.
      • writeString

        private void writeString​(byte[] string)
        Write out the string just uncompressed.
      • addStringToTable

        private void addStringToTable​(byte[] oldString,
                                      byte newString)
        Add a new string to the string table.
      • addStringToTable

        private void addStringToTable​(byte[] string)
        Add a new string to the string table.
      • composeString

        private byte[] composeString​(byte[] oldString,
                                     byte newString)
        Append newString to the end of oldString.
      • getNextCode

        public int getNextCode()