C# 클래스 BitMiracle.LibTiff.Classic.Internal.LZWCodec

상속: CodecWithPredictor
파일 보기 프로젝트 열기: Core-Techs/TiffLibrary

공개 메소드들

메소드 설명
Cleanup ( ) : void

Cleanups the state of the codec.

Cleanup is called when codec is no longer needed (won't be used) and can be used for example to restore tag methods that were substituted.

Init ( ) : bool
LZWCodec ( Tiff tif, Compression scheme, string name ) : System
PostEncode ( ) : bool

Performs any actions after encoding required by the codec.

PostEncode is called after encoding and can be used to release any external resources needed during encoding.

PreDecode ( short plane ) : bool

Prepares the decoder part of the codec for a decoding.

PreDecode is called after TiffCodec.SetupDecode and before decoding.

PreEncode ( short plane ) : bool

Prepares the encoder part of the codec for a encoding.

PreEncode is called after TiffCodec.SetupEncode and before encoding.

predictor_decoderow ( byte buffer, int offset, int count, short plane ) : bool
predictor_decodestrip ( byte buffer, int offset, int count, short plane ) : bool
predictor_decodetile ( byte buffer, int offset, int count, short plane ) : bool
predictor_encoderow ( byte buffer, int offset, int count, short plane ) : bool
predictor_encodestrip ( byte buffer, int offset, int count, short plane ) : bool
predictor_encodetile ( byte buffer, int offset, int count, short plane ) : bool
predictor_setupdecode ( ) : bool
predictor_setupencode ( ) : bool

비공개 메소드들

메소드 설명
GetNextCode ( short &code ) : void
GetNextCodeCompat ( short &code ) : void
LZWCleanup ( ) : void
LZWDecode ( byte buffer, int offset, int count, short plane ) : bool
LZWDecodeCompat ( byte buffer, int offset, int count, short plane ) : bool
LZWEncode ( byte buffer, int offset, int count, short plane ) : bool

Encode a chunk of pixels.

Uses an open addressing double hashing (no chaining) on the prefix code/next character combination. We do a variant of Knuth's algorithm D (vol. 3, sec. 6.4) along with G. Knott's relatively-prime secondary probe. Here, the modular division first probe is gives way to a faster exclusive-or manipulation. Also do block compression with an adaptive reset, whereby the code table is cleared when the compression ratio decreases, but after the table fills. The variable-length output codes are re-sized at this point, and a CODE_CLEAR is generated for the decoder.

LZWPostEncode ( ) : bool
LZWPreDecode ( short s ) : bool
LZWPreEncode ( short s ) : bool
LZWSetupDecode ( ) : bool
LZWSetupEncode ( ) : bool
MAXCODE ( int n ) : int
NextCode ( short &_code, bool compat ) : void
PutNextCode ( int c ) : void
cl_hash ( ) : void
codeLoop ( ) : void

메소드 상세

Cleanup() 공개 메소드

Cleanups the state of the codec.
Cleanup is called when codec is no longer needed (won't be used) and can be used for example to restore tag methods that were substituted.
public Cleanup ( ) : void
리턴 void

Init() 공개 메소드

public Init ( ) : bool
리턴 bool

LZWCodec() 공개 메소드

public LZWCodec ( Tiff tif, Compression scheme, string name ) : System
tif Tiff
scheme Compression
name string
리턴 System

PostEncode() 공개 메소드

Performs any actions after encoding required by the codec.
PostEncode is called after encoding and can be used to release any external resources needed during encoding.
public PostEncode ( ) : bool
리턴 bool

PreDecode() 공개 메소드

Prepares the decoder part of the codec for a decoding.
PreDecode is called after TiffCodec.SetupDecode and before decoding.
public PreDecode ( short plane ) : bool
plane short The zero-based sample plane index.
리턴 bool

PreEncode() 공개 메소드

Prepares the encoder part of the codec for a encoding.
PreEncode is called after TiffCodec.SetupEncode and before encoding.
public PreEncode ( short plane ) : bool
plane short The zero-based sample plane index.
리턴 bool

predictor_decoderow() 공개 메소드

public predictor_decoderow ( byte buffer, int offset, int count, short plane ) : bool
buffer byte
offset int
count int
plane short
리턴 bool

predictor_decodestrip() 공개 메소드

public predictor_decodestrip ( byte buffer, int offset, int count, short plane ) : bool
buffer byte
offset int
count int
plane short
리턴 bool

predictor_decodetile() 공개 메소드

public predictor_decodetile ( byte buffer, int offset, int count, short plane ) : bool
buffer byte
offset int
count int
plane short
리턴 bool

predictor_encoderow() 공개 메소드

public predictor_encoderow ( byte buffer, int offset, int count, short plane ) : bool
buffer byte
offset int
count int
plane short
리턴 bool

predictor_encodestrip() 공개 메소드

public predictor_encodestrip ( byte buffer, int offset, int count, short plane ) : bool
buffer byte
offset int
count int
plane short
리턴 bool

predictor_encodetile() 공개 메소드

public predictor_encodetile ( byte buffer, int offset, int count, short plane ) : bool
buffer byte
offset int
count int
plane short
리턴 bool

predictor_setupdecode() 공개 메소드

public predictor_setupdecode ( ) : bool
리턴 bool

predictor_setupencode() 공개 메소드

public predictor_setupencode ( ) : bool
리턴 bool