gatb.core-API-0.0.0
|
Construction of the set of critical false positives nodes. More...
#include <DebloomAlgorithm.hpp>
Public Types | |
typedef kmer::impl::Kmer< span >::ModelCanonical | Model |
Public Member Functions | |
DebloomAlgorithm (tools::storage::impl::Group &bloomGroup, tools::storage::impl::Group &debloomGroup, tools::storage::impl::Partition< Count > *solidIterable, size_t kmerSize, size_t miniSize, size_t max_memory=0, size_t nb_cores=0, tools::misc::BloomKind bloomKind=tools::misc::BLOOM_DEFAULT, tools::misc::DebloomKind debloomKind=tools::misc::DEBLOOM_DEFAULT, const std::string &debloomUri="debloom", tools::misc::IProperties *options=0) | |
DebloomAlgorithm (tools::storage::impl::Storage &storage) | |
virtual | ~DebloomAlgorithm () |
void | execute () |
tools::collections::Collection< Type > * | getCriticalKmers () |
debruijn::IContainerNode< Type > * | getContainerNode () |
virtual const char * | getClassName () const |
Public Member Functions inherited from Algorithm | |
Algorithm (const std::string &name, int nbCores=-1, gatb::core::tools::misc::IProperties *input=0) | |
virtual | ~Algorithm () |
std::string | getName () const |
void | run () |
virtual IProperties * | getInput () |
virtual IProperties * | getOutput () |
virtual IProperties * | getInfo () |
virtual dp::IDispatcher * | getDispatcher () |
virtual TimeInfo & | getTimeInfo () |
virtual IProperties * | getSystemInfo () |
template<typename Item > | |
dp::Iterator< Item > * | createIterator (dp::Iterator< Item > *iter, size_t nbIterations=0, const char *message=0, dp::IteratorListener *listener=0) |
virtual dp::IteratorListener * | createIteratorListener (size_t nbIterations, const char *message) |
Public Member Functions inherited from SmartPointer | |
void | use () |
void | forget () |
Public Member Functions inherited from ISmartPointer | |
virtual | ~ISmartPointer () |
Static Public Member Functions | |
static tools::misc::IOptionsParser * | getOptionsParser () |
static float | getNbBitsPerKmer (size_t kmerSize, tools::misc::DebloomKind debloomKind) |
Static Public Member Functions inherited from Algorithm | |
template<template< size_t > class Functor> | |
static int | mainloop (tools::misc::IOptionsParser *parser, int argc, char *argv[]) |
Additional Inherited Members | |
Protected Member Functions inherited from Algorithm | |
std::string | getUriByKey (const std::string &key) |
std::string | getUri (const std::string &str) |
void | setInput (IProperties *input) |
Protected Member Functions inherited from SmartPointer | |
SmartPointer () | |
virtual | ~SmartPointer () |
Construction of the set of critical false positives nodes.
GATB uses Bloom filters for encoding de Bruijn graphs. Since Bloom filters are probalistic data structure having false positives, we need extra information for disambiguate the graph, otherwise we would have false positive nodes in our de Bruijn graphs.
It is possible to build this extra information as a set of critical false positives nodes and the DebloomAlgorithm class provides a way to build such cFP set.
Actually, this class is mainly used in the debruijn::impl::Graph class as a third step for the de Bruijn graph creation.
typedef kmer::impl::Kmer<span>::ModelCanonical Model |
Shortcuts.
DebloomAlgorithm | ( | tools::storage::impl::Group & | bloomGroup, |
tools::storage::impl::Group & | debloomGroup, | ||
tools::storage::impl::Partition< Count > * | solidIterable, | ||
size_t | kmerSize, | ||
size_t | miniSize, | ||
size_t | max_memory = 0 , |
||
size_t | nb_cores = 0 , |
||
tools::misc::BloomKind | bloomKind = tools::misc::BLOOM_DEFAULT , |
||
tools::misc::DebloomKind | debloomKind = tools::misc::DEBLOOM_DEFAULT , |
||
const std::string & | debloomUri = "debloom" , |
||
tools::misc::IProperties * | options = 0 |
||
) |
Constructor
[in] | storage | : storage object where the cFP will be stored. |
[in] | storageSolids | : obsolete (should be removed) |
[in] | solidIterable | : partition holding the solid kmers |
[in] | kmerSize | : size of the kmers |
[in] | max_memory | : max memory (in MBytes) to be used |
[in] | nb_cores | : number of cores to be used; 0 means all available cores |
[in] | bloomKind | : kind of Bloom filter implementation to be used |
[in] | debloomKind | : kind of algorithm to be used for storing the cFP |
[in] | debloomUri | : prefix name for temporary files |
[in] | options | : extra options |
DebloomAlgorithm | ( | tools::storage::impl::Storage & | storage | ) |
Constructor
[in] | storage | : storage object from which the cFP can be loaded. |
|
virtual |
Destructor
|
virtual |
Execute the debloom algorithm.
Implements Algorithm.
|
inlinevirtual |
Get the class name (for statistics output).
|
inline |
Get the bloom/cFP container.
|
inline |
Get the collection for the computed critical FP kmers.
|
static |
Get the number of bits per kmer
[in] | kmerSize | : kmer size |
[in] | debloomKind | : kind of debloom |
|
static |
Get an option parser for bloom/debloom parameters. Dynamic allocation, so must be released when no more used.