Package htsjdk.samtools.cram.ref
Interface CRAMReferenceSource
- All Known Implementing Classes:
CRAMLazyReferenceSource
,ReferenceSource
public interface CRAMReferenceSource
Interface used to supply a reference source when reading CRAM files.
-
Method Summary
Modifier and TypeMethodDescriptionbyte[]
getReferenceBases
(SAMSequenceRecord sequenceRecord, boolean tryNameVariants) Get the reference bases for an entire reference contig.byte[]
getReferenceBasesByRegion
(SAMSequenceRecord sequenceRecord, int zeroBasedStart, int requestedRegionLength) Get the reference bases for a region of a reference contig.
-
Method Details
-
getReferenceBases
Get the reference bases for an entire reference contig.- Parameters:
sequenceRecord
- the SAMSequenceRecord identifying the reference being requestedtryNameVariants
- if true, attempt to match the requested sequence name against the reference by using common name variations, such as adding or removing a leading "chr" prefix from the requested name. if false, use exact match- Returns:
- the upper-cased, normalized (see
Utils.normalizeBase(byte)
) bases representing the requested sequence, or null if the sequence cannot be found
-
getReferenceBasesByRegion
byte[] getReferenceBasesByRegion(SAMSequenceRecord sequenceRecord, int zeroBasedStart, int requestedRegionLength) Get the reference bases for a region of a reference contig. If the sequence can be retrieved, but is not long enough to satisfy the requested length, it is permissible to return fewer bases than therequestedRegionLength
. It is the caller's responsibility to detect and handle this case.- Parameters:
sequenceRecord
- the SAMSequenceRecord for the reference contig being requestedzeroBasedStart
- the zero based offset of the starting reference base, must be >= 0requestedRegionLength
- the length of the requested reference region- Returns:
- the bases for the reference region, or null if the sequence cannot be found.
-