src/hg/inc/hapmapSnps.h 1.6
1.6 2009/03/03 01:07:24 angie
Added some new #defines for the HapMap Phase III updates to hgc, hgTrackUi and hgTracks.
Index: src/hg/inc/hapmapSnps.h
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/inc/hapmapSnps.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -b -B -U 1000000 -r1.5 -r1.6
--- src/hg/inc/hapmapSnps.h 8 May 2007 21:54:33 -0000 1.5
+++ src/hg/inc/hapmapSnps.h 3 Mar 2009 01:07:24 -0000 1.6
@@ -1,106 +1,123 @@
/* hapmapSnps.h was originally generated by the autoSql program, which also
* generated hapmapSnps.c and hapmapSnps.sql. This header links the database and
* the RAM representation of objects. */
#ifndef HAPMAPSNPS_H
#define HAPMAPSNPS_H
#define HAPMAPSNPS_NUM_COLS 12
struct hapmapSnps
/* HapMap genotype summary */
{
struct hapmapSnps *next; /* Next in singly linked list. */
char *chrom; /* Chromosome */
unsigned chromStart; /* Start position in chrom (0 based) */
unsigned chromEnd; /* End position in chrom (1 based) */
char *name; /* Reference SNP identifier from dbSnp */
unsigned score; /* Not used */
char strand[2]; /* Which genomic strand contains the observed alleles */
char *observed; /* Observed string from genotype file */
char allele1[2]; /* This allele has been observed */
unsigned homoCount1; /* Count of individuals who are homozygous for allele1 */
char *allele2; /* This allele may not have been observed */
unsigned homoCount2; /* Count of individuals who are homozygous for allele2 */
unsigned heteroCount; /* Count of individuals who are heterozygous */
};
void hapmapSnpsStaticLoad(char **row, struct hapmapSnps *ret);
/* Load a row from hapmapSnps table into ret. The contents of ret will
* be replaced at the next call to this function. */
struct hapmapSnps *hapmapSnpsLoad(char **row);
/* Load a hapmapSnps from row fetched with select * from hapmapSnps
* from database. Dispose of this with hapmapSnpsFree(). */
struct hapmapSnps *hapmapSnpsLoadAll(char *fileName);
/* Load all hapmapSnps from whitespace-separated file.
* Dispose of this with hapmapSnpsFreeList(). */
struct hapmapSnps *hapmapSnpsLoadAllByChar(char *fileName, char chopper);
/* Load all hapmapSnps from chopper separated file.
* Dispose of this with hapmapSnpsFreeList(). */
#define hapmapSnpsLoadAllByTab(a) hapmapSnpsLoadAllByChar(a, '\t');
/* Load all hapmapSnps from tab separated file.
* Dispose of this with hapmapSnpsFreeList(). */
struct hapmapSnps *hapmapSnpsCommaIn(char **pS, struct hapmapSnps *ret);
/* Create a hapmapSnps out of a comma separated string.
* This will fill in ret if non-null, otherwise will
* return a new hapmapSnps */
void hapmapSnpsFree(struct hapmapSnps **pEl);
/* Free a single dynamically allocated hapmapSnps such as created
* with hapmapSnpsLoad(). */
void hapmapSnpsFreeList(struct hapmapSnps **pList);
/* Free a list of dynamically allocated hapmapSnps's */
void hapmapSnpsOutput(struct hapmapSnps *el, FILE *f, char sep, char lastSep);
/* Print out hapmapSnps. Separate fields with sep. Follow last field with lastSep. */
#define hapmapSnpsTabOut(el,f) hapmapSnpsOutput(el,f,'\t','\n');
/* Print out hapmapSnps as a line in a tab-separated file. */
#define hapmapSnpsCommaOut(el,f) hapmapSnpsOutput(el,f,',',',');
/* Print out hapmapSnps as a comma separated list including final comma. */
/* -------------------------------- End autoSql Generated Code -------------------------------- */
/* items for trackUi options and filters */
-#define HAP_POP_MIXED "hapmapSnps.isMixed"
-#define HAP_POP_COUNT "hapmapSnps.popCount"
-#define HAP_TYPE "hapmapSnps.polyType"
-#define HAP_MIN_FREQ "hapmapSnps.minorAlleleFreqMinimum"
-#define HAP_MAX_FREQ "hapmapSnps.minorAlleleFreqMaximum"
-#define HAP_MIN_HET "hapmapSnps.hetMinimum"
-#define HAP_MAX_HET "hapmapSnps.hetMaximum"
+#define HAP_POP_MIXED "hapmapSnps_isMixed"
+#define HAP_POP_COUNT "hapmapSnps_popCount"
+#define HAP_TYPE "hapmapSnps_polyType"
+#define HAP_MIN_FREQ "hapmapSnps_minorAlleleFreqMinimum"
+#define HAP_MAX_FREQ "hapmapSnps_minorAlleleFreqMaximum"
+#define HAP_MIN_HET "hapmapSnps_hetMinimum"
+#define HAP_MAX_HET "hapmapSnps_hetMaximum"
+#define HAP_MONO_PREFIX "hapmapSnps_monomorphic"
+#define HAP_ORTHO_PREFIX "hapmapSnps_ortho"
+#define HAP_ORTHO_QUAL_PREFIX "hapmapSnps_orthoQual"
+
+/* OLD -- Keeping these until I can check in the changes to hgTracks/hapmapTrack.c. */
#define HAP_MONO_CEU "hapmapSnps.monomorphic.ceu"
#define HAP_MONO_CHB "hapmapSnps.monomorphic.chb"
#define HAP_MONO_JPT "hapmapSnps.monomorphic.jpt"
#define HAP_MONO_YRI "hapmapSnps.monomorphic.yri"
#define HAP_CHIMP "hapmapSnps.chimp"
#define HAP_CHIMP_QUAL "hapmapSnps.chimpQualScore"
#define HAP_MACAQUE "hapmapSnps.macaque"
#define HAP_MACAQUE_QUAL "hapmapSnps.macaqueQualScore"
-
#define HAP_POP_MIXED_DEFAULT "no filter"
#define HAP_POP_COUNT_DEFAULT "no filter"
#define HAP_TYPE_DEFAULT "no filter"
+#define HAP_MONO_DEFAULT "no filter"
+#define HAP_CHIMP_DEFAULT "no filter"
+#define HAP_CHIMP_QUAL_DEFAULT "0"
+#define HAP_MACAQUE_DEFAULT "no filter"
+#define HAP_MACAQUE_QUAL_DEFAULT "0"
+/* End of old stuff. */
+
+#define HAP_FILTER_DEFAULT "no filter"
#define HAP_MIN_FREQ_DEFAULT "0.0"
#define HAP_MAX_FREQ_DEFAULT "0.5"
#define HAP_MIN_HET_DEFAULT "0.0"
#define HAP_MAX_HET_DEFAULT "0.5"
-#define HAP_MONO_DEFAULT "no filter"
+#define HAP_ORTHO_QUAL_DEFAULT "0"
-#define HAP_CHIMP_DEFAULT "no filter"
-#define HAP_CHIMP_QUAL_DEFAULT "0"
-#define HAP_MACAQUE_DEFAULT "no filter"
-#define HAP_MACAQUE_QUAL_DEFAULT "0"
+#define HAP_PHASEII_POPCOUNT 4
+#define HAP_PHASEIII_POPCOUNT 11
+#define HAP_ORTHO_COUNT 2
+
+char *hapmapPhaseIIPops[HAP_PHASEII_POPCOUNT];
+char *hapmapPhaseIIIPops[HAP_PHASEIII_POPCOUNT];
+
+/* Someday this should come from a trackDb setting: */
+extern char *hapmapOrthoSpecies[HAP_ORTHO_COUNT+1];
#endif /* HAPMAPSNPS_H */