Mercurial > hg > octave-lyh
annotate liboctave/Array-i.cc @ 8700:314be237cd5b
sorting optimizations
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Mon, 09 Feb 2009 13:05:35 +0100 |
parents | 7cbe01c21986 |
children | e9cb742df9eb |
rev | line source |
---|---|
881 | 1 /* |
2 | |
7017 | 3 Copyright (C) 1994, 1995, 1996, 1997, 1998, 2001, 2003, 2004, 2005, |
4 2006, 2007 John W. Eaton | |
881 | 5 |
6 This file is part of Octave. | |
7 | |
8 Octave is free software; you can redistribute it and/or modify it | |
9 under the terms of the GNU General Public License as published by the | |
7016 | 10 Free Software Foundation; either version 3 of the License, or (at your |
11 option) any later version. | |
881 | 12 |
13 Octave is distributed in the hope that it will be useful, but WITHOUT | |
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
16 for more details. | |
17 | |
18 You should have received a copy of the GNU General Public License | |
7016 | 19 along with Octave; see the file COPYING. If not, see |
20 <http://www.gnu.org/licenses/>. | |
881 | 21 |
22 */ | |
23 | |
2006 | 24 #ifdef HAVE_CONFIG_H |
25 #include <config.h> | |
26 #endif | |
27 | |
4902 | 28 #include "oct-inttypes.h" |
29 | |
881 | 30 // Instantiate Arrays of integer values. |
31 | |
32 #include "Array.h" | |
33 #include "Array.cc" | |
8700 | 34 |
35 #define INLINE_ASCENDING_SORT | |
36 #define INLINE_DESCENDING_SORT | |
7433 | 37 #include "oct-sort.cc" |
38 | |
39 INSTANTIATE_ARRAY_SORT (int); | |
40 INSTANTIATE_ARRAY_SORT (long); | |
7442 | 41 #if defined (HAVE_LONG_LONG_INT) |
42 INSTANTIATE_ARRAY_SORT (long long); | |
43 #endif | |
881 | 44 |
6708 | 45 INSTANTIATE_ARRAY_AND_ASSIGN (int, OCTAVE_API); |
46 INSTANTIATE_ARRAY_AND_ASSIGN (long, OCTAVE_API); | |
7442 | 47 #if defined (HAVE_LONG_LONG_INT) |
48 INSTANTIATE_ARRAY_AND_ASSIGN (long long, OCTAVE_API); | |
49 #endif | |
1574 | 50 |
8290
7cbe01c21986
improve dense array indexing
Jaroslav Hajek <highegg@gmail.com>
parents:
7442
diff
changeset
|
51 INSTANTIATE_ARRAY_ASSIGN (int, short, OCTAVE_API) |
7cbe01c21986
improve dense array indexing
Jaroslav Hajek <highegg@gmail.com>
parents:
7442
diff
changeset
|
52 INSTANTIATE_ARRAY_ASSIGN (int, char, OCTAVE_API) |
3836 | 53 |
7433 | 54 INSTANTIATE_ARRAY_SORT (octave_int8); |
55 INSTANTIATE_ARRAY_SORT (octave_int16); | |
56 INSTANTIATE_ARRAY_SORT (octave_int32); | |
57 INSTANTIATE_ARRAY_SORT (octave_int64); | |
58 | |
6708 | 59 INSTANTIATE_ARRAY_AND_ASSIGN (octave_int8, OCTAVE_API); |
60 INSTANTIATE_ARRAY_AND_ASSIGN (octave_int16, OCTAVE_API); | |
61 INSTANTIATE_ARRAY_AND_ASSIGN (octave_int32, OCTAVE_API); | |
62 INSTANTIATE_ARRAY_AND_ASSIGN (octave_int64, OCTAVE_API); | |
4902 | 63 |
7433 | 64 INSTANTIATE_ARRAY_SORT (octave_uint8); |
65 INSTANTIATE_ARRAY_SORT (octave_uint16); | |
66 INSTANTIATE_ARRAY_SORT (octave_uint32); | |
67 INSTANTIATE_ARRAY_SORT (octave_uint64); | |
68 | |
6708 | 69 INSTANTIATE_ARRAY_AND_ASSIGN (octave_uint8, OCTAVE_API); |
70 INSTANTIATE_ARRAY_AND_ASSIGN (octave_uint16, OCTAVE_API); | |
71 INSTANTIATE_ARRAY_AND_ASSIGN (octave_uint32, OCTAVE_API); | |
72 INSTANTIATE_ARRAY_AND_ASSIGN (octave_uint64, OCTAVE_API); | |
4902 | 73 |
1989 | 74 #include "Array2.h" |
75 | |
6108 | 76 template class OCTAVE_API Array2<int>; |
1989 | 77 |
78 #include "DiagArray2.h" | |
79 #include "DiagArray2.cc" | |
80 | |
6108 | 81 template class OCTAVE_API DiagArray2<int>; |
1989 | 82 |
881 | 83 /* |
84 ;;; Local Variables: *** | |
85 ;;; mode: C++ *** | |
86 ;;; End: *** | |
87 */ |