OpenFlexTyper
Public Member Functions | Private Attributes | List of all members
algo::FmIndex Class Reference

A class that contains all the functions for use with an FmIndex.

#include <fmindex.h>

Inherits algo::IFmIndex.

Public Member Functions

 FmIndex ()
 Constructor.
 
virtual ~FmIndex ()
 Destructor.
 
std::pair< fs::path, fs::path > createFMIndex (const algo::IndexProps &_props, const fs::path &preprocessedFasta)
 Main function to generate the fm index files Generate the FmIndex for a preprocessed Fasta File. More...
 
void loadIndexFromFile (const fs::path &indexname)
 loadIndexFromFile More...
 
ft::KmerClass search (const std::string &kmer, u_int maxOcc=200)
 search within an index file for a kmer More...
 
void parallelFmIndex (algo::IndexProps &_props)
 parallel FM Index creation More...
 

Private Attributes

csa_wt< wt_huff< rrr_vector< 256 > >, 512, 1024 > _index
 This is the structure of our FmIndex. csa : compressed suffix array wt_huff : wavelet tree huffman rrr : rrr bit vector of the FmIndex For more information, please refere to : https://github.com/simongog/sdsl-lite.
 
std::mutex _mtx
 mutex
 
size_t _kmerMapSize
 _kmerMapSize
 

Member Function Documentation

◆ createFMIndex()

std::pair< fs::path, fs::path > algo::FmIndex::createFMIndex ( const algo::IndexProps &  _props,
const fs::path &  preprocessedFasta 
)

Generate FM Index

Parameters
algo::IndexPropsIndex Properties
fs::pathfilesystem path to the preprocessed Fasta
Returns
(path to the Index, path to the preprocessed Fasta)

◆ loadIndexFromFile()

void algo::FmIndex::loadIndexFromFile ( const fs::path &  indexname)

Load Index

Parameters
indexname

◆ parallelFmIndex()

void algo::FmIndex::parallelFmIndex ( algo::IndexProps &  _props)

create all the indexes for an input set

Parameters
algo::IndexPropsIndex Properties

◆ search()

ft::KmerClass algo::FmIndex::search ( const std::string &  kmer,
u_int  maxOcc = 200 
)

Search

Parameters
stringKmer
u_intmax Occurence, default 200
Returns
ft::KmerClass

The documentation for this class was generated from the following files: