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

Method processSequenceExtensionPop

Parallel/NetworkSequenceCollection.cpp:1403–1423  ·  view source on GitHub ↗

Process a sequence extension for popping. */

Source from the content-addressed store, hash-verified

1401
1402/** Process a sequence extension for popping. */
1403void NetworkSequenceCollection::processSequenceExtensionPop(
1404 uint64_t groupID, uint64_t branchID, const V& seq,
1405 const SymbolSetPair& extRec, int multiplicity,
1406 unsigned maxLength)
1407{
1408 BranchGroupMap::iterator groupIt
1409 = m_activeBranchGroups.find(groupID);
1410 if (groupIt == m_activeBranchGroups.end()) {
1411 // This branch is already complete. Double check that that is
1412 // the case.
1413 assert(m_finishedGroups.count(groupID) > 0);
1414 return;
1415 }
1416
1417 BranchGroup& group = groupIt->second;
1418 bool extendable = AssemblyAlgorithms::processBranchGroupExtension(
1419 group, branchID, seq, extRec, multiplicity, maxLength);
1420 if (extendable && group.updateStatus(maxLength) == BGS_ACTIVE)
1421 generateExtensionRequests(groupID,
1422 group.begin(), group.end());
1423}
1424
1425/** Add a k-mer to this collection. */
1426void NetworkSequenceCollection::add(const V& seq,

Callers

nothing calls this directly

Calls 6

updateStatusMethod · 0.80
findMethod · 0.45
endMethod · 0.45
countMethod · 0.45
beginMethod · 0.45

Tested by

no test coverage detected