LHA Library for Java

jp.gr.java_conf.dangan.util.lha
インタフェース PostLzssEncoder

既知の実装クラスの一覧:
PostLh1Encoder, PostLh2Encoder, PostLh3Encoder, PostLh5Encoder, PostLz5Encoder, PostLzsEncoder

public interface PostLzssEncoder

LZSS圧縮コードを処理する インターフェイス。

 -- revision history --
 $Log: PostLzssEncoder.java,v $
 Revision 1.0  2002/07/25 00:00:00  dangan
 add to version control
 [maintenance]
     ソース整備
     タブ廃止
     ライセンス文の修正

 

バージョン:
$Revision: 1.0 $
作成者:
$Author: dangan $

メソッドの概要
 void close()
          この出力ストリームと、接続された出力ストリームを閉じ、 使用していたリソースを開放する。
 void flush()
          この PostLzssEncoder にバッファリングされている 出力可能なデータを出力先の OutputStream に出力し、 出力先の OutputStream を flush() する。
 int getDictionarySize()
          このPostLzssEncoderが処理するLZSS辞書のサイズを得る。
 int getMaxMatch()
          このPostLzssEncoderが処理する最大一致長を得る。
 int getThreshold()
          このPostLzssEncoderが処理する圧縮、非圧縮の閾値を得る。
 void writeCode(int code)
          1byte の LZSS未圧縮のデータもしくは、 LZSS で圧縮された圧縮コードのうち一致長を書きこむ。
 void writeOffset(int offset)
          LZSS で圧縮された圧縮コードのうち一致位置を書きこむ。
 

メソッドの詳細

flush

public void flush()
           throws IOException
この PostLzssEncoder にバッファリングされている 出力可能なデータを出力先の OutputStream に出力し、 出力先の OutputStream を flush() する。
java.io.OutputStream の メソッド flush() と似ているが、 flush() しなかった場合と flush() した場合の出力については 同じであることを保証しなくて良い。
つまりOutputStream の flush() では同じデータを出力する事を 期待されるような以下の二つのコードは、 PostLzssEncoder においては 別のデータを出力をしても良い。
 (1)
   PostLzssEncoder out = new ImplementedPostLzssEncoder();
   out.writeCode( 0 );
   out.writeCode( 0 );
   out.writeCode( 0 );
   out.close();
 
 (2)
   PostLzssEncoder out = new ImplementedPostLzssEncoder();
   out.writeCode( 0 );
   out.flush();
   out.writeCode( 0 );
   out.flush();
   out.writeCode( 0 );
   out.close();
 

例外:
IOException - 入出力エラーが発生した場合

close

public void close()
           throws IOException
この出力ストリームと、接続された出力ストリームを閉じ、 使用していたリソースを開放する。

例外:
IOException - 入出力エラーが発生した場合

writeCode

public void writeCode(int code)
               throws IOException
1byte の LZSS未圧縮のデータもしくは、 LZSS で圧縮された圧縮コードのうち一致長を書きこむ。
未圧縮データは 0〜255、 LZSS圧縮コード(一致長)は 256〜510 を使用すること。

パラメータ:
code - 1byte の LZSS未圧縮のデータもしくは、 LZSS で圧縮された圧縮コードのうち一致長
例外:
IOException - 入出力エラーが発生した場合

writeOffset

public void writeOffset(int offset)
                 throws IOException
LZSS で圧縮された圧縮コードのうち一致位置を書きこむ。

パラメータ:
offset - LZSS で圧縮された圧縮コードのうち一致位置
例外:
IOException - 入出力エラーが発生した場合

getDictionarySize

public int getDictionarySize()
このPostLzssEncoderが処理するLZSS辞書のサイズを得る。


getMaxMatch

public int getMaxMatch()
このPostLzssEncoderが処理する最大一致長を得る。


getThreshold

public int getThreshold()
このPostLzssEncoderが処理する圧縮、非圧縮の閾値を得る。


LHA Library for Java

バグやドキュメントの誤りの報告は作者宛てにお願いします。
ドキュメント内に含まれる社名、製品名については一般に各社の商標または登録商標です。
Copyright © 2001-2002 Michel Ishizuka. All Rights Reserved.