src/hg/hgTables/pal.c 1.17
1.17 2010/05/11 01:43:25 kent
Refactoring to split the trackDb.tableName field into separate track and table fields. Similarly track.mapName field goes to the same track and table fields.
Index: src/hg/hgTables/pal.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgTables/pal.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -b -B -U 1000000 -r1.16 -r1.17
--- src/hg/hgTables/pal.c 22 Feb 2010 16:45:38 -0000 1.16
+++ src/hg/hgTables/pal.c 11 May 2010 01:43:25 -0000 1.17
@@ -1,90 +1,90 @@
#include "common.h"
#include "trackDb.h"
#include "cart.h"
#include "hgTables.h"
#include "pal.h"
static char const rcsid[] = "$Id$";
boolean isPalCompatible(struct sqlConnection *conn,
struct trackDb *track, char *table)
/* Return TRUE if table is genePred and there is a maf. */
{
char setting[128], *p = setting;
if (track == NULL)
return FALSE;
if (isEmpty(track->type))
return FALSE;
safecpy(setting, sizeof setting, track->type);
char *type = nextWord(&p);
if (!sameString(type, "genePred"))
return FALSE;
-if (!sameString(track->tableName, table))
+if (!sameString(track->table, table))
return FALSE;
/* we also check for a maf table */
struct slName *list = hTrackTablesOfType(conn, "wigMaf%%");
if (list != NULL)
{
slFreeList(&list);
return TRUE;
}
return FALSE;
}
void doGenePredPal(struct sqlConnection *conn)
/* Output genePred protein alignment. */
{
if (doGalaxy() && !cgiOptionalString(hgtaDoGalaxyQuery))
{
sendParamsToGalaxy(hgtaDoPalOut, "submit");
return;
}
/* get rid of pesky cookies that would bring us back here */
cartRemove(cart, hgtaDoPal);
cartRemove(cart, hgtaDoPalOut);
if (anyIntersection() && intersectionIsBpWise())
errAbort("Can't do CDS FASTA output when bit-wise intersection is on. "
"Please go back and select another output type, or clear the intersection.");
struct lm *lm = lmInit(64*1024);
int fieldCount;
struct bed *bedList = cookedBedsOnRegions(conn, curTable, getRegions(),
lm, &fieldCount);
//lmCleanup(&lm);
textOpen();
int outCount = palOutPredsInBeds(conn, cart, bedList, curTable);
/* Do some error diagnostics for user. */
if (outCount == 0)
explainWhyNoResults(NULL);
}
void addOurButtons()
/* callback from options dialog to add navigation buttons */
{
printf("For information about output data format see the"
"<A HREF=\"../goldenPath/help/hgTablesHelp.html#FASTA\">User's Guide</A><BR>");
cgiMakeButton(hgtaDoPalOut, "get output");
hPrintf(" ");
cgiMakeButton(hgtaDoMainPage, "cancel");
hPrintf("<input type=\"hidden\" name=\"%s\" value=\"\">\n", hgtaDoPal);
}
void doOutPalOptions(struct sqlConnection *conn)
/* Output pal page. */
{
htmlOpen("Select multiple alignment and options for %s", curTrack->shortLabel);
palOptions(cart, conn, addOurButtons, hgtaDoPal);
htmlClose();
}