Class Genome

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<Interval>, java.lang.Iterable<Chromosome>, TxtSerializable

    public class Genome
    extends Marker
    implements java.io.Serializable, java.lang.Iterable<Chromosome>
    This is just used for the Interval class. It is NOT a representation of an entire genome.
    Author:
    pcingola
    See Also:
    Serialized Form
    • Constructor Detail

      • Genome

        public Genome()
      • Genome

        public Genome​(java.lang.String version)
      • Genome

        public Genome​(java.lang.String version,
                      java.util.Properties properties)
    • Method Detail

      • createFromFaidx

        public static Genome createFromFaidx​(java.lang.String genomeName,
                                             java.lang.String faidxFile)
        Create a genome from a faidx file. See "samtools faidx" command (reference http://samtools.sourceforge.net/samtools.shtml)
        Parameters:
        genomeName - : Genome's name (version)
        faidxFile - : FAI file used to create all chromosomes
        Returns:
      • add

        public void add​(Chromosome chromo)
        Add a chromosome
      • chromosomeNamesSorted

        public java.util.List<java.lang.String> chromosomeNamesSorted()
        Get a sorted list of chromosomes
      • getChromoFastaFiles

        public java.lang.String[] getChromoFastaFiles()
      • getChromosome

        public Chromosome getChromosome​(java.lang.String chromoName)
        Find chromosome 'chromoName'
      • getChromosomeCount

        public int getChromosomeCount()
      • getChromosomes

        public java.util.Collection<Chromosome> getChromosomes()
      • getChromosomesSortedSize

        public java.util.List<Chromosome> getChromosomesSortedSize()
        Return chromosomes sorted by size (largest chromosomes first)
      • getCytoBands

        public CytoBands getCytoBands()
      • getFastaDir

        public java.lang.String getFastaDir()
      • getGenes

        public Genes getGenes()
      • getGenesSorted

        public java.util.List<Gene> getGenesSorted()
        Create a sorted list of genes (sorted by gene Id)
      • getGenesSortedPos

        public java.util.List<Gene> getGenesSortedPos()
        Create a sorted list of genes (sorted by genomic position)
      • getGenomeId

        public java.lang.String getGenomeId()
      • getOrCreateChromosome

        public Chromosome getOrCreateChromosome​(java.lang.String chromoName)
        Get or create a chromosome
      • getSpecies

        public java.lang.String getSpecies()
      • getVersion

        public java.lang.String getVersion()
      • hasChromosome

        public boolean hasChromosome​(java.lang.String chromo)
        Is this chromosome in this genome?
      • hasCodingInfo

        public boolean hasCodingInfo()
      • hasTranscriptSupportLevelInfo

        public boolean hasTranscriptSupportLevelInfo()
        Do we have coding info from genes?
      • isMostExonsHaveSequence

        public boolean isMostExonsHaveSequence()
        Do most exons have sequence? This is an indicator that something went really bad building the database.
        Returns:
        Check if most exons have sequence assigned.
      • iterator

        public java.util.Iterator<Chromosome> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<Chromosome>
      • length

        public long length()
        Total genome length: add all chromosomes
      • readGenomeSequence

        public boolean readGenomeSequence​(java.lang.String fastaFile)
        Read the whole genome sequence into memory
        Parameters:
        fastaFile - : Path to a Fasta file
        Returns:
        true if it was successful
      • remove

        public void remove​(Chromosome chromo)
        Remove a chromosome WARINIG: Doesn't check any dependencies!
      • save

        public void save​(java.lang.String fileName)
        Save genome to file
      • toString

        public java.lang.String toString()
        Show number of genes, transcripts & exons
        Overrides:
        toString in class Marker
      • toString

        public java.lang.String toString​(java.lang.StringBuilder errors)
        Show number of genes, transcripts & exons Arr all errors to buffer