ff9313091f342ffe62a124427b5c9d6a516faaea hiram Thu Oct 15 15:03:07 2015 -0700 fixup gcc warnings for -Wunused-but-set-variable refs #16121 diff --git src/hg/hgc/lowelab.c src/hg/hgc/lowelab.c index f865e17..a367911 100644 --- src/hg/hgc/lowelab.c +++ src/hg/hgc/lowelab.c @@ -989,162 +989,151 @@ hFreeConn(&conn); } /*Code to display Sargasso Sea Information*/ void doSargassoSea(struct trackDb *tdb, char *trnaName) { struct bed *cb=NULL; struct sargassoSeaXra *cbs=NULL, *cbs2, *list=NULL; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; char query[512]; char *dupe, *words[16]; char **row; char tempstring[255]=""; -int flag, z, dashes, wordCount, rowOffset; -int start = cartInt(cart, "o"), num = 0, flag2=0; +int z, dashes, wordCount; +int start = cartInt(cart, "o"), num = 0; float sequenceLength, dashlength=60; genericHeader(tdb,trnaName); dupe = cloneString(tdb->type); wordCount = chopLine(dupe, words); if (wordCount > 1) num = atoi(words[1]); if (num < 3) num = 3; genericBedClick(conn, tdb, trnaName, start, num); -rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s'", tdb->table, trnaName); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) cb=bedLoadN(row+1, 6); sequenceLength=(cb->chromEnd - cb->chromStart); if(sequenceLength<0){ sequenceLength=sequenceLength*-1;} sequenceLength=sequenceLength/3; dashlength=sequenceLength/60; /*Query the database for the extrainfo file for sargassoSea*/ conn=hAllocConn(database);/*sqlConnect(dupe);*/ sqlSafef(tempstring, sizeof(tempstring),"select * from sargassoSeaXra where qname = '%s'", trnaName); sr = sqlGetResult(conn, tempstring); /*Load the required data from the database*/ while ((row = sqlNextRow(sr)) != NULL) { cbs=sargassoSeaXraLoad(row); slAddHead(&list, cbs); } slReverse(&list); -flag=0; -flag2=0; - /*Print out table with Blast information*/ printf(" </tbody>\n</table>\n<br><br>"); printf("<table cellpadding=\"2\" cellspacing=\"2\" border=\"1\" style=\"text-align: left; width: 100%%;\">"); printf(" <tbody>\n <tr>\n"); printf(" <td style=\"vertical-align: top;\"><b>Organism</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<b>Nucleotides \naligned begin</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<b>Nucelotides \naligned end</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\"><b>NCBI Link</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<b>Evalue</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<b>Percent Identity</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<b>Alignment Length</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<b>Gap openings</b>"); printf("</td>\n </tr>\n <tr>"); -flag=0; for(cbs2=list;cbs2!=NULL;cbs2=cbs2->next) { printf("\n \n <td style=\"vertical-align: top;\">"); printf("<a name=\"%i-desc\"></a>",cbs2->GI); printf("<a\nhref=\"#%i-align\">%s</a>",cbs2->GI,cbs2->species); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("%i",cbs2->thisseqstart); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("%i",cbs2->thisseqend); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<a\nhref=\"http://www.ncbi.nlm.nih.gov/entrez/viewer.fcgi?db=protein&val=%i\">NCBI Link</a>",cbs2->GI); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("%s",cbs2->evalue); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("%.2f",cbs2->PI); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("%i",cbs2->length); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("%i",cbs2->gap); printf("<br></td>\n </tr>\n"); - flag=0; } /* printf(" <br><br></tbody>\n</table> \n"); */ /*Print out the table for the alignments*/ printf("<table cellpadding=\"2\" cellspacing=\"2\" border=\"1\" style=\"width: 100%%;\">"); printf(" <tbody>\n <tr>\n"); printf(" <td style=\"vertical-align: top;\"><b>Organism</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\"><b>Alignment</b>"); printf("</td>\n </tr>\n <tr>"); printf(" <td style=\"vertical-align: top;\">%s where each plus(+) is approx. %.1f amino acids", trnaName, dashlength); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<code>\n"); for(z=0; z<60; z++) { printf("+"); } printf("</code>"); printf("</td>\n </tr>\n <tr>"); -flag=0; -flag2=0; for(cbs2=list;cbs2!=NULL;cbs2=cbs2->next) { printf("\n </td>\n <td style=\"vertical-align: top;\">"); dashes=cbs2->queryseqstart-cbs2->queryseqend; if(dashes<0) dashes=dashes*-1; printf("<a name=\"%i-align\"></a>",cbs2->GI); printf("<a\nhref=\"#%i-desc\">%s</a>, %s",cbs2->GI, cbs2->species,cbs2->qName); printf("\n </td>\n <td style=\"vertical-align: top;\">"); printf("<code>\n"); dashes=dashes/dashlength; if(cbs2->queryseqstart>cbs2->queryseqend) for(z=0; z<((cbs2->queryseqend)/dashlength); z++) { printf(" "); } else for(z=0; z<((cbs2->queryseqstart)/dashlength); z++) { printf(" "); } if(dashes<1) printf("+"); for(z=0; z<dashes; z++) printf("+"); printf("</code>"); printf("</td>\n </tr>\n"); - flag=0; - - } /*Free the data*/ hFreeConn(&conn); sargassoSeaXraFree(&cbs); printTrackHtml(tdb); } /*Function to print out full code name from code letter*/ void printCode(char code) { switch(code) @@ -1197,40 +1186,36 @@ case 'r': printf("Facultative Aerobe"); break; default: break; } } void doTrnaGenes(struct trackDb *tdb, char *trnaName) { struct tRNAs *trna; char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; -char *dupe, *words[16]; char **row; -int wordCount; int rowOffset; char* chrom = cartString(cart, "c"); genericHeader(tdb,trnaName); -dupe = cloneString(tdb->type); -wordCount = chopLine(dupe, words); rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where chrom = '%s' and name = '%s'", tdb->table, chrom, trnaName); sr = sqlGetResult(conn, query); printf("<TABLE>\n"); while ((row = sqlNextRow(sr)) != NULL) { printf("<TR>\n"); printf("<TD valign=top>\n"); trna = tRNAsLoad(row+rowOffset); printf("<B>tRNA name: </B> %s<BR>\n",trna->name); printf("<B>tRNA Isotype: </B> %s<BR>\n",trna->aa); printf("<B>tRNA anticodon: </B> %s<BR>\n",trna->ac); printf("<B>tRNAscan-SE score: </B> %.2f<BR>\n",trna->trnaScore); @@ -1265,38 +1250,34 @@ printf("</TR>"); } printf("</TABLE>"); sqlFreeResult(&sr); hFreeConn(&conn); printTrackHtml(tdb); tRNAsFree(&trna); } void doSnornaGenes(struct trackDb *tdb, char *snornaName) { struct snoRNAs *snorna; char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; -char *dupe, *words[16]; char **row; -int wordCount; int rowOffset; genericHeader(tdb,snornaName); -dupe = cloneString(tdb->type); -wordCount = chopLine(dupe, words); rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s'", tdb->table, snornaName); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { snorna = snoRNAsLoad(row+rowOffset); printf("<B>sRNA name: </B> %s<BR>\n",snorna->name); printf("<B>Snoscan score: </B> %.2f<BR>\n",snorna->snoScore); printf("<B>HMM snoRNA score: </B> %.2f<BR>\n",snorna->hmmScore); printf("<B>Predicted targets: </B> %s<BR>\n",snorna->targetList); printf("<B>Predicted guide interactions:</B><pre>%s</pre>\n",snorna->guideStr); printf("<B>Possible sRNA homolog(s): </B> %s<BR>\n",snorna->orthologs); @@ -1310,39 +1291,34 @@ if (snorna->next != NULL) printf("<hr>\n"); } sqlFreeResult(&sr); hFreeConn(&conn); printTrackHtml(tdb); snoRNAsFree(&snorna); } void doGbRnaGenes(struct trackDb *tdb, char *gbRnaName) { struct gbRNAs *gbRna; char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; -char *dupe, *words[16]; char **row; -int wordCount; int rowOffset; genericHeader(tdb,gbRnaName); -dupe = cloneString(tdb->type); -wordCount = chopLine(dupe, words); - rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s'", tdb->table, gbRnaName); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { gbRna = gbRNAsLoad(row+rowOffset); printf("<B>Genbank ncRNA name: </B> %s<BR>\n",gbRna->name); printf("<B>Product Description/Note: </B> %s<BR>\n",gbRna->product); printf ("<B>Intron(s): </B> %s<BR>\n",gbRna->intron); @@ -1408,42 +1384,41 @@ printTrackHtml(tdb); easyGeneFreeList(&egList); } void doCodeBlast(struct trackDb *tdb, char *trnaName) { struct pepPred *pp=NULL; struct codeBlast *cb=NULL; struct codeBlastScore *cbs=NULL, *cbs2, *list=NULL; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; char query[512]; char *dupe, *words[16]; char **row; char tempstring[255]=""; -int flag, z, dashes, wordCount, rowOffset, currentGI=0; -int start = cartInt(cart, "o"), num = 0, flag2=0; +int flag, z, dashes, wordCount, currentGI=0; +int start = cartInt(cart, "o"), num = 0; float sequenceLength, dashlength=60; genericHeader(tdb,trnaName); dupe = cloneString(tdb->type); wordCount = chopLine(dupe, words); if (wordCount > 1) num = atoi(words[1]); if (num < 3) num = 3; genericBedClick(conn, tdb, trnaName, start, num); -rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s'", tdb->table, trnaName); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { cb=codeBlastLoad(row); } sequenceLength=(cb->chromEnd - cb->chromStart); if(sequenceLength<0){ sequenceLength=sequenceLength*-1;} sequenceLength=sequenceLength/3; dashlength=sequenceLength/60; conn=hAllocConn(database);/*sqlConnect(dupe);*/ sqlSafef(query, sizeof query, "select * from gbProtCodePep where name = '%s'", trnaName); @@ -1669,31 +1644,30 @@ printf(" <tbody>\n <tr>\n"); printf(" <td style=\"vertical-align: top;\"><b>Organism</b>"); printf("<br>\n </td>\n <td style=\"vertical-align: top;\"><b>Alignment</b>"); printf("</td>\n </tr>\n <tr>"); printf(" <td style=\"vertical-align: top;\">%s where each plus(+) is approx. %f amino acids", trnaName, dashlength); printf("<br>\n </td>\n <td style=\"vertical-align: top;\">"); printf("<code>\n"); for(z=0; z<60; z++) { printf("+"); } printf("</code>"); printf("</td>\n </tr>\n <tr>"); flag=0; -flag2=0; for(cbs2=list;cbs2!=NULL;cbs2=cbs2->next) { if(sameString(trnaName, cbs2->qName)) { if(flag==0) { currentGI=cbs2->GI; printf("\n </td>\n <td style=\"vertical-align: top;\">"); flag=1; } if((cbs2->next!=NULL) && (currentGI== cbs2->GI) && (currentGI== cbs2->next->GI) ) { } else @@ -1883,41 +1857,34 @@ printTrackHtml(tdb);*/ /* clean up */ /*sqlFreeResult(&sr); hFreeConn(&conn); tigrOperonFree(&op); } */ void doTigrCmrGene(struct trackDb *tdb, char *tigrName) /* Handle the TIRG CMR gene track. */ { struct tigrCmrGene *tigr; char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; - char *dupe, *words[16]; char **row; - int wordCount; - int rowOffset; - /* int start = cartInt(cart, "o"), num = 0; */ genericHeader(tdb,tigrName); - dupe = cloneString(tdb->type); - wordCount = chopLine(dupe, words); - rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s'", tdb->table, tigrName); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { tigr = tigrCmrGeneLoad(row); if (tigr != NULL) { printf("<B>TIGR locus name: </B> %s<BR>\n",tigrName); printf("<B>TIGR gene description: </B> %s<BR>\n",tigr->tigrCommon); printf("<B>Alternate TIGR gene name: </B> "); if (strlen(tigr->tigrGene) >0) { printf("%s<BR>\n",tigr->tigrGene); } else { printf("None<BR>"); @@ -1948,38 +1915,34 @@ } } sqlFreeResult(&sr); hFreeConn(&conn); printTrackHtml(tdb); tigrCmrGeneFree(&tigr); } void doJgiGene(struct trackDb *tdb, char *jgiName) /* Handle the JGI gene track. */ { struct jgiGene *jgi; char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; - char *dupe, *words[16]; char **row; - int wordCount; int rowOffset; genericHeader(tdb,jgiName); - dupe = cloneString(tdb->type); - wordCount = chopLine(dupe, words); rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s'", tdb->table, jgiName); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { jgi = jgiGeneLoad(row+rowOffset); printf("<B>JGI locus name: </B> %s<BR>\n",jgiName); printf("<B>JGI gene symbol: </B> %s<BR>\n",jgi->jgiSymbol); printf("<B>JGI gene description: </B> %s<BR>\n",jgi->jgiDescription); printf("<B>JGI gene id:</B> " "<A HREF=\"http://img.jgi.doe.gov/cgi-bin/pub/main.cgi?section=GeneDetail&page=geneDetail&gene_oid=%s\" TARGET=_blank>", jgi->jgiGeneId); printf("%s</A><BR>\n", jgi->jgiGeneId); printf("<B>GC content: </B> %.0f %%<BR>\n",jgi->jgiGc); @@ -1995,41 +1958,37 @@ } sqlFreeResult(&sr); hFreeConn(&conn); printTrackHtml(tdb); jgiGeneFree(&jgi); } void doPfamHit(struct trackDb *tdb, char *hitName) /* Handle the Pfam hits track. */ { struct lowelabPfamHits *pfamHit; char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlConnection *spConn = NULL; struct sqlResult *sr; - char *dupe, *words[16]; char **row; - int wordCount; int rowOffset; char *description; int start = cartInt(cart, "o"); spConn = sqlConnect(UNIPROT_DB_NAME); genericHeader(tdb,hitName); - dupe = cloneString(tdb->type); - wordCount = chopLine(dupe, words); rowOffset = hOffsetPastBin(database, seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s' and chrom = '%s' and chromStart = %d", tdb->table, hitName,seqName,start); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { pfamHit = lowelabPfamHitsLoad(row+rowOffset); sqlSafef(query, sizeof(query), "select description from proteome.pfamDesc where pfamAC='%s'", pfamHit->pfamAC); if (!sqlTableExists(spConn,"proteome.pfamDesc")) { sqlSafef(query, sizeof(query), "select extDbRef.extAcc1 from extDbRef,extDb " @@ -3279,39 +3238,30 @@ /* Close table */ printf("</tbody>\n"); printf("</table>\n"); printf("</td></tr></tbody>\n"); printf("</table>\n"); bedFree(&primer); hFreeConn(&conn); printTrackHtml(tdb); } void doWiki(char *track, struct trackDb *tdb, char *itemName) { char strand[2]; - char wikiea[] = "wikiea"; - char wikibme[] = "microbewiki"; - char *wiki; - - if(sameWord(track, "wiki")) - wiki = wikiea; - else - wiki = wikibme; - printf("<HEAD>"); if(startsWith("Make", itemName)) { strand[0] = itemName[strlen(itemName)-1]; strand[1] = 0; printf("<META HTTP-EQUIV=\"REFRESH\" content=\"0; URL=http://lowelabwiki.cse.ucsc.edu/index.php/BED:%s:%s:%d-%d:%s\"</META>", database, seqName, winStart, winEnd, strand); } else { printf("<META HTTP-EQUIV=\"REFRESH\" content=\"0; URL=http://lowelabwiki.cse.ucsc.edu/index.php/BED:%s:%s:%s\"</META>", database, seqName, itemName); } printf("</HEAD>"); @@ -3406,57 +3356,53 @@ freeMem(rnaHyb); } sqlFreeResult(&sr); } hFreeConn(&conn); } void doarCOGs(struct trackDb *tdb, char *itemName) { char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; - char *dupe, *words[16]; char **row; - int wordCount; int rowOffset; struct arCOGs *infoload; int start = cartInt(cart, "o"); int end = cartInt(cart, "t"); sqlSafef(query, sizeof query, "select * from mgCommonDb.arcogdesc where name = '%s'", itemName); //sqlSafef(query, sizeof query, "select * from %s where query = '%s'", blastpHitsTable, queryName); struct sqlResult *srarcogdesc = sqlGetResult(conn, query); struct arcogdesc *description = NULL; while ((row = sqlNextRow(srarcogdesc)) != NULL) { struct arcogdesc *element; element = arcogdescLoad(row); slAddTail(&description, element); } sqlFreeResult(&srarcogdesc); genericHeader(tdb,itemName); - dupe = cloneString(tdb->type); - wordCount = chopLine(dupe, words); rowOffset = hOffsetPastBin(database,seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s' and chrom = '%s' and chromStart = %d and chromEnd = '%d';", tdb->table, itemName,seqName,start, end); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { infoload = arCOGsLoad(row+rowOffset); printf("<B>Name:</B> %s<BR>\n", infoload->name); printf("<B>Description:</B> %s<BR>\n", description->description); printf("<B>Code:</B> %s<BR>\n", description->code); printf("<B>Gene:</B> %s<BR>\n", infoload->gene); printf("<B>Position:</B> " "<A HREF=\"%s&db=%s&position=%s%%3A%d-%d\">", @@ -3582,42 +3528,38 @@ printf("<B>Genomic size: </B> %d nt<BR>\n", (infoload->chromEnd - infoload->chromStart)); if (infoload->next != NULL) printf("<hr>\n"); } sqlFreeResult(&sr); hFreeConn(&conn); cddInfoFree(&infoload); printTrackHtml(tdb); } void domegablastInfo(struct trackDb *tdb, char *itemName) { char query[512]; struct sqlConnection *conn = hAllocConn(database); struct sqlResult *sr; - char *dupe, *words[16]; char **row; - int wordCount; int rowOffset; struct megablastInfo *infoload; int start = cartInt(cart, "o"); int end = cartInt(cart, "t"); genericHeader(tdb,itemName); - dupe = cloneString(tdb->type); - wordCount = chopLine(dupe, words); rowOffset = hOffsetPastBin(database,seqName, tdb->table); sqlSafef(query, sizeof query, "select * from %s where name = '%s' and chrom = '%s' and chromStart = %d and chromEnd = '%d';", tdb->table, itemName,seqName,start, end); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { infoload = megablastInfoLoad(row+rowOffset); printf("<B>Name:</B> %s<BR>\n", infoload->name); printf("<B>Accession:</B> %s<A HREF=\"http://www.ncbi.nlm.nih.gov/nuccore/%s\" TARGET=_blank>", infoload->name, infoload->name); printf(" Link to NCBI Site</A> <BR>\n"); printf("<B>Description:</B> %s<BR>\n", infoload->fullname); printf("<B>E-value:</B> %0.0e", infoload->evalue); #ifdef LISTUI