BlockHuffman.LenListToCodeList() 内で、
渡された LenList ( ハフマン符号長の表 )が不正なため、
ハフマン符号を生成できない事を示す。
-- revision history --
$Log: BadHuffmanTableException.java,v $
Revision 1.0 2002/07/24 00:00:00 dangan
add to version control
[maintenance]
タブ廃止
ライセンス文の修正
新しい BadHuffmanTableException を構築する。
新しい BadHuffmanTableException を構築する。
二分木を使用した LzssSearchMethod の実装。
データ圧縮ハンドブック[改定第二版]
M.ネルソン/J.-L.ゲィリー 著
萩原剛志・山口英 訳
ISBN4-8101-8605-9
5728円(税抜き,当方の購入当時の価格)
を参考にした。
二分木では、最長一致を見つけることはできるが、
最も近い一致を見つけられるとは限らないため、
LZSSで 一致位置が近い場所に偏る事を
利用するような -lh5- のような圧縮法では、
圧縮率はいくらか低下する。
-- revision history --
$Log: BinaryTreeSearch.java,v $
Revision 1.0 2002/08/06 00:00:00 dangan
add to version control
[change]
LzssSearchMethod のインタフェイス変更にあわせてインタフェイス変更
[maintenance]
ソース整備
タブ廃止
ライセンス文の修正
二分木を使用した LzssSearchMethod を構築する。
EndOfStream に達してしまったため要求されたビット数の
データを得られなかった場合に投げられる例外。
jp.gr.java_conf.dangan.io.BitInputStream 用であるため、
保持しておける データは 32ビットまでとなっている点に
注意すること。
NotEnoughBitsException と違い、こちらの例外を投げる
場合には 実際に読み込み動作を行ってしまっているため
読み込み位置は例外を投げる前の時点から変化してしまっ
ている点に注意すること。
-- revision history --
$Log: BitDataBrokenException.java,v $
Revision 1.1 2002/12/07 00:00:00 dangan
[maintenance]
ソース整備
Revision 1.0 2002/07/24 00:00:00 dangan
add to version control
[maintenance]
タブ廃止
ライセンス文の修正
新しい BitDataBrokenException を構築する。
ビット入力のためのユーティリティクラス。
-- revision history --
$Log: BitInputStream.java,v $
Revision 1.5 2002/12/07 00:00:00 dangan
[maintenance]
ソース整備
Revision 1.4 2002/11/15 00:00:00 dangan
[improvement]
prefetchBits() が 32bit の読み込みを保証するように修正
[change]
メソッド名の変更
prefetchBit -> peekBit
prefetchBoolean -> peekBoolean
prefetchBits -> peekBits
Revision 1.3 2002/11/02 00:00:00 dangan
[bug fix]
available() availableBits() で
ブロックせずに読み込める量よりも大きい値を返していた。
Revision 1.2 2002/09/05 00:00:00 dangan
[change]
EndOfStream に達した後の read( new byte[0] ) や
read( byte[] buf, int off, 0 ) の戻り値を
InputStream と同じく 0 になるようにした
Revision 1.1 2002/09/04 00:00:00 dangan
[bug fix]
skip( len ) と skipBits( len ) で len が 0 未満のとき
正しく処理できていなかった。
Revision 1.0 2002/09/03 00:00:00 dangan
add to version control
[bug fix]
mark() で 接続された in に渡す readLimit の計算が甘かったため、
要求された readLimit に達する前にマーク位置が破棄される事があった。
EndOfStream に達した後の skip() および skip( 0 ) が -1 を返していた。
[maintenance]
タブ廃止
ライセンス文の修正
入力ストリーム in からのデータをビット単位で
読み込めるようなストリームを構築する。
入力ストリーム in からのデータをビット単位で
読み込めるようなストリームを構築する。
接続された出力ストリームにビットデータを出力するための
出力ストリームクラス。
-- revision history --
$Log: BitOutputStream.java,v $
Revision 1.1 2002/12/05 00:00:00 dangan
[maintenance]
ソース整備
Revision 1.0 2002/09/11 00:00:00 dangan
add to version control
[change]
close() 後の write系メソッドと flush() で
例外を投げるように修正
[maintenance]
タブ廃止
ライセンス文の修正
出力ストリーム out へ データをビット単位で
書きこめるようなストリームを構築する。
キャッシュサイズにはデフォルト値が使用される。
出力ストリーム out へ データをビット単位で
書きこめるようなストリームを構築する。
Bits - class jp.gr.java_conf.dangan.io.
Bits ビット処理のためのユーティリティメソッド群。
-- revision history --
$Log: Bits.java,v $
Revision 1.0 2002/12/05 00:00:00 dangan
first edition
add to version control