All Downloads are FREE. Search and download functionalities are using the official Maven repository.

htsjdk.samtools.cram.ref.CRAMReferenceSource Maven / Gradle / Ivy

There is a newer version: 4.1.3
Show newest version
package htsjdk.samtools.cram.ref;

import htsjdk.samtools.SAMSequenceRecord;

/**
 * Interface used to supply a reference source when reading CRAM files.
 */
public interface CRAMReferenceSource {

    /**
     * getReferenceBases
     * @param sequenceRecord the SAMSequenceRecord identifying the reference
     *                       being requested
     * @param tryNameVariants 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
     * @return the upper cased, normalized (see {@link htsjdk.samtools.cram.build.Utils#normalizeBase})
     * bases representing the requested sequence, or null if the sequence cannot be found
     */
    byte[] getReferenceBases(final SAMSequenceRecord sequenceRecord, final boolean tryNameVariants);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy