jp.gr.java_conf.dangan.util.lha

Interface PreLzssDecoder

Known Implementing Classes:
PreLh1Decoder, PreLh2Decoder, PreLh3Decoder, PreLh5Decoder, PreLz5Decoder, PreLzsDecoder

public interface PreLzssDecoder

LZSS圧縮コードを供給するインターフェイス。
 -- revision history --
 $Log: PreLzssDecoder.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

abstract int
available()
接続された入力ストリームからブロックしないで 読み込むことのできる最低バイト数を得る。
この数値は完全である事を保障しなくてよい。 これは故意に作成されたデータ等ではブロックせずに 読み込む事の出来る最低バイト数を得るには 実際に読み込んでみる以外に方法がないためである。
abstract void
close()
この入力ストリームを閉じ、使用していた 全てのリソースを開放する。
abstract int
getDictionarySize()
このPreLzssDecoderが処理するLZSS辞書のサイズを得る。
abstract int
getMaxMatch()
このPreLzssDecoderが処理する最長一致長を得る。
abstract int
getThreshold()
このPreLzssDecoderが処理する圧縮、非圧縮の閾値を得る。
abstract void
mark(int readLimit)
接続された入力ストリームの現在位置にマークを設定し、 reset() メソッドでマークした時点の読み込み位置に戻れるようにする。
InputStream の mark() と違い、 readLimit で設定した 限界バイト数より前にマーク位置が無効になってもかまわない。 ただし、readLimit を無視して無限に reset() 可能な InputStream と接続している場合は readLimit にどのような値を設定されても reset() で必ずマーク位置に復旧できなければならない。
abstract boolean
markSupported()
接続された入力ストリームが mark() と reset() を サポートするかを得る。
abstract int
readCode()
1byte の LZSS未圧縮のデータもしくは、 LZSS で圧縮された圧縮コードのうち一致長を読み込む。
未圧縮データは 0〜255、 LZSS圧縮コード(一致長)は 256〜511 の値を取らなければならない。
abstract int
readOffset()
LZSS で圧縮された圧縮コードのうち一致位置を読み込む。
abstract void
reset()
接続された入力ストリームの読み込み位置を最後に mark() メソッドが呼び出されたときの位置に設定する。

Method Details

available

public abstract int available()
            throws IOException
接続された入力ストリームからブロックしないで 読み込むことのできる最低バイト数を得る。
この数値は完全である事を保障しなくてよい。 これは故意に作成されたデータ等ではブロックせずに 読み込む事の出来る最低バイト数を得るには 実際に読み込んでみる以外に方法がないためである。
Returns:
ブロックしないで読み出せる最低バイト数。

close

public abstract void close()
            throws IOException
この入力ストリームを閉じ、使用していた 全てのリソースを開放する。

getDictionarySize

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

getMaxMatch

public abstract int getMaxMatch()
このPreLzssDecoderが処理する最長一致長を得る。
Returns:
最長一致長

getThreshold

public abstract int getThreshold()
このPreLzssDecoderが処理する圧縮、非圧縮の閾値を得る。
Returns:
LZSSの閾値

mark

public abstract void mark(int readLimit)
接続された入力ストリームの現在位置にマークを設定し、 reset() メソッドでマークした時点の読み込み位置に戻れるようにする。
InputStream の mark() と違い、 readLimit で設定した 限界バイト数より前にマーク位置が無効になってもかまわない。 ただし、readLimit を無視して無限に reset() 可能な InputStream と接続している場合は readLimit にどのような値を設定されても reset() で必ずマーク位置に復旧できなければならない。
Parameters:
readLimit - マーク位置に戻れる限界のバイト数。 このバイト数を超えてデータを読み込んだ場合 reset()できなくなる可能性がある。

markSupported

public abstract boolean markSupported()
接続された入力ストリームが mark() と reset() を サポートするかを得る。
Returns:
ストリームが mark() と reset() を サポートする場合は true。
サポートしない場合は false。

readCode

public abstract int readCode()
            throws IOException
1byte の LZSS未圧縮のデータもしくは、 LZSS で圧縮された圧縮コードのうち一致長を読み込む。
未圧縮データは 0〜255、 LZSS圧縮コード(一致長)は 256〜511 の値を取らなければならない。
Returns:
1byte の LZSS未圧縮のデータもしくは、 LZSS で圧縮された圧縮コードのうち一致長

readOffset

public abstract int readOffset()
            throws IOException
LZSS で圧縮された圧縮コードのうち一致位置を読み込む。
Returns:
LZSS で圧縮された圧縮コードのうち一致位置

reset

public abstract void reset()
            throws IOException
接続された入力ストリームの読み込み位置を最後に mark() メソッドが呼び出されたときの位置に設定する。

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.