LHA Library for Java

jp.gr.java_conf.dangan.util.lha
Interface PostLzssEncoder

All Known Implementing Classes:
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]
     ソース整備
     タブ廃止
     ライセンス文の修正

 

Version:
$Revision: 1.0 $
Author:
$Author: dangan $

Method Summary
 void close()
          この出力ストリームと、接続された出力ストリームを閉じ、 使用していたリソースを開放する。
 void flush()
          この PostLzssEncoder にバッファリングされている 出力可能なデータを出力先の OutputStream に出力し、 出力先の OutputStream を flush() する。
java.io.OutputStream の メソッド flush() と似ているが、 flush() しなかった場合と flush() した場合の出力については 同じであることを保証しなくて良い。
つまりOutputStream の flush() では同じデータを出力する事を 期待されるような以下の二つのコードは、 PostLzssEncoder においては 別のデータを出力をしても良い。
 int getDictionarySize()
          このPostLzssEncoderが処理するLZSS辞書のサイズを得る。
 int getMaxMatch()
          このPostLzssEncoderが処理する最大一致長を得る。
 int getThreshold()
          このPostLzssEncoderが処理する圧縮、非圧縮の閾値を得る。
 void writeCode(int code)
          1byte の LZSS未圧縮のデータもしくは、 LZSS で圧縮された圧縮コードのうち一致長を書きこむ。
未圧縮データは 0〜255、 LZSS圧縮コード(一致長)は 256〜510 を使用すること。
 void writeOffset(int offset)
          LZSS で圧縮された圧縮コードのうち一致位置を書きこむ。
 

Method Detail

flush

void flush()
           throws java.io.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();
 

Throws:
java.io.IOException - 入出力エラーが発生した場合

close

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

Throws:
java.io.IOException - 入出力エラーが発生した場合

writeCode

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

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

writeOffset

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

Parameters:
offset - LZSS で圧縮された圧縮コードのうち一致位置
Throws:
java.io.IOException - 入出力エラーが発生した場合

getDictionarySize

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

Parameters:
LZSS辞書のサイズ -

getMaxMatch

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

Parameters:
最長一致長 -

getThreshold

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

Parameters:
圧縮、非圧縮の閾値 -

LHA Library for Java

When you found typographical errors or omissions, Please mail to cqw10305@nifty.com
The company name and product name which are used in this document, it is the trademark or registered trademark of each company generally.
Copyright © 2001-2002 Michel Ishizuka. All Rights Reserved.