INNER CODE UNIT · C++

comparer

refresh-bio/FAMSA · src/msa.cpp:251

	auto comparer = [](const CSequence* a, const CSequence* b)->bool {
		return a->length > b->length ||
			(a->length == b->length && std::lexicographical_compare(a->data, a->data + a->data_size, b->data, b->data + b->data_size));
	};

	std::stable_sort(seq_ptrs.begin(), seq_ptrs.end(), comparer);
	uint32_t max_seq_len = seq_ptrs[0]->length;

	std::vector<CSequence> output;
	output.reserve(sequences.size());

	// mark already allocated memory area to free
	auto mma = sequences.front().get_mma();
	if (mma) {
		mma->freeze();
	}

	// put sequences in the ordered collection with length extension

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…