NVBIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Modules | Classes | Functions
Q-Gram Module

Detailed Description

This module contains a series of classes and functions to operate on q-grams and q-gram indices. It implements the following data-structures:

It also defines convenience functions to generate q-grams extracted out of strings and string-sets (see Seeding):

Modules

 Q-Gram Index Module
 
 Q-Group Index Module
 

Classes

struct  nvbio::QGramFilter< system_tag, qgram_index_type, query_iterator, index_iterator >
 
struct  nvbio::QGramFilter< host_tag, qgram_index_type, query_iterator, index_iterator >
 
struct  nvbio::QGramFilter< device_tag, qgram_index_type, query_iterator, index_iterator >
 
struct  nvbio::QGramFilterHost< qgram_index_type, query_iterator, index_iterator >
 
struct  nvbio::QGramFilterDevice< qgram_index_type, query_iterator, index_iterator >
 
struct  nvbio::string_qgram_functor< string_type >
 
struct  nvbio::string_set_qgram_functor< string_set_type >
 
struct  nvbio::string_qgram_search_functor< qgram_index_type, string_type >
 

Functions

template<typename string_type , typename index_iterator , typename qgram_iterator >
void nvbio::generate_qgrams (const uint32 q, const uint32 symbol_size, const uint32 string_len, const string_type string, const uint32 n_qgrams, const index_iterator indices, qgram_iterator qgrams)
 
template<typename string_set_type , typename index_iterator , typename qgram_iterator >
void nvbio::generate_qgrams (const uint32 q, const uint32 symbol_size, const string_set_type string_set, const uint32 n_qgrams, const index_iterator indices, qgram_iterator qgrams)
 

Function Documentation

template<typename string_type , typename index_iterator , typename qgram_iterator >
void nvbio::generate_qgrams ( const uint32  q,
const uint32  symbol_size,
const uint32  string_len,
const string_type  string,
const uint32  n_qgrams,
const index_iterator  indices,
qgram_iterator  qgrams 
)

generate the q-grams corresponding to a list of q-gram coordinates

Template Parameters
string_typea string iterator
index_iteratora q-gram coordinate iterator
qgram_iteratora q-gram iterator
Parameters
qthe q-gram length
symbol_sizethe symbol size, in bits
string_lenthe input string length
stringthe input string
n_qgramsthe number of q-grams to generate
indicesthe input q-gram coordinates
indicesthe output q-grams

Definition at line 418 of file qgram_inl.h.

template<typename string_set_type , typename index_iterator , typename qgram_iterator >
void nvbio::generate_qgrams ( const uint32  q,
const uint32  symbol_size,
const string_set_type  string_set,
const uint32  n_qgrams,
const index_iterator  indices,
qgram_iterator  qgrams 
)

generate the q-grams corresponding to a list of q-gram coordinates

Template Parameters
string_typea string iterator
index_iteratora q-gram coordinate iterator
qgram_iteratora q-gram iterator
Parameters
qthe q-gram length
symbol_sizethe symbol size, in bits
string_setthe input string-set
n_qgramsthe number of q-grams to generate
indicesthe input q-gram coordinates
indicesthe output q-grams

Definition at line 448 of file qgram_inl.h.