Independent Samples T-Test Dialog: Fix Crash
[pspp.git] / src / math / sort.h
blob2f1d3899a864aef42a9273cf3588c984df38c558
1 /* PSPP - a program for statistical analysis.
2 Copyright (C) 1997-9, 2000, 2006, 2009 Free Software Foundation, Inc.
4 This program is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 3 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program. If not, see <http://www.gnu.org/licenses/>. */
17 #ifndef MATH_SORT_H
18 #define MATH_SORT_H 1
20 /* Support for sorting cases.
22 Use sort_create_writer() to sort cases in the most general way:
24 - Create a casewriter with sort_create_writer(), specifying the sort
25 criteria.
26 - Write all of the cases to be sorted to the casewriter, e.g. with
27 casewriter_write().
28 - Obtain the sorted results with casewriter_make_reader().
30 sort_execute() and sort_execute_1var() are shortcuts for situations where the
31 cases are already available from a casereader.
33 All of these functions can efficiently sort data bigger than memory. */
35 struct subcase;
36 struct caseproto;
37 struct variable;
39 extern int min_buffers ;
40 extern int max_buffers ;
42 struct casewriter *sort_create_writer (const struct subcase *,
43 const struct caseproto *);
44 struct casereader *sort_execute (struct casereader *, const struct subcase *);
45 struct casereader *sort_execute_1var (struct casereader *,
46 const struct variable *);
48 #endif /* math/sort.h */