0c1d13ef4e3214c4029e098ed5ef708d15e6096f max Mon Nov 21 16:34:53 2016 -0800 CIRM: As per Jim: adding the trackDb tag 'bigDataIndex'. It allows to specify the URL of the .tbi or .bai file, in case you cannot put it alongside the .bam or .vcf.gz file. diff --git src/inc/linefile.h src/inc/linefile.h index f837014..1481c98 100644 --- src/inc/linefile.h +++ src/inc/linefile.h @@ -273,29 +273,36 @@ /* suppress duplicate lines in metadata */ void lineFileExpandBuf(struct lineFile *lf, int newSize); /* Expand line file buffer. */ void lineFileRemoveInitialCustomTrackLines(struct lineFile *lf); /* remove initial browser and track lines */ /*----- Optionally-compiled wrapper on tabix (compression + indexing): -----*/ #define COMPILE_WITH_TABIX "%s: Sorry, this functionality is available only when\n" \ "you have installed the tabix library from\n" \ "http://samtools.sourceforge.net/ and rebuilt kent/src with USE_TABIX=1\n" \ "(see http://genomewiki.ucsc.edu/index.php/Build_Environment_Variables)." +struct lineFile *lineFileTabixAndIndexMayOpen(char *fileOrUrl, char *tbiFileOrUrl, bool zTerm); +/* Wrap a line file around a data file that has been compressed and indexed + * by the tabix command line program. tbiFileOrUrl can be NULL, it defaults to <fileOrUrl>.tbi. + * It must be readable in addition to fileOrUrl. If there's a problem, warn & return NULL. + * This works only if kent/src has been compiled with USE_TABIX=1 and linked + * with the tabix C library. */ + struct lineFile *lineFileTabixMayOpen(char *fileOrUrl, bool zTerm); /* Wrap a line file around a data file that has been compressed and indexed * by the tabix command line program. The index file <fileName>.tbi must be * readable in addition to fileName. If there's a problem, warn & return NULL. * This works only if kent/src has been compiled with USE_TABIX=1 and linked * with the tabix C library. */ boolean lineFileSetTabixRegion(struct lineFile *lf, char *seqName, int start, int end); /* Assuming lf was created by lineFileTabixMayOpen, tell tabix to seek to the specified region * and return TRUE (or if there are no items in region, return FALSE). */ #endif /* LINEFILE_H */