1use libc::{c_char, c_double, c_int};
2
3use slu_util::*;
4use supermatrix::*;
5
6extern "C" {
7 pub fn dlsolve(ldm: c_int, ncol: c_int, M: *mut c_double, rhs: *mut c_double);
8
9 pub fn dmatvec(
10 ldm: c_int,
11 nrow: c_int,
12 ncol: c_int,
13 M: *mut c_double,
14 vec: *mut c_double,
15 Mxvec: *mut c_double,
16 );
17
18 pub fn dusolve(ldm: c_int, ncol: c_int, M: *mut c_double, rhs: *mut c_double);
19
20 pub fn sp_dgemv(
21 trans: *mut c_char,
22 alpha: c_double,
23 A: *mut SuperMatrix,
24 x: *mut c_double,
25 incx: c_int,
26 beta: c_double,
27 y: *mut c_double,
28 incy: c_int,
29 ) -> c_int;
30
31 pub fn sp_dtrsv(
32 uplo: *mut c_char,
33 trans: *mut c_char,
34 diag: *mut c_char,
35 L: *mut SuperMatrix,
36 U: *mut SuperMatrix,
37 x: *mut c_double,
38 stat: *mut SuperLUStat_t,
39 info: *mut c_int,
40 ) -> c_int;
41}