X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fmath%2Fsort.h;h=99395eb89eedfde6f134b10d7dd76380ee56a656;hb=refs%2Fheads%2Fpivot-table;hp=ea2c16b2e14a8a8ed1c2fbe0f838bb92bdcd4870;hpb=f6b8e421cd29ae0aef4018bbe2e1a06d0bef57df;p=pspp diff --git a/src/math/sort.h b/src/math/sort.h index ea2c16b2e1..99395eb89e 100644 --- a/src/math/sort.h +++ b/src/math/sort.h @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 1997-9, 2000, 2006 Free Software Foundation, Inc. + Copyright (C) 1997-9, 2000, 2006, 2009, 2010 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,15 +17,32 @@ #ifndef MATH_SORT_H #define MATH_SORT_H 1 -#include -#include - -struct case_ordering; +struct subcase; +struct caseproto; +struct variable; extern int min_buffers ; extern int max_buffers ; -struct casewriter *sort_create_writer (struct case_ordering *, size_t value_cnt); -struct casereader *sort_execute (struct casereader *, struct case_ordering *); +struct casewriter *sort_create_writer (const struct subcase *, + const struct caseproto *); +struct casereader *sort_execute (struct casereader *, const struct subcase *); +struct casereader *sort_execute_1var (struct casereader *, + const struct variable *); + +typedef struct ccase *sort_distinct_combine_func (struct ccase *first, + struct ccase *second, + void *aux); +typedef void sort_distinct_destroy_func (void *aux); +struct casewriter *sort_distinct_create_writer (const struct subcase *, + const struct caseproto *, + sort_distinct_combine_func *, + sort_distinct_destroy_func *, + void *aux); +struct casereader *sort_distinct_execute (struct casereader *, + const struct subcase *, + sort_distinct_combine_func *, + sort_distinct_destroy_func *, + void *aux); #endif /* math/sort.h */