7e2ed6f982c1e6b1fca6b075b1143839a38bee54 kent Fri Feb 15 13:16:22 2013 -0800 Exposing bwgCreate() function at Diane Trout at Caltech's request. diff --git src/inc/bigWig.h src/inc/bigWig.h index d6fcb60..f94f6e9 100644 --- src/inc/bigWig.h +++ src/inc/bigWig.h @@ -26,30 +26,35 @@ #ifndef BITS_H #include "bits.h" #endif void bigWigFileCreate( char *inName, /* Input file in ascii wiggle format. */ char *chromSizes, /* Two column tab-separated file: <chromosome> <size>. */ int blockSize, /* Number of items to bundle in r-tree. 1024 is good. */ int itemsPerSlot, /* Number of items in lowest level of tree. 512 is good. */ boolean clipDontDie, /* If TRUE then clip items off end of chrom rather than dying. */ boolean compress, /* If TRUE then compress data. */ char *outName); /* Convert ascii format wig file (in fixedStep, variableStep or bedGraph format) * to binary big wig format. */ +void bwgCreate(struct bwgSection *sectionList, struct hash *chromSizeHash, + int blockSize, int itemsPerSlot, boolean doCompress, char *fileName); +/* Create a bigWig file out of a sorted sectionList. A lower level routine + * than the one above. */ + struct bbiFile *bigWigFileOpen(char *fileName); /* Open up big wig file. Free this up with bbiFileClose */ #define bigWigFileClose(a) bbiFileClose(a) struct bbiInterval *bigWigIntervalQuery(struct bbiFile *bwf, char *chrom, bits32 start, bits32 end, struct lm *lm); /* Get data for interval. Return list allocated out of lm. */ int bigWigIntervalDump(struct bbiFile *bwf, char *chrom, bits32 start, bits32 end, int maxCount, FILE *out); /* Print out info on bigWig parts that intersect chrom:start-end. Set maxCount to 0 if you * don't care how many are printed. Returns number printed. */ boolean bigWigSummaryArray(struct bbiFile *bwf, char *chrom, bits32 start, bits32 end,