src/hg/hgc/bamClick.c 1.11
1.11 2009/10/08 06:38:26 angie
Added support for bam as a custom track type.
Index: src/hg/hgc/bamClick.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgc/bamClick.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -b -B -U 4 -r1.10 -r1.11
--- src/hg/hgc/bamClick.c 24 Sep 2009 04:33:50 -0000 1.10
+++ src/hg/hgc/bamClick.c 8 Oct 2009 06:38:26 -0000 1.11
@@ -128,8 +128,10 @@
void doBamDetails(struct trackDb *tdb, char *item)
/* Show details of an alignment from a BAM file. */
{
+if (item == NULL)
+ errAbort("doBamDetails: NULL item name");
int start = cartInt(cart, "o");
// TODO: libify tdb settings table_pairEndsByName, stripPrefix and pairSearchRange
char varName[1024];
@@ -145,9 +147,17 @@
bamIgnoreStrand();
struct hash *pairHash = isPaired ? hashNew(0) : NULL;
struct bamTrackData btd = {start, item, pairHash};
-char *fileName = bamFileNameFromTable(database, tdb->tableName, seqNameForBam);
+char *fileName;
+if (isCustomTrack(tdb->tableName))
+ {
+ fileName = trackDbSetting(tdb, "bigDataUrl");
+ if (fileName == NULL)
+ errAbort("doBamDetails: can't find bigDataUrl for custom track %s", tdb->tableName);
+ }
+else
+ fileName = bamFileNameFromTable(database, tdb->tableName, seqNameForBam);
bamFetch(fileName, posForBam, oneBam, &btd);
if (isPaired && hashNumEntries(pairHash) > 0)
{
char *setting = trackDbSettingOrDefault(tdb, "pairSearchRange", "1000");