90aa101ee4f9e47a77b2eac496eca213a787d513
jcasper
  Mon Jul 22 01:53:32 2019 -0700
Adding table browser support for hic tracks, refs #22316

diff --git src/hg/hgTables/hgTables.h src/hg/hgTables/hgTables.h
index e6e7af4..accaff0 100644
--- src/hg/hgTables/hgTables.h
+++ src/hg/hgTables/hgTables.h
@@ -849,30 +849,56 @@
 
 void showSchemaBam(char *table, struct trackDb *tdb);
 /* Show schema on bam. */
 
 void bamTabOut(char *db, char *table, struct sqlConnection *conn, char *fields, FILE *f);
 /* Print out selected fields from BAM.  If fields is NULL, then print out all fields. */
 
 struct bed *bamGetFilteredBedsOnRegions(struct sqlConnection *conn,
 	char *db, char *table, struct region *regionList, struct lm *lm,
 	int *retFieldCount);
 /* Get list of beds from BAM, in all regions, that pass filtering. */
 
 struct slName *randomBamIds(char *table, struct sqlConnection *conn, int count);
 /* Return some semi-random qName based IDs from a BAM file. */
 
+/* Hi-C stuff from hic.c */
+
+struct hTableInfo *hicToHti(char *table);
+/* Get standard fields of hic into hti structure. */
+
+boolean isHicTable(char *table);
+/* Return TRUE if table corresponds to a hic file. */
+
+struct slName *hicGetFields();
+/* Get fields of hic as simple name list.  We represent hic with an interact structure, so
+ * this is really just an interact as object. */
+
+struct sqlFieldType *hicListFieldsAndTypes();
+/* Get fields of hic as list of sqlFieldType (again, this is really just the list of interact fields. */
+
+void showSchemaHic(char *table, struct trackDb *tdb);
+/* Show schema on hic. */
+
+void hicTabOut(char *db, char *table, struct sqlConnection *conn, char *fields, FILE *f);
+/* Print out selected fields from hic.  If fields is NULL, then print out all fields. */
+
+struct bed *hicGetFilteredBedsOnRegions(struct sqlConnection *conn,
+        char *db, char *table, struct region *regionList, struct lm *lm,
+        int *retFieldCount);
+/* Get list of beds from HIC, in all regions, that pass filtering. */
+
 /* VCF (Variant Call Format) stuff from vcf.c */
 
 extern char *vcfDataLineAutoSqlString;
 
 boolean isVcfTable(char *table, boolean *retIsTabix);
 /* Return TRUE if table corresponds to a VCF file. 
  * If retIsTabix is non-NULL, set *retIsTabix to TRUE if this is vcfTabix (not just vcf). */
 
 struct slName *vcfGetFields();
 /* Get fields of VCF as simple name list. */
 
 struct sqlFieldType *vcfListFieldsAndTypes();
 /* Get fields of VCF as list of sqlFieldType. */
 
 struct hTableInfo *vcfToHti(char *table, boolean isTabix);