7055494b015f7d0f4ef355d7c6fb31a67cfb38bf kate Sun Oct 4 15:09:47 2015 -0700 Move GTEx track details into separate file. refs #13504 diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c index a8d5330..b2207bb 100644 --- src/hg/hgc/hgc.c +++ src/hg/hgc/hgc.c @@ -39,33 +39,30 @@ #include "agpFrag.h" #include "agpGap.h" #include "ctgPos.h" #include "contigAcc.h" #include "ctgPos2.h" #include "clonePos.h" #include "bactigPos.h" #include "rmskOut.h" #include "xenalign.h" #include "isochores.h" #include "simpleRepeat.h" #include "cpgIsland.h" #include "cpgIslandExt.h" #include "genePred.h" #include "genePredReader.h" -#include "gtexGeneBed.h" -#include "gtexTissue.h" -#include "rainbow.h" #include "pepPred.h" #include "peptideAtlasPeptide.h" #include "wabAli.h" #include "genomicDups.h" #include "est3.h" #include "rnaGene.h" #include "tRNAs.h" #include "gbRNAs.h" #include "encode/encodeRna.h" #include "hgMaf.h" #include "maf.h" #include "stsMarker.h" #include "stsMap.h" #include "rhMapZfishInfo.h" #include "recombRate.h" @@ -24534,104 +24531,30 @@ { char *table = cartString(cart, "table"); struct trackDb *tdb = hashFindVal(trackHash, table); if (tdb == NULL) errAbort("no trackDb entry for %s", table); return tdb; } void doQPCRPrimers(struct trackDb *tdb, char *itemName) /* Put up page for QPCRPrimers. */ { genericHeader(tdb, itemName); doBedDetail(tdb, NULL, itemName); } /* end of doQPCRPrimers */ -void doGtexGeneExpr(struct trackDb *tdb, char *item) -/* Details of GTEX gene expression item */ -{ -// Load item from table */ - -// TODO: Get full details from Data table -struct dyString *dy = dyStringNew(0); -//char sampleTable[128]; -//safef(sampleTable, sizeof(able), "%sSampleData", tdb->table); - -struct sqlConnection *conn = hAllocConn(database); -char **row; -struct gtexGeneBed *gtexGene = NULL; -int expCount = 0; -if (sqlTableExists(conn, tdb->table)) - { - char query[512]; - sqlSafef(query, sizeof(query), "select * from %s where name = '%s'", tdb->table, item); - struct sqlResult *sr = sqlGetResult(conn, query); - row = sqlNextRow(sr); - if (row != NULL) - { - gtexGene = gtexGeneBedLoad(row); - expCount = gtexGene->expCount; - } - sqlFreeResult(&sr); - } -hFreeConn(&conn); - -genericHeader(tdb, item); - -if (gtexGene != NULL) - { - printf("<b>Gene name:</b> %s<br>\n", gtexGene->name); - printf("<b>Ensembl gene:</b> %s<br>\n", gtexGene->geneId); - printf("<b>Ensembl transcript:</b> %s<br>\n", gtexGene->transcriptId); - } -printTrackHtml(tdb); - -// Print out tissue table with color assignments -conn = hAllocConn("hgFixed"); -char *tissueTable = "gtexTissue"; -if (sqlTableExists(conn, tissueTable)) - { - dyStringPrintf(dy, "<table>"); - dyStringPrintf(dy, "<tr><td><b>Color<b></td><td><b>Tissue<b></td></tr>\n"); - int i; - double invExpCount = 1.0/expCount; - char query[512]; - sqlSafef(query, sizeof(query), "select * from %s", tissueTable); - struct sqlResult *sr = sqlGetResult(conn, query); - for (i=0; i<expCount; i++) - { - row = sqlNextRow(sr); - if (row == NULL) - break; - struct gtexTissue *tissue = gtexTissueLoad(row); - double colPos = invExpCount * i; - struct rgbColor color = saturatedRainbowAtPos(colPos); - dyStringPrintf(dy, "<tr><td bgcolor='#%02X%02X%02X'></td><td>%s</td></tr>\n", - color.r, color.g, color.b, tissue->description); - } - sqlFreeResult(&sr); - } -hFreeConn(&conn); -dyStringPrintf(dy, "</table>"); -puts(dy->string); - -//cartWebStart(cart, database, "List of items assayed in %s", clusterTdb->shortLabel); - -//genericClickHandlerPlus(tdb, item, item, dy->string); -dyStringFree(&dy); -} - void doSnakeClick(struct trackDb *tdb, char *itemName) /* Put up page for snakes. */ { genericHeader(tdb, itemName); char *otherSpecies = trackHubSkipHubName(tdb->table) + strlen("snake"); char *hubName = cloneString(database); char otherDb[4096]; char *qName = cartOptionalString(cart, "qName"); int qs = atoi(cartOptionalString(cart, "qs")); int qe = atoi(cartOptionalString(cart, "qe")); int qWidth = atoi(cartOptionalString(cart, "qWidth")); if(trackHubDatabase(database)) { char *ptr = strchr(hubName + 4, '_');