Meshbeyn / Projects

Namespace FastBWT

public class BWT_Small_Sorter

BWT Sorter for small blocks.

Constructors

public BWT_Small_Sorter(int BlockSize)

Create new BWT_Small_Sorter that supports blocks of up to BlockSize length.

Properties

public List<StatisticStep> Statistics { get; private set; }

Statistics of the last sorting. This collection will be overwritten in Sort methods.

Methods

public abstract void GenerateVector(byte[] SourceBlock, ICollection Index, long DataSize = 0)

Generate the sorting vector for source bytes. The actual type of Array shall be int[].

public abstract long Sort(byte[] SourceBlock, byte[] TargetBlock, long DataSize = 0)

Sort SourceBlock to TargetBlock. This method internally generates the sorting vector and fills the TargetBlock.

Remarks

This sorter supports blocks of up to 2G but is designed for very small blocks. If your blocks are longer than 100k-200k, use other sorters.

It uses int[] as a type for sorting vector. Big regions in statistics are 32k or longer.

See also

BWT_Medium_Sorter class

ASorter class

StatisticStep class

Project FastBWT