MCPcopy Create free account
hub / github.com/BirolLab/abyss / generateSequencesFromExtension

Function generateSequencesFromExtension

Assembly/AssemblyAlgorithms.h:52–73  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

50/** Return the kmer which are adjacent to this kmer. */
51template <typename V, typename SymbolSet>
52void generateSequencesFromExtension(
53 const V& currSeq,
54 extDirection dir,
55 SymbolSet extension,
56 std::vector<V>& outseqs)
57{
58 typedef typename SymbolSet::Symbol Symbol;
59
60 std::vector<V> extensions;
61 V extSeq(currSeq);
62 extSeq.shift(dir);
63
64 // Check for the existance of the 4 possible extensions
65 for (unsigned i = 0; i < SymbolSet::NUM; ++i) {
66 // Does this sequence have an extension?
67 Symbol x(i);
68 if (extension.checkBase(x)) {
69 extSeq.setLastBase(dir, x);
70 outseqs.push_back(extSeq);
71 }
72 }
73}
74
75/** Return the adjacency of this sequence.
76 * @param considerMarks when true, treat a marked vertex as having

Callers 4

markNeighboursFunction · 0.85
initiateBranchGroupFunction · 0.85
extendBranchFunction · 0.85

Calls 4

shiftMethod · 0.45
checkBaseMethod · 0.45
setLastBaseMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected