060ada2535fca719656219c1214a3e1c16490693 tdreszer Wed Nov 9 16:06:41 2011 -0800 Moved as code in hgTables down to lib and access it from hgc and hgTrackUi. This is to remove 'extraFields' support as per Jim's request in redmine 5883 and 5582 diff --git src/hg/inc/trackDb.h src/hg/inc/trackDb.h index 263624b..20a477a 100644 --- src/hg/inc/trackDb.h +++ src/hg/inc/trackDb.h @@ -242,31 +242,30 @@ { struct trackDb *parent = tdb->parent; for ( ; parent != NULL && !tdbIsContainer(parent); parent = parent->parent) ; return parent; } #define DOWNLOADS_ONLY_TYPE "downloadsOnly" INLINE boolean tdbIsDownloadsOnly(struct trackDb *tdb) // Is this a downloadsOnly tdb { return (tdb && sameWord(tdb->type,DOWNLOADS_ONLY_TYPE)); } - struct trackDb *trackDbLoad(char **row); /* Load a trackDb from row fetched with select * from trackDb * from database. Dispose of this with trackDbFree(). */ struct trackDb *trackDbLoadAll(char *fileName); /* Load all trackDb from whitespace-separated file. * Dispose of this with trackDbFreeList(). */ struct trackDb *trackDbLoadWhere(struct sqlConnection *conn, char *table, char *where); /* Load all trackDb from table that satisfy where clause. The * where clause may be NULL in which case whole table is loaded * Dispose of this with trackDbFreeList(). */ struct trackDb *trackDbLoadAllByChar(char *fileName, char chopper); @@ -545,17 +544,46 @@ void tdbExtrasMdbSet(struct trackDb *tdb,struct mdbObj *mdb); // Sets the mdb metadata structure for later retrieval. struct _membersForAll *tdbExtrasMembersForAll(struct trackDb *tdb); // Returns composite view/dimension members for all, else NULL. void tdbExtrasMembersForAllSet(struct trackDb *tdb, struct _membersForAll *membersForAll); // Sets the composite view/dimensions members for all for later retrieval. struct _membership *tdbExtrasMembership(struct trackDb *tdb); // Returns subtrack membership if already known, else NULL void tdbExtrasMembershipSet(struct trackDb *tdb,struct _membership *membership); // Sets the subtrack membership for later retrieval. +char *tdbBigFileName(struct sqlConnection *conn, struct trackDb *tdb); +// Return file name associated with bigWig. Do a freeMem on returned string when done. + +// More INLINES which depend on what the definition of "is" is +INLINE boolean tdbIsBigBed(struct trackDb *tdb) +// Local test to see if something is big bed. Handles hub tracks unlike hIsBigBed. +{ +return startsWithWord("bigBed", tdb->type); +} + +INLINE boolean tdbIsBigWig(struct trackDb *tdb) +// Local test to see if something is big bed. Handles hub tracks unlike hIsBigBed. +{ +return startsWithWord("bigWig", tdb->type); +} + +INLINE boolean tdbIsBam(struct trackDb *tdb) +// Return TRUE if tdb corresponds to a BAM file. +{ +return startsWithWord("bam", tdb->type); +} + +INLINE boolean tdbIsVcf(struct trackDb *tdb) +// Return TRUE if tdb corresponds to a VCF file. +{ +return startsWithWord("vcfTabix", tdb->type); +} + + #endif /* TRACKDB_H */