adc04d374bb911984585a3ed2dbe5a150b114069
[alexxy/gromacs.git] / src / gromacs / gmxana / binsearch.h
1 /* -*- mode: c; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; c-file-style: "stroustrup"; -*-
2  * $Id: densorder.c,v 0.9
3  *
4  *                This source code is part of
5  *
6  *                 G   R   O   M   A   C   S
7  *
8  *          GROningen MAchine for Chemical Simulations
9  *
10  *                        VERSION 3.0
11  *
12  * Copyright (c) 1991-2001
13  * BIOSON Research Institute, Dept. of Biophysical Chemistry
14  * University of Groningen, The Netherlands
15  *
16  * This program is free software; you can redistribute it and/or
17  * modify it under the terms of the GNU General Public License
18  * as published by the Free Software Foundation; either version 2
19  * of the License, or (at your option) any later version.
20  *
21  * If you want to redistribute modifications, please consider that
22  * scientific software is very special. Version control is crucial -
23  * bugs must be traceable. We will be happy to consider code for
24  * inclusion in the official distribution, but derived work must not
25  * be called official GROMACS. Details are found in the README & COPYING
26  * files - if they are missing, get the official version at www.gromacs.org.
27  *
28  * To help us fund GROMACS development, we humbly ask that you cite
29  * the papers on the package - you can find them in the top README file.
30  *
31  * Do check out http://www.gromacs.org , or mail us at gromacs@gromacs.org .
32  *
33  * And Hey:
34  * Gyas ROwers Mature At Cryogenic Speed
35  */
36
37 #ifndef _binsearch_h
38 #define _binsearch_h
39
40 #include "types/simple.h"
41
42 #ifdef __cplusplus
43 extern "C"
44 {
45 #endif
46
47 extern void rangeArray(int *ar, int size);
48
49 extern void insertionSort(real *ar, int *perm, int start, int end, int direction);
50
51 extern int BinarySearch(real *ar, int start, int end, real key, int direction);
52
53 extern int start_binsearch(real *array, int *perm, int low, int high,
54                            real key, int direction);
55
56 extern int LinearSearch(double *array, int startindx, int stopindx,
57                         double key, int *count, int direction);
58
59 #ifdef __cplusplus
60 }
61 #endif
62
63 #endif