类 LZ77Compressor

  • 所有已实现的接口:
    Compressor, Debugable

    public class LZ77Compressor
    extends java.lang.Object
    implements Compressor
    LZ77 compress algorithm
    • 方法概要

      所有方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      int compress​(byte[] in_data, int in_len, byte[] out_data)
      while look-ahead buffer is not empty go backwards in search buffer to find longest match of the look-ahead buffer if match found print: (offset from window boundary, length of match, next symbol in look ahead buffer); shift window by length+1; else print: (0, 0, first symbol in look-ahead buffer); shift window by 1; fi end while
      int decompress​(byte[] in_data, int in_len, byte[] out_data)
      for each token (offset, length, symbol) if offset = 0 then print symbol; else go reverse in previous output by offset characters and copy character wise for length symbols; print symbol; fi next
      void setDebug​(boolean isDebug)
      enable Debug or not, default should be not enabled
      void setSL​(int s, int l)  
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造器详细资料

      • LZ77Compressor

        public LZ77Compressor()
    • 方法详细资料

      • compress

        public int compress​(byte[] in_data,
                            int in_len,
                            byte[] out_data)
        while look-ahead buffer is not empty go backwards in search buffer to find longest match of the look-ahead buffer if match found print: (offset from window boundary, length of match, next symbol in look ahead buffer); shift window by length+1; else print: (0, 0, first symbol in look-ahead buffer); shift window by 1; fi end while
        指定者:
        compress 在接口中 Compressor
        参数:
        in_data - input
        in_len - length of input
        out_data - output
        返回:
        offset in output
      • decompress

        public int decompress​(byte[] in_data,
                              int in_len,
                              byte[] out_data)
        for each token (offset, length, symbol) if offset = 0 then print symbol; else go reverse in previous output by offset characters and copy character wise for length symbols; print symbol; fi next
        指定者:
        decompress 在接口中 Compressor
        参数:
        in_data - input
        in_len - length of input
        out_data - output
        返回:
        offset in output
      • setDebug

        public void setDebug​(boolean isDebug)
        从接口复制的说明: Debugable
        enable Debug or not, default should be not enabled
        指定者:
        setDebug 在接口中 Debugable
        参数:
        isDebug - is debug
      • setSL

        public void setSL​(int s,
                          int l)