private void WriteUncompressed(SequenceAlignmentMap sequenceAlignmentMap, Stream writer, bool createSortedFile)
{
SAMAlignmentHeader header = sequenceAlignmentMap.Header;
if (createSortedFile && SortType == BAMSortByFields.ChromosomeNameAndCoordinates)
{
header = GetHeaderWithSortedSQFields(header, true);
this.refSequences = header.GetReferenceSequenceRanges();
}
if (this.refSequences == null)
{
this.refSequences = header.GetReferenceSequenceRanges();
}
WriteHeader(header, writer);
writer.Flush();
if (createSortedFile)
{
WriteUncompressedSortedBAM(sequenceAlignmentMap, writer);
}
else
{
foreach (SAMAlignedSequence seq in sequenceAlignmentMap.QuerySequences)
{
SAMAlignedSequence alignedSeq = seq;
this.ValidateSQHeader(alignedSeq.RName);
this.WriteAlignedSequence(alignedSeq, writer);
writer.Flush();
}
}
writer.Flush();
}