struct expData *expDataLoadTable(struct sqlConnection *conn, char *table) /* Load all the rows of an SQL table (already connected to the database) */ /* into a list and return it. This should work on BED 15 tables as well */ /* as native expData tables. */ { return expDataLoadTableLimit(conn, table, 0); }
void makeNewDataTable(char *database, char *oldTable, struct maMedSpec *medList, char *newTable) /* Create new table in database based on medians of data * in old table as defined by medList. */ { struct sqlConnection *conn = sqlConnect(database); FILE *f = hgCreateTabFile(tabDir, newTable); struct expData *expList, *medianExpList, *exp; expList = expDataLoadTableLimit(conn, oldTable, limit); medianExpList = maExpDataMedianFromSpec(expList, medList, minExps); for (exp = medianExpList; exp != NULL; exp = exp->next) expDataTabOut(exp, f); if (doLoad) { expDataCreateTable(conn, newTable); hgLoadTabFile(conn, tabDir, newTable, &f); hgRemoveTabFile(tabDir, newTable); } expDataFreeList(&expList); expDataFreeList(&medianExpList); sqlDisconnect(&conn); }