Added some more tags to SF subsystem.
[Math-GSL.git] / Poly.i
blob1eef8642ea229954c2130c54089a000c57c88504
1 %module Poly
2 %include "GSL.i"
3 %typemap(in) double * (double dvalue) {
4 SV* tempsv;
5 if (!SvROK($input)) {
6 croak("Math::GSL::Sort : $input is not a reference!\n");
8 tempsv = SvRV($input);
9 if ((!SvNOK(tempsv)) && (!SvIOK(tempsv))) {
10 croak("Math::GSL::Sort : $input is not a reference to number!\n");
12 dvalue = SvNV(tempsv);
13 $1 = &dvalue;
15 %typemap(argout) double * {
16 SV *tempsv;
17 tempsv = SvRV($input);
18 sv_setnv(tempsv, *$1);
20 %include "typemaps.i"
24 #include "/usr/local/include/gsl/gsl_nan.h"
25 #include "/usr/local/include/gsl/gsl_poly.h"
26 #include "/usr/local/include/gsl/gsl_complex.h"
29 %include "/usr/local/include/gsl/gsl_nan.h"
30 %include "/usr/local/include/gsl/gsl_poly.h"
31 %include "/usr/local/include/gsl/gsl_complex.h"
34 %perlcode %{
36 @EXPORT_OK = qw/
37 gsl_poly_eval
38 gsl_poly_complex_eval
39 gsl_complex_poly_complex_eval
40 gsl_poly_dd_init
41 gsl_poly_dd_eval
42 gsl_poly_dd_taylor
43 gsl_poly_solve_quadratic
44 gsl_poly_complex_solve_quadratic
45 gsl_poly_solve_cubic
46 gsl_poly_complex_solve_cubic
47 gsl_poly_complex_workspace_alloc
48 gsl_poly_complex_workspace_free
49 gsl_poly_complex_solve
50 $GSL_POSZERO $GSL_NEGZERO
53 %EXPORT_TAGS = ( all => [ @EXPORT_OK ] );