/// <summary> /// Gets Aligned seqeunces in the Specified SAM file. /// </summary> /// <param name="textReader">SAM file stream.</param> private IEnumerable <SAMAlignedSequence> GetAlignedSequence(TextReader textReader) { bool isFilterRequired = IsFilterApplied(); bool display = true; //Displays SAM as output. string line = ReadNextLine(textReader); while (line != null) { // Ignore headers. if (!line.StartsWith(@"@", StringComparison.OrdinalIgnoreCase)) { SAMAlignedSequence alignedSequence = SAMParser.ParseSequence(line); if (isFilterRequired) { display = Filter(alignedSequence); } if (display) { yield return(alignedSequence); } } line = ReadNextLine(textReader); } }
/// <summary> /// Gets Aligned seqeunces in the Specified SAM file. /// </summary> /// <param name="textReader">SAM file stream.</param> private IEnumerable <SAMAlignedSequence> GetAlignedSequence(MBFTextReader textReader) { bool isFilterRequired = IsFilterApplied(); bool display = true; //Displays SAM as output. while (textReader.HasLines) { SAMAlignedSequence alignedSequence = SAMParser.ParseSequence(textReader, false); if (isFilterRequired) { display = Filter(alignedSequence); } if (display) { yield return(alignedSequence); } textReader.GoToNextLine(); } }