X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fcasereader.h;h=3df80cb08fb8d38acc302e0654a0217dd666287a;hb=c3ac5a8af9c449072c7e872ca70a78c1755ae309;hp=ffbd17323ffc32274c69ce8c41f7598170a08d16;hpb=085d4563d8d5adfb3a2552d6ab1959c3fcacaee0;p=pspp-builds.git diff --git a/src/data/casereader.h b/src/data/casereader.h index ffbd1732..3df80cb0 100644 --- a/src/data/casereader.h +++ b/src/data/casereader.h @@ -113,8 +113,33 @@ casereader_create_translator (struct casereader *, size_t output_value_cnt, bool (*destroy) (void *aux), void *aux); +/* A function which creates a numberic value from an existing case */ +typedef double new_value_func (const struct ccase *, casenumber, void *); + +struct casereader * +casereader_create_append_numeric (struct casereader *subreader, + new_value_func func, void *aux, + void (*destroy) (void *aux)); + struct casereader * casereader_create_arithmetic_sequence (struct casereader *, double first, double increment); +enum rank_error + { + RANK_ERR_NONE = 0, + RANK_ERR_NEGATIVE_WEIGHT = 0x01, + RANK_ERR_UNSORTED = 0x02 + }; + + +typedef void distinct_func (double v, casenumber n, double w, void *aux); + +struct casereader * +casereader_create_append_rank (struct casereader *, + const struct variable *v, const struct variable *w, + enum rank_error *err, + distinct_func *distinct_callback, void *aux); + + #endif /* data/casereader.h */