Package com.github.junrar.unpack
Class Unpack
- java.lang.Object
-
- com.github.junrar.unpack.vm.BitInput
-
- com.github.junrar.unpack.Unpack15
-
- com.github.junrar.unpack.Unpack20
-
- com.github.junrar.unpack.Unpack
-
public final class Unpack extends Unpack20
DOCUMENT ME- Version:
- $LastChangedRevision$
-
-
Field Summary
Fields Modifier and Type Field Description static int[]DBitLengthCountsprivate booleanfileExtractedprivate java.util.List<UnpackFilter>filtersprivate intlastFilterprivate intlowDistRepCountprivate java.util.List<java.lang.Integer>oldFilterLengthsprivate ModelPPMppmprivate booleanppmErrorprivate intppmEscCharprivate intprevLowDistprivate java.util.List<UnpackFilter>prgStackprivate RarVMrarVMprivate booleantablesReadprivate BlockTypesunpBlockTypeprivate byte[]unpOldTableprivate longwrittenFileSize-
Fields inherited from class com.github.junrar.unpack.Unpack20
AudV, BD, DBits, DD, DDecode, LBits, LD, LDD, LDecode, MD, RD, SDBits, SDDecode, UnpAudioBlock, UnpChannelDelta, UnpChannels, UnpCurChannel, UnpOldTable20
-
Fields inherited from class com.github.junrar.unpack.Unpack15
AvrLn1, AvrLn2, AvrLn3, AvrPlc, AvrPlcB, Buf60, ChSet, ChSetA, ChSetB, ChSetC, destUnpSize, FlagBuf, FlagsCnt, lastDist, lastLength, LCount, MaxDist3, Nhfb, Nlzb, NToPl, NToPlB, NToPlC, NumHuf, oldDist, oldDistPtr, Place, PlaceA, PlaceB, PlaceC, readBorder, readTop, ShortLen1, ShortLen2, ShortXor1, ShortXor2, StMode, suspended, unpAllBuf, unpIO, unpPtr, unpSomeRead, window, wrPtr
-
-
Constructor Summary
Constructors Constructor Description Unpack(ComprDataIO DataIO)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private booleanaddVMCode(int firstByte, java.util.List<java.lang.Byte> vmCode, int length)voidcleanUp()private voidcopyString(int length, int distance)voiddoUnpack(int method, boolean solid)private voidExecuteCode(VMPreparedProgram Prg)intgetChar()intgetPpmEscChar()voidinit(byte[] window)private voidinitFilters()private voidinsertLastMatch(int length, int distance)private voidinsertOldDist(int distance)booleanisFileExtracted()private booleanreadEndOfBlock()private booleanreadTables()private booleanreadVMCode()private booleanreadVMCodePPM()voidsetDestSize(long destSize)voidsetPpmEscChar(int ppmEscChar)voidsetSuspended(boolean suspended)private voidunpack29(boolean solid)protected voidunpInitData(boolean solid)private voidUnpWriteArea(int startPtr, int endPtr)private voidUnpWriteBuf()private voidUnpWriteData(byte[] data, int offset, int size)private voidunstoreFile()-
Methods inherited from class com.github.junrar.unpack.Unpack20
CopyString20, DecodeAudio, decodeNumber, makeDecodeTables, ReadLastTables, ReadTables20, unpack20, unpInitData20
-
Methods inherited from class com.github.junrar.unpack.Unpack15
corrHuff, decodeNum, getFlagsBuf, huffDecode, initHuff, longLZ, oldCopyString, oldUnpInitData, oldUnpWriteBuf, shortLZ, unpack15, unpReadBuf
-
-
-
-
Field Detail
-
ppm
private final ModelPPM ppm
-
ppmEscChar
private int ppmEscChar
-
rarVM
private final RarVM rarVM
-
filters
private final java.util.List<UnpackFilter> filters
-
prgStack
private final java.util.List<UnpackFilter> prgStack
-
oldFilterLengths
private final java.util.List<java.lang.Integer> oldFilterLengths
-
lastFilter
private int lastFilter
-
tablesRead
private boolean tablesRead
-
unpOldTable
private final byte[] unpOldTable
-
unpBlockType
private BlockTypes unpBlockType
-
writtenFileSize
private long writtenFileSize
-
fileExtracted
private boolean fileExtracted
-
ppmError
private boolean ppmError
-
prevLowDist
private int prevLowDist
-
lowDistRepCount
private int lowDistRepCount
-
DBitLengthCounts
public static int[] DBitLengthCounts
-
-
Constructor Detail
-
Unpack
public Unpack(ComprDataIO DataIO)
-
-
Method Detail
-
init
public void init(byte[] window)
-
doUnpack
public void doUnpack(int method, boolean solid) throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
unstoreFile
private void unstoreFile() throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
unpack29
private void unpack29(boolean solid) throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
UnpWriteBuf
private void UnpWriteBuf() throws java.io.IOException- Throws:
java.io.IOException
-
UnpWriteArea
private void UnpWriteArea(int startPtr, int endPtr) throws java.io.IOException- Throws:
java.io.IOException
-
UnpWriteData
private void UnpWriteData(byte[] data, int offset, int size) throws java.io.IOException- Throws:
java.io.IOException
-
insertOldDist
private void insertOldDist(int distance)
-
insertLastMatch
private void insertLastMatch(int length, int distance)
-
copyString
private void copyString(int length, int distance)
-
unpInitData
protected void unpInitData(boolean solid)
- Specified by:
unpInitDatain classUnpack15
-
initFilters
private void initFilters()
-
readEndOfBlock
private boolean readEndOfBlock() throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
readTables
private boolean readTables() throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
readVMCode
private boolean readVMCode() throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
readVMCodePPM
private boolean readVMCodePPM() throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
addVMCode
private boolean addVMCode(int firstByte, java.util.List<java.lang.Byte> vmCode, int length)
-
ExecuteCode
private void ExecuteCode(VMPreparedProgram Prg)
-
isFileExtracted
public boolean isFileExtracted()
-
setDestSize
public void setDestSize(long destSize)
-
setSuspended
public void setSuspended(boolean suspended)
-
getChar
public int getChar() throws java.io.IOException, RarException- Throws:
java.io.IOExceptionRarException
-
getPpmEscChar
public int getPpmEscChar()
-
setPpmEscChar
public void setPpmEscChar(int ppmEscChar)
-
cleanUp
public void cleanUp()
-
-