Class HaplotypeMap

java.lang.Object
picard.fingerprint.HaplotypeMap

public class HaplotypeMap extends Object
A collection of metadata about Haplotype Blocks including multiple in memory "indices" of the data to make it easy to query the correct HaplotypeBlock or Snp by snp names, positions etc. Also has the ability to read and write itself to and from files.
  • Field Details

  • Constructor Details

    • HaplotypeMap

      public HaplotypeMap(htsjdk.samtools.SAMFileHeader header)
      Constructs an empty HaplotypeMap using the provided SAMFileHeader's sequence dictionary.
    • HaplotypeMap

      public HaplotypeMap(File file)
    • HaplotypeMap

      public HaplotypeMap(Collection<HaplotypeBlock> haplotypeBlocks)
      since this constructor doesn't initialize the HaplotypeMap "properly", it should be used carefully!
  • Method Details

    • addHaplotype

      public void addHaplotype(HaplotypeBlock haplotypeBlock)
      Adds a HaplotypeBlock to the map and updates all the relevant caches/indices.
    • getHaplotype

      public HaplotypeBlock getHaplotype(Snp snp)
      Queries a HaplotypeBlock by Snp object. Returns NULL if none found.
    • getHaplotype

      public HaplotypeBlock getHaplotype(String snpName)
      Queries a HaplotypeBlock by Snp name. Returns NULL if none found.
    • getHaplotype

      public HaplotypeBlock getHaplotype(String chrom, int pos)
      Queries a HaplotypeBlock by Snp chromosome and position. Returns NULL if none found.
    • getHaplotypes

      public List<HaplotypeBlock> getHaplotypes()
      Returns an unmodifiable collection of all the haplotype blocks in the map.
    • getSnp

      public Snp getSnp(String chrom, int pos)
      Queries a Snp by chromosome and position. Returns NULL if none found.
    • getAllSnps

      public Set<Snp> getAllSnps()
      Returns an unmodifiable collection of all SNPs in all Haplotype blocks.
    • getIntervalList

      public htsjdk.samtools.util.IntervalList getIntervalList()
      Returns an IntervalList with an entry for every SNP in every Haplotype in the map.
    • withoutChromosomes

      public HaplotypeMap withoutChromosomes(Set<String> chroms)
      Returns a copy of this haplotype map that excludes haplotypes on the chromosomes provided.
      Parameters:
      chroms - a set of zero or more chromosome names
    • writeAsVcf

      public void writeAsVcf(File output, File refFile) throws FileNotFoundException
      Throws:
      FileNotFoundException
    • asVcf

      public Collection<htsjdk.variant.variantcontext.VariantContext> asVcf(htsjdk.samtools.reference.ReferenceSequenceFile ref)
    • writeToFile

      public void writeToFile(File file)
      Writes out a HaplotypeMap file with the contents of this map.
    • getHeader

      public htsjdk.samtools.SAMFileHeader getHeader()