Remove ambiguous branches. */
| 1149 | |
| 1150 | /** Remove ambiguous branches. */ |
| 1151 | size_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. */ |
| 1173 | void NetworkSequenceCollection::assembleContig( |
nothing calls this directly
no test coverage detected