Namespace FastBWT
public class BWT_Small_Desorter
BWT Desorter for small blocks. As small as 2G.
Constructors
public BWT_Small_Desorter()
Create new small desorter.
Methods
public abstract byte[] Desort(byte[] SourceBlock, long StartIndex, byte[] TargetBlock = null, long DataSize = 0)
Desort SourceBlock to TargetBlock. This method internally generates desorting vector and fills the TargetBlock.
public abstract ICollection GenerateVector(byte[] SourceBytes, ICollection Vector = null, long DataSize = 0)
Calculate desorting vector based on SourceBytes. The actual type of Array is uint[].
Remarks
BWT_Small_Desorter uses uint[] as the type for desorting vector. BWT_Small_Desorter is now the only desorter for BWT. It supports blocks up to 2G. Current implementation is single threaded.
This desorter uses 4 * DataSize bytes. Total memory footprint is 5 or 6 source blocks.
See also
ADesorter.GenerateVector method