1 ////////////////////////////////////////////////////////////////////////
2 //
3 // Copyright (C) 2016-2021 The Octave Project Developers
4 //
5 // See the file COPYRIGHT.md in the top-level directory of this
6 // distribution or <https://octave.org/copyright/>.
7 //
8 // This file is part of Octave.
9 //
10 // Octave is free software: you can redistribute it and/or modify it
11 // under the terms of the GNU General Public License as published by
12 // the Free Software Foundation, either version 3 of the License, or
13 // (at your option) any later version.
14 //
15 // Octave is distributed in the hope that it will be useful, but
16 // WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 // GNU General Public License for more details.
19 //
20 // You should have received a copy of the GNU General Public License
21 // along with Octave; see the file COPYING.  If not, see
22 // <https://www.gnu.org/licenses/>.
23 //
24 ////////////////////////////////////////////////////////////////////////
25 
26 #if ! defined (octave_lo_arpack_proto_h)
27 #define octave_lo_arpack_proto_h 1
28 
29 #include "octave-config.h"
30 
31 #include "f77-fcn.h"
32 
33 extern "C"
34 {
35 
36 #if defined (HAVE_ARPACK)
37 
38   // NAUPD
39 
40   F77_RET_T
41   F77_FUNC (dnaupd, DNAUPD) (F77_INT&,
42                              F77_CONST_CHAR_ARG_DECL,
43                              const F77_INT&,
44                              F77_CONST_CHAR_ARG_DECL,
45                              F77_INT&, const F77_DBLE&,
46                              F77_DBLE*, const F77_INT&, F77_DBLE*,
47                              const F77_INT&, F77_INT*,
48                              F77_INT*, F77_DBLE*, F77_DBLE*,
49                              const F77_INT&, F77_INT&
50                              F77_CHAR_ARG_LEN_DECL
51                              F77_CHAR_ARG_LEN_DECL);
52 
53   F77_RET_T
54   F77_FUNC (znaupd, ZNAUPD) (F77_INT&,
55                              F77_CONST_CHAR_ARG_DECL,
56                              const F77_INT&,
57                              F77_CONST_CHAR_ARG_DECL,
58                              const F77_INT&, const F77_DBLE&,
59                              F77_DBLE_CMPLX*, const F77_INT&, F77_DBLE_CMPLX*,
60                              const F77_INT&, F77_INT*,
61                              F77_INT*, F77_DBLE_CMPLX*, F77_DBLE_CMPLX*,
62                              const F77_INT&, F77_DBLE *, F77_INT&
63                              F77_CHAR_ARG_LEN_DECL
64                              F77_CHAR_ARG_LEN_DECL);
65 
66   // NEUPD
67 
68   F77_RET_T
69   F77_FUNC (dneupd, DNEUPD) (const F77_INT&,
70                              F77_CONST_CHAR_ARG_DECL,
71                              F77_INT*, F77_DBLE*, F77_DBLE*,
72                              F77_DBLE*, const F77_INT&, const F77_DBLE&,
73                              const F77_DBLE&, F77_DBLE*,
74                              F77_CONST_CHAR_ARG_DECL,
75                              const F77_INT&,
76                              F77_CONST_CHAR_ARG_DECL,
77                              F77_INT&, const F77_DBLE&, F77_DBLE*,
78                              const F77_INT&, F77_DBLE*,
79                              const F77_INT&, F77_INT*,
80                              F77_INT*, F77_DBLE*, F77_DBLE*,
81                              const F77_INT&, F77_INT&
82                              F77_CHAR_ARG_LEN_DECL
83                              F77_CHAR_ARG_LEN_DECL
84                              F77_CHAR_ARG_LEN_DECL);
85 
86   F77_RET_T
87   F77_FUNC (zneupd, ZNEUPD) (const F77_INT&,
88                              F77_CONST_CHAR_ARG_DECL,
89                              F77_INT*, F77_DBLE_CMPLX*, F77_DBLE_CMPLX*,
90                              const F77_INT&, const F77_DBLE_CMPLX*,
91                              F77_DBLE_CMPLX*,
92                              F77_CONST_CHAR_ARG_DECL,
93                              const F77_INT&,
94                              F77_CONST_CHAR_ARG_DECL,
95                              const F77_INT&, const F77_DBLE&,
96                              F77_DBLE_CMPLX*, const F77_INT&, F77_DBLE_CMPLX*,
97                              const F77_INT&, F77_INT*,
98                              F77_INT*, F77_DBLE_CMPLX*, F77_DBLE_CMPLX*,
99                              const F77_INT&, F77_DBLE *, F77_INT&
100                              F77_CHAR_ARG_LEN_DECL
101                              F77_CHAR_ARG_LEN_DECL
102                              F77_CHAR_ARG_LEN_DECL);
103 
104   // SAUPD
105 
106   F77_RET_T
107   F77_FUNC (dsaupd, DSAUPD) (F77_INT&,
108                              F77_CONST_CHAR_ARG_DECL,
109                              const F77_INT&,
110                              F77_CONST_CHAR_ARG_DECL,
111                              const F77_INT&, const F77_DBLE&,
112                              F77_DBLE*, const F77_INT&, F77_DBLE*,
113                              const F77_INT&, F77_INT*,
114                              F77_INT*, F77_DBLE*, F77_DBLE*,
115                              const F77_INT&, F77_INT&
116                              F77_CHAR_ARG_LEN_DECL
117                              F77_CHAR_ARG_LEN_DECL);
118 
119   // SEUPD
120 
121   F77_RET_T
122   F77_FUNC (dseupd, DSEUPD) (const F77_INT&,
123                              F77_CONST_CHAR_ARG_DECL,
124                              F77_INT*, F77_DBLE*, F77_DBLE*,
125                              const F77_INT&, const F77_DBLE&,
126                              F77_CONST_CHAR_ARG_DECL,
127                              const F77_INT&,
128                              F77_CONST_CHAR_ARG_DECL,
129                              const F77_INT&, const F77_DBLE&, F77_DBLE*,
130                              const F77_INT&, F77_DBLE*,
131                              const F77_INT&, F77_INT*,
132                              F77_INT*, F77_DBLE*, F77_DBLE*,
133                              const F77_INT&, F77_INT&
134                              F77_CHAR_ARG_LEN_DECL
135                              F77_CHAR_ARG_LEN_DECL
136                              F77_CHAR_ARG_LEN_DECL);
137 
138 #endif
139 
140 }
141 
142 #endif
143