0cbeed8fcb8eccd05e18cea41d4954f20d7698bd
angie
  Wed Jul 9 13:45:50 2014 -0700
Added trackDb settings for initializing VCF track controls.This will be useful for CTs/hub tracks to turn off haplotype clustering
or apply minimum QUAL score / minimum minor allele frequency filters.

diff --git src/hg/lib/cart.c src/hg/lib/cart.c
index b86221f..f6acbd2 100644
--- src/hg/lib/cart.c
+++ src/hg/lib/cart.c
@@ -2087,30 +2087,40 @@
 else
     return atoi(a);
 }
 
 
 double cartOrTdbDouble(struct cart *cart, struct trackDb *tdb, char *var, double defaultVal)
 /* Look first in cart, then in trackDb for var.  Return defaultVal if not found. */
 {
 char *a = cartOrTdbString(cart, tdb, var, NULL);
 if (a == NULL)
     return defaultVal;
 else
     return atof(a);
 }
 
+boolean cartOrTdbBoolean(struct cart *cart, struct trackDb *tdb, char *var, boolean defaultVal)
+/* Look first in cart, then in trackDb for var.  Return defaultVal if not found. */
+{
+boolean tdbVal = defaultVal;
+char *tdbSetting = trackDbSetting(tdb, var);
+if (tdbSetting != NULL)
+    tdbVal = trackDbSettingClosestToHomeOn(tdb, var);
+return cartUsualBooleanClosestToHome(cart, tdb, isNameAtParentLevel(tdb, var), var, tdbVal);
+}
+
 // These macros allow toggling warn messages to NOOPS when no longer debugging
 //#define DEBUG_WITH_WARN
 #ifdef DEBUG_WITH_WARN
                                 #define WARN warn
                                 #define ASSERT assert
 #else///ifndef DEBUG_WITH_WARN
                                 #define WARN(...)
                                 #define ASSERT(...)
 #endif///ndef DEBUG_WITH_WARN
 
 
 boolean cartValueHasChanged(struct cart *newCart,struct hash *oldVars,char *setting,
                             boolean ignoreRemoved,boolean ignoreCreated)
 /* Returns TRUE if new cart setting has changed from old cart setting */
 {