Difference between revisions of "SAM/BAM Classes FAQs"
From Genome Analysis Wiki
Jump to navigationJump to searchLine 14: | Line 14: | ||
NOTE: ReadRecord will also return false on an error - use <code>SamFile::GetStatus()</code> to determine if it was an error or the end of the region. <code>GetStatus</code> returns SamStatus::NO_MORE_RECS for the end of the region. | NOTE: ReadRecord will also return false on an error - use <code>SamFile::GetStatus()</code> to determine if it was an error or the end of the region. <code>GetStatus</code> returns SamStatus::NO_MORE_RECS for the end of the region. | ||
+ | |||
+ | See the library usage page for an [[Sam_Library_Usage_Examples#Read_a_Specified_Region_from_a_Sorted_.26_Indexed_BAM_File|Example]]. | ||
* Q: How do I read multiple regions? | * Q: How do I read multiple regions? |
Revision as of 10:44, 2 August 2010
How Do I?
Q: Map between a query/read sequence and a reference sequence to do things like looking up a base/quality at a given reference position or looking up a reference base for a given read position?
Q: Read only portions of a sorted & indexed BAM file that fall within a specified region?
- A:
- open a sorted and indexed BAM file for reading (
SamFile::OpenForRead
) - read the BAM Index file (
SamFile::ReadBamIndex
) - read the header (
SamFile::ReadHeader
) - set the region to be read (
SamFile::SetReadSection
) - Loop calling
SamFile::ReadRecord
until it returns false - indicating there are no more reads within this region.
- open a sorted and indexed BAM file for reading (
These methods are found in C++ Class: SamFile.
NOTE: ReadRecord will also return false on an error - use SamFile::GetStatus()
to determine if it was an error or the end of the region. GetStatus
returns SamStatus::NO_MORE_RECS for the end of the region.
See the library usage page for an Example.
- Q: How do I read multiple regions?
- A: Use the above solution, but loop on the SetReadSection/ReadRecord steps until all sections have been processed.
Q: Get additional information on this library?
- A: Email me, Mary Kate, at mktrost@umich.edu.