e92495a7ffb311c5b7b4dd8d9520bac66e25dfc0 angie Thu Jan 24 11:45:39 2013 -0800 Feature #6152 (Variant Annotation Integrator): remove an asObj tweak that was causing pgSnp load problem in annoGratorGpVar.Also get the trackDb for the selected subtrack, which is not the behavior of trackDbForTrack -- it returns composite tdb. Implement "mustOverlap" grator behavior. diff --git src/hg/lib/hdb.c src/hg/lib/hdb.c index fc6fe7d..096cd0d 100644 --- src/hg/lib/hdb.c +++ src/hg/lib/hdb.c @@ -3649,30 +3649,37 @@ /* Look "to the sky" in parents of root generation as well. */ if (level == 0) { for (tdb = tdbList; tdb != NULL; tdb = tdb->next) { struct trackDb *p = tdb->parent; if (p != NULL && sameString(track, p->track)) return p; } } return NULL; } +struct trackDb *findSubtrackByName(struct trackDb *ancestorTdb, char *track) +/* Given a tdb for a composite, return the subtrack tdb for track or NULL. */ +{ +// start at level 1 instead of 0, to avoid getting ancestor of track back again. +return rFindTrack(1, ancestorTdb, track); +} + #ifdef DEBUG static void dumpFlagStatus(struct trackDb *tdbList, char *tableName, char *label) /* Look for tdbList for track matching tableName. Print out info on it starting with label. */ { struct trackDb *tdb = rFindTrack(0, tdbList, tableName); if (tdb == NULL) printf("%s: nil<BR>\n", label); else printf("%s: treeNodeType %d, composite? %d, supertrack ? %d<BR>\n", label, tdb->treeNodeType, COMPOSITE_NODE(tdb->treeNodeType), SUPERTRACK_NODE(tdb->treeNodeType)); } #endif /* DEBUG */ static void addChildRefsToParents(struct trackDb *tdbList) /* Go through tdbList and set up the ->children field in parents with references * to their children. */