021aee9e624dac151ccab845b23458c99be10b48 tdreszer Tue Aug 10 16:30:51 2010 -0700 Added cartTdbTreeCleanupOverrides to cleanup subtrack settings when composite/view settings change diff --git src/hg/inc/cart.h src/hg/inc/cart.h index 1eccec1..9b01401 100644 --- src/hg/inc/cart.h +++ src/hg/inc/cart.h @@ -512,9 +512,24 @@ boolean cartValueHasChanged(struct cart *newCart,struct hash *oldVars,char *setting,boolean ignoreRemoved); /* Returns TRUE if new cart setting has changed from old cart setting */ -void cartRemoveFromTdbTree(struct cart *cart,struct trackDb *tdb,char *suffix,boolean skipParent); +struct slRef *cartNamesLike(struct cart *cart, char *wildCard); +/* Returns reference list of all variable names that match wildCard. */ + +struct slRef *cartNamesPrefixedBy(struct cart *cart, char *prefix); +/* Returns reference list of all variable names with given prefix. */ + +int cartNamesPruneChanged(struct cart *newCart,struct hash *oldVars, + struct slRef **cartNames,boolean ignoreRemoved,boolean unChanged); +/* Prunes a list of cartNames if the settings have changed between new and old cart. + Returns pruned count */ + +int cartRemoveFromTdbTree(struct cart *cart,struct trackDb *tdb,char *suffix,boolean skipParent); /* Removes a 'trackName.suffix' from all tdb descendents (but not parent). If suffix NULL then removes 'trackName' which holds visibility */ +boolean cartTdbTreeCleanupOverrides(struct trackDb *tdb,struct cart *newCart,struct hash *oldVars); +/* When composite/view settings changes, remove subtrack specific settings + Returns TRUE if any cart vars are removed */ + #endif /* CART_H */