8b49d2145ae719c3b3577de7956f7b9131c385ba angie Wed Jan 7 09:43:45 2015 -0800 Libified code from hgVai/libifyMe.c to lib/hAnno.c in anticipationof sharing code with hgAi. Also added hAnnoGetAutoSqlForTdb for hgAi. diff --git src/lib/annoStreamBigWig.c src/lib/annoStreamBigWig.c index 4ed2862..3541df8 100644 --- src/lib/annoStreamBigWig.c +++ src/lib/annoStreamBigWig.c @@ -154,32 +154,38 @@ return annoRowFromContigBbiIntervals(sSelf->name, chrom, startIv, endIv, rightFail, callerLm); } static void asbwClose(struct annoStreamer **pVSelf) /* Close bbi handle and free self. */ { if (pVSelf == NULL) return; struct annoStreamBigWig *self = *(struct annoStreamBigWig **)pVSelf; bigWigFileClose(&(self->bbi)); self->intervalList = NULL; lmCleanup(&(self->intervalQueryLm)); annoStreamerFree(pVSelf); } +struct asObject *annoStreamBigWigAsObject() +/* Return an asObj that describes annoRow contents for wiggle (just float value). */ +{ +return asParseText(annoRowBigWigAsText); +} + struct annoStreamer *annoStreamBigWigNew(char *fileOrUrl, struct annoAssembly *aa) /* Create an annoStreamer (subclass) object from a file or URL. */ { struct bbiFile *bbi = bigWigFileOpen(fileOrUrl); -struct asObject *asObj = asParseText(annoRowBigWigAsText); +struct asObject *asObj = annoStreamBigWigAsObject(); struct annoStreamBigWig *self = NULL; AllocVar(self); struct annoStreamer *streamer = &(self->streamer); annoStreamerInit(streamer, aa, asObj, fileOrUrl); streamer->rowType = arWig; streamer->setRegion = asbwSetRegion; streamer->nextRow = asbwNextRow; streamer->close = asbwClose; self->chromList = bbiChromList(bbi); self->bbi = bbi; return (struct annoStreamer *)self; }