public class PostLh5Encoder extends java.lang.Object implements PostLzssEncoder
-- revision history --
$Log: PostLh5Encoder.java,v $
Revision 1.4 2002/12/08 00:00:00 dangan
[change]
クラス名 を PostLh5EncoderCombo から PostLh5Encoder に変更。
Revision 1.3 2002/12/06 00:00:00 dangan
[maintenance]
ソース整備
Revision 1.2 2002/12/01 00:00:00 dangan
[change]
flush() されないかぎり
接続された OutputStream をflush() しないように変更。
Revision 1.1 2002/12/01 00:00:00 dangan
[bug fix]
writeOutGroup でローカル変数 offLenFreq を使用しなければ
ならない部分で this.offLenFreq を使用していた。
[maintenance]
PostLh5Encoder から受け継いだインスタンスフィールド
buffer, codeFreq, offLenFreq 廃止
ソース整備
Revision 1.0 2002/07/31 00:00:00 dangan
add to version control
[improvement]
DivideNum を導入する事によって処理するパターン数の減少を図る。
[maintenance]
ソース整備
タブ廃止
ライセンス文の修正
| Constructor and Description |
|---|
PostLh5Encoder(java.io.OutputStream out)
-lh5- 圧縮用 PostLzssEncoder を構築する。
バッファサイズにはデフォルト値が使用される。 |
PostLh5Encoder(java.io.OutputStream out,
java.lang.String method)
-lh4-, -lh5-, -lh6-, -lh7- 圧縮用 PostLzssEncoder を構築する。
バッファサイズにはデフォルト値が使用される。 |
PostLh5Encoder(java.io.OutputStream out,
java.lang.String method,
int BufferSize)
-lh4-, -lh5-, -lh6-, -lh7- 圧縮用 PostLzssEncoder を構築する。
|
PostLh5Encoder(java.io.OutputStream out,
java.lang.String method,
int BlockNum,
int BlockSize,
int DivideNum)
-lh4-, -lh5-, -lh6-, -lh7- 圧縮用 PostLzssEncoder を構築する。
1つが BlockSizeバイト の BlockNum 個のブロックを組み合わせて 最も出力ビット数の少ない構成で出力する。 組み合わせは 全ブロックを DivideNum + 1 個に分割して得られる 全パターンが試される。 |
| Modifier and Type | Method and Description |
|---|---|
void |
close()
この出力ストリームと、接続された出力ストリームを閉じ、
使用していたリソースを開放する。
|
void |
flush()
この PostLzssEncoder にバッファリングされている全ての
8ビット単位のデータを出力先の OutputStream に出力し、
出力先の OutputStream を flush() する。
このメソッドは圧縮率を変化させる。 |
int |
getDictionarySize()
この PostLh5Encoder が扱うLZSS辞書のサイズを得る。
|
int |
getMaxMatch()
この PostLh5Encoder が扱うLZSSの最長一致長を得る。
|
int |
getThreshold()
この PostLh5Encoder が扱うLZSSの圧縮、非圧縮の閾値を得る。
|
void |
writeCode(int code)
1byte の LZSS未圧縮のデータもしくは、
LZSS で圧縮された圧縮コードのうち一致長を書きこむ。
|
void |
writeOffset(int offset)
LZSS で圧縮された圧縮コードのうち一致位置を書きこむ。
|
public PostLh5Encoder(java.io.OutputStream out)
out - 圧縮データを受け取る OutputStreampublic PostLh5Encoder(java.io.OutputStream out,
java.lang.String method)
out - 圧縮データを受け取る OutputStreammethod - 圧縮法を示す文字列java.lang.IllegalArgumentException - method が上記以外の場合public PostLh5Encoder(java.io.OutputStream out,
java.lang.String method,
int BufferSize)
out - 圧縮データを受け取る OutputStreammethod - 圧縮法を示す文字列BufferSize - LZSS圧縮データを退避しておく
バッファのサイズjava.lang.IllegalArgumentException - public PostLh5Encoder(java.io.OutputStream out,
java.lang.String method,
int BlockNum,
int BlockSize,
int DivideNum)
out - 圧縮データを受け取る OutputStreammethod - 圧縮法を示す文字列BlockNum - ブロック数BlockSize - 1ブロックのバイト数DivideNum - 最大分割数java.lang.IllegalArgumentException - public void writeCode(int code)
throws java.io.IOException
writeCode in interface PostLzssEncodercode - 1byte の LZSS未圧縮のデータもしくは、
LZSS で圧縮された圧縮コードのうち一致長java.io.IOException - 入出力エラーが発生した場合public void writeOffset(int offset)
writeOffset in interface PostLzssEncoderoffset - LZSS で圧縮された圧縮コードのうち一致位置public void flush()
throws java.io.IOException
flush in interface PostLzssEncoderjava.io.IOException - 入出力エラーが発生した場合PostLzssEncoder.flush(),
BitOutputStream.flush()public void close()
throws java.io.IOException
close in interface PostLzssEncoderjava.io.IOException - 入出力エラーが発生した場合public int getDictionarySize()
getDictionarySize in interface PostLzssEncoderpublic int getMaxMatch()
getMaxMatch in interface PostLzssEncoderpublic int getThreshold()
getThreshold in interface PostLzssEncoder
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.