be4311c07e14feb728abc6425ee606ffaa611a58 markd Fri Jan 22 06:46:58 2021 -0800 merge with master diff --git src/hg/inc/trackDb.h src/hg/inc/trackDb.h index 39d7e09..9acfd36 100644 --- src/hg/inc/trackDb.h +++ src/hg/inc/trackDb.h @@ -348,37 +348,39 @@ /* ----------- End of AutoSQL generated code --------------------- */ struct trackDb *trackDbNew(); /* Allocate a new trackDb with just very minimal stuff filled in. */ int trackDbCmp(const void *va, const void *vb); /* Sort track by priority. */ int trackDbCmpShortLabel(const void *va, const void *vb); /* Sort track by shortLabel. */ void trackDbOverridePriority(struct hash *tdHash, char *priorityRa); /* Override priority settings using a ra file. */ -struct trackDb *trackDbFromRa(char *raFile, char *releaseTag); +struct trackDb *trackDbFromRa(char *raFile, char *releaseTag, struct dyString *incFiles); /* Load track info from ra file into list. If releaseTag is non-NULL - * then only load tracks that mesh with release. */ + * then only load tracks that mesh with release. if incFiles is non-null, + * add included file names to it.*/ -struct trackDb *trackDbFromOpenRa(struct lineFile *lf, char *releaseTag); +struct trackDb *trackDbFromOpenRa(struct lineFile *lf, char *releaseTag, struct dyString *incFiles); /* Load track info from ra file already opened as lineFile into list. If releaseTag is - * non-NULL then only load tracks that mesh with release. */ + * non-NULL then only load tracks that mesh with release. If incFiles is not-NULL, put + * list of included files in there. */ void trackDbPolish(struct trackDb *bt); /* Fill in missing values with defaults. */ void trackDbFieldsFromSettings(struct trackDb *td); /* Update trackDb fields from settings hash */ char *trackDbLocalSetting(struct trackDb *tdb, char *name); /* Return setting from tdb, but *not* any of it's parents. */ struct hash *trackDbHashSettings(struct trackDb *tdb); /* Force trackDb to hash up it's settings. Usually this is just * done on demand. Returns settings hash. */ struct hash *trackDbSettingsFromString(struct trackDb *tdb, char *string); @@ -715,37 +717,42 @@ * or a tab-separated or tagStorm file with a foreign key specified by the "meta" tag. */ char *trackDbViewSetting(struct trackDb *tdb, char *name); /* Return view setting from tdb, but *not* any of it's parents. */ struct trackDb *lmCloneTdb(struct lm *lm, struct trackDb *tdb, struct trackDb *parent, struct hash *superHash); /* clone a single tdb structure. Will clone its children if it has any */ struct trackDb *lmCloneTdbList(struct lm *lm, struct trackDb *list, struct trackDb *parent, struct hash *superHash); /* clone a list of tdb structures. */ struct trackDb *lmCloneSuper(struct lm *lm, struct trackDb *tdb, struct hash *superHash); /* clone a super track tdb structure. */ -void trackDbHubCloneTdbListToSharedMem(char *trackDbUrl, struct trackDb *list, unsigned long size); -/* For this hub, Allocate shared memory and clone trackDb list into it. */ +void trackDbHubCloneTdbListToSharedMem(char *trackDbUrl, struct trackDb *list, unsigned long size, char *incFiles); +/* For this hub, Allocate shared memory and clone trackDb list into it. incFiles has a list of include files that may be null. */ void trackDbCloneTdbListToSharedMem(char *db, char *tdbPathString, struct trackDb *list, unsigned long size); /* For this native db, allocate shared memory and clone trackDb list into it. */ struct trackDb *trackDbCache(char *db, char *tdbPathString, time_t time); /* Check to see if this db and trackDb table has a cached trackDb. */ struct trackDb *trackDbHubCache(char *trackDbUrl, time_t time); /* Check to see if this hub has a cached trackDb. */ boolean trackDbCacheOn(); /* Check to see if we're caching trackDb contents. */ +boolean trackSettingIsFile(char *setting); +/* Returns TRUE if setting found in trackDb stanza is a file setting that + * would benefit from directory $D substitution among other things - looks for + * settings that ends in "Url" and a few others. */ + char *labelAsFiltered(char *label); /* add text to label to indicate filter is active */ char *labelAsFilteredNumber(char *label, unsigned number); /* add text to label to indicate filter is active */ #endif /* TRACKDB_H */