Package org.snpeff.interval
Class Genome
- java.lang.Object
-
- org.snpeff.interval.Interval
-
- org.snpeff.interval.Marker
-
- org.snpeff.interval.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
-
-
Field Summary
-
Fields inherited from class org.snpeff.interval.Interval
chromosomeNameOri, end, id, parent, start, strandMinus
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(Chromosome chromo)Add a chromosomejava.util.List<java.lang.String>chromosomeNamesSorted()Get a sorted list of chromosomesstatic GenomecreateFromFaidx(java.lang.String genomeName, java.lang.String faidxFile)Create a genome from a faidx file.java.lang.String[]getChromoFastaFiles()ChromosomegetChromosome(java.lang.String chromoName)Find chromosome 'chromoName'intgetChromosomeCount()java.util.Collection<Chromosome>getChromosomes()java.util.List<Chromosome>getChromosomesSortedSize()Return chromosomes sorted by size (largest chromosomes first)CytoBandsgetCytoBands()GenesgetGenes()java.util.List<Gene>getGenesSorted()Create a sorted list of genes (sorted by gene Id)java.util.List<Gene>getGenesSortedPos()Create a sorted list of genes (sorted by genomic position)java.lang.StringgetGenomeId()GenomicSequencesgetGenomicSequences()ChromosomegetOrCreateChromosome(java.lang.String chromoName)Get or create a chromosomejava.lang.StringgetSpecies()java.lang.StringgetVersion()booleanhasChromosome(java.lang.String chromo)Is this chromosome in this genome?booleanhasCodingInfo()booleanhasTranscriptSupportLevelInfo()Do we have coding info from genes?booleanisMostExonsHaveSequence()Do most exons have sequence? This is an indicator that something went really bad building the database.java.util.Iterator<Chromosome>iterator()longlength()Total genome length: add all chromosomesbooleanreadGenomeSequence(java.lang.String fastaFile)Read the whole genome sequence into memoryvoidremove(Chromosome chromo)Remove a chromosome WARINIG: Doesn't check any dependencies!voidsave(java.lang.String fileName)Save genome to filevoidserializeParse(MarkerSerializer markerSerializer)Parse a line from a serialized filejava.lang.StringserializeSave(MarkerSerializer markerSerializer)Create a string to serialize to a filejava.lang.StringtoString()Show number of genes, transcripts & exonsjava.lang.StringtoString(java.lang.StringBuilder errors)Show number of genes, transcripts & exons Arr all errors to buffer-
Methods inherited from class org.snpeff.interval.Marker
adjust, apply, applyDel, applyDup, applyIns, applyMixed, clone, cloneShallow, codonTable, compareTo, compareToPos, distance, distanceBases, getParent, getType, idChain, idChain, idChain, includes, intersect, isAdjustIfParentDoesNotInclude, isDeferredAnalysis, isShowWarningIfParentDoesNotInclude, minus, query, query, readTxt, shouldApply, union, variantEffect, variantEffectNonRef
-
Methods inherited from class org.snpeff.interval.Interval
equals, findParent, getChromosome, getChromosomeName, getChromosomeNameOri, getChromosomeNum, getEnd, getGenome, getGenomeName, getId, getStart, getStrand, hashCode, intersects, intersects, intersects, intersects, intersectSize, isCircular, isSameChromo, isStrandMinus, isStrandPlus, isValid, setChromosomeNameOri, setEnd, setId, setParent, setStart, setStrandMinus, shiftCoordinates, size, toStr, toStringAsciiArt, toStrPos
-
-
-
-
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()
-
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()
-
getGenomicSequences
public GenomicSequences getGenomicSequences()
-
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:
iteratorin interfacejava.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
-
serializeParse
public void serializeParse(MarkerSerializer markerSerializer)
Parse a line from a serialized file- Specified by:
serializeParsein interfaceTxtSerializable- Overrides:
serializeParsein classMarker
-
serializeSave
public java.lang.String serializeSave(MarkerSerializer markerSerializer)
Create a string to serialize to a file- Specified by:
serializeSavein interfaceTxtSerializable- Overrides:
serializeSavein classMarker
-
toString
public java.lang.String toString()
Show number of genes, transcripts & exons
-
toString
public java.lang.String toString(java.lang.StringBuilder errors)
Show number of genes, transcripts & exons Arr all errors to buffer
-
-