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.
-