src/hg/hgTracks/bamTrack.c 1.26

1.26 2010/02/24 01:10:25 angie
I have added some hooks into knetfile.c in our local copy of samtools, so that knetfile can serve as a wrapper on udc (or any other suitable code). If KNETFILE_HOOKS=1 (in addition to USE_BAM=1) this will bring the benefits of udc to bam tracks.
Index: src/hg/hgTracks/bamTrack.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgTracks/bamTrack.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -b -B -U 4 -r1.25 -r1.26
--- src/hg/hgTracks/bamTrack.c	13 Feb 2010 00:18:39 -0000	1.25
+++ src/hg/hgTracks/bamTrack.c	24 Feb 2010 01:10:25 -0000	1.26
@@ -12,8 +12,12 @@
 #include "hdb.h"
 #include "hgTracks.h"
 #include "cds.h"
 #include "bamFile.h"
+#if (defined USE_BAM && defined KNETFILE_HOOKS)
+#include "knetUdc.h"
+#include "udc.h"
+#endif//def USE_BAM && KNETFILE_HOOKS
 
 static char const rcsid[] = "$Id$";
 
 struct bamTrackData
@@ -525,8 +529,14 @@
 
 void bamMethods(struct track *track)
 /* Methods for BAM alignment files. */
 {
+#if (defined USE_BAM && defined KNETFILE_HOOKS)
+knetUdcInstall();
+if (udcCacheTimeout() < 300)
+    udcSetCacheTimeout(300);
+#endif//def USE_BAM && KNETFILE_HOOKS
+
 track->canPack = TRUE;
 boolean compositeLevel = isNameAtCompositeLevel(track->tdb, BAM_PAIR_ENDS_BY_NAME);
 boolean isPaired = cartUsualBooleanClosestToHome(cart, track->tdb, compositeLevel,
 			 BAM_PAIR_ENDS_BY_NAME,