00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042 #include <PalmOS.h>
00043 #include <PalmCompatibility.h>
00044 #include "MathLib.h"
00045
00046
00047 UInt MathLibRef;
00048
00049
00050
00051 double acos(double x) {
00052 double result;
00053 MathLibACos(MathLibRef, x, &result);
00054 return result;
00055 }
00056
00057 double asin(double x) {
00058 double result;
00059 MathLibASin(MathLibRef, x, &result);
00060 return result;
00061 }
00062
00063 double atan(double x) {
00064 double result;
00065 MathLibATan(MathLibRef, x, &result);
00066 return result;
00067 }
00068
00069 double atan2(double y, double x) {
00070 double result;
00071 MathLibATan2(MathLibRef, y, x, &result);
00072 return result;
00073 }
00074
00075 double cos(double x) {
00076 double result;
00077 MathLibCos(MathLibRef, x, &result);
00078 return result;
00079 }
00080
00081 double sin(double x) {
00082 double result;
00083 MathLibSin(MathLibRef, x, &result);
00084 return result;
00085 }
00086
00087 double tan(double x) {
00088 double result;
00089 MathLibTan(MathLibRef, x, &result);
00090 return result;
00091 }
00092
00093 void sincos(double x, double *sinx, double *cosx) {
00094 MathLibSinCos(MathLibRef, x, sinx, cosx);
00095 }
00096
00097 double cosh(double x) {
00098 double result;
00099 MathLibCosH(MathLibRef, x, &result);
00100 return result;
00101 }
00102
00103 double sinh(double x) {
00104 double result;
00105 MathLibSinH(MathLibRef, x, &result);
00106 return result;
00107 }
00108
00109 double tanh(double x) {
00110 double result;
00111 MathLibTanH(MathLibRef, x, &result);
00112 return result;
00113 }
00114
00115 double acosh(double x) {
00116 double result;
00117 MathLibACosH(MathLibRef, x, &result);
00118 return result;
00119 }
00120
00121 double asinh(double x) {
00122 double result;
00123 MathLibASinH(MathLibRef, x, &result);
00124 return result;
00125 }
00126
00127 double atanh(double x) {
00128 double result;
00129 MathLibATanH(MathLibRef, x, &result);
00130 return result;
00131 }
00132
00133 double exp(double x) {
00134 double result;
00135 MathLibExp(MathLibRef, x, &result);
00136 return result;
00137 }
00138
00139 double frexp(double x, Int *exponent) {
00140 double fraction;
00141 MathLibFrExp(MathLibRef, x, &fraction, exponent);
00142 return fraction;
00143 }
00144
00145 double ldexp(double x, Int exponent) {
00146 double result;
00147 MathLibLdExp(MathLibRef, x, exponent, &result);
00148 return result;
00149 }
00150
00151 double log(double x) {
00152 double result;
00153 MathLibLog(MathLibRef, x, &result);
00154 return result;
00155 }
00156
00157 double log10(double x) {
00158 double result;
00159 MathLibLog10(MathLibRef, x, &result);
00160 return result;
00161 }
00162
00163 double modf(double x, double *intpart) {
00164 double fraction;
00165 MathLibModF(MathLibRef, x, intpart, &fraction);
00166 return fraction;
00167 }
00168
00169 double expm1(double x) {
00170 double result;
00171 MathLibExpM1(MathLibRef, x, &result);
00172 return result;
00173 }
00174
00175 double log1p(double x) {
00176 double result;
00177 MathLibLog1P(MathLibRef, x, &result);
00178 return result;
00179 }
00180
00181 double logb(double x) {
00182 double result;
00183 MathLibLogB(MathLibRef, x, &result);
00184 return result;
00185 }
00186
00187 double log2(double x) {
00188 double result;
00189 MathLibLog2(MathLibRef, x, &result);
00190 return result;
00191 }
00192
00193 double pow(double x, double y) {
00194 double result;
00195 MathLibPow(MathLibRef, x, y, &result);
00196 return result;
00197 }
00198
00199 double sqrt(double x) {
00200 double result;
00201 MathLibSqrt(MathLibRef, x, &result);
00202 return result;
00203 }
00204
00205 double hypot(double x, double y) {
00206 double result;
00207 MathLibHypot(MathLibRef, x, y, &result);
00208 return result;
00209 }
00210
00211 double cbrt(double x) {
00212 double result;
00213 MathLibCbrt(MathLibRef, x, &result);
00214 return result;
00215 }
00216
00217 double ceil(double x) {
00218 double result;
00219 MathLibCeil(MathLibRef, x, &result);
00220 return result;
00221 }
00222
00223 double fabs(double x) {
00224 double result;
00225 MathLibFAbs(MathLibRef, x, &result);
00226 return result;
00227 }
00228
00229 double floor(double x) {
00230 double result;
00231 MathLibFloor(MathLibRef, x, &result);
00232 return result;
00233 }
00234
00235 double fmod(double x, double y) {
00236 double result;
00237 MathLibFMod(MathLibRef, x, y, &result);
00238 return result;
00239 }
00240
00241 Int isinf(double x) {
00242 Int result;
00243 MathLibIsInf(MathLibRef, x, &result);
00244 return result;
00245 }
00246
00247 Int finite(double x) {
00248 Int result;
00249 MathLibFinite(MathLibRef, x, &result);
00250 return result;
00251 }
00252
00253 double scalbn(double x, Int exponent) {
00254 double result;
00255 MathLibScalBN(MathLibRef, x, exponent, &result);
00256 return result;
00257 }
00258
00259 double drem(double x, double y) {
00260 double result;
00261 MathLibDRem(MathLibRef, x, y, &result);
00262 return result;
00263 }
00264
00265 double significand(double x) {
00266 double result;
00267 MathLibSignificand(MathLibRef, x, &result);
00268 return result;
00269 }
00270
00271 double copysign(double x, double y) {
00272 double result;
00273 MathLibCopySign(MathLibRef, x, y, &result);
00274 return result;
00275 }
00276
00277 Int isnan(double x) {
00278 Int result;
00279 MathLibIsNaN(MathLibRef, x, &result);
00280 return result;
00281 }
00282
00283 Int ilogb(double x) {
00284 Int result;
00285 MathLibILogB(MathLibRef, x, &result);
00286 return result;
00287 }
00288
00289 double rint(double x) {
00290 double result;
00291 MathLibRInt(MathLibRef, x, &result);
00292 return result;
00293 }
00294
00295 double nextafter(double x, double y) {
00296 double result;
00297 MathLibNextAfter(MathLibRef, x, y, &result);
00298 return result;
00299 }
00300
00301 double remainder(double x, double y) {
00302 double result;
00303 MathLibRemainder(MathLibRef, x, y, &result);
00304 return result;
00305 }
00306
00307 double scalb(double x, double exponent) {
00308 double result;
00309 MathLibScalB(MathLibRef, x, exponent, &result);
00310 return result;
00311 }
00312
00313 double round(double x) {
00314 double result;
00315 MathLibRound(MathLibRef, x, &result);
00316 return result;
00317 }
00318
00319 double trunc(double x) {
00320 double result;
00321 MathLibTrunc(MathLibRef, x, &result);
00322 return result;
00323 }
00324
00325 ULong signbit(double x) {
00326 ULong result;
00327 MathLibSignBit(MathLibRef, x, &result);
00328 return result;
00329 }