e1988a798585c610e2399538a900fd57cfa83d63
galt
  Tue Apr 22 11:19:22 2025 -0700
Fixes VCF does not work on extended case-color options in Get DNA for vcf, vcfTabix, and vcfPhasedTrio. fixes #16386

diff --git src/hg/hgc/hgc.h src/hg/hgc/hgc.h
index 9f44c816c7f..1820dcb7e18 100644
--- src/hg/hgc/hgc.h
+++ src/hg/hgc/hgc.h
@@ -35,30 +35,32 @@
 #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 "featureBits.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.
@@ -454,33 +456,39 @@
  *    * */
 
 void printDbSnpRsUrl(char *rsId, char *labelFormat, ...)
 /* Print a link to dbSNP's report page for an rs[0-9]+ ID. */
 #ifdef __GNUC__
 __attribute__((format(printf, 2, 3)))
 #endif
     ;
 
 void doBamDetails(struct trackDb *tdb, char *item);
 /* Show details of an alignment from a BAM file. */
 
 void doVcfTabixDetails(struct trackDb *tdb, char *item);
 /* Show details of an alignment from a VCF file compressed and indexed by tabix. */
 
+void doVcfTabixDetailsExt(struct trackDb *tdb, char *item, struct featureBits **pFbList, int start, int end);
+/* Show details of an alignment from a VCF file compressed and indexed by tabix. */
+
 void doVcfDetails(struct trackDb *tdb, char *item);
 /* Show details of an alignment from an uncompressed VCF file. */
 
+void doVcfDetailsExt(struct trackDb *tdb, char *item, struct featureBits **pFbList, int start, int end);
+/* Show details of an alignment from an uncompressed VCF file. */
+
 void doBarChartDetails(struct trackDb *tdb, char *item);
 /* Details of barChart item */
 
 void doMakeItemsDetails(struct customTrack *ct, char *itemIdString);
 /* Show details of a makeItems item. */
 
 void doBedDetail(struct trackDb *tdb, struct customTrack *ct, char *itemName);
 /* generate the detail page for a custom track of bedDetail type */
 
 void doPgSnp(struct trackDb *tdb, char *itemName, struct customTrack *ct);
 /* print detail page for personal genome track (pgSnp) */
 
 void doGvf(struct trackDb *tdb, char *item);
 /* Show details for variants represented as GVF, stored in a bed8Attrs table */