org.codehaus.plexus.archiver.bzip2

Class CBZip2OutputStream

public class CBZip2OutputStream extends OutputStream implements BZip2Constants

An output stream that compresses into the BZip2 format (without the file header chars) into another stream.

TODO: Update to BZip2 1.0.1

Version: $Revision: 2436 $ $Date: 2005-09-01 13:20:41 -0400 (Thu, 01 Sep 2005) $ from org.apache.ant.tools.bzip2.CBZip2OutputStream v1.22

Nested Class Summary
static classCBZip2OutputStream.StackElem
Field Summary
intallowableBlockSize
char[]block
intblockCRC
booleanblockRandomised
intblockSize100k
intbsBuff
intbsLive
OutputStreambsStream
intbytesOut
booleanclosed
intcombinedCRC
intcurrentChar
protected static intCLEARMASK
protected static intDEPTH_THRESH
booleanfirstAttempt
int[]ftab
protected static intGREATER_ICOST
int[]incs
boolean[]inUse
intlast
protected static intLESSER_ICOST
CRCmCrc
int[]mtfFreq
intnBlocksRandomised
intnInUse
intnMTF
intorigPtr
int[]quadrant
protected static intQSORT_STACK_SIZE
intrunLength
char[]selector
char[]selectorMtf
char[]seqToUnseq
short[]szptr
protected static intSETMASK
protected static intSMALL_THRESH
char[]unseqToSeq
intworkDone
intworkFactor
intworkLimit
int[]zptr
Constructor Summary
CBZip2OutputStream(OutputStream inStream)
CBZip2OutputStream(OutputStream inStream, int inBlockSize)
Method Summary
voidallocateCompressStructures()
voidbsFinishedWithStream()
voidbsPutint(int u)
voidbsPutIntVS(int numBits, int c)
voidbsPutUChar(int c)
voidbsSetStream(OutputStream f)
voidbsW(int n, int v)
voidclose()
voiddoReversibleTransformation()
voidendBlock()
voidendCompression()
protected voidfinalize()
voidflush()
booleanfullGtU(int i1, int i2)
voidgenerateMTFValues()
voidhbAssignCodes(int[] code, char[] length, int minLen, int maxLen, int alphaSize)
protected static voidhbMakeCodeLengths(char[] len, int[] freq, int alphaSize, int maxLen)
voidinitBlock()
voidinitialize()
voidmainSort()
voidmakeMaps()
charmed3(char a, char b, char c)
voidmoveToFrontCodeAndSend()
static voidpanic()
voidqSort3(int loSt, int hiSt, int dSt)
voidrandomiseBlock()
voidsendMTFValues()
voidsimpleSort(int lo, int hi, int d)
voidvswap(int p1, int p2, int n)
voidwrite(int bv)
modified by Oliver Merkel, 010128
voidwriteRun()

Field Detail

allowableBlockSize

private int allowableBlockSize

block

private char[] block

blockCRC

private int blockCRC

blockRandomised

boolean blockRandomised

blockSize100k

int blockSize100k

bsBuff

int bsBuff

bsLive

int bsLive

bsStream

private OutputStream bsStream

bytesOut

int bytesOut

closed

boolean closed

combinedCRC

private int combinedCRC

currentChar

private int currentChar

CLEARMASK

protected static final int CLEARMASK

DEPTH_THRESH

protected static final int DEPTH_THRESH

firstAttempt

private boolean firstAttempt

ftab

private int[] ftab

GREATER_ICOST

protected static final int GREATER_ICOST

incs

private int[] incs

inUse

private boolean[] inUse

last

int last

LESSER_ICOST

protected static final int LESSER_ICOST

mCrc

CRC mCrc

mtfFreq

private int[] mtfFreq

nBlocksRandomised

private int nBlocksRandomised

nInUse

private int nInUse

nMTF

private int nMTF

origPtr

int origPtr

quadrant

private int[] quadrant

QSORT_STACK_SIZE

protected static final int QSORT_STACK_SIZE

runLength

private int runLength

selector

private char[] selector

selectorMtf

private char[] selectorMtf

seqToUnseq

private char[] seqToUnseq

szptr

private short[] szptr

SETMASK

protected static final int SETMASK

SMALL_THRESH

protected static final int SMALL_THRESH

unseqToSeq

private char[] unseqToSeq

workDone

private int workDone

workFactor

private int workFactor

workLimit

private int workLimit

zptr

private int[] zptr

Constructor Detail

CBZip2OutputStream

public CBZip2OutputStream(OutputStream inStream)

CBZip2OutputStream

public CBZip2OutputStream(OutputStream inStream, int inBlockSize)

Method Detail

allocateCompressStructures

private void allocateCompressStructures()

bsFinishedWithStream

private void bsFinishedWithStream()

bsPutint

private void bsPutint(int u)

bsPutIntVS

private void bsPutIntVS(int numBits, int c)

bsPutUChar

private void bsPutUChar(int c)

bsSetStream

private void bsSetStream(OutputStream f)

bsW

private void bsW(int n, int v)

close

public void close()

doReversibleTransformation

private void doReversibleTransformation()

endBlock

private void endBlock()

endCompression

private void endCompression()

finalize

protected void finalize()

flush

public void flush()

fullGtU

private boolean fullGtU(int i1, int i2)

generateMTFValues

private void generateMTFValues()

hbAssignCodes

private void hbAssignCodes(int[] code, char[] length, int minLen, int maxLen, int alphaSize)

hbMakeCodeLengths

protected static void hbMakeCodeLengths(char[] len, int[] freq, int alphaSize, int maxLen)

initBlock

private void initBlock()

initialize

private void initialize()

mainSort

private void mainSort()

makeMaps

private void makeMaps()

med3

private char med3(char a, char b, char c)

moveToFrontCodeAndSend

private void moveToFrontCodeAndSend()

panic

private static void panic()

qSort3

private void qSort3(int loSt, int hiSt, int dSt)

randomiseBlock

private void randomiseBlock()

sendMTFValues

private void sendMTFValues()

simpleSort

private void simpleSort(int lo, int hi, int d)

vswap

private void vswap(int p1, int p2, int n)

write

public void write(int bv)
modified by Oliver Merkel, 010128

writeRun

private void writeRun()