Mercurial > octave
comparison src/mappers.h @ 529:7ea224e713cd
[project @ 1994-07-20 18:54:27 by jwe]
author | jwe |
---|---|
date | Wed, 20 Jul 1994 19:19:08 +0000 |
parents | 0b52c68ec81f |
children | aecbe369233b |
comparison
equal
deleted
inserted
replaced
528:e1e6e33e26f8 | 529:7ea224e713cd |
---|---|
24 #if !defined (octave_mappers_h) | 24 #if !defined (octave_mappers_h) |
25 #define octave_mappers_h 1 | 25 #define octave_mappers_h 1 |
26 | 26 |
27 class Complex; | 27 class Complex; |
28 | 28 |
29 #include "missing-math.h" | 29 typedef double (*d_d_Mapper)(double); |
30 typedef double (*d_c_Mapper)(const Complex&); | |
31 typedef Complex (*c_c_Mapper)(const Complex&); | |
32 | |
33 // If can_return_complex_for_real_arg is 1, lower_limit and | |
34 // upper_limit specify the range of values for which a real arg | |
35 // returns a real value. Outside that range, we have to convert args | |
36 // to complex, and call the complex valued function. | |
37 // | |
38 // If can_return_complex_for_real_arg is 0, lower_limit and | |
39 // upper_limit are ignored. | |
40 | |
41 struct Mapper_fcn | |
42 { | |
43 int can_return_complex_for_real_arg; | |
44 double lower_limit; | |
45 double upper_limit; | |
46 d_d_Mapper d_d_mapper; | |
47 d_c_Mapper d_c_mapper; | |
48 c_c_Mapper c_c_mapper; | |
49 }; | |
50 | |
51 struct builtin_mapper_function | |
52 { | |
53 char *name; | |
54 int can_return_complex_for_real_arg; | |
55 double lower_limit; | |
56 double upper_limit; | |
57 d_d_Mapper d_d_mapper; | |
58 d_c_Mapper d_c_mapper; | |
59 c_c_Mapper c_c_mapper; | |
60 char *help_string; | |
61 }; | |
30 | 62 |
31 extern double arg (double x); | 63 extern double arg (double x); |
32 extern double conj (double x); | 64 extern double conj (double x); |
33 extern double fix (double x); | 65 extern double fix (double x); |
34 extern double imag (double x); | 66 extern double imag (double x); |
35 extern double real (double x); | 67 extern double real (double x); |
36 extern double round (double x); | 68 extern double round (double x); |
37 extern double signum (double x); | 69 extern double signum (double x); |
70 extern double xisnan (double x); | |
38 extern double xfinite (double x); | 71 extern double xfinite (double x); |
39 extern double xisinf (double x); | 72 extern double xisinf (double x); |
40 extern double xisnan (double x); | |
41 | 73 |
74 extern double xisnan (const Complex& x); | |
42 extern double xfinite (const Complex& x); | 75 extern double xfinite (const Complex& x); |
43 extern double xisinf (const Complex& x); | 76 extern double xisinf (const Complex& x); |
44 extern double xisnan (const Complex& x); | |
45 | 77 |
46 extern Complex acos (const Complex& x); | 78 extern Complex acos (const Complex& x); |
47 extern Complex acosh (const Complex& x); | 79 extern Complex acosh (const Complex& x); |
48 extern Complex asin (const Complex& x); | 80 extern Complex asin (const Complex& x); |
49 extern Complex asinh (const Complex& x); | 81 extern Complex asinh (const Complex& x); |
56 extern Complex round (const Complex& x); | 88 extern Complex round (const Complex& x); |
57 extern Complex signum (const Complex& x); | 89 extern Complex signum (const Complex& x); |
58 extern Complex tan (const Complex& x); | 90 extern Complex tan (const Complex& x); |
59 extern Complex tanh (const Complex& x); | 91 extern Complex tanh (const Complex& x); |
60 | 92 |
93 extern void install_mapper_functions (void); | |
94 | |
61 #endif | 95 #endif |
62 | 96 |
63 /* | 97 /* |
64 ;;; Local Variables: *** | 98 ;;; Local Variables: *** |
65 ;;; mode: C++ *** | 99 ;;; mode: C++ *** |