Branch data Line data Source code
1 : : /* -*- mode: C -*- Time-stamp: "09/09/05 22:49:28 jemarch"
2 : : *
3 : : * File: pdf-fp.c
4 : : * Date: Sun Feb 10 21:38:34 2008
5 : : *
6 : : * GNU PDF Library - Floating-point Arithmetic Module
7 : : *
8 : : */
9 : :
10 : : /* Copyright (C) 2007, 2008 Free Software Foundation, Inc. */
11 : :
12 : : /* This program is free software: you can redistribute it and/or modify
13 : : * it under the terms of the GNU General Public License as published by
14 : : * the Free Software Foundation, either version 3 of the License, or
15 : : * (at your option) any later version.
16 : : *
17 : : * This program is distributed in the hope that it will be useful,
18 : : * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 : : * GNU General Public License for more details.
21 : : *
22 : : * You should have received a copy of the GNU General Public License
23 : : * along with this program. If not, see <http://www.gnu.org/licenses/>.
24 : : */
25 : :
26 : : #include <config.h>
27 : :
28 : : #include <pdf-fp.h>
29 : :
30 : :
31 : : pdf_real_t
32 : 103 : pdf_fp_add (pdf_real_t op1,
33 : : pdf_real_t op2)
34 : : {
35 : 103 : return op1 + op2;
36 : : }
37 : :
38 : : pdf_real_t
39 : 71 : pdf_fp_sub (pdf_real_t op1,
40 : : pdf_real_t op2)
41 : : {
42 : 71 : return op1 - op2;
43 : : }
44 : :
45 : : pdf_real_t
46 : 183 : pdf_fp_mul (pdf_real_t op1,
47 : : pdf_real_t op2)
48 : : {
49 : 183 : return op1 * op2;
50 : : }
51 : :
52 : : pdf_real_t
53 : 91 : pdf_fp_div (pdf_real_t op1,
54 : : pdf_real_t op2)
55 : : {
56 : 91 : return op1 / op2;
57 : : }
58 : :
59 : : pdf_real_t
60 : 26 : pdf_fp_mod (pdf_real_t op1,
61 : : pdf_real_t op2)
62 : : {
63 : 26 : return (int)op1 % (int)op2;
64 : : }
65 : :
66 : : pdf_real_t
67 : 17 : pdf_fp_sqrt (pdf_real_t op)
68 : : {
69 : 17 : return sqrtf (op);
70 : : }
71 : :
72 : : pdf_real_t
73 : 51 : pdf_fp_sin (pdf_real_t op)
74 : : {
75 : 51 : return sinf (op);
76 : : }
77 : :
78 : : pdf_real_t
79 : 27 : pdf_fp_cos (pdf_real_t op)
80 : : {
81 : 27 : return cosf (op);
82 : : }
83 : :
84 : : pdf_real_t
85 : 12 : pdf_fp_atan2 (pdf_real_t op1,
86 : : pdf_real_t op2)
87 : : {
88 : 12 : return atan2f (op1, op2);
89 : : }
90 : :
91 : : pdf_real_t
92 : 12 : pdf_fp_pow (pdf_real_t op1,
93 : : pdf_real_t op2)
94 : : {
95 : 12 : return pow (op1, op2);
96 : : }
97 : :
98 : : pdf_real_t
99 : 0 : pdf_fp_exp (pdf_real_t op)
100 : : {
101 : 0 : return expf (op);
102 : : }
103 : :
104 : : pdf_real_t
105 : 437 : pdf_fp_abs (pdf_real_t op)
106 : : {
107 : 437 : return fabs (op);
108 : : }
109 : :
110 : : pdf_real_t
111 : 7 : pdf_fp_log10 (pdf_real_t op)
112 : : {
113 : 7 : return log10f (op);
114 : : }
115 : :
116 : : pdf_real_t
117 : 7 : pdf_fp_log (pdf_real_t op)
118 : : {
119 : 7 : return logf (op);
120 : : }
121 : :
122 : : pdf_real_t
123 : 187 : pdf_fp_floor (pdf_real_t op)
124 : : {
125 : 187 : return floorf (op);
126 : : }
127 : :
128 : : pdf_real_t
129 : 103 : pdf_fp_ceil (pdf_real_t op)
130 : : {
131 : 103 : return ceilf (op);
132 : : }
133 : :
134 : :
135 : : /* End of pdf-fp.c */
|