Class SubAllocator

java.lang.Object
com.github.junrar.unpack.ppm.SubAllocator

public class SubAllocator extends Object
DOCUMENT ME
Version:
$LastChangedRevision$
  • Field Details

    • N1

      public static final int N1
      See Also:
    • N2

      public static final int N2
      See Also:
    • N3

      public static final int N3
      See Also:
    • N4

      public static final int N4
      See Also:
    • N_INDEXES

      public static final int N_INDEXES
      See Also:
    • UNIT_SIZE

      public static final int UNIT_SIZE
    • FIXED_UNIT_SIZE

      public static final int FIXED_UNIT_SIZE
      See Also:
    • subAllocatorSize

      private int subAllocatorSize
    • indx2Units

      private final int[] indx2Units
    • units2Indx

      private final int[] units2Indx
    • glueCount

      private int glueCount
    • heapStart

      private int heapStart
    • loUnit

      private int loUnit
    • hiUnit

      private int hiUnit
    • freeList

      private final RarNode[] freeList
    • pText

      private int pText
    • unitsStart

      private int unitsStart
    • heapEnd

      private int heapEnd
    • fakeUnitsStart

      private int fakeUnitsStart
    • heap

      private byte[] heap
    • freeListPos

      private int freeListPos
    • tempMemBlockPos

      private int tempMemBlockPos
    • tempRarNode

      private RarNode tempRarNode
    • tempRarMemBlock1

      private RarMemBlock tempRarMemBlock1
    • tempRarMemBlock2

      private RarMemBlock tempRarMemBlock2
    • tempRarMemBlock3

      private RarMemBlock tempRarMemBlock3
  • Constructor Details

    • SubAllocator

      public SubAllocator()
  • Method Details

    • clean

      public void clean()
    • insertNode

      private void insertNode(int p, int indx)
    • incPText

      public void incPText()
    • removeNode

      private int removeNode(int indx)
    • U2B

      private int U2B(int NU)
    • MBPtr

      private int MBPtr(int BasePtr, int Items)
    • splitBlock

      private void splitBlock(int pv, int oldIndx, int newIndx)
    • stopSubAllocator

      public void stopSubAllocator()
    • GetAllocatedMemory

      public int GetAllocatedMemory()
    • startSubAllocator

      public boolean startSubAllocator(int SASize)
    • glueFreeBlocks

      private void glueFreeBlocks()
    • allocUnitsRare

      private int allocUnitsRare(int indx)
    • allocUnits

      public int allocUnits(int NU)
    • allocContext

      public int allocContext()
    • expandUnits

      public int expandUnits(int oldPtr, int OldNU)
    • shrinkUnits

      public int shrinkUnits(int oldPtr, int oldNU, int newNU)
    • freeUnits

      public void freeUnits(int ptr, int OldNU)
    • getFakeUnitsStart

      public int getFakeUnitsStart()
    • setFakeUnitsStart

      public void setFakeUnitsStart(int fakeUnitsStart)
    • getHeapEnd

      public int getHeapEnd()
    • getPText

      public int getPText()
    • setPText

      public void setPText(int text)
    • decPText

      public void decPText(int dPText)
    • getUnitsStart

      public int getUnitsStart()
    • setUnitsStart

      public void setUnitsStart(int unitsStart)
    • initSubAllocator

      public void initSubAllocator()
    • sizeOfFreeList

      private int sizeOfFreeList()
    • getHeap

      public byte[] getHeap()
    • toString

      public String toString()
      Overrides:
      toString in class Object