package jannovar.common; /** * This interface has some numerical contants that are used * by various other classes in the Exomizer to refer to * various entities. * Chromosomes 1-22 are refered to by the corresponding ints, and chromosomes * X, Y, and M are referred to as below. * @author Peter N Robinson * @version 0.19 (11 July, 2013) */ public interface Constants { /* 1) Chromosomes */ public static final byte X_CHROMOSOME = 23; public static final byte Y_CHROMOSOME = 24; public static final byte M_CHROMOSOME = 25; /* 4) Index of fields of the DP4 (depth) from the VCF file: ref-forward bases, ref-reverse, alt-forward and alt-reverse bases */ public static final int N_REF_FORWARD_BASES=0; public static final int N_REF_REVERSE_BASES=1; public static final int N_ALT_FORWARD_BASES=2; public static final int N_ALT_REVERSE_BASES=3; /* Source of transcript files */ public static final int UCSC = 0; public static final int ENSEMBL = 1; public static final int REFSEQ = 2; /* FTP base names and paths */ public static final String UCSC_FTP_BASE_MM9 = "http://hgdownload.soe.ucsc.edu/goldenPath/mm9/database/"; public static final String UCSC_FTP_BASE_MM10 = "http://hgdownload.soe.ucsc.edu/goldenPath/mm10/database/"; public static final String UCSC_FTP_BASE_HG18 = "http://hgdownload.soe.ucsc.edu/goldenPath/hg18/database/"; public static final String UCSC_FTP_BASE_HG19 = "http://hgdownload.soe.ucsc.edu/goldenPath/hg19/database/"; public static final String ENSEMBL_FTP_BASE_HG19 = "ftp://ftp.ensembl.org/pub/release-74/"; public static final String ENSEMBL_FTP_BASE_HG18 = "ftp://ftp.ensembl.org/pub/release-54/"; public static final String ENSEMBL_FTP_BASE_MM9 = "ftp://ftp.ensembl.org/pub/release-67/"; public static final String ENSEMBL_FTP_BASE_MM10 = "ftp://ftp.ensembl.org/pub/release-74/"; public static final String ENSEMBL_HUMAN_BASE = "homo_sapiens/"; public static final String ENSEMBL_MOUSE_BASE = "mus_musculus/"; public static final String ENSEMBL_GTF_BASE = "gtf/"; public static final String ENSEMBL_FASTA_BASE = "fasta/"; public static final String REFSEQ_FTP_BASE = "ftp://ftp.ncbi.nlm.nih.gov/genomes/H_sapiens/"; public static final String REFSEQ_FTP_BASE_MOUSE = "ftp://ftp.ncbi.nlm.nih.gov/genomes/Mus_musculus/"; public static final String REFSEQ_GFF_BASE = "GFF/"; public static final String REFSEQ_FASTA_BASE = "RNA/"; public static final String REFSEQ_HG18 = "ARCHIVE/BUILD.36.3/"; public static final String REFSEQ_HG19 = "ARCHIVE/ANNOTATION_RELEASE.105/"; public static final String REFSEQ_HG38 = ""; public static final String REFSEQ_MM9 = "ARCHIVE/BUILD.37.2/"; public static final String REFSEQ_MM10 = ""; public static final String ensembl_hg19 = "Homo_sapiens.GRCh37.74"; public static final String ensembl_hg18 = "Homo_sapiens.NCBI36.54"; public static final String ensembl_mm9 = "Mus_musculus.NCBIM37.67"; public static final String ensembl_mm10 = "Mus_musculus.GRCm38.74"; public static final String ensembl_gtf = ".gtf.gz"; public static final String ensembl_cdna = ".cdna.all.fa.gz"; public static final String ensembl_ncrna = ".ncrna.fa.gz"; public static final String refseq_gff_hg38 = "ref_GRCh38_top_level.gff3.gz"; public static final String refseq_gff_hg19 = "ref_GRCh37.p13_top_level.gff3.gz"; public static final String refseq_gff_hg18 = "ref_NCBI36_top_level.gff3.gz"; public static final String refseq_gff_mm9 = "ref_MGSCv37_top_level.gff3.gz"; public static final String refseq_gff_mm10 = "ref_GRCm38.p2_top_level.gff3.gz"; public static final String refseq_rna = "rna.fa.gz"; /** Flag for an integer value that has not been initialized. */ public static final int UNINITIALIZED_INT = -10; /** Flag for an float value that has not been initialized. */ public static final float UNINITIALIZED_FLOAT = -10; /** Flag for an integer field that could not be parsed correctly */ public static final int NOPARSE = -5; /** Flag for a float field that could not be parsed correctly */ public static final float NOPARSE_FLOAT = -5f; /** Flag for no rsID for variant */ public static final int NO_RSID = -1; /** Name of the UCSC knownGenes file. */ public static final String knownGene = "knownGene.txt"; /** Name of the UCSC knownGenes mRNA file. */ public static final String knownGeneMrna = "knownGeneMrna.txt"; /** Name of the UCSC knownGenes Xref file. */ public static final String kgXref = "kgXref.txt"; /** Name of the UCSC knownGenes Xref file. */ public static final String known2locus = "knownToLocusLink.txt"; /** Name of refFlat.txt file */ public static final String refFlat = "refFlat.txt"; /* realeses */ public enum Release{ HG18, HG19, HG38, MM9, MM10; /** * Returns the UCSC genome release name for the given {@link Release}. * @param r The {@link Release} * @return the {@link Release} as String representation. */ public String getUCSCString(Release r){ switch (r) { case HG18: return "hg18"; case HG19: return "hg19"; case HG38: return "hg38"; case MM9: return "mm9"; case MM10: return "mm10"; default: return "error"; } } /** * Returns the NCBI genome release name for the given {@link Release}. * @param r The {@link Release} * @return the {@link Release} as String representation. */ public String getNCBIString(Release r){ switch (r) { case HG18: return "NCBI36.3"; case HG19: return "GRCh37.p13"; case HG38: return "GRCh38"; case MM9: return "MGSCv37.2"; case MM10: return "GRCm38.p1"; default: return "error"; } } /** * Returns the Ensembl genome release name for the given {@link Release}. * @param r The {@link Release} * @return the {@link Release} as String representation. */ public String getEnsemblString(Release r){ switch (r) { case HG18: return "NCBI36.54"; case HG19: return "GRCh37.74"; case MM9: return "NCBIM37.67"; case MM10: return "GRCm38.74"; default: return "error"; } } } /* DEFAUL */ public static final String DEFAULT_DATA = "data/"; /* TESTING */ /** Name of the UCSC serialized data file that will be used by Jannovar-testing. */ public static final String UCSCserializationTestFileName="/ucsc_test.ser"; }