NVBIO
|
A context for the incremental parallel set-bwte algorithm for computing the BWT of a string-set.
SYMBOL_SIZE | the size of the symbols, in bits |
BIG_ENDIAN | whether the input/output packed streams are big endian |
storage_type | the iterator to the input packed stream storage |
offsets_iterator | the iterator to the offsets in the concatenated string-set |
#include <bwte.h>
Public Types | |
typedef std::iterator_traits < offsets_iterator > ::value_type | index_type |
typedef ConcatenatedStringSet < PackedStream< storage_type, uint8, SYMBOL_SIZE, BIG_ENDIAN, index_type >, offsets_iterator > | string_set_type |
Public Methods | |
BWTEContext (const int device) | |
uint64 | needed_device_memory (const uint32 _max_block_strings, const uint32 _max_block_suffixes) const |
void | reserve (const uint32 _max_block_strings, const uint32 _max_block_suffixes) |
void | append_block (const uint32 block_begin, const uint32 block_end, const string_set_type string_set, PagedText< SYMBOL_SIZE, BIG_ENDIAN > &BWT_ext, SparseSymbolSet &BWT_ext_dollars, const bool forward) |
void | sort_block (const uint32 block_begin, const uint32 block_end, const string_set_type string_set, BWTEBlock &block) |
void | merge_block (const uint32 block_begin, const uint32 block_end, const string_set_type string_set, BWTEBlock &block, PagedText< SYMBOL_SIZE, BIG_ENDIAN > &BWT_ext, SparseSymbolSet &BWT_ext_dollars, const bool forward) |
typedef std::iterator_traits<offsets_iterator>::value_type nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::index_type |
typedef ConcatenatedStringSet< PackedStream<storage_type,uint8,SYMBOL_SIZE,BIG_ENDIAN,index_type>, offsets_iterator> nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::string_set_type |
nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::BWTEContext | ( | const int | device) |
constructor
Definition at line 75 of file bwte_inl.h.
void nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::append_block | ( | const uint32 | block_begin, |
const uint32 | block_end, | ||
const string_set_type | string_set, | ||
PagedText< SYMBOL_SIZE, BIG_ENDIAN > & | BWT_ext, | ||
SparseSymbolSet & | BWT_ext_dollars, | ||
const bool | forward | ||
) |
append a new block of strings
block_begin | the beginning of the block of strings to encode in the input string-set |
block_end | the end of the block of strings to encode in the input string-set |
string_set | the input string-set |
BWT_ext | the output BWT |
BWT_ext_dollars | the output BWT dollars |
forward | true if appending the result, false if prepending it |
Definition at line 171 of file bwte_inl.h.
void nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::merge_block | ( | const uint32 | block_begin, |
const uint32 | block_end, | ||
const string_set_type | string_set, | ||
BWTEBlock & | block, | ||
PagedText< SYMBOL_SIZE, BIG_ENDIAN > & | BWT_ext, | ||
SparseSymbolSet & | BWT_ext_dollars, | ||
const bool | forward | ||
) |
Definition at line 194 of file bwte_inl.h.
uint64 nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::needed_device_memory | ( | const uint32 | _max_block_strings, |
const uint32 | _max_block_suffixes | ||
) | const |
needed device memory
Definition at line 97 of file bwte_inl.h.
void nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::reserve | ( | const uint32 | _max_block_strings, |
const uint32 | _max_block_suffixes | ||
) |
reserve space for a maximum block size
Definition at line 116 of file bwte_inl.h.
void nvbio::BWTEContext< SYMBOL_SIZE, BIG_ENDIAN, storage_type, offsets_iterator >::sort_block | ( | const uint32 | block_begin, |
const uint32 | block_end, | ||
const string_set_type | string_set, | ||
BWTEBlock & | block | ||
) |
Definition at line 290 of file bwte_inl.h.