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

Method controlSplitAmbiguous

Parallel/NetworkSequenceCollection.cpp:1151–1170  ·  view source on GitHub ↗

Remove ambiguous branches. */

Source from the content-addressed store, hash-verified

1149
1150/** Remove ambiguous branches. */
1151size_t NetworkSequenceCollection::controlSplitAmbiguous()
1152{
1153 cout << "Splitting ambiguous branches...\n";
1154 m_comm.sendControlMessage(APC_SET_STATE, NAS_SPLIT_AMBIGUOUS);
1155 m_comm.barrier();
1156 assert(m_comm.receiveEmpty());
1157 m_comm.barrier();
1158 size_t count = AssemblyAlgorithms::splitAmbiguous(this);
1159 m_checkpointSum += count;
1160 EndState();
1161 m_numReachedCheckpoint++;
1162 while (!checkpointReached())
1163 pumpNetwork();
1164 cout << "Split " << m_checkpointSum << " ambiguous branches.\n";
1165
1166 if (!opt::db.empty())
1167 AssemblyAlgorithms::addToDb ("totalSplitAmbg", m_checkpointSum);
1168
1169 return m_checkpointSum;
1170}
1171
1172/** Assemble a contig. */
1173void NetworkSequenceCollection::assembleContig(

Callers

nothing calls this directly

Calls 6

splitAmbiguousFunction · 0.85
addToDbFunction · 0.85
barrierMethod · 0.80
receiveEmptyMethod · 0.80
sendControlMessageMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected