source: sasview/src/sas/sascalc/calculator/c_extensions/librefl.h @ d76beb4

ESS_GUI
Last change on this file since d76beb4 was f54e82cf, checked in by Torin Cooper-Bennun <torin.cooper-bennun@…>, 6 years ago

Cherry-pick changes from master for tinycc compatibility (note: tinycc compilation not yet supported fully):

144e032af2 tinycc doesn't return structures, so must pass return structure as pointer
a1daf86c0d hack around broken isfinite/isnan in tinycc
7e82256ecb declare all variables at the start of the block so C89 compilers don't complain

  • Property mode set to 100644
File size: 772 bytes
RevLine 
[9e531f2]1#if !defined(librefl_h)
2#define librefl_h
3
4typedef struct {
5        double re;
6        double im;
[f54e82cf]7} Cplx;
[9e531f2]8
9typedef struct {
[f54e82cf]10        Cplx a;
11        Cplx b;
12        Cplx c;
13        Cplx d;
[9e531f2]14} matrix;
15
[f54e82cf]16void cassign(Cplx*, double real, double imag);
[9e531f2]17
[f54e82cf]18void cplx_add(Cplx*, Cplx x,Cplx y);
[9e531f2]19
[f54e82cf]20void rcmult(Cplx*, double x,Cplx y);
[9e531f2]21
[f54e82cf]22void cplx_sub(Cplx*, Cplx x,Cplx y);
[9e531f2]23
[f54e82cf]24void cplx_mult(Cplx*, Cplx x,Cplx y);
[9e531f2]25
[f54e82cf]26void cplx_div(Cplx*, Cplx x,Cplx y);
[9e531f2]27
[f54e82cf]28void cplx_exp(Cplx*, Cplx b);
[9e531f2]29
[f54e82cf]30void cplx_sqrt(Cplx*, Cplx z);
[9e531f2]31
[f54e82cf]32void cplx_cos(Cplx*, Cplx b);
[9e531f2]33
34double intersldfunc(int fun_type, double n_sub, double i, double nu, double sld_l, double sld_r);
35double interfunc(int fun_type, double n_sub, double i, double sld_l, double sld_r);
36double linePq(int fun_type, double thick, double sld_in, double sld_out,double r, double q);
37#endif
Note: See TracBrowser for help on using the repository browser.