|
const ModelType & | getMmersModel () const |
|
| ModelMinimizer (size_t kmerSize, size_t minimizerSize, Comparator cmp=Comparator(), uint32_t *freq_order=NULL) |
|
| ~ModelMinimizer () |
|
template<class Convert > |
int | first (const char *seq, Kmer &kmer, size_t startIndex) const |
|
template<class Convert > |
void | next (char c, Kmer &kmer, bool isValid) const |
|
u_int64_t | getMinimizerValue (const Type &k, bool fastMethod=true) const |
|
std::string | getMinimizerString (const Type &k, bool fastMethod=true) const |
|
int | getMinimizerPosition (const Type &k, bool fastMethod=true) const |
|
| ModelAbstract (size_t sizeKmer=span-1) |
|
size_t | getSpan () const |
|
size_t | getMemorySize () const |
|
size_t | getKmerSize () const |
|
const Type & | getKmerMax () const |
|
std::string | toString (const Type &kmer) const |
|
Type | reverse (const Type &kmer) const |
|
Kmer | getKmer (const tools::misc::Data &data, size_t startIndex=0) const |
|
bool | iterate (tools::misc::Data &data, Callback callback) const |
|
Kmer | codeSeed (const char *seq, tools::misc::Data::Encoding_e encoding, size_t startIndex=0) const |
|
Kmer | codeSeedRight (const Kmer &kmer, char nucl, tools::misc::Data::Encoding_e encoding) const |
|
bool | build (tools::misc::Data &data, std::vector< Kmer > &kmersBuffer) const |
|
void | iterateNeighbors (const Type &source, const Functor &fct, const std::bitset< 8 > &mask=0xFF) const |
|
void | iterateOutgoingNeighbors (const Type &source, Functor &fct, const std::bitset< 4 > &mask=0x0F) const |
|
void | iterateIncomingNeighbors (const Type &source, Functor &fct, const std::bitset< 4 > &mask=0x0F) const |
|
void | use () |
|
void | forget () |
|
virtual | ~ISmartPointer () |
|
template<size_t span = KMER_DEFAULT_SPAN>
template<class ModelType, class Comparator = Kmer<span>::ComparatorMinimizerFrequencyOrLex>
class gatb::core::kmer::impl::Kmer< span >::ModelMinimizer< ModelType, Comparator >
Model that handles kmers of the Model type + a minimizer.
This model supports the concept of minimizer. It acts as a Model instance (given as a template class) and add minimizer information to the Kmer type.
Example of use:
ModelMinimizer model (kmerSize, 8);
const ModelCanonical& modelMinimizer = model.getMmersModel();
std::cout << std::endl;
std::cout << "-------------------- MINIMIZER --------------------" << std::endl;
std::cout << "kmer value is: " << kmer.value() << std::endl;
std::cout << "kmer string is: " << model.toString(kmer.value()) << std::endl;
std::cout << "forward value is: " << kmer.forward() << std::endl;
std::cout << "forward string is: " << model.toString(kmer.forward()) << std::endl;
std::cout << "revcomp value is: " << kmer.revcomp() << std::endl;
std::cout << "revcomp string is: " << model.toString(kmer.revcomp()) << std::endl;
std::cout <<
"used strand is : " <<
toString(kmer.strand()) << std::endl;
std::cout << "minimizer model size : " << modelMinimizer.getKmerSize() << std::endl;
std::cout << "minimizer value is : " << kmer.minimizer().value() << std::endl;
std::cout << "minimizer string is : " << modelMinimizer.toString(kmer.minimizer().value()) << std::endl;
std::cout << "minimizer position in kmer : " << kmer.position() << std::endl;
std::cout << "minimizer changed : " << kmer.hasChanged() << std::endl;