06d7be056190c14b85e71bc12523f18ea6815b5e
markd
  Mon Dec 7 00:50:29 2020 -0800
BLAT mmap index support merge with master

diff --git src/hg/lib/customFactory.c src/hg/lib/customFactory.c
index c89baae..ad57e46 100644
--- src/hg/lib/customFactory.c
+++ src/hg/lib/customFactory.c
@@ -2726,30 +2726,38 @@
 return track;
 }
 
 static struct customFactory bigWigFactory =
 /* Factory for wiggle tracks */
     {
     NULL,
     "bigWig",
     bigWigRecognizer,
     bigWigLoader,
     };
 
 
 /*** Big Bed Factory - for big client-side BED tracks ***/
 
+static boolean bigLollyRecognizer(struct customFactory *fac,
+	struct customPp *cpp, char *type,
+    	struct customTrack *track)
+/* Return TRUE if looks like we're handling a bigLolly track */
+{
+return (sameType(type, "bigLolly"));
+}
+
 static boolean bigMafRecognizer(struct customFactory *fac,
 	struct customPp *cpp, char *type,
     	struct customTrack *track)
 /* Return TRUE if looks like we're handling a bigMaf track */
 {
 return (sameType(type, "bigMaf"));
 }
 
 static boolean bigChainRecognizer(struct customFactory *fac,
 	struct customPp *cpp, char *type,
     	struct customTrack *track)
 /* Return TRUE if looks like we're handling a bigChain track */
 {
 return (sameType(type, "bigChain"));
 }
@@ -2941,30 +2949,39 @@
     NULL,
     "bedTabix",
     bedTabixRecognizer,
     bedTabixLoader,
     };
 
 static struct customFactory bigMafFactory =
 /* Factory for bigMaf tracks */
     {
     NULL,
     "bigMaf",
     bigMafRecognizer,
     bigBedLoader,
     };
 
+static struct customFactory bigLollyFactory =
+/* Factory for bigLolly tracks */
+    {
+    NULL,
+    "bigLolly",
+    bigLollyRecognizer,
+    bigBedLoader,
+    };
+
 static struct customFactory bigPslFactory =
 /* Factory for bigPsl tracks */
     {
     NULL,
     "bigPsl",
     bigPslRecognizer,
     bigBedLoader,
     };
 
 static struct customFactory bigNarrowPeakFactory =
 /* Factory for bigNarrowPeak tracks */
     {
     NULL,
     "bigNarrowPeak",
     bigNarrowPeakRecognizer,
@@ -3524,30 +3541,31 @@
     slAddTail(&factoryList, &bedGraphFactory);
     slAddTail(&factoryList, &microarrayFactory);
     slAddTail(&factoryList, &coloredExonFactory);
     slAddTail(&factoryList, &encodePeakFactory);
     slAddTail(&factoryList, &bedDetailFactory);
     slAddTail(&factoryList, &adjacencyFactory);
     slAddTail(&factoryList, &bamFactory);
     slAddTail(&factoryList, &vcfTabixFactory);
     slAddTail(&factoryList, &makeItemsFactory);
     slAddTail(&factoryList, &bigDataOopsFactory);
     slAddTail(&factoryList, &barChartFactory);
     slAddTail(&factoryList, &bigBarChartFactory);
     slAddTail(&factoryList, &interactFactory);
     slAddTail(&factoryList, &bigInteractFactory);
     slAddTail(&factoryList, &hicFactory);
+    slAddTail(&factoryList, &bigLollyFactory);
     }
 }
 
 struct customFactory *customFactoryFind(char *genomeDb, struct customPp *cpp,
 	char *type, struct customTrack *track)
 /* Figure out factory that can handle this track.  The track is
  * loaded from the track line if any, and type is the type element
  * if any from that track. */
 {
 struct customFactory *fac;
 customFactoryInit();
 for (fac = factoryList; fac != NULL; fac = fac->next)
     if (fac->recognizer(fac, cpp, type, track))
 	break;
 return fac;