src/hg/hgTables/hgTables.h 1.131
1.131 2009/03/17 20:48:36 kent
Starting to add filtering. Collects input now, but doesn't actually run filter.
Index: src/hg/hgTables/hgTables.h
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgTables/hgTables.h,v
retrieving revision 1.130
retrieving revision 1.131
diff -b -B -U 4 -r1.130 -r1.131
--- src/hg/hgTables/hgTables.h 17 Mar 2009 17:24:51 -0000 1.130
+++ src/hg/hgTables/hgTables.h 17 Mar 2009 20:48:36 -0000 1.131
@@ -272,8 +272,29 @@
boolean isSqlNumType(char *type);
/* Return TRUE if it is a numerical SQL type. */
+struct sqlFieldType
+/* List field names and types */
+ {
+ struct sqlFieldType *next;
+ char *name; /* Name of field. */
+ char *type; /* Type of field (MySQL notion) */
+ };
+
+struct sqlFieldType *sqlFieldTypeNew(char *name, char *type);
+/* Create a new sqlFieldType */
+
+void sqlFieldTypeFree(struct sqlFieldType **pFt);
+/* Free resources used by sqlFieldType */
+
+void sqlFieldTypeFreeList(struct sqlFieldType **pList);
+/* Free a list of dynamically allocated sqlFieldType's */
+
+struct sqlFieldType *sqlListFieldsAndTypes(struct sqlConnection *conn, char *table);
+/* Get list of fields including their names and types. The type currently is just
+ * a MySQL type string. */
+
/* ------------- Functions related to joining and filtering ------------*/
void tabOutSelectedFields(
char *primaryDb, /* The primary database. */
char *primaryTable, /* The primary table. */
@@ -714,8 +735,11 @@
struct slName *bigBedGetFields(char *table, struct sqlConnection *conn);
/* Get fields of bigBed as simple name list. */
+struct sqlFieldType *bigBedListFieldsAndTypes(char *table, struct sqlConnection *conn);
+/* Get fields of bigBed as list of sqlFieldType. */
+
void bigBedTabOut(char *table, struct sqlConnection *conn, char *fields, FILE *f);
/* Print out selected fields from Big Bed. If fields is NULL, then print out all fields. */
void showSchemaBigBed(char *table);