Package vcf

Interface GT

All Known Implementing Classes:
BasicGT, RefGT, RestrictedGT, SplicedGT, XRefGT

public interface GT

Interface GT represents genotype data for a list of markers and a list of samples.

All instances of GT are required to be immutable.

  • Method Summary

    Modifier and Type
    Method
    Description
    int
    allele(int marker, int hap)
    Returns the allele on the specified haplotype for the specified marker or return -1 if the allele is missing.
    boolean
    Returns true if the genotype for each marker and sample has non-missing alleles and is either haploid or diploid with a phased allele separator, and returns false otherwise.
    boolean
    Returns true if the markers are ordered by decreasing chromosome base position, and returns false otherwise.
    marker(int marker)
    Returns the specified marker.
    Returns the list of markers in order of increasing chromosome position.
    int
    Returns the number of haplotypes.
    int
    Returns the number of markers.
    int
    Returns the number of samples.
    restrict(int start, int end)
    Returns a new GT instance restricted to genotype data for the specified markers.
    restrict(Markers markers, int[] indices)
    Returns a GT instance restricted to genotype data for the specified markers.
    Returns the list of samples.
  • Method Details

    • isReversed

      boolean isReversed()
      Returns true if the markers are ordered by decreasing chromosome base position, and returns false otherwise.
      Returns:
      true if the markers are ordered by decreasing chromosome base position
    • nMarkers

      int nMarkers()
      Returns the number of markers.
      Returns:
      the number of markers
    • marker

      Marker marker(int marker)
      Returns the specified marker.
      Parameters:
      marker - a marker index
      Returns:
      the specified marker
      Throws:
      IndexOutOfBoundsException - if marker < 0 || marker >= this.nMarkers()
    • markers

      Markers markers()
      Returns the list of markers in order of increasing chromosome position. If (this.isReversed() == false) then (this.markers().marker(j).equals(this.marker(j)) == true) for all (0 <= j && j < this.nMarkers()). If (this.isReversed() == true) then (this.markers().marker(this.nMarkers() - 1 - j).equals(this.marker(j)) == true) for all (0 <= j && j < this.nMarkers())
      Returns:
      the list of markers in order of increasing chromosome position
    • nHaps

      int nHaps()
      Returns the number of haplotypes. The returned value is equal to 2*this.nSamples().
      Returns:
      the number of haplotypes
    • nSamples

      int nSamples()
      Returns the number of samples.
      Returns:
      the number of samples
    • samples

      Samples samples()
      Returns the list of samples.
      Returns:
      the list of samples
    • isPhased

      boolean isPhased()
      Returns true if the genotype for each marker and sample has non-missing alleles and is either haploid or diploid with a phased allele separator, and returns false otherwise.
      Returns:
      true if the genotype for each marker and sample is a phased, non-missing genotype
    • allele

      int allele(int marker, int hap)
      Returns the allele on the specified haplotype for the specified marker or return -1 if the allele is missing. The order of the two alleles is unspecified if this.isPhased() == false.
      Parameters:
      marker - the marker index
      hap - the haplotype index
      Returns:
      the allele on the specified haplotype for the specified marker
      Throws:
      IndexOutOfBoundsException - if marker < 0 || marker >= this.nMarkers()
      IndexOutOfBoundsException - if hap < 0 || hap >= this.nHaps()
    • restrict

      GT restrict(Markers markers, int[] indices)
      Returns a GT instance restricted to genotype data for the specified markers.
      Parameters:
      markers - the list of markers in the returned instance
      indices - a list of distinct marker indices (from this.markers()) in increasing order
      Returns:
      a GT instance restricted to genotype data for the specified markers
      Throws:
      IndexOutOfBoundsException - if there exists j such that (0 <= j && j < indices.length) such that (indices[j] < 0 || indices[j] >= this.nMarkers())
      IllegalArgumentException - if there exists j such that (1 <= j && j < indices.length) such that (indices[j] <= indice[j - 1])
      IllegalArgumentException - if there exists j such that (0 <= j && j < indices.length) such that (this.marker(indices[j]).equals(markers.marker(j)) == false)
      NullPointerException - if indices == null
      UnsupportedOperationException - if this.isReversed() == true
    • restrict

      GT restrict(int start, int end)
      Returns a new GT instance restricted to genotype data for the specified markers.
      Parameters:
      start - the start marker (inclusive)
      end - the end marker (exclusive)
      Returns:
      a GT instance restricted to genotype data for the specified markers
      Throws:
      IllegalArgumentException - if start >= end
      IndexOutOfBoundsException - if start < 0 || end > this.markers()