834194a10ad846f3fd0bb2bc1eea5b0b5c029cd7 angie Wed Nov 18 23:38:39 2015 -0800 Interface change: removing setAutoSqlObject method from streamer and exposing annoGratorSetAutoSqlObject because asObj should never be externally imposed, but a streamer/grator may have a need to bootstrap itself without an asObj and then install one. refs #15544 diff --git src/inc/annoGrator.h src/inc/annoGrator.h index a86b667..4ab73af 100644 --- src/inc/annoGrator.h +++ src/inc/annoGrator.h @@ -53,21 +53,24 @@ struct annoRow *annoGratorIntegrate(struct annoGrator *self, struct annoStreamRows *primaryData, boolean *retRJFilterFailed, struct lm *callerLm); /* Given a single row from the primary source, get all overlapping rows from internal * source, and produce joined output rows. Use callerLm to allocate the output rows. * If retRJFilterFailed is non-NULL: * - any overlapping row has a rightJoin filter failure (see annoFilter.h), or * - overlap rule is agoMustOverlap and no rows overlap, or * - overlap rule is agoMustNotOverlap and any overlapping row is found, * then set retRJFilterFailed and stop. */ void annoGratorInit(struct annoGrator *self, struct annoStreamer *mySource); /* Initialize an integrator of columns from mySource with (positions of) * rows passed to integrate(). * mySource becomes property of the annoGrator. */ +void annoGratorSetAutoSqlObject(struct annoStreamer *sSelf, struct asObject *asObj); +/* Use new asObj and update internal state derived from asObj. */ + struct annoGrator *annoGratorNew(struct annoStreamer *mySource); /* Make a new integrator of columns from mySource with (positions of) rows passed to integrate(). * mySource becomes property of the new annoGrator. */ void annoGratorClose(struct annoStreamer **pSelf); /* Free self (including mySource). */