You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
925 B
30 lines
925 B
5 years ago
|
/* -----------------------------------------------------------------------------
|
||
|
* See the LICENSE file for information on copyright, usage and redistribution
|
||
|
* of SWIG, and the README file for authors - http://www.swig.org/release.html.
|
||
|
*
|
||
|
* ccomplex.i
|
||
|
*
|
||
|
* C complex typemaps
|
||
|
* ISO C99: 7.3 Complex arithmetic <complex.h>
|
||
|
* ----------------------------------------------------------------------------- */
|
||
|
|
||
|
|
||
|
%include <pycomplex.swg>
|
||
|
|
||
|
%{
|
||
|
#include <complex.h>
|
||
|
%}
|
||
|
|
||
|
|
||
|
/* C complex constructor */
|
||
|
#define CCplxConst(r, i) ((r) + I*(i))
|
||
|
|
||
|
%swig_cplxflt_convn(float complex, CCplxConst, creal, cimag);
|
||
|
%swig_cplxdbl_convn(double complex, CCplxConst, creal, cimag);
|
||
|
%swig_cplxdbl_convn(complex, CCplxConst, creal, cimag);
|
||
|
|
||
|
/* declaring the typemaps */
|
||
|
%typemaps_primitive(SWIG_TYPECHECK_CPLXFLT, float complex);
|
||
|
%typemaps_primitive(SWIG_TYPECHECK_CPLXDBL, double complex);
|
||
|
%typemaps_primitive(SWIG_TYPECHECK_CPLXDBL, complex);
|