bool IsOriginalClusterLost(size_t orig_cluster_ind) { auto reads = original_clusters_.GetReadsByCluster(orig_cluster_ind); for(auto read = reads.begin(); read != reads.end(); read++) if(constructed_clusters_.ReadExists(original_reads_[*read])) return false; return true; }
bool IsClusterNotMerged(size_t orig_cluster_ind) { vector<string> read_names = GetReadNamesFromCluster(orig_cluster_ind, original_clusters_, original_reads_); set<size_t> constr_cluster_inds; for(auto it = read_names.begin(); it != read_names.end(); it++) if(constructed_clusters_.ReadExists(*it)) constr_cluster_inds.insert(constructed_clusters_.GetCluster(*it)); return constr_cluster_inds.size() > 1; }