1b074613b1c6b7f84953c3f490631b91d844c9a9
galt
  Thu Sep 8 22:40:20 2022 -0700
Adapting Angie's existing variant effects to the new dbSnp that uses SPDI and provided via json formatted data. So users can see variant effects with version 153 or later. refs #29989

diff --git src/hg/hgc/hgc.h src/hg/hgc/hgc.h
index d82d389..1837262 100644
--- src/hg/hgc/hgc.h
+++ src/hg/hgc/hgc.h
@@ -35,30 +35,33 @@
 #include "wikiTrack.h"
 #endif
 
 #ifndef VARIOME_H
 #include "variome.h"
 #endif
 
 #ifndef BEDDETAIL_H
 #include "bedDetail.h"
 #endif
 
 #include "hgdpGeo.h"
 #include "dnaMotif.h"
 #include "togaClick.h"
 
+#include "snp125.h"
+
+
 extern struct cart *cart;	/* User's settings. */
 extern char *seqName;		/* Name of sequence we're working on. */
 extern int winStart, winEnd;    /* Bounds of sequence. */
 extern char *database;		/* Name of mySQL database. */
 extern char *organism;		/* Colloquial name of organism. */
 extern char *genome;		/* common name, e.g. Mouse, Human */
 extern char *scientificName;	/* Scientific name of organism. */
 extern struct hash *trackHash;	/* A hash of all tracks - trackDb valued */
 
 // A helper struct for allowing variable sized user defined tables. Each table
 // is encoded in one field of the bigBed with '|' as column separators and ';' as
 // field separators.
 struct embeddedTbl
 {
     struct embeddedTbl *next; // the next custom table
@@ -496,30 +499,38 @@
 void doLrgTranscriptPsl(struct trackDb *tdb, char *item);
 /* Locus Reference Genomic (LRG) transcript mapping and sequences. */
 
 void htcLrgCdna(char *item);
 /* Serve up LRG transcript cdna seq */
 
 void doPeptideAtlas(struct trackDb *tdb, char *item);
 /* Details for PeptideAtlas peptide mapping */
 
 void doGtexGeneExpr(struct trackDb *tdb, char *item);
 /* Details of GTEX gene expression item */
 
 void doGtexEqtlDetails(struct trackDb *tdb, char *item);
 /* Details of GTEx eQTL item */
 
+void printSnp125Function(struct trackDb *tdb, struct snp125 *snp);
+/* If the user has selected a gene track for functional annotation,
+ * report how this SNP relates to any nearby genes. */
+
+void printSnp153Function(struct trackDb *tdb, struct snp125 *snp);
+/* If the user has selected a gene track for functional annotation,
+ * report how this SNP relates to any nearby genes. */
+
 void doBigDbSnp(struct trackDb *tdb, char *rsId);
 /* Show details for bigDbSnp item. */
 
 void printAddWbr(char *text, int distance);
 /* a crazy hack for firefox/mozilla that is unable to break long words in tables
  * We need to add a <wbr> tag every x characters in the text to make text breakable.
  */
 
 void printIframe(struct trackDb *tdb, char *itemName);
 /* print an iframe with the URL specified in trackDb (iframeUrl), can have
  * the standard codes in it (like $$ for itemName, etc) */
 
 char *getIdInUrl(struct trackDb *tdb, char *itemName);
 /* If we have an idInUrlSql tag, look up itemName in that, else just
  * return itemName. */