home *** CD-ROM | disk | FTP | other *** search
/ Game Zone - 1,000+ Games / GAMEZONE.BIN / Programs / PALM / Oh-One / src / MathLibPrv.h < prev    next >
C/C++ Source or Header  |  1998-07-13  |  4KB  |  91 lines

  1. /* MathLib: Pilot shared library of IEEE-754 double math functions
  2.  *
  3.  * Private declarations for use only within MathLib source code.
  4.  *
  5.  * Copyright (C) 1997 Rick Huebner
  6.  *
  7.  * This program is free software; you can redistribute it and/or modify
  8.  * it under the terms of the GNU Library General Public License as
  9.  * published by the Free Software Foundation; either version 2 of
  10.  * the License, or (at your option) any later version.
  11.  *
  12.  * This program is distributed in the hope that it will be useful,
  13.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15.  * GNU Library General Public License for more details.
  16.  *
  17.  * You should have received a copy of the GNU Library General Public License
  18.  * along with this program; see file COPYING.LIB.  If not, write to the
  19.  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  20.  * Boston, MA 02111-1307, USA
  21.  *
  22.  * Version 1.01, 23 August 1997, Rick Huebner
  23.  */
  24. #ifndef __MATHLIBPRV_H__
  25. #define __MATHLIBPRV_H__
  26.  
  27. // Our global data structure
  28. typedef struct MathLibData {
  29.     UInt usecount;
  30. } MathLibData;
  31.  
  32. // Control function prototypes
  33. Err __Startup__(UInt refnum, SysLibTblEntryPtr entryP);
  34. Ptr *DispatchTable(void);
  35.  
  36. Err mathlib_open(UInt refnum, UInt version);
  37. Err mathlib_close(UInt refnum, UIntPtr numappsP);
  38. Err mathlib_sleep(UInt refnum);
  39. Err mathlib_wake(UInt refnum);
  40.  
  41. // Dispatch table jmp target/GCC encapsulation prototypes
  42. Err mathlib_acos(UInt refnum, double x, double *result);
  43. Err mathlib_asin(UInt refnum, double x, double *result);
  44. Err mathlib_atan(UInt refnum, double x, double *result);
  45. Err mathlib_atan2(UInt refnum, double y, double x, double *result);
  46. Err mathlib_cos(UInt refnum, double x, double *result);
  47. Err mathlib_sin(UInt refnum, double x, double *result);
  48. Err mathlib_tan(UInt refnum, double x, double *result);
  49. Err mathlib_sincos(UInt refnum, double x, double *sinx, double *cosx);
  50. Err mathlib_cosh(UInt refnum, double x, double *result);
  51. Err mathlib_sinh(UInt refnum, double x, double *result);
  52. Err mathlib_tanh(UInt refnum, double x, double *result);
  53. Err mathlib_acosh(UInt refnum, double x, double *result);
  54. Err mathlib_asinh(UInt refnum, double x, double *result);
  55. Err mathlib_atanh(UInt refnum, double x, double *result);
  56. Err mathlib_exp(UInt refnum, double x, double *result);
  57. Err mathlib_frexp(UInt refnum, double x, double *fraction, Int *exponent);
  58. Err mathlib_ldexp(UInt refnum, double x, Int exponent, double *result);
  59. Err mathlib_log(UInt refnum, double x, double *result);
  60. Err mathlib_log10(UInt refnum, double x, double *result);
  61. Err mathlib_modf(UInt refnum, double x, double *intpart, double *fracpart);
  62. Err mathlib_expm1(UInt refnum, double x, double *result);
  63. Err mathlib_log1p(UInt refnum, double x, double *result);
  64. Err mathlib_logb(UInt refnum, double x, double *result);
  65. Err mathlib_log2(UInt refnum, double x, double *result);
  66. Err mathlib_pow(UInt refnum, double x, double y, double *result);
  67. Err mathlib_sqrt(UInt refnum, double x, double *result);
  68. Err mathlib_hypot(UInt refnum, double x, double y, double *result);
  69. Err mathlib_cbrt(UInt refnum, double x, double *result);
  70. Err mathlib_ceil(UInt refnum, double x, double *result);
  71. Err mathlib_fabs(UInt refnum, double x, double *result);
  72. Err mathlib_floor(UInt refnum, double x, double *result);
  73. Err mathlib_fmod(UInt refnum, double x, double y, double *result);
  74. Err mathlib_isinf(UInt refnum, double x, Int *result);
  75. Err mathlib_finite(UInt refnum, double x, Int *result);
  76. Err mathlib_scalbn(UInt refnum, double x, Int exponent, double *result);
  77. Err mathlib_drem(UInt refnum, double x, double y, double *result);
  78. Err mathlib_significand(UInt refnum, double x, double *result);
  79. Err mathlib_copysign(UInt refnum, double x, double y, double *result);
  80. Err mathlib_isnan(UInt refnum, double x, Int *result);
  81. Err mathlib_ilogb(UInt refnum, double x, Int *result);
  82. Err mathlib_rint(UInt refnum, double x, double *result);
  83. Err mathlib_nextafter(UInt refnum, double x, double y, double *result);
  84. Err mathlib_remainder(UInt refnum, double x, double y, double *result);
  85. Err mathlib_scalb(UInt refnum, double x, double exponent, double *result);
  86. Err mathlib_round(UInt refnum, double x, double *result);
  87. Err mathlib_trunc(UInt refnum, double x, double *result);
  88. Err mathlib_signbit(UInt refnum, double x, ULong *result);
  89.  
  90. #endif // __MATHLIBPRV_H__
  91.