05316c62e54dfd3cac589a1ae6001e84c357959b angie Mon Apr 23 08:24:28 2012 -0700 Feature #6152 (Variant Annotation Tool): enhancement to filter logic:filters can be for inclusion or exclusion when the condition is met, based on the new filter->isExclude. When a filter is set to rightJoin and it is for inclusion, annoGratorIntegrate propagates rightJoin failure if no rows overlap since the condition for inclusion has not been met. diff --git src/inc/annoStreamer.h src/inc/annoStreamer.h index 06d05ed..3a3d154 100644 --- src/inc/annoStreamer.h +++ src/inc/annoStreamer.h @@ -39,39 +39,39 @@ /* Get and set output fields */ struct annoRow *(*nextRow)(struct annoStreamer *self); /* Get next item's output fields from this source */ void (*close)(struct annoStreamer **pSelf); /* Close connection to source and free self. */ void (*setQuery)(struct annoStreamer *self, struct annoGratorQuery *query); /* For use by annoGratorQuery only: hook up query object after creation */ // Public members -- callers are on the honor system to access these read-only. struct annoGratorQuery *query; // The query object that owns this streamer. enum annoRowType rowType; int numCols; + struct annoFilter *filters; + struct annoColumn *columns; // Private members -- callers are on the honor system to access these using only methods above. boolean positionIsGenome; char *chrom; uint regionStart; uint regionEnd; struct asObject *asObj; - struct annoFilter *filters; - struct annoColumn *columns; }; // ---------------------- annoStreamer default methods ----------------------- struct asObject *annoStreamerGetAutoSqlObject(struct annoStreamer *self); /* Return parsed autoSql definition of this streamer's data type. */ void annoStreamerSetRegion(struct annoStreamer *self, char *chrom, uint rStart, uint rEnd); /* Set genomic region for query; if chrom is NULL, position is genome. * Many subclasses should make their own setRegion method that calls this and * configures their data connection to change to the new position. */ struct annoFilter *annoStreamerGetFilters(struct annoStreamer *self); /* Return supported filters with current settings. Callers can modify and free when done. */